Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/datum_shift.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/datum_shift.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/datum_shift.csv (revision 2866) @@ -0,0 +1,759 @@ +"SEQ_KEY","COORD_OP_CODE","SOURCE_CRS_CODE","TARGET_CRS_CODE","REMARKS","COORD_OP_SCOPE","AREA_OF_USE_CODE","AREA_SOUTH_BOUND_LAT","AREA_NORTH_BOUND_LAT","AREA_WEST_BOUND_LON","AREA_EAST_BOUND_LON","SHOW_OPERATION","DEPRECATED","COORD_OP_METHOD_CODE","DX","DY","DZ","RX","RY","RZ","DS","PREFERRED" +1,1825,4611,4326,Published 1st March 2002.,Accuracy to 1m level.,1118,22.16,22.62,113.89,114.57,1,0,9606,-162.619,-276.959,-161.764,0.067753,-2.243649,-1.158827,-1.094246,1 +2,1826,4612,4326,,"Approximation at the +/- 1m level.",1129,19.01,45.92,122.49,160.09,1,0,9603,0,0,0,,,,,1 +3,1838,4613,4326,Datum shift derived through ITRF93.,Oil exploration.,1328,-1.35,0,116.9,118,1,0,9603,-404.78,685.68,45.47,,,,,0 +4,1897,4613,4326,Accuracy estimate not available.,For military purposes.,1360,-5.72,4.4,113.69,119.62,1,0,9603,-403,684,41,,,,,1 +5,1898,4613,4326,,Oil exploration.,1360,-5.72,4.4,113.69,119.62,1,0,9603,-387.06,636.53,46.29,,,,,0 +6,1899,4613,4326,,Oil exploration.,2770,-2.35,4.4,113.7,119.62,1,0,9603,-403.4,681.12,46.56,,,,,0 +7,1840,4614,4326,"Transformation defines QND95. May be approximated to 1m throughout Qatar by geocentric translation transformation with dX=-127.78098m, dY=-283.37477m, dZ=+21.24081m.",Parameter values are defined and therefore exact.,1346,24.48,26.18,50.75,51.64,1,0,9606,-119.4248,-303.65872,-11.00061,1.164298,0.174458,1.096259,3.657065,1 +8,1888,4615,4326,Derived at 2 stations.,For military purposes only. Accuracy 25m in each axis.,1314,32.39,33.15,-17.27,-16.25,1,0,9603,-499,-249,314,,,,,1 +9,1889,4616,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,2779,30.1,30.2,-15.9,-15.8,1,1,9603,-289,-124,60,,,,,0 +10,1965,4616,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,2779,30.1,30.2,-15.9,-15.8,1,0,9603,-289,-124,60,,,,,1 +11,1842,4617,4326,"For many purposes NAD83(CSRS) can be considered to be coincident with WGS 84.","Approximation at the +/- 1m level assuming that NAD83(CSRS) is equivalent to WGS 84.",1061,40.04,86.45,-141,-47.74,1,0,9603,0,0,0,,,,,1 +12,1946,4617,4326,"Jointly derived by US NGS and Geodetic Survey of Canada - see also code 1901. Strictly between NAD83(CSRS) and ITRF96(1997.0).",Geodesy.,1061,40.04,86.45,-141,-47.74,1,0,9607,-0.991,1.9072,0.5129,-0.0257899075194932,-0.0096500989602704,-0.0116599432323421,0,0 +13,1864,4618,4326,Derived at 84 stations.,"For military purposes only. Accuracy 15m, 6m and 9m in X, Y and Z axes.",1358,-45,12.51,-81.4,-29.03,1,0,9603,-57,1,-41,,,,,1 +14,1865,4618,4326,"Derived at 10 stations. Note: SAD69 not adopted in Argentina: see Campo Inchauspe (CRS code 4221).",For military purposes only. Accuracy 5m in each axis.,3215,-52.43,-21.78,-73.58,-53.65,1,0,9603,-62,-1,-37,,,,,0 +15,1866,4618,4326,"Derived at 4 stations. Note: SAD69 not adopted in Bolivia: see PSAD56 (CRS code 4248).",For military purposes. Accuracy 15m in each axis.,1049,-22.9,-9.68,-69.66,-57.52,1,0,9603,-61,2,-48,,,,,0 +16,1867,4618,4326,Derived at 22 stations.,"For military purposes only. Accuracy 3m, 5m and 5m in X, Y and Z axes.",3845,-35.71,7.04,-60.57,-29.03,1,0,9603,-60,-2,-41,,,,,0 +17,1868,4618,4326,"Derived at 9 stations. Note: SAD69 not adopted in Chile.","For military purposes only. Accuracy 15m, 8m and 11m in X, Y and Z axes.",3227,-45,-17.51,-75.22,-67,1,0,9603,-75,-1,-44,,,,,0 +18,1869,4618,4326,"Derived at 7 stations. Note: SAD69 not adopted in Colombia: see Bogota 1975 (CRS code 4218).","For military purposes only. Accuracy 6m, 6m and 5m in X, Y and Z axes.",3229,-4.24,12.51,-79.1,-66.87,1,0,9603,-44,6,-36,,,,,0 +19,1870,4618,4326,"Derived at 11 stations. Note: SAD69 not adopted in Ecuador: see PSAD56 (CRS code 4248).",For military purposes. Accuracy 3m in each axis.,3241,-5,1.45,-81.03,-75.22,1,0,9603,-48,3,-44,,,,,0 +20,1871,4618,4326,"Derived at 1 station. Note: SAD69 not adopted in Ecuador.",For military purposes. Accuracy 25m in each axis.,2356,-1.41,0.17,-91.71,-89.2,1,0,9603,-47,26,-42,,,,,0 +21,1872,4618,4326,"Derived at 5 stations. Note: SAD69 not adopted in Guyana.","For military purposes only. Accuracy 9m, 5m and 5m in X, Y and Z axes.",3259,1.19,8.57,-61.39,-56.47,1,0,9603,-53,3,-47,,,,,0 +22,1873,4618,4326,"Derived at 4 stations. Note: SAD69 not adopted in Paraguay.",For military purposes. Accuracy 15m in each axis.,1188,-27.58,-19.3,-62.64,-54.24,1,0,9603,-61,2,-33,,,,,0 +23,1874,4618,4326,"Derived at 6 stations. Note: SAD69 not adopted in Peru: see PSAD56 (CRS code 4248).",For military purposes. Accuracy 5m in each axis.,3292,-18.35,-0.04,-81.4,-68.67,1,0,9603,-58,0,-44,,,,,0 +24,1875,4618,4326,"Derived at 1 station. Note: SAD69 not adopted in Trinidad and Tobago.",For military purposes only. Accuracy 25m in each axis.,3143,9.99,10.89,-61.97,-60.86,1,0,9603,-45,12,-33,,,,,0 +25,1876,4618,4326,"Derived at 5 stations. Note: SAD69 not adopted in Venezuela: see PSAD56 (CRS code 4248).","For military purposes only. Accuracy 3m, 6m and 3m in X, Y and Z axes.",3327,0.65,12.25,-73.38,-59.8,1,0,9603,-45,8,-33,,,,,0 +26,1877,4618,4326,"Derived by Brazilian Institute of Geography and Statistics (IBGE) in 1989. Used by ANP. (Note: for historic reasons associated with one-time web url, tfm version uses initials IGBE, not IBGE). Replaced by SAD69 to WGS 84 (15) (tfm code 5528).",Medium and small scale mapping.,3845,-35.71,7.04,-60.57,-29.03,1,0,9603,-66.87,4.37,-38.52,,,,,0 +27,1879,4619,4326,"Parameter values taken from SWEREF to ETRS89 (1) (code 1878) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation.",Geographic Information Systems.,1225,55.2,69.1,10.57,24.18,1,0,9603,0,0,0,,,,,1 +28,1880,4620,4326,Derived at one point in each of Burkina Faso and Niger.,For military purposes. Accuracy 25m in each axis.,2791,9.4,15.71,-5.52,4.63,1,0,9603,-106,-129,165,,,,,1 +29,1903,4621,4326,,"Accuracy +/- 10 metres.",2828,17.83,18.17,-63.2,-62.73,1,0,9603,137,248,-430,,,,,1 +30,1904,4622,4326,,"Accuracy +/- 10 metres.",2829,15.8,16.54,-61.85,-60.97,1,0,9603,-467,-16,-300,,,,,1 +31,1905,4622,4326,,"Accuracy +/- 0.1 metre.",2829,15.8,16.54,-61.85,-60.97,1,0,9606,-472.29,-5.63,-304.12,0.4362,-0.8374,0.2563,1.8984,0 +32,1906,4623,4326,,"Accuracy +/- 10 metres.",3105,3.43,5.81,-54.45,-51.62,1,0,9603,-186,230,110,,,,,1 +33,1907,4624,4326,,"Accuracy +/- 2 metres.",1097,2.11,8.88,-54.6,-49.46,1,1,9603,2,2,-2,,,,,0 +34,4840,4624,4326,"Replaces RGFG95 to WGS 84 (1) (code 1907) which was not put into official use but issued in error.","Accuracy +/- 2 metres.",1097,2.11,8.88,-54.6,-49.46,1,0,9603,0,0,0,,,,,1 +35,1909,4625,4326,,"Accuracy +/- 10 metres.",3276,14.35,14.93,-61.28,-60.77,1,0,9603,186,482,151,,,,,1 +36,1910,4625,4326,,"Accuracy +/- 0.1 metre.",3276,14.35,14.93,-61.28,-60.77,1,0,9606,126.93,547.94,130.41,-2.7867,5.1612,-0.8584,13.8227,0 +37,1911,4626,4326,Derived at 1 station.,"Accuracy +/- 30 metres.",1196,-25.92,-10.6,37.58,58.27,1,1,9603,94,-948,-1292,,,,,0 +38,15751,4626,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,3337,-21.4,-20.8,55.2,55.8,1,0,9603,94,-948,-1262,,,,,1 +39,1912,4627,4326,,"Accuracy +/- 1 metre.",1196,-25.92,-10.6,37.58,58.27,1,0,9603,0,0,0,,,,,1 +40,1924,4628,4326,,"Accuracy +/- 10 metres.",2811,-17.91,-17.45,-149.96,-149.07,1,0,9603,162,117,154,,,,,1 +41,1913,4629,4326,,"Accuracy +/- 10 metres.",2812,-16.95,-16.62,-151.8,-150.9,1,0,9603,65,342,77,,,,,0 +42,15770,4629,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from Tahaa 54 to RGPF (1) (tfm code 15758).","Accuracy +/- 1 metre.",2812,-16.95,-16.62,-151.8,-150.9,1,0,9607,72.438,345.918,79.486,-1.6045,-0.8823,-0.5565,1.3746,1 +43,1914,4630,4326,,"Accuracy +/- 10 metres.",3129,-9.5,-8.75,-140.25,-139.45,1,0,9603,84,274,65,,,,,1 +44,15775,4630,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from IGN72 Nuku Hiva to RGPF (1) (tfm code 15763).","Accuracy +/- 1 metre.",2810,-9,-8.75,-140.25,-139.95,1,0,9607,165.732,216.72,180.505,-0.6434,-0.4512,-0.0791,7.4204,0 +45,15776,4630,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from IGN72 Nuku Hiva to RGPF (2) (tfm code 15764).","Accuracy +/- 2 metres.",3127,-9,-8.85,-139.6,-139.45,1,0,9607,1363.785,1362.687,398.811,-4.5322,-6.7579,-1.0574,268.361,0 +46,15777,4630,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from IGN72 Nuku Hiva to RGPF (2) (tfm code 15765).","Accuracy +/- 1 metre.",3128,-9.5,-9.33,-140.17,-140,1,0,9607,259.551,297.612,197.833,1.4866,2.1224,0.4612,27.0249,0 +47,1915,4631,4326,"Also published in US NIMA/NGA TR8350.2 which gives accuracy of +/-25m in each axis and states that derived at one station.","Accuracy +/- 10 metres.",2816,-49.75,-48.5,68.5,70.6,1,1,9603,145,-187,103,,,,,0 +48,1916,4632,4326,,"Accuracy +/- 10 metres.",1159,-14.37,-11.32,44.13,45.77,1,0,9603,-382,-59,-262,,,,,1 +49,1272,4121,4326,,For applications requiring 1m or better accuracy.,3254,33.23,41.77,18.27,29.97,1,0,9603,-199.87,74.79,246.62,,,,,1 +50,1918,4634,4326,,"Accuracy +/- 10 metres.",1174,-23.46,-17.26,157.09,173.89,1,1,9603,-13,-348,292,,,,,0 +51,1929,4634,4326,,"Accuracy better than +/- 1 metre.",2822,-22.5,-20,163.9,167.1,1,1,9606,97.295,-263.247,310.882,-1.5999,0.8386,3.1409,13.3259,0 +52,1639,4123,4326,"Parameter values from KKJ to ETRS89 (1) (code 1638). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaced by KKJ to WGS 84 (2) (code 10099).",For applications to an accuracy of 1 to 2 metres.,3333,59.3,70.09,19.3,31.59,1,0,9606,-90.7,-106.1,-119.2,4.09,0.218,-1.05,1.37,0 +53,10099,4123,4326,"Parameter values from KKJ to ETRS89 (2) (code 10098). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaces KKJ to WGS 84 (1) (code 1639).",For applications to an accuracy of 1 to 2 metres.,3333,59.3,70.09,19.3,31.59,1,0,9607,-96.062,-82.428,-121.753,-4.801,-0.345,1.376,1.496,1 +54,1680,4124,4326,"Parameter values from RT90 to ETRS89 (1) (code 1437) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaced by RT90 to WGS 84 (2) (code 1896) from 2001.","Approximation at the +/- 1m level.",1225,55.2,69.1,10.57,24.18,1,0,9607,419.3836,99.3335,591.3451,-0.850389,-1.817277,7.862238,-0.99496,0 +55,1788,4124,4326,"Parameter values from RT90 to ETRS89 (1) (code 1787) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Supersedes RT90 to WGS 84 (1) (code 1680).","Approximation at the +/- 1m level.",1225,55.2,69.1,10.57,24.18,1,1,9607,414.1,41.3,603.1,-0.855,2.141,-7.023,0,0 +56,1896,4124,4326,"Parameter values from RT90 to SWEREF99 (1) (code 1895) assuming that SWEREF99 is equivalent to WGS 84 within the accuracy of the transformation. Replaces RT90 to WGS 84 (1) (code 1680).","Approximation at the +/- 1m level.",1225,55.2,69.1,10.57,24.18,1,0,9607,414.1,41.3,603.1,0.855,-2.141,7.023,0,1 +57,1282,4125,4326,Datum shift derived through ITRF93.,Oil exploration.,1328,-1.35,0,116.9,118,1,1,9603,-404.78,685.68,45.47,,,,,0 +58,1923,4638,4326,,"Accuracy +/- 10 metres.",3299,46.7,47.18,-56.47,-56.07,1,0,9603,30,430,368,,,,,1 +59,1683,4127,4326,"Parameter values taken from Tete to Moznet (1) (code 1297) assuming that Moznet is equivalent to WGS 84 within the accuracy of the transformation.",Residuals as high as 30 metres.,3281,-26.88,-10.4,30.23,40.9,1,0,9607,-115.064,-87.39,-101.716,0.058,-4.001,2.062,9.366,0 +60,1684,4127,4326,"Parameter values taken from Tete to Moznet (2) (code 1298) assuming that Moznet is equivalent to WGS 84 within the accuracy of the transformation.",Residuals are generally under 1 metre.,2350,-26.88,-24,31.8,35.6,1,0,9607,-82.875,-57.097,-156.768,2.158,-1.524,0.982,-0.359,0 +61,1685,4127,4326,"Parameter values taken from Tete to Moznet (3) (code 1299) assuming that Moznet is equivalent to WGS 84 within the accuracy of the transformation.",Residuals are generally under 4 metres.,2351,-24,-20,31.33,35.6,1,0,9607,-138.527,-91.999,-114.591,0.14,-3.363,2.217,11.748,0 +62,1686,4127,4326,"Parameter values taken from Tete to Moznet (4) (code 1300) assuming that Moznet is equivalent to WGS 84 within the accuracy of the transformation.",Residuals are generally under 3 metres.,2352,-20,-16,31.18,40.15,1,0,9607,-73.472,-51.66,-112.482,-0.953,-4.6,2.368,0.586,0 +63,1687,4127,4326,"Parameter values taken from Tete to Moznet (5) (code 1301) assuming that Moznet is equivalent to WGS 84 within the accuracy of the transformation.",Residuals are 5-10 metres.,2353,-16,-9.56,30.23,40.9,1,0,9607,219.315,168.975,-166.145,-0.198,-5.926,2.356,-57.104,1 +64,1934,4640,4326,RRAF 1991 was defined to be WGS84 at a single point in Martinique during the 1988 Tango mission.,"Accuracy +/- 1 metre.",2824,14.08,18.53,-63.66,-57.53,1,1,9603,0,0,0,,,,,0 +65,1928,4641,4326,Withdrawn by information source and replaced by improved information - see tfm code 15901.,"Accuracy better than +/- 1 metre.",2819,-21.7,-21.3,167.75,168.15,1,0,9606,-408.809,366.856,-412.987,1.8842,-0.5308,2.1655,-121.0993,0 +66,15783,4641,4326,Withdrawn by information source and replaced by improved information from local authority - see tfm code 15901.,Accuracy 5 metres.,2819,-21.7,-21.3,167.75,168.15,1,0,9603,287,178,-136,,,,,0 +67,15901,4641,4326,"Parameter values taken from IGN53 Mare to RGNC91-93 (1) ( code 15884) assuming that RGNC91-93 is equivalent to WGS 84 to within the accuracy of the transformation.",Accuracy 2 metres.,2819,-21.7,-21.3,167.75,168.15,1,0,9603,287.58,177.78,-135.41,,,,,1 +68,1302,4130,4326,,For many purposes Moznet can be considered to be coincident with WGS 84. Accuracy better than 1 metre.,1167,-26.88,-9.56,30.23,43,1,0,9607,0,0,0,0,0,0,0,1 +69,1542,4131,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,2359,15.9,16.1,107.45,108.4,1,0,9603,198,881,317,,,,,1 +70,1543,4131,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2360,8.62,8.76,106.53,106.75,1,0,9603,182,915,344,,,,,0 +71,1513,4132,4326,Derived in 1998 in Kangan district by Geoid for Total. Used for South Pars phases 2 and 3.,Oil exploration.,2362,27.7,28.2,51.8,52.5,1,0,9603,-241.54,-163.64,396.06,,,,,0 +72,1854,4132,4326,Derived by Geoid for Elf in 1999. EGM96 geoid used.,Oil Exploration,2782,26.2,26.8,52.4,53.3,1,0,9603,-239.1,-170.02,397.5,,,,,1 +73,1855,4132,4326,Derived by Geoid for Elf in 1999. EGM96 geoid used.,Oil Exploration,2781,29,29.33,50.15,50.4,1,0,9603,-244.72,-162.773,400.75,,,,,0 +74,1333,4133,4326,,"?",3246,57.57,59.66,21.84,28,1,0,9607,0.055,-0.541,-0.185,-0.0183,0.0003,0.007,-0.014,1 +75,1439,4134,4326,"Replaced PSD93 to WGS 84 (2) (code 8581) in 1997.","Oil exploration. Residuals 0.5m at 67% probability level.",3288,16.6,26.4,51.9,59.89,1,0,9606,-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.71006,1 +76,1617,4134,4326,Accuracy better than 0.5m in block 4.,Oil exploration.,2404,19.58,21.17,56.5,59.02,1,0,9606,-191.808,-250.512,167.861,-0.792,-1.653,8.558,20.703,0 +77,15824,4135,4326,Derived at 15 satellite stations.,"Military mapping. Accuracy +/- 25m in X axis, +/- 20m in Y and Z axes.",1334,18.88,22.29,-160.3,-154.75,1,0,9603,61,-285,-181,,,,,1 +78,15825,4135,4326,Derived at 2 satellite stations.,"Military mapping. Accuracy +/- 25m in each axis.",1546,18.88,20.33,-156.1,-154.75,1,0,9603,89,-279,-183,,,,,0 +79,15826,4135,4326,Derived at 3 satellite stations.,"Military mapping. Accuracy +/- 20m in each axis.",1549,21.82,22.29,-159.84,-159.24,1,0,9603,45,-290,-172,,,,,0 +80,15827,4135,4326,Derived at 2 satellite stations.,"Military mapping. Accuracy +/- 25m in each axis.",1547,20.46,21.26,-157.35,-155.94,1,0,9603,65,-290,-190,,,,,0 +81,15828,4135,4326,Derived at 8 satellite stations.,"Military mapping only. Accuracy +/- 10m in X axis, +/- 6m in Y and Z axes.",1548,21.21,21.75,-158.32,-157.62,1,0,9603,58,-283,-182,,,,,0 +82,1893,4139,4326,Derived at 11 stations.,For military purposes only. Accuracy 3m in each axis.,1335,17.63,18.77,-67.96,-64.25,1,0,9603,11,72,-101,,,,,1 +83,1473,4140,4326,"For many purposes NAD83(CSRS98) can be considered to be coincident with WGS 84.","Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.",1336,44.61,62.56,-120,-57.1,1,1,9603,0,0,0,,,,,0 +84,1073,4141,4326,For more accurate transformation contact Survey of Israel.,"Accuracy: 2m",2603,29.49,33.27,34.22,35.68,1,0,9603,-48,55,52,,,,,1 +85,1469,4142,4326,,"?",2282,5.13,5.92,-4.8,-3.4,1,0,9603,-125,53,467,,,,,1 +86,1470,4143,4326,"Derived in Abidjan for use in the immediate area, but used by E&P industry more widely onshore and offshore. A similar transformation (dX=-123.1, dY=+53.2, dZ=+465.4, derivation unknown) was used by Western Geophysical for offshore surveys in the 1990s.",Accuracy is submetre in the area around Abidjan but unknown farther afield. There is some evidence of unknown reliability that suggests accuracy of better than 2m throughout offshore.,1075,0.84,10.74,-8.61,-2.49,1,0,9603,-124.76,53,466.79,,,,,1 +87,1155,4144,4326,Derived at 6 stations.,"For military purposes. Accuracy 10m, 8m and 12m in X, Y and Z axes.",3217,20.63,26.65,88.1,92.72,1,0,9603,282,726,254,,,,,1 +88,1533,4144,4326,,Oil exploration.,2361,14.5,16.5,94,98,1,0,9603,214,804,268,,,,,0 +89,1247,4145,4326,"Care! DMA ellipsoid is inconsistent with EPSG ellipsoid - transformation parameter values may not be appropriate. No accuracy estimate available.",For military purposes.,3289,23.6,37.08,60.91,77.87,1,0,9603,283,682,231,,,,,1 +90,15494,4145,4326,Derived by Fugro-Geodetic in 2004 at 6 closely-spaced stations. Used by OMV in all blocks in Pakistan where operator.,Oil exploration.,3589,26.5,27.5,68.25,69.25,1,0,9603,274.164,677.282,226.704,,,,,0 +91,15701,4145,4326,Derived at Geodetic Survey office in Karachi in 1997.,Oil exploration.,2985,22,25.5,65,69,1,0,9603,275.57,676.78,229.6,,,,,0 +92,15702,4145,4326,"Derived at station S0001, an approximate offset to Survey of India primary station Kat Baman, in 1992 from 180 single point Transit passes observed in 1991 by Fugro-Geodetic for UTP.",Oil exploration.,2984,24,25.36,67.8,68.79,1,0,9603,278.9,684.39,226.05,,,,,0 +93,15703,4145,4326,Derived at Chitrawala triangulation station by Fugro-Geodetic for UTP.,Oil exploration.,2982,24.8,25.1,66.8,67.2,1,0,9603,271.905,669.593,231.495,,,,,0 +94,15704,4145,4326,Derived by Western Geophysical for UTP 1996 East Sind 2D survey.,Oil exploration.,2983,26,27,68,71.1,1,0,9606,230.25,632.76,161.03,-1.114,1.115,1.212,12.584,0 +95,1156,4146,4326,"Care! DMA ellipsoid is inconsistent with EPSG ellipsoid - transformation parameter values may not be appropriate. Derived at 7 stations.","For military purposes. Accuracy 12m, 10m and 15m in X, Y and Z axes.",2411,6.75,35.51,68.14,97.38,1,0,9603,295,736,257,,,,,1 +96,1544,4147,4326,Derived in Vung Tau area.,Oil exploration.,1494,8.54,12.33,104.5,107.5,1,0,9603,-17.51,-108.32,-62.39,,,,,1 +97,1505,4148,4326,,For many purposes Hartebeesthoek94 datum can be considered to be coincident with WGS 84.,1215,-50.34,-22.14,14.03,41.16,1,0,9603,0,0,0,,,,,1 +98,1508,4149,4326,"Implemented in Bundesamt für Landestopographie programme GRANIT.","?",1286,45.83,47.81,5.97,10.49,1,1,9607,660.077,13.551,369.344,0.804816,0.577692,0.952236,5.66,0 +99,1510,4149,4326,"These parameters are strictly between CH1903+ and CHTRF95 but are used from CH1903 as an approximation which is within the accuracy of the distortions in the CH1903 network.",Accuracy 1.5 metres.,1286,45.83,47.81,5.97,10.49,1,1,9603,674.374,15.056,405.346,,,,,0 +100,1753,4149,4326,"Implemented in Bundesamt für Landestopographie programme GRANIT. Used from 1987 to 1997. Not recommended for current usage - replaced by CH1903 to WGS 84 (2) (code 1766).","?",1286,45.83,47.81,5.97,10.49,1,0,9607,660.077,13.551,369.344,0.804816,0.577692,0.952236,5.66,0 +101,1766,4149,4326,"These parameters are derive from CH1903+ to ETRS89 (code 1647) and are used at lesser precision from CH1903 to WGS 84 as an approximation which is within the accuracy of the distortions in the CH1903 network. Replaces CH1903 to WGS 84 (1) (code 1753).",Accuracy 1.5 metres.,1286,45.83,47.81,5.97,10.49,1,0,9603,674.4,15.1,405.3,,,,,1 +102,1676,4150,4326,"Parameter values are from CH1903+ to CHTRF95 (1) (code 1509) assuming that CHTRF95 is equivalent to WGS 84. That transformation is also given as CH1903+ to ETRS89 (1) (code 1647). CHTRF95 is a realisation of ETRS89.","Approximation at the +/- 1m level.",1286,45.83,47.81,5.97,10.49,1,0,9603,674.374,15.056,405.346,,,,,1 +103,1511,4151,4326,,For many purposes CHTRF95 can be considered to be coincident with WGS 84.,1286,45.83,47.81,5.97,10.49,1,0,9603,0,0,0,,,,,1 +104,1580,4152,4326,"For many purposes NAD83(HARN) can be considered to be coincident with WGS 84.","Approximation at the +/- 1m level assuming that NAD83(HARN) is equivalent to WGS 84.",1337,-14.58,49.38,144.58,-64.51,1,0,9603,0,0,0,,,,,1 +105,1900,4152,4326,"Strictly between NAD83(HARN) and ITRF94(1996.0). Replaced by NAD83(HARN) to WGS 84 (3) (code 1901).",Historical record only - superseded - see remarks.,1323,24.41,49.38,-124.79,-66.92,1,0,9607,-0.9738,1.9453,0.5486,-0.0275507901704247,-0.0100492213603585,-0.0113590028800276,0,0 +106,1901,4152,4326,"Jointly derived by US NGS and Geodetic Survey of Canada as transformation to target CRS of ITRF96(1997.0) - see also tfm code 1946. In USA only replaces NAD83 to WGS 84 (2) (code 1900).","Geodesy. Accuracy with respect to CORS at stations adjusted to HARN network is better than 0.05-0.07m. For locations outside a HARN network (i.e. NAD83), accuracy may be only 1m but will usually be better than 0.5m.",1323,24.41,49.38,-124.79,-66.92,1,0,9607,-0.991,1.9072,0.5129,-0.0257899075194932,-0.0096500989602704,-0.0116599432323421,0,0 +107,15930,4152,4326,"Accuracy 0.1 to 0.2m in California, 0.05-0.11 in Oregon, elsewhere better than 0.05m.",For applications to an accuracy of 0.2 metre.,1323,24.41,49.38,-124.79,-66.92,1,1,9603,0,0,0,,,,,0 +108,1512,4153,4326,"Derived in 1998 at Assaluyeh (Taheri refinery) by Geoid for Total. Used for South Pars phases 2 and 3.",Oil industry engineering survey. Used only for terminal site.,1338,27.4,27.6,52.5,52.7,1,0,9603,-133.63,-157.5,-158.62,,,,,1 +109,1141,4154,4326,"Given by DMA as from ED50. OGP interpret that as ED50(ED77) in Iran. Derived at 27 stations.","For military purposes. Accuracy 9m, 12m and 11m in X, Y and Z axes.",1123,23.35,39.8,44.06,63.37,1,0,9603,-117,-132,-164,,,,,1 +110,1514,4154,4326,"Used for South Pars phases 6, 7 and 8.","Transformation for whole country: accuracy about 1m.",1123,23.35,39.8,44.06,63.37,1,0,9606,-110.33,-97.73,-119.85,0.3423,1.1634,0.2715,0.063,0 +111,1856,4154,4326,Derived in Kangan district by Geoid for Total in 1998. Used for South Pars phases 2 and 3.,Petroleum Exploration and Production.,2783,26.55,26.75,52.05,52.3,1,0,9603,-122.89,-159.08,-168.74,,,,,0 +112,1857,4154,4326,Derived in 1999 on Lavan island by Geoid for Elf.,Petroleum Exploration and Production.,2782,26.2,26.8,52.4,53.3,1,0,9603,-84.78,-107.55,-137.25,,,,,0 +113,1858,4154,4326,Derived by Geoid for Elf in 1999. EGM96 geoid used.,Petroleum Exploration and Production.,2781,29,29.33,50.15,50.4,1,0,9603,-123.92,-155.515,-157.721,,,,,0 +114,15745,4154,4326,Derived in Tombak district in March 2005. Used for South Pars phase 11.,Petroleum Exploration and Production.,3140,26.67,26.95,52.17,52.45,1,0,9603,-123.02,-158.95,-168.47,,,,,0 +115,1518,4155,4326,,Accuracy 25m in each axis.,3257,7.16,12.69,-15.12,-7.65,1,0,9603,-83,37,124,,,,,1 +116,1623,4156,4326,"Parameter values from S-JTSK to ETRS89 (1) (code 1622). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaced by S-JTSK to WGS 84 (5) (code 5239).",For applications to an accuracy of 1 metre.,1079,48.56,51.09,12.11,18.98,1,0,9606,570.8,85.7,462.8,4.998,1.587,5.261,3.56,0 +117,1625,4156,4326,"Parameter values from S-JTSK to ETRS89 (2) (code 1624). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1211,47.74,49.65,16.84,22.58,1,1,9606,559,68.7,451.5,7.92,4.073,4.251,5.71,0 +118,4828,4156,4326,"Parameter values from S-JTSK to ETRS89 (4) (code 4827). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1211,47.74,49.65,16.84,22.58,1,1,9606,485,169.5,483.5,7.786,4.398,4.103,0,0 +119,4836,4156,4326,"Parameter values from S-JTSK to ETRS89 (4) (code 4827). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1211,47.74,49.65,16.84,22.58,1,0,9606,485,169.5,483.8,7.786,4.398,4.103,0,0 +120,5239,4156,4326,"Parameter values from S-JTSK/05 to WGS 84 (1) (code 5227). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaces tfm code 1622.",For applications to an accuracy of 1 metre.,1079,48.56,51.09,12.11,18.98,1,0,9607,572.213,85.334,461.94,-4.9732,-1.529,-5.2484,3.5378,0 +121,15965,4156,4326,Derived at 6 stations.,"For military purposes. Accuracy 4m, 2m and 3m in X, Y and Z axes.",1306,47.74,51.05,12.09,22.56,1,0,9603,589,76,480,,,,,1 +122,1283,4669,4326,,LKS94 is a realisation of ETRS89 coincident to WGS 84 within 1 metre. This transformation has an accuracy equal to the coincidence figure.,1145,53.92,56.48,21.07,26.82,1,0,9603,0,0,0,,,,,1 +123,1099,4670,4326,"Parameter values taken from IGM95 to ETRS89 (1) (code 1098) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the transformation.",Approximation at the 1m level.,3343,34.49,47.12,5.95,18.97,1,0,9603,0,0,0,,,,,1 +124,1859,4159,4326,"Used by Repsol in Murzuq field, and PetroCanada and previous licence holders in NC177 and 72 (En Naga field). Reliability of connection to ELD79 questionned.",Oil Exploration,2785,24,28,13,19,1,0,9603,-69.06,-90.71,-142.56,,,,,0 +125,1860,4159,4326,Derived December 2001 by NAGECO. Connected to ITRF via Remsa 2000 data. Used by TotalFinaElf.,Oil Exploration. 3-dimensional SD at 11 points is 0.5m.,2785,24,28,13,19,1,0,9603,-113.997,-97.076,-152.312,,,,,0 +126,1861,4159,4326,Derived by GEOID in 1994 from Transit satellite data. Used by TotalFinaElf.,Oil Exploration,2786,29.6,29.9,17.2,17.5,1,0,9603,-114.5,-96.1,-151.9,,,,,0 +127,1862,4159,4326,"Derived by Geoid in 2000 from ITRF connection by NAGECO for TotalFinaElf. For historic compatibility TFE use the 1994 tfm ELD79 to WGS 84 (3) (code 1861) rather than this transformation.",Oil Exploration,2786,29.6,29.9,17.2,17.5,1,0,9606,-194.513,-63.978,-25.759,-3.4027,3.756,-3.352,-0.9175,0 +128,1863,4159,4326,"Derived for the Great Man-made River Authority (GMRA).",Engineering survey and oil exploration,2786,29.6,29.9,17.2,17.5,1,0,9607,-389.691,64.502,210.209,-0.086,-14.314,6.39,0.9264,0 +129,15707,4159,4326,"Used by Petrocanada and previous licence holders in Amal field, concession 12.",Oil exploration and production,2987,29.2,29.6,21,21.3,1,0,9603,-118.996,-111.177,-198.687,,,,,0 +130,15778,4159,4326,"Derived by Total at stations SDL 130-03, 04 and 05 in May 2005.",Oil exploration and production.,3142,27.83,28.67,21.17,21.83,1,0,9603,-114.7,-98.5,-150.7,,,,,0 +131,15909,4159,4326,Derived at 29 stations throughout Libya in May 2006.,For applications to an accuracy of 5 metres.,3271,19.51,32.9,9.31,25.15,1,0,9603,-115.8543,-99.0583,-152.4616,,,,,1 +132,15923,4159,4326,"Derived by SDL for Total in Cyrenaica blocks 2 & 4.",Oil and gas exploration.,3477,32,32.67,22.5,23,1,0,9603,-117.7,-100.3,-152.4,,,,,0 +133,1080,4672,4326,Derived at 4 stations.,For military purposes. Accuracy 15m in each axis.,2889,-45,-43,-178,-175,1,0,9603,175,-38,113,,,,,1 +134,1081,4673,4326,Derived at 4 stations using concatenation through WGS72. Parameter vales are also used to transform CI1979 to NZGD2000 - see tfm code 1082.,For applications requiring 2m accuracy.,2889,-45,-43,-178,-175,1,0,9607,174.05,-25.49,112.57,0,0,-0.554,0.2263,1 +135,15894,4674,4326,,Accuracy 1m.,3418,-59.86,32.72,-122.18,-26.01,1,0,9603,0,0,0,,,,,1 +136,1070,4675,4326,Derived at 5 stations.,For military purposes only. Accuracy 3m in each axis.,3255,13.19,13.7,144.58,145,1,0,9603,-100,-248,259,,,,,1 +137,1682,4164,4326,"Parameter values taken from South Yemen to Yemen NGN96 (1) (code 1539) assuming that NGN96 is equivalent to WGS 84 within the accuracy of the transformation.","Approximation at the +/- 1m level.",1340,12,15,42.5,53,1,0,9603,-76,-138,67,,,,,1 +138,1547,4165,4326,Derived at 2 stations.,For military purposes only. Accuracy 25m in each axis.,3258,10.89,12.69,-16.73,-13.65,1,0,9603,-173,253,27,,,,,1 +139,1065,4678,4326,Derived at 25 stations.,Accuracy 5m.,1138,13.92,22.51,100.15,107.76,1,0,9603,44.585,-131.212,-39.544,,,,,1 +140,1565,4167,4326,,Assumes NZGD2000 is coincident to WGS 84 to the 1m accuracy level.,1175,-55.95,-22.74,157.41,-170.89,1,0,9603,0,0,0,,,,,1 +141,1569,4168,4326,Derived at 3 common points.,Military survey,1104,1.08,11.17,-3.9,1.34,1,0,9603,-199,32,322,,,,,1 +142,15495,4168,4326,Derived via WGS 72BE. Found in use within oil industry erroneously concatenated via WGS 72. See tfm code 8571.,Oil industry.,1505,1.08,6.1,-3.9,1.34,1,0,9606,-171.16,17.29,325.21,0,0,0.814,-0.38,0 +143,1577,4169,4326,Transformation based on observations at 2 stations in 1993.,For military purposes. One sigma uncertainty is 25m in each axis.,3109,-14.43,-14.12,-170.87,-169.39,1,0,9603,-115,118,426,,,,,1 +144,1581,4170,4326,,For military purposes. Accuracy 1m in each axis.,3448,-59.86,16.75,-113.2,-26.01,1,0,9603,0,0,0,,,,,1 +145,1671,4171,4326,"Parameter values from RGF93 to ETRS89 (1) (code 1591) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation.","Approximation at the +/- 1m level.",1096,41.18,51.54,-9.62,10.3,1,0,9603,0,0,0,,,,,1 +146,1598,4172,4326,,"?",1033,-58.4,-21.78,-73.58,-52.63,1,1,9603,0,0,0,,,,,0 +147,1678,4173,4326,Assumes that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. IRENET95 is a regional realisation of ETRS89.,"Approximation at the +/- 1m level.",3744,51.33,55.4,-10.6,-5.33,1,0,9603,0,0,0,,,,,1 +148,15738,4686,4326,,MAGNA-SIRGAS is a realisation of WGS 84 coincident to within 1 metre. This transformation has an accuracy equal to the coincidence figure.,1070,-4.24,15.5,-84.77,-66.87,1,0,9603,0,0,0,,,,,1 +149,1614,4175,4326,"Determined at 8 stations. Info. source has the source CRS as Sierra Leone 1960. Sierra Leone 1968 is a readjustment of the 1960 network: coordinates changed by less than 3 metres.","Accuracy +/- 15m in each axis.",3306,6.89,10,-13.3,-10.27,1,0,9603,-88,4,101,,,,,1 +150,1890,4176,4326,For many purposes Australian Antarctic can be considered to be coincident with WGS 84.,"Approximation at the +/- 1m level assuming that Australian Antarctic is equivalent to WGS 84.",1278,-90,-60,45,160,1,0,9603,0,0,0,,,,,1 +151,15773,4689,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from IGN63 Hiva Oa to RGPF (1) (tfm code 15761).","Accuracy +/- 1 metre.",3131,-9.88,-9.67,-139.18,-138.8,1,0,9607,410.721,55.049,80.746,-2.5779,-2.3514,-0.6664,17.3311,1 +152,15774,4689,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from IGN63 Hiva Oa to RGPF (2) (tfm code 15762).","Accuracy +/- 2 metres.",3132,-10.05,-9.88,-139.15,-139,1,0,9607,374.716,-58.407,-0.957,-16.2111,-11.4626,-5.5357,-0.5409,0 +153,1675,4178,4326,"Parameter values from Pulkovo 1942(83) to ETRS89 (1) (code 1674) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation.",Residuals under 2 m.,1343,50.17,54.72,9.87,15.03,1,0,9607,24,-123,-94,-0.02,0.25,0.13,1.1,0 +154,15996,4178,4326,Derived at 5 stations.,For military purposes. Accuracy 2m in each axis.,1119,45.78,48.6,16.12,22.91,1,0,9603,28,-121,-77,,,,,0 +155,15998,4178,4326,Derived at 6 stations.,"For military purposes only. Accuracy 3m, 3m and 2m in X, Y and Z axes.",1306,47.74,51.05,12.09,22.56,1,0,9603,26,-121,-78,,,,,1 +156,1645,4179,4326,"Parameter values from Pulkovo 1942(58) to ETRS89 (1) (code 1644). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,3293,49.03,54.87,14.14,24.16,1,0,9606,33.4,-146.6,-76.3,-0.359,-0.053,0.844,-0.84,1 +157,15496,4179,4326,,Oil exploration,1197,43.62,48.26,20.26,31.5,1,0,9603,44.107,-116.147,-54.648,,,,,0 +158,15497,4179,4326,Derived at 4 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",1197,43.62,48.26,20.26,31.5,1,0,9603,28,-121,-77,,,,,0 +159,15995,4179,4326,"Parameter values taken from Pulkovo 1942(58) to ETRS89 (4) (code 15994) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation.","Accuracy of 1.5 to 3 metres horizontal, 3 to 5m vertical.",1197,43.62,48.26,20.26,31.5,1,0,9607,2.329,-147.042,-92.08,0.309,-0.325,-0.497,5.69,0 +160,15997,4179,4326,Derived at 11 stations.,"For military purposes only. Accuracy 4m, 2m and 4m in X, Y and Z axes.",3293,49.03,54.87,14.14,24.16,1,0,9603,23,-124,-82,,,,,0 +161,15999,4179,4326,Derived at 7 stations.,For military purposes. Accuracy 3m in each axis.,3212,39.67,42.69,19.25,21.06,1,0,9603,24,-130,-92,,,,,0 +162,1649,4180,4326,"Parameter values taken from EST97 to ETRS89 (1) (code 1648). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1090,57.57,59.7,21.84,28,1,0,9603,0,0,0,,,,,1 +163,1643,4181,4326,"Parameter values from Luxembourg 1930 to ETRS89 (1) (code 1642). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1146,49.48,50.21,5.73,6.53,1,0,9606,-193,13.7,-39.3,-0.41,-2.933,2.688,0.43,0 +164,5486,4181,4326,"Parameter values from Luxembourg 1930 to ETRS89 (3) (code 5485) assuming ETRS89 and WGS 84 are coincident within the one metre level. Replaces tfm code 1643. For an equivalent transformation using the Molodensky-Badekas method see code 5484.",For applications to an accuracy of 1 metre.,1146,49.48,50.21,5.73,6.53,1,0,9607,-189.6806,18.3463,-42.7695,0.33746,3.09264,-2.53861,0.4598,1 +165,1210,4694,4326,,POSGAR 94 is a local realisation of WGS 84.,1033,-58.4,-21.78,-73.58,-52.63,1,0,9603,0,0,0,,,,,1 +166,1886,4183,4326,Derived at 5 stations.,For military purposes only. Accuracy 3m in each axis.,1301,38.37,39.15,-28.8,-27.05,1,0,9603,-104,167,-38,,,,,1 +167,1885,4184,4326,Derived at 2 stations.,For military purposes only. Accuracy 25m in each axis.,1345,36.9,37.95,-25.9,-24.95,1,0,9603,-203,141,53,,,,,1 +168,15794,4708,4326,Derived at 1 satellite station.,For military purposes only. Accuracy 25m in each axis.,1069,-15.54,-5.89,93.54,102.43,1,0,9603,-491,-22,435,,,,,1 +169,15850,4698,4326,"Also published in US NIMA/NGA TR8350.2 which gives accuracy of +/-25m in each axis and states that derived at one station.","Accuracy +/- 10 metres.",2816,-49.75,-48.5,68.5,70.6,1,0,9603,145,-187,103,,,,,1 +170,15784,4699,4326,Derived at 17 stations in 1994 by University of East London. Residuals less than 2m.,Accuracy 2m.,3209,-20.5,-19.95,57.3,57.8,1,0,9603,-770.1,158.4,-498.2,,,,,1 +171,1955,4188,4326,"Parameter values from TM75 to ETRS89 (2) (code 1953). Assumes each pair of (i) OSNI 1952 and TM75, and (ii) ETRS89 and WGS 84, can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,2530,54.01,55.31,-8.2,-5.42,1,0,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15,1 +172,1768,4189,4326,,"Approximation at the +/- 1m level.",1251,0.65,16.75,-73.38,-58.95,1,0,9603,0,0,0,,,,,1 +173,1773,4190,4326,,"Approximation at the +/- 1m level.",1033,-58.4,-21.78,-73.58,-52.63,1,0,9603,0,0,0,,,,,1 +174,15780,4190,4326,,"Approximation at the +/- 1m level.",1033,-58.4,-21.78,-73.58,-52.63,1,1,9603,0,0,0,,,,,0 +175,15873,4192,4326,Derived at Manoca tower assuming the pyramid on the tower and the centre of the tower reservoir are co-located. This assumption carries a few metres uncertainty.,Oil exploration.,2555,1.5,5,8.4,12,1,0,9603,-206.1,-174.7,-87.7,,,,,1 +176,1796,4193,4326,"Derived at two points, checked at a third by Stolt Comex Seaway and Geoid for Elf.",Oil industry,2555,1.5,5,8.4,12,1,0,9603,-70.9,-151.8,-41.4,,,,,1 +177,1797,4194,4326,Derived at 2 stations.,"For military purposes. Accuracy 25m, 25m and 32m in X, Y and Z axes.",3362,59.74,79,-73.28,-42.52,1,0,9603,164,138,-189,,,,,1 +178,1798,4194,4326,,Topographic mapping.,3362,59.74,79,-73.28,-42.52,1,0,9606,163.511,127.533,-159.789,0,0,0.814,-0.6,0 +179,1799,4195,4326,,Topographic mapping.,2570,68.66,74.58,-29.68,-19.89,1,0,9606,105,326,-102.5,0,0,0.814,-0.6,1 +180,1800,4196,4326,,Topographic mapping.,2571,65.52,65.9,-38.86,-36.82,1,0,9606,-45,417,-3.5,0,0,0.814,-0.6,1 +181,15796,4709,4326,Derived at 1 satellite station.,For military purposes only. Accuracy 25m in each axis.,3200,24.74,24.823,141.28,141.36,1,0,9603,145,75,-272,,,,,1 +182,15798,4710,4326,Derived at 1 satellite station.,For military purposes only. Accuracy 25m in each axis.,3183,-16.03,-15.88,-5.81,-5.63,1,0,9603,-320,550,-494,,,,,1 +183,15799,4711,4326,Derived at 1 satellite station.,For military purposes only. Accuracy 25m in each axis.,3203,24.26,24.32,153.95,154.01,1,0,9603,124,-234,-25,,,,,1 +184,1281,4200,4326,"Derived through concatenation of Pulkovo 1995 to PZ-90 (1) (tfm code 1257) and PZ-90 to WGS 84 (2) (tfm code 1244). Mandated for use in Russia by GOST R 51794-2001, but this has been superseded by GOST R 51794-2008. Replaced by tfm code 5043.",Accuracy 1 metre.,1198,41.17,82,19.2,-168.98,1,0,9607,24.82,-131.21,-82.66,0,0,-0.16,-0.12,0 +185,5043,4200,4326,"Derived through concatenation of Pulkovo 1995 to PZ-90.02 to WGS 84. Replaces Pulkovo 1995 to WGS 84 (1), tfm code 1281.",Accuracy 1 metre.,1198,41.17,82,19.2,-168.98,1,0,9607,24.47,-130.89,-81.56,0,0,-0.13,-0.22,1 +186,1100,4201,4326,Derived at 22 stations.,For military purposes only. Accuracy 5m in each axis.,1271,3.41,22.23,21.83,47.99,1,0,9603,-166,-15,204,,,,,1 +187,1101,4201,4326,"Derived at 1 station connected to the Adindan network through the 1968-69 12th parallel traverse. Note: Adindan datum is used in Ethiopia and Sudan, not Burkino Faso.",For military purposes. Accuracy 25m in each axis.,1057,9.4,15.08,-5.52,2.4,1,0,9603,-118,-14,218,,,,,0 +188,1102,4201,4326,"Derived at 1 station connected to the Adindan network through the 1968-69 12th parallel traverse. Note: Adindan datum is used in Ethiopia and Sudan, not Cameroon.",For military purposes. Accuracy 25m in each axis.,3226,1.66,13.09,8.51,16.22,1,0,9603,-134,-2,210,,,,,0 +189,1103,4201,4326,Derived at 8 stations.,For military purposes. Accuracy 3m in each axis.,1091,3.4,14.88,32.99,48.12,1,0,9603,-165,-11,206,,,,,0 +190,1104,4201,4326,"Derived at 1 station connected to the Adindan network through the 1968-69 12th parallel traverse. Note: Adindan datum is used in Ethiopia and Sudan, not Mali.",For military purposes. Accuracy 25m in each axis.,1153,10.15,25.02,-12.25,4.26,1,0,9603,-123,-20,220,,,,,0 +191,1105,4201,4326,"Derived at 2 stations connected to the Adindan network through the 1968-69 12th parallel traverse. Note: Adindan datum is used in Ethiopia and Sudan, not Senegal.",For military purposes. Accuracy 25m in each axis.,3304,12.32,16.7,-17.55,-11.37,1,0,9603,-128,-18,224,,,,,0 +192,1106,4201,4326,Derived at 14 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",3311,3.49,22.25,21.84,38.6,1,0,9603,-161,-14,205,,,,,0 +193,1108,4202,4326,Derived at 105 stations.,For military purposes only. Accuracy 3m in each axis.,2575,-45,-10,108,155,1,0,9603,-133,-48,148,,,,,0 +194,1665,4202,4326,"Parameter values from AGD66 to GDA94 (2) (code 1458). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation.",Recommended for mid-accuracy use in A.C.T. 1m accuracy.,2283,-35.92,-35.16,148.77,149.4,1,0,9607,-129.193,-41.212,130.73,-0.246,-0.374,-0.329,-2.955,0 +195,1666,4202,4326,"Parameter values from AGD66 to GDA94 (4) (code 1460). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation.",Recommended for mid-accuracy use in NSW and Victoria. 1m accuracy.,2286,-39.15,-28.15,140.95,153.62,1,0,9607,-119.353,-48.301,139.484,-0.415,-0.26,-0.437,-0.613,0 +196,1667,4202,4326,"Parameter values from AGD66 to GDA94 (8) (code 1594). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation.",Recommended for mid-accuracy use in Tasmania. 1m accuracy.,1282,-43.8,-39.57,143.83,148.96,1,0,9607,-120.271,-64.543,161.632,-0.217,0.067,0.129,2.499,0 +197,1668,4202,4326,"Parameter values from AGD66 to GDA94 (9) (code 1595). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation.",Recommended for mid-accuracy use in Northern Territory. 1m accuracy.,2284,-26,-11.02,129,138,1,0,9607,-124.133,-42.003,137.4,0.008,-0.557,-0.178,-1.854,0 +198,15788,4202,4326,"Parameter values from AGD66 to GDA94 (1) (code 1278). Derived at 162 stations. Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation.",5m accuracy.,2575,-45,-10,108,155,1,0,9603,-127.8,-52.3,152.9,,,,,0 +199,15980,4202,4326,"Parameter values from AGD66 to GDA94 (12) (code 15979). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation. Use only offshore: onshore tfms 1665-68 for ACT, NSW/Vic, Tas and NT respectively are more accurate.",3m accuracy.,3559,-60.04,-8.86,110.77,174.1,1,0,9607,-117.808,-51.536,137.784,-0.303,-0.446,-0.234,-0.29,1 +200,1109,4203,4326,"Derived at 90 stations. Note: AGD84 officially adopted only in Queensland, South Australia and Western Australia.",For military purposes only. Accuracy 2m in each axis.,2575,-45,-10,108,155,1,0,9603,-134,-48,149,,,,,1 +201,1236,4203,4326,"""Higgins parameters"". Replaced by AGD84 to GDA94 (2) (code 1280) and AGD84 to WGS 84 (7) (code 1669). Note: AGD84 officially adopted only in Queensland, South Australia and Western Australia.",Preliminary estimate.,2575,-45,-10,108,155,1,0,9607,-116,-50.47,141.69,-0.23,-0.39,-0.344,0.0983,0 +202,1669,4203,4326,"Parameter values from AGD84 to GDA94 (2) (code 1280). Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaces AGD84 to WGS 84 (2) (code 1236). Note: AGD84 officially adopted only in Qld, SA and WA.",1m accuracy.,2575,-45,-10,108,155,1,0,9607,-117.763,-51.51,139.061,-0.292,-0.443,-0.277,-0.191,0 +203,15789,4203,4326,"Parameter values from AGD84 to GDA94 (1) (code 1279). Derived at 327 stations. Assumes GDA94 and WGS 84 can be considered the same to within the accuracy of the tfm. AGD84 officially adopted only in Queensland, South Australia and Western Australia.",5m accuracy.,2575,-45,-10,108,155,1,0,9603,-128.5,-53,153.4,,,,,0 +204,1055,4204,4326,Derived at station K1.,1 metre accuracy.,1136,28.56,30.1,46.57,49.24,1,0,9603,-145.7,-249.1,1.5,,,,,0 +205,1056,4204,4326,"Derivation is more precise, but no evidence that accuracy is better than Ain el Abd to WGS 84 (3). OGP recommends using Ain el Abd to WGS 84 (3).",1 metre accuracy.,1136,28.56,30.1,46.57,49.24,1,0,9607,-85.645,-273.077,-79.708,-2.289,1.421,-2.532,3.194,0 +206,1057,4204,4326,.,1 metre accuracy.,2956,29.1,30.1,46.57,49.24,1,0,9607,-202.234,-168.351,-63.51,-3.545,-0.659,1.945,2.1,0 +207,1058,4204,4326,,1 metre accuracy.,2957,28.56,29.33,46.57,48.45,1,0,9607,-18.944,-379.364,-24.063,-0.04,0.764,-6.431,3.657,0 +208,1110,4204,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,1040,25.57,27.18,50.3,51.41,1,0,9603,-150,-250,-1,,,,,0 +209,1111,4204,4326,Derived at 9 stations.,For military purposes. Accuracy 10m in each axis.,1206,15.9,32.26,34.27,55.7,1,0,9603,-143,-236,7,,,,,1 +210,1107,4205,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,1214,-2.39,13.4,41.01,54.98,1,0,9603,-43,-163,45,,,,,1 +211,15805,4718,4326,Derived at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3198,-8.15,-8,156.7,156.9,1,0,9603,230,-199,-752,,,,,0 +212,15807,4718,4326,Derived at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3197,-9.96,-9.24,159.56,160.91,1,0,9603,252,-209,-751,,,,,1 +213,1656,4207,4326,"Parameter values from Lisbon to ETRS89 (1) (code 1655). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaced by Lisbon to WGS 84 (4) (code 1988).",For applications to an accuracy of 3 metres.,1294,37.01,42.15,-9.5,-6.19,1,0,9606,-280.9,-89.8,130.2,-1.721,0.355,-0.371,-5.92,0 +214,1944,4207,4326,"Parameter values from Lisbon to ETRS89 (2) (code 1790). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 2 metres.,1294,37.01,42.15,-9.5,-6.19,1,1,9606,-282.1,-72.2,120,-1.592,0.145,-0.89,-4.46,0 +215,1984,4207,4326,,For low resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9603,-304.046,-60.576,103.64,,,,,1 +216,1988,4207,4326,,For medium resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9607,-288.885,-91.744,126.244,1.691,-0.41,0.211,-4.598,0 +217,1549,4208,4326,,Oil exploration.,2307,-28.4,-17.59,-48.79,-35.19,1,1,9603,-158,315,-148,,,,,0 +218,1550,4208,4326,"Replaced by Aratu to WGS 84 (18) (tfm code 5061) which Petrobras now recommends for the area.",Oil exploration.,2308,-9.8,-8.4,-39.03,-37.09,1,0,9603,-139.62,290.53,-150.29,,,,,0 +219,1551,4208,4326,"Replaced by Aratu to WGS 84 (18) (tfm code 5061) which Petrobras now recommends for the area.",Oil exploration.,2309,-10.6,-9.8,-39.13,-38,1,0,9603,-141.15,293.44,-150.56,,,,,0 +220,1552,4208,4326,"Replaced by Aratu to WGS 84 (18) (tfm code 5061) which Petrobras now recommends for the area.",Oil exploration.,2310,-12.26,-10.6,-39.07,-37.99,1,0,9603,-142.48,296.03,-149.74,,,,,0 +221,10089,4208,4326,"Used by ExxonMobil for block BMS1. See WGS 84 (13) (tfm code 5051) which Petrobras now recommends for the area.",Oil exploration.,2962,-28.4,-22.67,-48.79,-40.2,1,0,9603,-163.466,317.396,-147.538,,,,,0 +222,10090,4208,4326,"Used by ExxonMobil for block BC10. Derived from earlier Shell position vector tfm of dX = -181m, dY = +294m, dZ = -144.5m, rX = rY = 0, rZ = +0.554s, dS = +0.219 ppm. See Aratu to WGS 84 (14) (tfm code 5053) which Petrobras now recommends for the area.",Oil exploration.,2963,-25.91,-20.45,-42.03,-37.11,1,0,9603,-170,305,-145,,,,,0 +223,10091,4208,4326,"Used by ExxonMobil for block BMES1. See Aratu to WGS 84 (15) (tfm code 5055) which Petrobras now recommends for the area.",Oil exploration.,2964,-22.04,-17.59,-40.37,-35.19,1,0,9603,-162.904,312.531,-137.109,,,,,0 +224,10092,4208,4326,"Used by ExxonMobil for block BP1. Also used by BG as part of a concatenated tfm to SAD69 for offshore regional studies. See WGS 84 (13) (tfm code 5051) for transformation Petrobras now recommends for the area.",Oil exploration.,2965,-35.71,-28.12,-53.37,-44.71,1,0,9603,-158,309,-151,,,,,0 +225,10093,4208,4326,"Used by ExxonMobil for offshore regional studies. See Aratu to WGS 84 (13) through (21) (tfm codes 5051-67 [odd numbers only]) which Petrobras now recommends for various areas.",Oil exploration.,2966,-34,-18,-53.37,-35.2,1,0,9603,-161,308,-142,,,,,0 +226,10094,4208,4326,Derived by IGN in 1992 at 7 stations within Nouakchott city.,Oil exploration.,2972,17.8,18.3,-16.67,-15.75,1,1,9603,124.5,-63.5,-281,,,,,0 +227,5051,4208,4326,"Parameters from Aratu to SIRGAS 2000 (1) (tfm code 5050) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area. Replaces tfm codes 15711 and 15734.",Oil exploration.,3700,-35.71,-22.67,-53.37,-40.2,1,0,9603,-157.84,308.54,-146.6,,,,,0 +228,5053,4208,4326,"Parameters from Aratu to SIRGAS 2000 (2) (tfm code 5052) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area. Replaces tfm codes 15710 and 15754.",Oil exploration.,2963,-25.91,-20.45,-42.03,-37.11,1,0,9603,-160.31,314.82,-142.25,,,,,0 +229,5055,4208,4326,"Parameters from Aratu to SIRGAS 2000 (3) (tfm code 5054) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area. Replaces tfms 15712 and 15754.",Oil exploration.,2964,-22.04,-17.59,-40.37,-35.19,1,0,9603,-161.11,310.25,-144.64,,,,,0 +230,5057,4208,4326,"Parameters from Aratu to SIRGAS 2000 (4) (tfm code 5056) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area.",Oil exploration.,3699,-17.7,-13.02,-39.21,-34.61,1,0,9603,-160.4,302.29,-144.19,,,,,0 +231,5059,4208,4326,"Parameters from Aratu to SIRGAS 2000 (5) (tfm code 5058) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area.",Oil exploration.,3692,-13.57,-11.19,-39.08,-35.31,1,0,9603,-153.54,302.33,-152.37,,,,,0 +232,5061,4208,4326,"Parameters from Aratu to SIRGAS 2000 (6) (tfm code 5060) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area. Replaces tfms 1550-1552.",Oil exploration.,3693,-12.26,-8.4,-39.13,-37.09,1,0,9603,-151.5,300.09,-151.15,,,,,0 +233,5063,4208,4326,"Parameters from Aratu to SIRGAS 2000 (7) (tfm code 5062) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area.",Oil exploration.,3696,-13.57,-8.73,-37.33,-32.02,1,0,9603,-156.8,298.41,-147.41,,,,,0 +234,5065,4208,4326,"Parameters from Aratu to SIRGAS 2000 (8) (tfm code 5064) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation.Petrobras preferred parameters for all purposes in the area.",Oil exploration.,3697,-10.16,-4.61,-35.09,-29.14,1,0,9603,-157.4,295.05,-150.19,,,,,0 +235,5067,4208,4326,"Parameters from Aratu to SIRGAS 2000 (9) (tfm code 5066) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation. Petrobras preferred parameters for all purposes in the area.",Oil exploration.,3698,-6.5,4.25,-44.79,-26.01,1,0,9603,-151.99,287.04,-147.45,,,,,1 +236,15710,4208,4326,"Replaced by Aratu to WGS 84 (14) (tfm code 5053) which Petrobras now recommends for the area.",Oil exploration.,2963,-25.91,-20.45,-42.03,-37.11,1,0,9603,-160,315,-142,,,,,0 +237,15711,4208,4326,"Replaced by Aratu to WGS 84 (13) (tfm code 5051) which Petrobras now recommends for the area.",Oil exploration.,2962,-28.4,-22.67,-48.79,-40.2,1,0,9603,-158,309,-147,,,,,0 +238,15712,4208,4326,"Replaced by Aratu to WGS 84 (15) (tfm code 5055) which Petrobras now recommends for the area.",Oil exploration.,2964,-22.04,-17.59,-40.37,-35.19,1,0,9603,-161,310,-145,,,,,0 +239,15754,4208,4326,"Mean for 3 basins. See Aratu to WGS 84 (10) through (12) (codes 15710-12) for transformations for individual basins. Replaced by Aratu to WGS 84 (13) through (15) (tfm codes 5051, 5053 and 5055) which Petrobras now recommends for the areas.",Oil exploration.,2307,-28.4,-17.59,-48.79,-35.19,1,0,9603,-158,315,-148,,,,,0 +240,1113,4209,4326,Derived at 41 stations.,"For military purposes only. Accuracy 20m, 33m and 20m in X, Y and Z axes.",2312,-30.65,-8.2,20,35.92,1,0,9603,-143,-90,-294,,,,,1 +241,1114,4209,4326,Derived at 9 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",1051,-26.88,-17.78,20,29.37,1,0,9603,-138,-105,-289,,,,,0 +242,1115,4209,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,1058,-4.46,-2.3,29,30.87,1,1,9603,-153,-5,-292,,,,,0 +243,1116,4209,4326,Derived at 5 stations.,"For military purposes. Accuracy 3m, 3m and 8m in X, Y and Z axes.",1141,-30.68,-28.59,27.03,29.47,1,0,9603,-125,-108,-295,,,,,0 +244,1117,4209,4326,Derived at 6 stations.,"For military purposes. Accuracy 9m, 24m and 8m in X, Y and Z axes.",1150,-17.15,-9.38,32.7,35.95,1,0,9603,-161,-73,-317,,,,,0 +245,1118,4209,4326,Derived at 4 stations.,For military purposes. Accuracy 15m in each axis.,1224,-27.31,-25.74,30.82,32.15,1,0,9603,-134,-105,-295,,,,,0 +246,1119,4209,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,1259,-13.46,5.38,12.21,31.3,1,1,9603,-169,-19,-278,,,,,0 +247,1120,4209,4326,Derived at 5 stations.,"For military purposes. Accuracy 21m, 21m and 27m in X, Y and Z axes.",1260,-18.09,-8.2,22.01,33.72,1,0,9603,-147,-74,-283,,,,,0 +248,1121,4209,4326,Derived at 10 stations.,"For military purposes. Accuracy 5m, 8m and 11m in X, Y and Z axes.",1261,-22.43,-15.63,25.25,33.09,1,0,9603,-142,-96,-293,,,,,0 +249,1122,4210,4326,Derived at 25 stations.,For military purposes only. Accuracy 20m in each axis.,2311,-11.74,4.62,29.34,41.91,1,0,9603,-160,-6,-302,,,,,1 +250,1284,4210,4326,Derived at 24 stations.,"For military purposes. Accuracy 4m, 3m and 3m in X, Y and Z axes.",1132,-4.9,5.03,33.93,45.17,1,0,9603,-157,-2,-299,,,,,0 +251,1285,4210,4326,Derived at 12 stations.,"For military purposes. Accuracy 6m, 9m and 10m in X, Y and Z axes.",1230,-11.75,-1,29.36,43.51,1,0,9603,-175,-23,-303,,,,,0 +252,3998,4210,4326,"Derived at 3 stations. From inspection of parameter values and geographic applicability of CRS, OGP believes that the published source CRS (Arc 1950) has been misidentified by information source. Analysis of TR8350.2 contour charts suggest Arc 1960.",For military purposes. Accuracy 20m in each axis.,1058,-4.46,-2.3,29,30.87,1,0,9603,-153,-5,-292,,,,,0 +253,1123,4211,4326,"Note: The area of use cited for this transformation (Sumatra) is not consistent with the area of use (Java) for the Batavia (Genuk) coordinate reference system. Derived at 5 stations.",For military purposes. Accuracy 3m in each axis.,1355,-6.5,6,95,108.55,1,0,9603,-377,681,-50,,,,,1 +254,1813,4211,4326,Used by ARCO offshore NW Java area.,Oil industry operations.,2577,-6,-2.75,106,110,1,0,9603,-378.873,676.002,-46.255,,,,,0 +255,1814,4211,4326,Used by PT Komaritim for Nippon Steel during East Java Gas Pipeline construction.,Oil industry operations.,2588,-7,-4,112,118.5,1,0,9603,-377.7,675.1,-52.2,,,,,0 +256,15793,4212,4326,"Derived at 2 stations (S40 and M1, St Annes Tower) in 2004.",Accuracy 2.5m.,3218,13,13.39,-59.71,-59.38,1,0,9603,31.95,300.99,419.19,,,,,1 +257,15809,4725,4326,"Derived at 2 satellite stations. Note: NGA online html files carry a different dZ value - OGP believe this is an erroneous transcription from the TR8350.2 line above.","Military and topographic mapping. Accuracy +/- 25m in each axis.",3201,16,16.81,-169.63,-169.3,1,0,9603,189,-79,-202,,,,,1 +258,15814,4726,4326,Determined from 1 satellite station.,"Military mapping. Accuracy +/- 25m in each axis.",3186,19.64,19.78,-80.13,-79.69,1,0,9603,42,124,147,,,,,1 +259,15829,4726,4326,Determined from 2 satellite stations.,"Topographic survey. Accuracy +/- 1m.",3186,19.64,19.78,-80.13,-79.69,1,0,9603,44.4,109,151.7,,,,,0 +260,15800,4713,4326,Derived at 1 satellite station.,For military purposes only. Accuracy 25m in each axis.,1081,10.94,12.83,41.78,44.05,1,0,9603,-79,-129,145,,,,,1 +261,1124,4216,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,3221,32.21,32.43,-64.88,-64.62,1,0,9603,-73,213,296,,,,,1 +262,15970,4216,4326,"Parameter values from Bermuda 1957 to BDA2000 (1) (code 15969). Assumes BDA2000 and WGS 84 can be considered the same to within the accuracy of the transformation.","Accuracy +/- 1 metre.",3221,32.21,32.43,-64.88,-64.62,1,0,9607,-292.295,248.758,429.447,-4.9971,-2.99,-6.6906,1.0289,0 +263,15819,4729,4326,Derived at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25 m in each axis.",3208,-25.16,-25,-130.18,-129.99,1,0,9603,185,165,42,,,,,1 +264,1125,4218,4326,Derived in 1987 at 7 stations.,"For military purposes. Accuracy 6m, 5m and 6m in X, Y and Z axes.",3686,-4.24,13.67,-79.1,-66.87,1,0,9603,307,304,-318,,,,,1 +265,1597,4218,4326,Derived in 1995 by WGC at first order stations Recreo and Mena via multi-day ties to 4 IGS stations. Residuals under 20cm.,Oil exploration.,2315,4.75,5.67,-73,-72.25,1,0,9603,304.5,306.5,-318.1,,,,,0 +266,15715,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (1) (tfm code 15714).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3082,9.8,12.51,-73,-71.06,1,0,9607,-806.413,-263.5,-622.671,12.4142185637707,-2.99084175323096,-39.0346863906349,-20.81616,0 +267,15717,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (2) (tfm code 15716).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3083,9.4,11.59,-76.08,-73,1,0,9607,100.783,187.382,-47,-9.22383004903209,2.42380329967319,-8.30827832824698,-13.56561,0 +268,15719,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (3) (tfm code 15718).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3084,8,9.4,-77.48,-74.4,1,0,9607,336.026,348.565,252.978,-17.2412894390071,-6.30649282215535,1.56204977191825,-5.771909,0 +269,15721,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (4) (tfm code 15720).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3085,5,9.4,-74.4,-72,1,0,9607,963.273,486.386,190.997,-16.4850360280866,-1.66882584284416,21.6928490465265,-13.89914,0 +270,15723,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (5) (tfm code 15722).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3086,5,8,-77.91,-74.4,1,0,9607,-90.29,247.559,-21.989,-8.69688534851263,-4.18803362841004,-12.8082668496251,2.181658,0 +271,15725,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (6) (tfm code 15724).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3087,3,5,-77.67,-74.4,1,0,9607,-0.562,244.299,-456.938,6.8668709851194,-8.25267346177889,-9.2967797230575,3.74656,0 +272,15727,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (7) (tfm code 15726).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3088,-1.12,3,-79.1,-74,1,0,9607,-305.356,222.004,-30.023,-9.69049385992583,1.03196819622539,-19.7573941768278,6.325747,0 +273,15729,4218,4326,"Approximation at the +/- 1m level assuming that MAGNA-SIRGAS is equivalent to WGS 84. Parameter values taken from Bogota 1975 to MAGNA-SIRGAS (8) (tfm code 15728).","Accuracy about 1 part in 10^5 of distance between points, depending on relative tectonic motion.",3089,-4.24,7.1,-74.4,-66.87,1,0,9607,221.899,274.136,-397.554,2.80844591036278,-0.44850858891268,-2.81017234679107,-2.199943,0 +274,1126,4219,4326,Accuracy estimate not available.,For military purposes.,1287,-3.25,-1.49,105.12,108.29,1,0,9603,-384,664,-48,,,,,1 +275,1318,4220,4326,,Used for oil exploration by Conoco.,2316,-8.58,-7.75,12.58,13.4,1,0,9603,-42.01,-332.21,-229.75,,,,,0 +276,1319,4220,4326,,Used for oil exploration by Texaco.,2317,-7,-6.03,12.08,12.84,1,0,9603,-40,-354,-224,,,,,0 +277,1320,4220,4326,"Replaced by Camacupa to WGS 84 (9). Used by Shell prior to 1994.",Oil exploration prior to 1994.,2321,-7.25,-6.03,11.08,12.08,1,0,9606,-37.2,-370.6,-224,0,0,0.554,0.219,0 +278,1321,4220,4326,"Derived as mean of 123 Transit passes at station Cabo Ledo NE base in November 1990. Used by Elf for block 7 up to December 1992 then replaced by Camacupa to WGS 84 (7). Used by Total in block 8, ExxonMobil block 24, Western Geophysical for spec. data.",Oil exploration.,2320,-17.17,-6.03,10,13.86,1,0,9603,-41.8,-342.2,-228.2,,,,,0 +279,1322,4220,4326,"Derived at station Djeno during coordination of platform PAL F2 in February 1992. Used by Elf for block 3 up to December 1992 then replaced by Camacupa to WGS 84 (7).",Oil exploration.,2318,-7.33,-6.67,11.75,12.5,1,0,9603,-55.5,-348,-229.2,,,,,0 +280,1323,4220,4326,Derived at Luanda observatory December 1992.,Used for oil exploration by Elf for 1993 block 7 shallow water survey.,2319,-10.08,-9.42,12.67,13.4,1,0,9603,-43,-337,-233,,,,,0 +281,1324,4220,4326,"Derived at platform PAL F2 in December 1992. For use in blocks 3, 7 and 17, replaced by Camacupa to WGS 84 (10) (code 1327).","Used for oil exploration by Elf for blocks 3, 7 and 17 between December 1992 and 1994 then superseded by Camacupa to WGS 84 (10). Used by Exxon for block 15 since 1993.",2322,-6.58,-6.03,10.83,11.67,1,0,9603,-48,-345,-231,,,,,0 +282,1325,4220,4326,"Derived at platform PAL F2 in December 1992. Used by Total for block 2 between December 1992 and 1994 then replaced by Camacupa to WGS 84 (10).",Oil exploration between December 1992 and 1994.,2317,-7,-6.03,12.08,12.84,1,0,9603,-48.6,-345.1,-230.8,,,,,0 +283,1326,4220,4326,"Derived by GPS on two Topnav DGPS reference stations at Djeno and Luanda. Replaces Camacupa to WGS 84 (3). In block 18 replaced by BP from 1999 by Camacupa to WGS 84 (10).",Used by Shell since 1994.,2323,-8.33,-6.03,11.08,12.75,1,0,9606,-41.057,-374.564,-226.287,0,0,0.554,0.219,0 +284,1327,4220,4326,Derived at platform PAL F2 in 1994 by Topnav using Doris.,Used for oil exploration by Elf in blocks 3 and 17 since 1994. Used by Total in block 2 since 1994. Adopted by BP-Amoco Elf and Exxon for blocks 18 and 31-33 in 1999.,2324,-8.58,-6.03,10.47,12.84,1,0,9603,-50.9,-347.6,-231,,,,,1 +285,1127,4221,4326,Derived at 20 stations.,For military purposes. Accuracy 5m in each axis.,3843,-54.92,-21.78,-73.58,-56.65,1,0,9603,-148,136,90,,,,,1 +286,1527,4221,4326,"Derived through ties at 2 stations (Cerro Colorado and Chihuido Sur) to 4 IGS stations in February 1995",Oil exploration.,2325,-37.5,-36.15,-70.5,-70.03,1,0,9603,-154.5,150.7,100.4,,,,,0 +287,1128,4222,4326,Derived at 5 stations.,"For military purposes. Accuracy 3m, 6m and 6m in X, Y and Z axes.",1215,-50.34,-22.14,14.03,41.16,1,0,9603,-136,-108,-292,,,,,1 +288,1129,4222,4326,"Residuals should not exceed 15 metres. Parameter values are from Cape to Hartebeesthoek94 (1) (code 1504) assuming that Hartebeesthoek94 and WGS 84 are equivalent within the accuracy of the transformation.","?",1215,-50.34,-22.14,14.03,41.16,1,0,9603,-134.73,-110.92,-292.66,,,,,0 +289,1130,4223,4326,Derived at 5 stations.,"For military purposes. Accuracy 6m, 9m and 8m in X, Y and Z axes.",1236,30.25,38.43,7.5,13.74,1,0,9603,-263,6,431,,,,,1 +290,1538,4223,4326,Derived at station Chaffar January 1995.,Oil exploration.,1489,33.13,38.43,8.62,13.74,1,0,9603,-260.1,5.5,432.2,,,,,0 +291,1131,4224,4326,Derived at 6 stations.,"For military purposes. Accuracy 6m, 9m and 5m in X, Y and Z axes.",3675,-22,-19.3,-62.56,-57.81,1,0,9603,-134,229,-29,,,,,1 +292,3972,4224,4326,"Mandatory for SICAD use until 2005. Replaced by Chua to SIRGAS 2000 (tfm code 4069).","Used by governmental agencies in Distrito Federal until adoption of SIRGAS 2000 by Brazil in 2005. Legally mandated for Cartography System of Distrito Federal (SICAD) until 2005.",3619,-15.94,-15.38,-48.09,-47.1,1,0,9603,-143.87,243.37,-33.52,,,,,0 +293,4834,4224,4326,"Parameter values from Chua to SIRGAS 2000 (1) (tfm code 4069) assuming that within the tfm accuracy SIRGAS 2000 is equivalent to WGS 84.","Cartography System of Distrito Federal (SICAD)",3619,-15.94,-15.38,-48.09,-47.1,1,0,9603,-144.35,242.88,-33.2,,,,,0 +294,1132,4225,4326,Derived at 17 stations.,"For military purposes. Accuracy 5m, 3m and 5m in X, Y and Z axes.",1293,-33.78,-2.68,-58.16,-34.74,1,0,9603,-206,172,-6,,,,,1 +295,1585,4227,4326,,"?",1227,32.33,37.34,35.08,42.4,1,1,9603,-177.5,14.1,237.6,,,,,0 +296,1586,4227,4326,"Derived in 1995 by CGG for Al Furat Petroleum Company. Can be approximated using geocentric translations of dX=-174.3m, dY=+14.1m, dZ=+237.6m.",Oil exploration.,2327,35.5,35.7,39.9,40.15,1,0,9606,-175.09,1.218,238.831,-0.047,0.019,0.808,0.1698,0 +297,1587,4227,4326,Derived at four stations by Topnav in 1997.,Oil exploration.,2328,35.8,36.5,40.5,41.5,1,0,9603,-191.77,15.01,235.07,,,,,0 +298,15741,4227,4326,Derived by Elf in 1991 from tfm code 1584 concatenated with a tfm from WGS72BE to WGS84.,Oil exploration. Accuracy 5m.,2329,35.25,35.5,40,40.5,1,0,9603,-187.5,14.1,237.6,,,,,0 +299,15742,4227,4326,Derived for 1998 Omar seismic survey and used in 2000 for El Isba seismic survey.,Oil exploration. Accuracy 5m.,3314,32.33,37.34,35.7,42.4,1,0,9603,-190.421,8.532,238.69,,,,,1 +300,15743,4227,4326,"Derived 2005 at 5 triangulation stations and using (EGM96 geoid model +1.15m). Used by Total/DEZPC for Jafra and Mazraa seismic surveys. Can be approximated using geocentric translations of dX=-190.6m, dY=+8.8m, dZ=+239.6m.",Oil exploration. Accuracy 0.5m.,2329,35.25,35.5,40,40.5,1,0,9606,-83.58,-397.54,458.78,-17.595,-2.847,4.256,3.225,0 +301,1244,4740,4326,"Mandated for use in Russia by GosStandard of Russia Decree #327 of August 9, 2001. Republished but with one significant figure less precision to parameter values in GOST R 51794-2008 of December 18 2008.",Geodetic applications. Accuracy better than 0.5 metre.,1198,41.17,82,19.2,-168.98,1,0,9607,-1.08,-0.27,-0.9,0,0,-0.16,-0.12,0 +302,15843,4740,4326,"Derived through Glonass and GPS at 30 stations throughout USSR - Former Soviet Union (FSU).",Geodetic applications. Accuracy better than 1.5 metres.,1262,-90,90,-180,180,1,0,9607,0,0,1.5,0,0,-0.076,0,1 +303,1148,4229,4326,Derived at 14 stations.,"For military purposes. Accuracy 3m, 6m and 8m in X, Y and Z axes.",1086,21.99,33.75,24.71,36.9,1,0,9603,-130,110,-13,,,,,1 +304,1546,4229,4326,,Used for oil exploration by GUPCO.,2341,27.3,29.96,32.3,34.25,1,1,9603,-146.21,112.63,4.05,,,,,0 +305,1075,4230,4326,"Derived in 1987 by Geodetic for TPAO. Used on BP 1991/92 2D seismic surveys in central and eastern Turkish sector of Black Sea. In Turkey, replaced by tfm code 1784. Also adopted for use offshore Israel.",Oil Exploration,2896,31.33,42.5,28.15,41.5,1,0,9603,-89.05,-87.03,-124.56,,,,,0 +306,1087,4230,4326,,Topographic mapping.,1130,29.21,33.4,34.98,39.33,1,0,9603,-112,-110.3,-140.2,,,,,0 +307,1133,4230,4326,Derived at 85 stations. In Germany will be accepted by LBA for minerals management purposes as alternative to tfm 1052 or 1998.,"For military purposes. Accepted for minerals management in Germany. Accuracy 3m, 8m and 5m in X, Y and Z axes.",2420,36,71.05,-9.4,31.6,1,0,9603,-87,-98,-121,,,,,1 +308,1134,4230,4326,Derived at 52 stations.,For military purposes only. Accuracy 3m each axis.,2421,42.5,57.5,-4.6,22.5,1,0,9603,-87,-96,-120,,,,,0 +309,1135,4230,4326,Accuracy estimate not available.,For military purposes only.,2345,16.38,37.38,34.27,55.67,1,0,9603,-103,-106,-141,,,,,0 +310,1136,4230,4326,Derived at 4 stations.,For military purposes only. Accuracy 15m in each axis.,1078,33.05,36.31,29.94,35.22,1,0,9603,-104,-101,-140,,,,,0 +311,1137,4230,4326,Derived at 14 stations.,"For military purposes. Accuracy 6m, 8m and 8m in X, Y and Z axes.",1086,21.99,33.75,24.71,36.9,1,0,9603,-130,-117,-151,,,,,0 +312,1138,4230,4326,Derived at 40 stations.,For military purposes only. Accuracy 3m in each axis.,2343,48.17,63.9,-27,3.4,1,0,9603,-86,-96,-120,,,,,0 +313,1139,4230,4326,Derived at 20 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",2344,57.87,71.05,5.3,31.6,1,0,9603,-87,-95,-120,,,,,0 +314,1140,4230,4326,Derived at 2 stations.,For military purposes only. Accuracy 25m in each axis.,3254,33.23,41.77,18.27,29.97,1,0,9603,-84,-95,-130,,,,,0 +315,1142,4230,4326,Derived at 2 stations.,For military purposes only. Accuracy 25m in each axis.,2339,38.5,41.5,8,10,1,0,9603,-97,-103,-120,,,,,0 +316,1143,4230,4326,Derived at 3 stations.,For military purposes only. Accuracy 20m in each axis.,2340,36.5,38.5,12,16,1,0,9603,-97,-88,-135,,,,,0 +317,1144,4230,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,3275,35.8,36.09,14.18,14.6,1,0,9603,-107,-88,-149,,,,,0 +318,1145,4230,4326,Derived at 18 stations.,"For military purposes only. Accuracy 5m, 6m and 3m in X, Y and Z axes.",2338,35.95,43.78,-9.5,3.3,1,0,9603,-84,-107,-120,,,,,0 +319,1245,4230,4326,Derived at 4 stations.,For military purposes only. Accuracy 25m in each axis.,1236,30.25,38.43,7.5,13.74,1,0,9603,-112,-77,-145,,,,,0 +320,1275,4230,4326,"These same parameter values are used to transform to ETRS89. See ED50 to ETRS89 (10) (code 1650).",For applications to an accuracy of 2 metres.,1096,41.18,51.54,-9.62,10.3,1,0,9603,-84,-97,-117,,,,,0 +321,1311,4230,4326,"Based on ED50 to WGS72 (precise ephemeris) 6-nations agreement of 1981 to which precise to broadcast and broadcast to WGS 84 transformations have been concatenated.",Recommended transformation for UKCS and IrishCS petroleum purposes.,2342,49.05,63.9,-15.6,8,1,0,9606,-89.5,-93.8,-123.1,0,0,-0.156,1.2,0 +322,1440,4230,4326,,Used in oil industry.,3254,33.23,41.77,18.27,29.97,1,0,9603,-86,-92.2,-127.5,,,,,0 +323,1612,4230,4326,"Parameter values are taken from ED50 to ETRS89 (1), code 1588. Adopted for ED50 to WGS84 transformations offshore Norway north of 62N from April 2001 when it replaced code 1590. Included in Statens Kartverk programme wsktrans from v4.0.",Oil industry offshore.,2601,62,80.75,-0.5,32.02,1,0,9606,-116.641,-56.931,-110.559,0.893,0.921,-0.917,-3.52,0 +324,1613,4230,4326,"Approximation to 1 metre of concatenated transformation ED50 to WGS 84 (14), code 8653. 8653 remains the transformation promulgated by Statens Kartverk but 1613 recommended by EPSG for practical oil industry usage.",Approximation to 1 metre for oil industry use.,2334,56.12,62,1.5,8,1,0,9606,-90.365,-101.13,-123.384,0.333,0.077,0.894,1.994,0 +325,1627,4230,4326,"Parameter values from ED50 to ETRS89 (4) (code 1626). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,3237,54.5,57.9,7.8,12.9,1,0,9606,-81.1,-89.4,-115.8,0.485,0.024,0.413,-0.54,0 +326,1629,4230,4326,"Parameter values from ED50 to ETRS89 (5) (code 1628). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1105,36.13,36.17,-5.39,-5.37,1,0,9603,-116.8,-106.4,-154.4,,,,,0 +327,1631,4230,4326,"Parameter values from ED50 to ETRS89 (6) (code 1630). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1.5 metres.,2335,38.62,40.08,1.2,4.33,1,0,9606,-181.5,-90.3,-187.2,0.144,0.492,-0.394,17.57,0 +328,1633,4230,4326,"Parameter values from ED50 to ETRS89 (7) (code 1632). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1.5 metres.,2336,35.98,43.8,-7.5,3.27,1,0,9606,-131,-100.3,-163.4,-1.244,-0.02,-1.144,9.39,0 +329,1635,4230,4326,"Parameter values from ED50 to ETRS89 (8) (code 1634). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1.5 metres.,2337,41.5,43.8,-9.3,-4.5,1,0,9606,-178.4,-83.2,-221.3,0.54,-0.532,-0.126,21.2,0 +330,1784,4230,4326,"Parameter values from ED50 to ETRS89 (9) (code 1783). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 2 metres.,1237,34.47,43.93,25.59,44.85,1,0,9606,-84.1,-101.8,-129.7,0,0,0.468,1.05,0 +331,1810,4230,4326,Derived via concatenation through WGS72. The ED50 to WGS72 step is the Sepplin 1974 value for all Europe.,Oil industry exploration and production operations.,2595,27.5,30.82,25,30.74,1,0,9606,-84,-103,-122.5,0,0,0.554,0.2263,0 +332,1853,4230,4326,Derived at a single point in Galway docks.,Used by Enterprise for Corrib.,2961,53.75,55.75,-11.6,-9.5,1,0,9603,-82.31,-95.23,-114.96,,,,,0 +333,1961,4230,4326,"Parameter values taken from ED87 to WGS 84 (2) (tfm code 1960) assuming that ED87 is identical to ED50. Errors caused by this assumption can reach 3m.",Used by NAM for offshore operations.,1630,51.5,55.8,2.5,6.4,1,1,9606,-83.11,-97.38,-117.22,0.005693,-0.04469,0.4428,1.218,0 +334,1985,4230,4326,May be taken as a transformation from ED50 to ETRS89 - see tfm code 5040.,For low resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9603,-87.987,-108.639,-121.593,,,,,0 +335,1989,4230,4326,,For medium resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9607,-74.292,-135.889,-104.967,0.524,0.136,-0.61,-3.761,0 +336,1998,4230,4326,"Approximation to better than 0.5m of transformation adopted in June 2003 (see ED50 to WGS 84 (35), code 1052). Acceptable to Landesbergamt for Lower Saxony and Bundesanstalt für Seeschifffahrt und Hydrographie.",Recommended transformation for Germany North Sea petroleum purposes.,2879,53.6,55.9,3.3,8.5,1,0,9606,-157.89,-17.16,-78.41,2.118,2.697,-1.434,-5.38,0 +337,1999,4230,4326,"Parameter values taken from ED87 to WGS 84 (2) (tfm code 1960) assuming that ED87 is identical to ED50. Errors caused by this assumption can reach 3m.",Used by NAM for offshore operations.,1630,51.5,55.8,2.5,6.4,1,1,9606,-83.11,-97.38,-117.22,0.005693,-0.04469,0.04428,1.218,0 +338,3904,4230,4326,"Parameter values from ED87 to WGS 84 (32) (tfm code 3905), assuming that ED87 is identical to ED50. Errors caused by this assumption can reach 3-5m. Used by NAM for offshore operations until mid 2004, then replaced by tfm code 1311.","E&P operations in the Dutch sector of the North Sea.",1630,51.5,55.8,2.5,6.4,1,0,9606,-83.11,-97.38,-117.22,0.00569290865241986,-0.0446975835137458,0.0442850539012516,0.1218,0 +339,15964,4230,4326,Developed by the Portuguese Hydrographic Institute and used by the Directorate of Energy and Geology.,Hydrography and minerals management offshore Portugal.,3537,35,41.9,-13.8,-7.3,1,0,9603,-86.277,-108.879,-120.181,,,,,0 +340,1146,4231,4326,,"?",2330,52,62,-4,8,1,0,9606,-82.981,-99.719,-110.709,-0.104700015651026,0.0310016003789386,0.0804020214751182,-0.3143,0 +341,1960,4231,4326,,Scientific research.,1297,36,71.05,-8.95,31.6,1,1,9606,-83.11,-97.38,-117.22,0.005693,-0.04469,0.04428,1.218,0 +342,3905,4231,4326,"Parameter values taken from ED87 to ETRS89 (1) (tfm code 4078) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the transformation. Used as a tfm between ED50 and WGS 84 - see code 3904.",Scientific research.,1297,36,71.05,-8.95,31.6,1,0,9606,-83.11,-97.38,-117.22,0.00569290865241986,-0.0446975835137458,0.0442850539012516,0.1218,1 +343,1256,4232,4326,Derived at 7 stations.,"For military purposes. Accuracy 3m, 3m and 9m in X, Y and Z axes.",3288,16.6,26.4,51.9,59.89,1,0,9603,-346,-1,224,,,,,1 +344,1438,4232,4326,,Oil exploration.,3288,16.6,26.4,51.9,59.89,1,0,9606,-333.102,-11.02,230.69,0,0,0.554,0.219,0 +345,1894,4233,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,1152,-4.04,8.09,69.22,77.13,1,1,9603,-133,-321,50,,,,,0 +346,15817,4727,4326,"Derived at 1 satellite station. Information source states ""provided for historical purposes only. These parameter [values] should not be used"". Replaced by Midway 1961 to WGS 84 (2) (tfm code 15818).","Military and topographic mapping. Accuracy +/- 25m in each axis.",3202,28.18,28.29,-177.42,-177.3,1,0,9603,912,-58,1227,,,,,0 +347,15818,4727,4326,"Derived at 1 satellite station. Replaces Midway 1961 to WGS 84 (1) (tfm code 15817).","Military and topographic mapping. Accuracy +/- 25m in each axis.",3202,28.18,28.29,-177.42,-177.3,1,0,9603,403,-81,277,,,,,1 +348,1152,4236,4326,Derived at 4 stations.,For military purposes. Accuracy 15m in each axis.,3315,21.8,25.4,119.4,122.05,1,0,9603,-637,-549,-203,,,,,1 +349,1242,4237,4326,"Parameter value error in info source Hungarian text but correct in English summary. Replaces HD72 to WGS 84 (2) (code 1831).",Accuracy at metre level throughout Hungary.,1119,45.78,48.6,16.12,22.91,1,0,9603,52.17,-71.82,-14.9,,,,,1 +350,1448,4237,4326,"Parameter values taken from HD72 to ETRS89 (2) (code 1449) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaces HD72 to WGS 84 (1) (code 1830).","Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.",1119,45.78,48.6,16.12,22.91,1,0,9607,52.684,-71.194,-13.975,0.312,0.1063,0.3729,1.0191,0 +351,1677,4237,4326,"Parameter values taken from HD72 to ETRS89 (1) (code 1273) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation.","Approximation at the +/- 1m level.",1119,45.78,48.6,16.12,22.91,1,1,9607,56,75.77,15.31,-0.37,-0.2,-0.21,-1.01,0 +352,1830,4237,4326,"Parameter values taken from HD72 to ETRS89 (1) (code 1829) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. OGP recommends use of newer MSZ 7222 equivalent (tfm code 1448) in preference to this transformation.","Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.",1119,45.78,48.6,16.12,22.91,1,0,9607,56,-75.77,-15.31,0.37,0.2,0.21,1.01,0 +353,1831,4237,4326,"Derived at fundamental point Szolohegy and tested at 99 stations throughout Hungary. OGP recommends use of newer transformation (tfm code 1242) in preference to this transformation.",Accuracy better than 1m in all three dimensions throughout Hungary.,1119,45.78,48.6,16.12,22.91,1,0,9603,57.01,-69.97,-9.29,,,,,0 +354,1248,4238,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,1122,-13.01,7.92,91.66,141.1,1,0,9603,-24,-15,5,,,,,1 +355,1832,4238,4326,"Derived via coordinates of 2 Pulse8 stations. Use of ID74 to WGS 84 (3) (code 1833) is recommended.",For oil industry purposes.,1122,-13.01,7.92,91.66,141.1,1,0,9606,2.691,-14.757,4.724,0,0,0.774,-0.6,0 +356,1833,4238,4326,"Parameter values from ID74 to DGN95 (1) (code 15911) assuming that DGN95 is equivalent to WGS 84 within the accuracy of the transformation.","Standard deviations of translations are 1.3, 1.1 and 3.6m, of rotations 0.11, 0.06 and 0.04 sec and ppm 0.18.",1122,-13.01,7.92,91.66,141.1,1,0,9607,-1.977,-13.06,-9.993,-0.364,-0.254,-0.689,-1.037,0 +357,1153,4239,4326,Derived at 11 stations.,"For military purposes. Accuracy 15m, 6m and 12m in X, Y and Z axes.",3317,5.63,20.47,98.1,105.7,1,0,9603,217,823,299,,,,,1 +358,1154,4240,4326,"Derived at 62 stations. Replaced by Indian 1975 to WGS 84 (2) (code 1304).","For military purposes. Accuracy 3m, 2m and 3m in X, Y and Z axes.",3741,5.63,20.47,98,105.7,1,0,9603,209,818,290,,,,,0 +359,1304,4240,4326,"Derived at 62 stations. Replaces Indian 1975 to WGS 84 (1) (code 1154).","For military purposes. Accuracy 3m, 2m and 3m in X, Y and Z axes.",3741,5.63,20.47,98,105.7,1,0,9603,210,814,289,,,,,1 +360,1537,4240,4326,Derived in 1995 at point RTSD181.,Oil exploration.,2358,7.3,8.3,102.2,102.7,1,0,9603,204.64,834.74,293.8,,,,,0 +361,1812,4240,4326,,Cadastral survey.,3741,5.63,20.47,98,105.7,1,0,9606,293,836,318,0.5,1.6,-2.8,2.1,0 +362,1084,4242,4326,Derived via NAD27 and WGS 72. Preliminary values derived by Survey Department but not officially promulgated.,For applications requiring 5m accuracy.,3342,17.65,18.57,-78.43,-76.17,1,0,9603,70,207,389.5,,,,,1 +363,1085,4242,4326,"Derived at 4 stations, tested at a further 9.",For applications requiring 2m accuracy.,3342,17.65,18.57,-78.43,-76.17,1,0,9603,65.334,212.46,387.63,,,,,0 +364,1086,4242,4326,"Derived at 4 stations, tested at a further 9.",For applications requiring 1m accuracy.,3342,17.65,18.57,-78.43,-76.17,1,1,9607,-33.722,153.789,94.959,8.581,4.478,-4.54,-8.95,0 +365,15927,4242,4326,"Derived at 4 stations, tested at a further 9. Also used as tfm to JAD69 to JAD2001 (see code 15926). +Note: Info source paper contains an error in sign of dS, subsequently confirmed by primary author and NLA of Jamaica, and corrected in this record.",For applications requiring 1m accuracy.,3342,17.65,18.57,-78.43,-76.17,1,0,9607,-33.722,153.789,94.959,8.581,4.478,-4.54,8.95,0 +366,1930,4642,4326,,"Accuracy better than +/- 1 metre.",2820,-22.75,-22.5,167.3,167.55,1,1,9606,244.416,85.339,168.114,-8.9353,7.7523,12.5953,14.268,0 +367,15848,4642,4326,,"Accuracy +/- 10 metres.",2820,-22.75,-22.5,167.3,167.55,1,0,9603,-13,-348,292,,,,,1 +368,1157,4244,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,3310,5.85,9.92,79.6,81.95,1,0,9603,-97,787,86,,,,,1 +369,1158,4245,4326,Derived at 6 stations.,"For military purposes. Accuracy 10m, 8m and 6m in X, Y and Z axes.",1309,1.26,6.71,99.64,104.29,1,0,9603,-11,851,5,,,,,1 +370,1059,4246,4326,,1 metre accuracy.,3267,28.56,30.1,46.57,48.45,1,0,9603,-294.7,-200.1,525.5,,,,,1 +371,1516,4247,4326,Also used for PSAD56 to WGS 84 transformations.,"Parameter values estimated accuracy: ± 2.0m; ± 2.7m; ± 1.3m respectively.",2363,3.36,10.8,-67.49,-59.8,1,0,9603,-273.5,110.6,-357.9,,,,,1 +372,1201,4248,4326,Derived at 63 stations. DMA also lists Colombia as area of applicability but PSAD56 is not used in that country.,"For military purposes only. Accuracy 17m, 27m and 27m in X, Y and Z axes.",2399,-45,12.51,-81.4,-56.47,1,0,9603,-288,175,-376,,,,,1 +373,1202,4248,4326,Derived at 5 stations.,"For military purposes only. Accuracy 5m, 11m and 14m in X, Y and Z axes.",1049,-22.9,-9.68,-69.66,-57.52,1,0,9603,-270,188,-388,,,,,0 +374,1203,4248,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2402,-21.5,-17.51,-70.48,-68.19,1,0,9603,-270,183,-390,,,,,0 +375,1204,4248,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,2403,-45,-39,-75.22,-71.11,1,0,9603,-305,243,-442,,,,,0 +376,1205,4248,4326,"Derived at 4 stations. Note that although the PSAD56 network included Colombia the CRS is not used there: see Bogota 1975 (CRS code 4218).",For military purposes. Accuracy 15m in each axis.,3229,-4.24,12.51,-79.1,-66.87,1,0,9603,-282,169,-371,,,,,0 +377,1206,4248,4326,Derived at 11 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",3241,-5,1.45,-81.03,-75.22,1,0,9603,-278,171,-367,,,,,0 +378,1207,4248,4326,Derived at 9 stations.,"For military purposes. Accuracy 6m, 14m and 5m in X, Y and Z axes.",1114,1.19,10.69,-61.39,-55.78,1,0,9603,-298,159,-369,,,,,0 +379,1208,4248,4326,Derived at 6 stations.,"For military purposes only. Accuracy 6m, 8m and 12m in X, Y and Z axes.",1189,-21.05,-0.04,-84.67,-68.67,1,0,9603,-279,175,-379,,,,,0 +380,1209,4248,4326,Derived at 24 stations.,"For military purposes only. Accuracy 9m, 14m and 15m in X, Y and Z axes.",1251,0.65,16.75,-73.38,-58.95,1,0,9603,-295,173,-371,,,,,0 +381,1582,4248,4326,Derived May 1995 by Geoid for Total. OSU91A geoid model used.,Oil exploration.,2400,-14.43,-13.57,-68.95,-67.79,1,0,9603,-259.73,173.12,-398.27,,,,,0 +382,1583,4248,4326,Derived July 1997 by Geoid from data recorded by UGA for Total. OSU91A geoid model used.,Oil exploration.,2401,-21.7,-21.09,-63.43,-62.95,1,0,9603,-307.7,265.3,-363.5,,,,,0 +383,1811,4248,4326,Used by Petrobras for shelf operations.,Oil industry exploration.,1754,-1.05,5.59,-51.64,-48,1,0,9603,-291.87,106.37,-364.52,,,,,0 +384,3990,4248,4326,"Parameter values from PSAD56 to SIRGAS 1995 (1) (code 3971). Assumes SIRGAS 1995 and WGS 84 can be considered the same to within the accuracy of the transformation.","Suitable for mapping at 1:25,000 scale and smaller.",3241,-5,1.45,-81.03,-75.22,1,0,9607,-60.31,245.935,31.008,-12.324,-3.755,7.37,0.447,0 +385,15967,4761,4326,"Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84. HTRS96 is a regional realisation of ETRS89.","Accuracy +/- 1 metre.",1076,42.3,46.57,13.02,19.5,1,0,9603,0,0,0,,,,,1 +386,1159,4250,4326,Derived at 8 stations.,"For military purposes. Accuracy 2m, 3m and 2m in X, Y and Z axes.",1104,1.08,11.17,-3.9,1.34,1,0,9603,-130,29,364,,,,,1 +387,1160,4251,4326,Derived at 4 stations.,For military purposes only. Accuracy 15m in each axis.,3270,4.27,8.57,-11.5,-7.37,1,0,9603,-90,40,88,,,,,1 +388,1887,4182,4326,Derived at 3 stations.,For military purposes only. Accuracy 20m in each axis.,1344,39.35,39.75,-31.3,-31.06,1,0,9603,-425,-169,81,,,,,1 +389,1982,4182,4326,Derived at 2 stations in 1999.,For low resolution applications.,1344,39.35,39.75,-31.3,-31.06,1,0,9603,-422.651,-172.995,84.02,,,,,0 +390,1161,4253,4326,Derived at 6 stations.,"For military purposes. Accuracy 8m, 11m and 9m in X, Y and Z axes.",2364,7.5,21,116,127,1,0,9603,-133,-77,-51,,,,,1 +391,1162,4253,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2365,4,10,119,127,1,0,9603,-133,-79,-72,,,,,0 +392,1529,4254,4326,"Derived through ties at 3 stations (RC03, TOTAL11 and MP12) to 3 IGS stations in November 1995",Oil exploration.,2357,-55.1,-52.59,-68.64,-63.73,1,0,9606,18.38,192.45,96.82,0.056,-0.142,-0.2,-0.0013,0 +393,1892,4254,4326,Derived at 2 stations. As the source CRS was used for the border survey this transformation is probably also applicable to adjacent areas of Argentina.,Accuracy 25m in each axis.,2805,-55.95,-52.4,-74.82,-66.34,1,0,9603,16,196,93,,,,,1 +394,1246,4255,4326,Accuracy estimate not available.,For military purposes only.,1024,29.41,38.5,60.54,74.96,1,0,9603,-333,-222,114,,,,,1 +395,1164,4256,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2369,-5,-4.5,55,56,1,0,9603,41,-220,-134,,,,,1 +396,1837,4257,4326,,Oil exploration.,1316,-7.9,2,117.6,121,1,0,9603,-587.8,519.75,145.76,,,,,1 +397,1149,4258,4326,,ETRS89 and WGS 84 are realisations of ITRS coincident to within 1 metre. This transformation has an accuracy equal to the coincidence figure.,1298,34.5,71.05,-10.67,31.55,1,0,9603,0,0,0,,,,,1 +398,1571,4258,4326,"Dutch sources also quote an equivalent transformation with parameter values dX=+593.032 dY=+26.000 dZ=+478.741m, rX rY rZ and dS as this tfm. These values belong to a different transformation method and cannot be used with the Coordinate Frame method.",Accuracy 0.5m,1172,50.78,55.8,2.48,7.37,1,1,9607,565.04,49.91,465.84,0.409394387439237,-0.359705195614311,1.86849100035057,4.0772,0 +399,1330,4259,4326,"Derived at Station Y in April 1989 using 572 transit satellite passes. Computed value for dZ was -96.42 but -96.38 has been utilised. Replaced Malongo 1987 to WGS 84 (3) (code 15791) in 1989. Replaced by Malongo 1987 to WGS 84 (2) (code 1557) in 1990.",Offshore oil exploration and production between April 1989 and June 1990.,3180,-6,-5.03,10.85,12.43,1,0,9603,-252.95,-4.11,-96.38,,,,,0 +400,1557,4259,4326,"Derived at station Y in July 1990 through Transit single point positioning using 187 passes by Geodetic Survey Ltd. Replaces Malongo 1987 to WGS 84 (1) (trf code 1330).",Offshore oil exploration and production from June 1990.,3180,-6,-5.03,10.85,12.43,1,0,9603,-254.1,-5.36,-100.29,,,,,1 +401,15791,4259,4326,"Derived via WGS 72BE by Geodetic for Chevron in 1987 by single point Transit translocation at 1 station (Malongo Y). Replaced in 1989 by Malongo 1987 to WGS 84 (1) (code 1330).",Oil industry exploration and production between September 1987 and April 1989.,3179,-6,-4.37,10.85,13.11,1,0,9603,-259.99,-5.28,-97.09,,,,,0 +402,1316,4260,4326,,"?",1060,1.66,13.09,8.38,16.22,1,1,9603,-70.9,-151.8,-41.4,,,,,0 +403,1166,4261,4326,Derived at 9 stations.,"For military purposes. Accuracy 5m, 3m and 3m in X, Y and Z axes.",3280,27.68,36.23,-13.77,-1.01,1,0,9603,31,146,47,,,,,1 +404,1165,4262,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,1089,12.33,18.57,36.4,43.3,1,0,9603,639,405,60,,,,,1 +405,1067,4263,4326,"Used by Statoil for deep water blocks 210, 213, 217 and 218. Parameter values interpolated from Racal Survey geocentric translation contour charts for each of these four blocks and then meaned.",Oil industry exploration and production.,3817,3.25,5.53,4.42,6.28,1,0,9603,-92.1,-89.9,114.9,,,,,0 +406,1167,4263,4326,"Derived at 2 stations. Note: Minna is used in Nigeria, not Cameroon.",For military purposes only. Accuracy 25m in each axis.,3226,1.66,13.09,8.51,16.22,1,0,9603,-81,-84,115,,,,,0 +407,1168,4263,4326,Derived at 6 stations.,"For military purposes. Accuracy 3m, 6m and 5m in X, Y and Z axes.",1178,0.93,13.9,2.7,14.68,1,0,9603,-92,-93,122,,,,,1 +408,1534,4263,4326,,Oil exploration.,2371,3,6.5,5,8.5,1,1,9606,-111.92,-87.85,114.5,1.875,0.202,0.219,0.032,0 +409,1754,4263,4326,"Derived at 8 stations across the Niger delta. Used by Shell SPDC throughout southern Nigeria onshore, delta and shallow offshore from 1994 and by Total in OPL246. Sometimes given with parameter values to greater resolution; values here are adequate.",Oil exploration.,2371,3,6.5,5,8.5,1,0,9606,-111.92,-87.85,114.5,1.875,0.202,0.219,0.032,0 +410,1818,4263,4326,Concatenated via WGS 72BE.,Oil industry operations.,1717,2.25,6.2,2.7,8,1,0,9606,-89,-112,125.9,0,0,0.814,-0.38,0 +411,1819,4263,4326,Used by Shell in southern Nigeria and Total in OPL246.,Oil industry operations.,2371,3,6.5,5,8.5,1,1,9606,-111.92,-87.85,114.5,1.875,0.202,0.219,0.032,0 +412,1820,4263,4326,Derived by Nortech at station L40 Minna using NNPC 1989 GPS network tied to 4 ADOS stations. Used by Conoco in OPLs 219-220 to cm precision and ExxonMobil in OPL 209 to dm precision..,Oil industry operations.,3813,3.25,5.53,4.02,6.95,1,0,9603,-93.2,-93.31,121.156,,,,,0 +413,1821,4263,4326,"Derived by Elf Petroleum Nigeria in 1994 at 3 stations (M101 onshore, offshore platforms XSW06 and XSV39) and used in OMLs 99-102 and OPLs 222-223.",Oil industry operations.,3814,3.25,4.5,7.17,8.25,1,0,9603,-88.98,-83.23,113.55,,,,,0 +414,1822,4263,4326,"Used by Shell SNEPCO for OPLs 209-213 and 316. Derived during 1990 Niger Delta control survey at 4 stations (XSU27, 30 31 and 35).",Oil industry exploration and production.,3815,4.22,6.3,3.84,5.16,1,0,9603,-92.726,-90.304,115.735,,,,,0 +415,1823,4263,4326,"Used by Shell SNEPCO for OPLs 217-223. Derived during 1990 Niger Delta control survey at 4 stations (XSU38, 41, 44 and 45).",Oil industry exploration and production.,3816,3.25,3.85,5.59,8.03,1,0,9603,-93.134,-86.647,114.196,,,,,0 +416,1824,4263,4326,Used by Shell SNEPCO for Gongola basin.,Oil industry exploration and production.,3824,9.5,11,10,11.5,1,0,9603,-93,-94,124,,,,,0 +417,15493,4263,4326,"Adopted by MPN for all joint venture operations from 1/1/1996.",Oil industry exploration and production.,3590,4,5,6,8,1,0,9603,-94.031,-83.317,116.708,,,,,0 +418,15705,4263,4326,"Derived via WGS 72(BE). Minna to WGS 72(BE) transformation derived in 1981 for Mobil E&P Nigeria (MEPCON) by Geodetic Survey through Transit translocation at six stations in southern Nigeria. Used by MEPCON in blocks OPL 215 and 221.",Oil industry exploration.,3819,3.25,4.22,5.03,7.3,1,0,9606,-83.13,-104.95,114.63,0,0,0.554,0,0 +419,15706,4263,4326,Used by Elf in Blocks OPL 222 and OPL 223 and by Mobil in 1994.,Oil industry exploration.,1717,2.25,6.2,2.7,8,1,0,9603,-93.6,-83.7,113.8,,,,,0 +420,15755,4263,4326,Derived in 1995 at unspecified DMA ADOS stations and Racal stations M101 and ZVS3003. Used by Elf in onshore Block OML 58.,Oil industry exploration and production. Accuracy 0.5m.,3113,5.05,5.31,6.54,6.83,1,0,9603,-90.2,-87.32,114.17,,,,,0 +421,1329,4264,4326,"Superseded in 1990 by trf Malongo 1987 to WGS 84 (2), code 1557. Malongo 1987 is an offshore extension of the Mhast cooordinate system.","Used for oil exploration by Chevron until superseded in 1990 by trf Malongo 1987 to WGS 84 (2), code 1557.",1317,-6,-5.03,10.6,12.23,1,1,9603,-252.95,-4.11,-96.38,,,,,0 +422,1088,4265,4326,,Oil exploration and production,2882,43,47.25,12,19.5,1,0,9603,-223.7,-67.38,1.34,,,,,0 +423,1089,4265,4326,,Oil exploration and production,2883,41.75,43.75,13.25,19,1,0,9603,-225.4,-67.7,7.85,,,,,0 +424,1090,4265,4326,,Oil exploration and production,2884,39.75,42,16,20,1,0,9603,-227.1,-68.1,14.4,,,,,0 +425,1091,4265,4326,,Marine navigation,2885,39.5,41,18,20,1,0,9603,-231.61,-68.21,13.93,,,,,0 +426,1092,4265,4326,,Marine navigation,2886,37,40.5,16,21,1,0,9603,-225.06,-67.37,14.61,,,,,0 +427,1093,4265,4326,,Marine navigation,2887,36,37.5,13,16,1,0,9603,-229.08,-65.73,20.21,,,,,0 +428,1094,4265,4326,,Marine navigation,2888,36.5,38.5,10,13,1,0,9603,-230.47,-56.08,22.43,,,,,0 +429,1169,4265,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2339,38.5,41.5,8,10,1,0,9603,-225,-65,9,,,,,0 +430,1660,4265,4326,"Parameter values from Monte Mario to ETRS89 (1) (code 1659). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.","Accuracy: 4 metres",2372,37.75,47.09,6.65,18.53,1,0,9606,-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68,1 +431,1662,4265,4326,"Parameter values from Monte Mario to ETRS89 (2) (code 1661). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.","Accuracy: 4 metres",2339,38.5,41.5,8,10,1,0,9606,-168.6,-34,38.6,-0.374,-0.679,-1.379,-9.48,0 +432,1664,4265,4326,"Parameter values from Monte Mario to ETRS89 (3) (code 1663). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.","Accuracy: 4 metres",2340,36.5,38.5,12,16,1,0,9606,-50.2,-50.4,84.8,-0.69,-2.012,0.459,-28.08,0 +433,1163,4266,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,1100,-6.39,2.33,5.91,14.55,1,0,9603,-74,-130,42,,,,,1 +434,1532,4266,4326,Derived as mean of Doris determinations at 3 stations in Port Gentil area in 1994.,Oil exploration.,1100,-6.39,2.33,5.91,14.55,1,0,9603,-80.7,-132.5,41.1,,,,,0 +435,1170,4267,4326,Derived at 15 stations.,"For military purposes. Accuracy 3m, 9m and 12m in X, Y and Z axes.",2418,13,23.24,-85.01,-59.38,1,0,9603,-3,142,183,,,,,0 +436,1171,4267,4326,Derived at 19 stations.,"For military purposes only. Accuracy 8m, 3m and 5m in X, Y and Z axes.",2419,7.98,18.49,-92.29,-82.53,1,0,9603,0,125,194,,,,,0 +437,1172,4267,4326,Derived at 112 stations.,"For military purposes only. Accuracy 15m, 11m and 6m in X, Y and Z axes.",1061,40.04,86.45,-141,-47.74,1,0,9603,-10,158,187,,,,,1 +438,1173,4267,4326,Derived at 405 stations.,"For military purposes only. Accuracy 5m, 5m and 6m in X, Y and Z axes.",1323,24.41,49.38,-124.79,-66.92,1,0,9603,-8,160,176,,,,,0 +439,1174,4267,4326,Derived at 129 stations.,"For military purposes only. Accuracy 5m, 5m and 8m in X, Y and Z axes.",2389,24.9,49.37,-97.23,-66.92,1,0,9603,-9,161,179,,,,,0 +440,1175,4267,4326,Derived at 276 stations.,"For military purposes only. Accuracy 5m, 3m and 3m in X, Y and Z axes.",2390,25.84,49.05,-124.79,-89.65,1,0,9603,-8,159,175,,,,,0 +441,1176,4267,4326,Derived at 47 stations.,"For military purposes only. Accuracy 5m, 9m and 5m in X, Y and Z axes.",2412,54.35,71.4,-168.25,-129.99,1,0,9603,-5,135,172,,,,,0 +442,1177,4267,4326,Derived at 11 stations.,"For military purposes. Accuracy 5m, 3m and 5m in X, Y and Z axes.",2413,20.87,27.29,-79.03,-72.69,1,0,9603,-4,154,178,,,,,0 +443,1178,4267,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2414,23.91,24.19,-74.6,-74.37,1,0,9603,1,140,165,,,,,0 +444,1179,4267,4326,Derived at 25 stations.,"For military purposes only. Accuracy 8m, 8m and 6m in X, Y and Z axes.",2384,48.25,60,-139.04,-109.98,1,0,9603,-7,162,188,,,,,0 +445,1180,4267,4326,Derived at 25 stations.,"For military purposes only. Accuracy 9m, 5m and 5m in X, Y and Z axes.",2415,41.68,60,-102,-74.36,1,0,9603,-9,157,184,,,,,0 +446,1181,4267,4326,Derived at 37 stations.,"For military purposes only. Accuracy 6m, 6m and 3m in X, Y and Z axes.",2416,43.42,62.61,-79.85,-52.54,1,0,9603,-22,160,190,,,,,0 +447,1182,4267,4326,Derived at 17 stations.,"For military purposes only. Accuracy 5m, 5m and 3m in X, Y and Z axes.",2410,49,83.16,-136.45,-60.73,1,0,9603,4,159,188,,,,,0 +448,1183,4267,4326,Derived at 8 stations.,"For military purposes only. Accuracy 5m, 8m and 3m in X, Y and Z axes.",2417,60,69.7,-141,-123.91,1,0,9603,-7,139,181,,,,,0 +449,1184,4267,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,2385,8.82,9.44,-80.06,-79.47,1,0,9603,0,125,201,,,,,0 +450,1185,4267,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,3235,19.77,23.24,-85.01,-74.08,1,0,9603,-9,152,178,,,,,0 +451,1186,4267,4326,"Derived at 2 stations. Note: NAD27 is not used in Greenland.",For military purposes. Accuracy 25m in each axis.,2386,75.86,79.19,-73.28,-60.99,1,0,9603,11,114,195,,,,,0 +452,1187,4267,4326,Derived at 22 stations.,"For military purposes only. Accuracy 8m, 6m and 6m in X, Y and Z axes.",3278,14.52,32.72,-118.46,-86.69,1,0,9603,-12,130,190,,,,,0 +453,1249,4267,4326,Derived at 6 stations.,"For military purposes only. Accuracy 6m, 8m and 10m in X, Y and Z axes.",2387,51.54,54.34,-178.3,-164.84,1,0,9603,-2,152,149,,,,,0 +454,1250,4267,4326,Derived at 5 stations.,For military purposes. Accuracy 10m in each axis.,2388,51.3,53.06,172.43,179.85,1,0,9603,2,204,105,,,,,0 +455,1530,4267,4326,,Accuracy 3m.,1077,18.83,25.5,-87.01,-73.57,1,0,9603,-4.2,135.4,181.9,,,,,0 +456,15699,4267,4326,"Developed by John E Chance and Associates at 19°44'N, 92°21'W. Geoid height used =-13.34m.","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3462,17.85,20.89,-94.79,-89.76,1,0,9603,-2,124.7,196,,,,,0 +457,15852,4267,4326,"Developed by John E Chance and Associates. Replaced by NAD27 to WGS 84 (79) (tfm code 15851).","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3358,23.82,30.25,-87.25,-81.17,1,0,9603,-3,154,177,,,,,0 +458,15853,4267,4326,"Developed by John E Chance and Associates. Replaced by NAD27 to WGS 84 (79) (tfm code 15851).","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3359,25.62,30.23,-95,-87.25,1,0,9603,-7,151,175,,,,,0 +459,15854,4267,4326,"Developed by John E Chance and Associates. Replaced by NAD27 to WGS 84 (79) (tfm code 15851).","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3360,25.98,28.96,-97.21,-95,1,0,9603,-7,151,178,,,,,0 +460,15855,4267,4326,"Developed by John E Chance and Associates at 21°55'N, 97°20'W. Geoid height used =-17m.","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3361,21.51,22.75,-98.1,-96.89,1,0,9603,-8,125,190,,,,,0 +461,15856,4267,4326,"Developed by EnSoCo Inc. Replaced by NAD27 to WGS 84 (79) (tfm code 15851).",Oil exploration and production. Accuracy 8 metres.,3357,23.82,30.25,-97.21,-81.17,1,0,9603,-7,158,172,,,,,0 +462,15913,4267,4326,"Developed by John E Chance and Associates at 21°33'N, 92°33'W. Geoid height used =-16.7m.","Oil exploration and production. Horizontal transformation accuracy (1 sigma) is considered to be at the +/- 5 meter level.",3461,20.88,23,-94.32,-88.68,1,0,9603,0,125,196,,,,,0 +463,15978,4267,4326,,Accuracy 1m.,1077,18.83,25.5,-87.01,-73.57,1,0,9607,2.478,149.752,197.726,-0.526,-0.498,0.501,0.685,0 +464,1188,4269,4326,Derived at 354 stations.,Accuracy 2m in each axis.,1325,23.82,86.45,-172.54,-47.74,1,0,9603,0,0,0,,,,,1 +465,1251,4269,4326,Derived at 4 stations.,"For military purposes only. Accuracy 5m, 2m and 5m in X, Y and Z axes.",2157,51.3,54.34,172.43,-164.84,1,0,9603,-2,0,4,,,,,0 +466,1252,4269,4326,Derived at 6 stations.,For military purposes only. Accuracy 2m in each axis.,3883,15.56,25.58,-163.74,-151.28,1,0,9603,1,1,-1,,,,,0 +467,1308,4269,4326,"Strictly between NAD83 and ITRF94(1996.0). Superseded by NAD83 to WGS 84 (5) (code 1515).",Historical record only - superseded - see remarks.,1323,24.41,49.38,-124.79,-66.92,1,1,9607,-0.9738,1.9453,0.5486,-0.0275507901704247,-0.0100492213603585,-0.0113590028800276,0,0 +468,1515,4269,4326,"Strictly between NAD83 and ITRF96(1997.0). Supersedes NAD83 to WGS 84 (4) (code 1308).",Geodesy.,1323,24.41,49.38,-124.79,-66.92,1,1,9607,-0.991,1.9072,0.5129,-0.0257899075194932,-0.0096500989602704,-0.0116599432323421,0,0 +469,1189,4270,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,2391,20,20.9,58.5,59.5,1,0,9603,-247,-148,369,,,,,0 +470,1190,4270,4326,Derived at 3 stations.,For military purposes. Accuracy 20m in each axis.,1206,15.9,32.26,34.27,55.7,1,0,9603,-243,-192,477,,,,,1 +471,1191,4270,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,1243,22.64,26.29,51.57,57.03,1,0,9603,-249,-156,381,,,,,0 +472,1531,4270,4326,Parameter values adopted by Total are mean of those derived by Oceonics and Geoid through ties at platform AK1 to 4 IGS stations in March 1995.,Oil exploration.,2392,25.33,25.5,53,53.33,1,0,9603,-245,-153.9,382.8,,,,,0 +473,1536,4270,4326,"Derived by Brown & Root in 1992 for Qatar General Petroleum Corporation North Field development. Adopted by QGPC for all offshore Qatar.",Oil exploration.,2406,24.6,27.03,50.61,53.07,1,0,9603,-250.2,-153.09,391.7,,,,,0 +474,15871,4270,4326,Derived by concatenation of parameter values published by IGN Paris from Nahrwan 1967 to WGS 72 at the Nahrwan SE Base trig station near Baghdad with DMA WGS 72 to WGS 84 parameter values.,Oil exploration.,1124,29.06,37.41,38.82,49.4,1,0,9603,-242.2,-144.9,370.3,,,,,0 +475,15937,4270,4326,Parameter values adopted by Total are mean of those derived by Oceonics and Geoid through ties at station TC58 to 4 IGS stations in March 1995.,Oil exploration.,3509,24,26,52.5,54.5,1,0,9603,-245.8,-152.2,382.9,,,,,0 +476,15938,4270,4326,Derived via WGS 72BE from Transit observations at station TC58 in 1976 by BP for ADMA.,Oil exploration.,3509,24,26,52.5,54.5,1,0,9606,-225.4,-158.7,380.8,0,0,0.814,-0.38,0 +477,15952,4270,4326,"Used by DPC for Al Fateh field. Applying this transformation gives same result as Nahrwan 1967 to WGS 84 (8) (code 15938).",Oil exploration and production.,3530,25.25,25.75,54,54.5,1,0,9603,-244.2,-149.8,379.3,,,,,0 +478,15953,4270,4326,Used by Dubai Municipality before 1994.,Municipal operations.,3531,25,25.4,55.1,55.4,1,0,9603,-250.7,-157.9,380.4,,,,,0 +479,1192,4271,4326,"CAUTION: OGP believes that these parameter values include a blunder and that if NIMA transformation parameters are to be used the 1987 version (EPSG code 1307) be used.",For military purposes only. Accuracy given by NIMA 15m in each axis. EPSG believes there is an 8-10m blunder in dX.,1322,11.09,11.4,-60.89,-60.47,1,0,9603,-10,375,165,,,,,1 +480,1307,4271,4326,"(1) See remarks for tfm code 1192. (2) Naparima 1972 is an extension to Tobago of the Napaima 1955 geographic CRS of Trindad. In Trinidad this transformation may also be considered to use Napaima 1955 (code 4158) as its source CRS: see tfm code 1556.",For military purposes only. Accuracy 15m in each axis.,1322,11.09,11.4,-60.89,-60.47,1,0,9603,-2,374,172,,,,,0 +481,1151,4272,4326,Derived at 14 stations.,"For military purposes only. Accuracy 5m, 3m and 5m in X, Y and Z axes.",3285,-47.4,-34,166.33,178.6,1,0,9603,84,-22,209,,,,,0 +482,1564,4272,4326,"These parameter values are taken from NZGD49 to NZGD2000 (2) (code 1701) and assume that NZGD2000 and WGS 84 are coincident to within the accuracy of the transformation. For improved accuracy use NZGD49 to WGS 84 (4) (code 1670).",Transformation accuracy about 4 metres.,3285,-47.4,-34,166.33,178.6,1,0,9607,59.47,-5.04,187.44,-0.47,0.1,-1.024,-4.5993,1 +483,15975,4272,4326,"These parameter values are taken from NZGD49 to NZGD2000 (1) (code 1566) and assume that NZGD2000 and WGS 84 are coincident to within the accuracy of the tfm. For better accuracy use NZGD49 to WGS 84 (2) (code 1564) or NZGD49 to WGS 84 (3) (code 1670).",5m accuracy.,3285,-47.4,-34,166.33,178.6,1,0,9603,54.4,-20.1,183.1,,,,,0 +484,1654,4273,4326,"Parameter values from NGO 1948 to ETRS89 (1) (code 1653). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 3 metres.,1352,57.95,71.2,4.6,31.16,1,0,9606,278.3,93,474.5,7.889,0.05,-6.61,6.21,1 +485,1658,4274,4326,"Parameter values from Datum 73 to ETRS89 (1) (code 1657). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaced by Datum 73 to WGS 84 (4) (tfm code 1987).",For applications to an accuracy of 2 metres.,1294,37.01,42.15,-9.5,-6.19,1,0,9606,-238.2,85.2,29.9,0.166,0.046,1.248,2.03,0 +486,1945,4274,4326,"Parameter values from Datum 73 to ETRS89 (2) (code 1792). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1294,37.01,42.15,-9.5,-6.19,1,1,9606,-231,102.6,29.8,0.615,-0.198,0.881,1.79,0 +487,1983,4274,4326,,For low resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9603,-223.237,110.193,36.649,,,,,1 +488,1987,4274,4326,,For medium resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9607,-239.749,88.181,30.488,-0.263,-0.082,-1.211,2.229,0 +489,1193,4275,4326,"These same parameter values are used to transform to ETRS89. See NTF to ETRS89 (1) (code 1651).",For applications to an accuracy of 2 metres.,3694,41.33,51.1,-5.2,9.6,1,0,9603,-168,-60,320,,,,,1 +490,1195,4277,4326,Derived at 38 stations.,"For military purposes only. Accuracy 10m, 10m and 15m in X, Y and Z axes.",1264,49.96,60.84,-7.56,1.78,1,0,9603,375,-111,431,,,,,1 +491,1196,4277,4326,Derived at 24 stations.,"For military purposes only. Accuracy 5m, 5m and 6m in X, Y and Z axes.",2395,49.94,55.81,-6.37,1.78,1,0,9603,371,-112,434,,,,,0 +492,1197,4277,4326,Derived at 25 stations.,"For military purposes only. Accuracy 10m, 10m and 15m in X, Y and Z axes.",2396,49.94,55.81,-6.37,1.78,1,0,9603,371,-111,434,,,,,0 +493,1198,4277,4326,Derived at 13 stations.,For military purposes only. Accuracy 10m in each axis.,2397,54.62,58.67,-7.67,-0.72,1,0,9603,384,-111,425,,,,,0 +494,1199,4277,4326,Derived at 3 stations.,For military purposes only. Accuracy 20m in each axis.,2398,51.37,53.43,-5.34,-2.64,1,0,9603,370,-108,434,,,,,0 +495,1314,4277,4326,"For a more accurate transformation see OSGB 1936 / British National Grid to ETRS89 (2) (code 1039): contact the Ordnance Survey of Great Britain (http://www.gps.gov.uk/gpssurveying.asp) for details.",Oil exploration. Accuracy better than 4m and generally better than 2m.,1264,49.96,60.84,-7.56,1.78,1,0,9606,446.448,-125.157,542.06,0.15,0.247,0.842,-20.489,0 +496,4560,4558,4326,"Approximation at the +/- 1m level assuming that RRAF91 is equivalent to WGS 84 within the accuracy of the transformation.","Accuracy +/- 1 metre.",2824,14.08,18.53,-63.66,-57.53,1,0,9603,0,0,0,,,,,1 +497,1074,4281,4326,"Not recognised by Survey of Israel. See Palestine 1923 to WGS 84 (2) (code 8650).","Oil Exploration. Accuracy: 1m to north and 5m to south of east-west line through Beersheba (31°15'N).",2603,29.49,33.27,34.22,35.68,1,0,9606,-275.7224,94.7824,340.8944,-8.001,-4.42,-11.821,1,1 +498,1200,4282,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,1072,-7.13,3.72,8.87,18.65,1,0,9603,-148,51,-291,,,,,1 +499,1801,4282,4326,"Derived in 1994 by CGG/Topnav using DORIS system on various stations along the coastline.","?",2574,-5.5,-4,11,12,1,0,9603,-145,52.7,-291.6,,,,,0 +500,1802,4282,4326,Derived by Geoid for Elf in May 1995 using GPS and IGS data by tying 4 geodetic points to ITRF93 epoch 1995.4.,Used by Elf since May 1995 for all offshore Congo operations.,2574,-5.5,-4,11,12,1,0,9606,-178.3,-316.7,-131.5,5.278,6.077,10.979,19.166,0 +501,1150,4283,4326,,GDA94 is a realisation of WGS 84 coincident to within 1 metre. This transformation has an accuracy equal to the coincidence figure.,2575,-45,-10,108,155,1,0,9603,0,0,0,,,,,1 +502,1254,4284,4326,Accuracy estimate not available.,For military purposes.,1198,41.17,82,19.2,-168.98,1,0,9603,28,-130,-95,,,,,0 +503,1267,4284,4326,"Derived through concatenation of Pulkovo 1942 to PZ-90 (1) (tfm code 15844) and PZ-90 to WGS 84 (2) (tfm code 1244. Mandated for use in Russia by GOST R 51794-2001, but this has been superseded by GOST R 51794-2008. Replaced by tfm code 5044.",Accuracy 4 metres.,1198,41.17,82,19.2,-168.98,1,0,9607,23.92,-141.27,-80.9,0,-0.35,-0.82,-0.12,1 +504,1287,4284,4326,Derived at 5 stations.,For military purposes. Accuracy 2m in each axis.,1119,45.78,48.6,16.12,22.91,1,1,9603,28,-121,-77,,,,,0 +505,1288,4284,4326,Derived at 11 stations.,"For military purposes only. Accuracy 4m, 2m and 4m in X, Y and Z axes.",1192,49.03,55.95,14.14,24.16,1,1,9603,23,-124,-82,,,,,0 +506,1289,4284,4326,Derived at 6 stations.,"For military purposes only. Accuracy 3m, 3m and 2m in X, Y and Z axes.",1306,47.74,51.05,12.09,22.56,1,1,9603,26,-121,-78,,,,,0 +507,1290,4284,4326,Derived at 5 stations.,For military purposes. Accuracy 2m in each axis.,1139,55.64,58.12,20.98,28.23,1,0,9603,24,-124,-82,,,,,0 +508,1291,4284,4326,Derived at 2 stations.,For military purposes. Accuracy 25m in each axis.,1131,40.67,55.57,46.52,87.41,1,0,9603,15,-130,-84,,,,,0 +509,1292,4284,4326,Derived at 7 stations.,For military purposes. Accuracy 3m in each axis.,1025,39.67,42.69,18.45,21.06,1,1,9603,24,-130,-92,,,,,0 +510,1293,4284,4326,Derived at 4 stations.,"For military purposes. Accuracy 3m, 5m and 3m in X, Y and Z axes.",1197,43.62,48.26,20.26,31.5,1,1,9603,28,-121,-77,,,,,0 +511,1303,4284,4326,Mean of 13 stations along entire Kazak coastline.,Residuals under 2 m.,2405,36.57,47.2,46.7,54.76,1,0,9606,43.822,-108.842,-119.585,1.455,-0.761,0.737,0.549,0 +512,1334,4284,4326,,"?",3246,57.57,59.66,21.84,28,1,0,9607,21.58719,-97.54127,-60.92546,-1.01378,-0.58117,-0.2348,-4.6121,0 +513,1679,4284,4326,"Parameter values taken from Pulkovo 1942 to LKS94(ETRS89) (1) (code 1274) assuming that LKS94(ETRS89) is equivalent to WGS 84 within the accuracy of the transformation.","Approximation at the +/- 1m level.",1145,53.92,56.48,21.07,26.82,1,0,9607,-40.595,-18.55,-69.339,-2.508,-1.832,2.611,-4.299,0 +514,1807,4284,4326,"Derived via WGS72 values taken from SOCAR Magnavox 1502 manual. Used by AIOC 1995-1997 then replaced by the AIOC97 values (tfm code 1808). +Do not confuse with AIOC95 vertical datum as used in southern Caspian Sea and at Sangachal terminal by AIOC.",Oil industry operations by AIOC prior to 1997.,1038,38.41,41.94,44.82,50.41,1,0,9606,27,-135,-84.5,0,0,0.554,0.2263,0 +515,1808,4284,4326,"Mean of 3 stations in western Georgia, 4 stations in eastern Georgia and 4 stations in eastern Azerbaijan. Derived for use on AIOC early oil western export pipeline, but adopted for all AIOC work replacing the 1995 AIOC transformation (code 1807).",Oil industry operations.,2593,38.26,43.58,40,51.68,1,0,9606,686.1,-123.5,-574.4,8.045,-23.366,10.791,-2.926,0 +516,1809,4284,4326,Parameter values calculated by Elf Exploration and Production based on geodetic survey carried out by Azerbaijan State Committee for Geodesy and Cartography.,Oil industry operations.,2594,38.41,40.42,48.7,50.4,1,0,9606,926.4,-715.9,-186.4,-10.364,-20.78,26.452,-7.224,0 +517,5044,4284,4326,"Derived through concatenation of Pulkovo 1942 to PZ-90.02 to WGS 84. Replaces Pulkovo 1942 to WGS 84 (17) (code 1267).",Accuracy 3 metres.,1198,41.17,82,19.2,-168.98,1,0,9607,23.57,-140.95,-79.8,0,-0.35,-0.79,-0.22,0 +518,15865,4284,4326,"Derived via PZ-90 at 30 stations throughout USSR (Former Soviet Union, FSU) through concatenation of Pulkovo 1942 to PZ-90 (1) (tfm code 15844) and PZ-90 to WGS 84 (1) (tfm code 15843).",Accuracy 4.5 metres.,2423,35.15,82,19.2,-168.98,1,0,9607,25,-141,-78.5,0,-0.35,-0.736,0,0 +519,1561,4285,4326,Derived at 3 stations.,For military purposes only. Accuracy 20m in each axis.,1346,24.48,26.18,50.75,51.64,1,0,9603,-128,-283,22,,,,,0 +520,1562,4285,4326,"Derived by Brown & Root in 1992 for Qatar General Petroleum Corporation.",Oil exploration.,2406,24.6,27.03,50.61,53.07,1,0,9603,-128.16,-282.42,21.93,,,,,1 +521,1563,4285,4326,"Derived by Qatar Centre for GIS. See Qatar 1974 to WGS 84 (2) (code 1562) for transformation used by QGPC for offshore petroleum industry.",Oil exploration.,1346,24.48,26.18,50.75,51.64,1,0,9603,-128.033,-283.697,21.052,,,,,0 +522,1211,4287,4326,Derived at 2 stations.,"For military purposes. Accuracy 25m, 25m and 32m in X, Y and Z axes.",2407,59.75,72,-55,-40,1,1,9603,164,138,-189,,,,,0 +523,1112,4289,4326,"Replaced by Amersfoort to WGS 84 (2) (code 1672).","?",1275,50.75,53.75,3.2,7.24,1,0,9606,593.16,26.15,478.54,-1.30439800822601,-0.103297414968546,-1.14450153042326,4.0775,0 +524,1672,4289,4326,"Parameter values from Amersfoort to ETRS89 (1) (code 1751) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaces Amersfoort to WGS 84 (1) (code 1112). Replaced by Amersfoort to WGS 84 (3) (code 15934).","Approximation at the +/- 1m level.",1275,50.75,53.75,3.2,7.24,1,0,9607,565.04,49.91,465.84,0.409394387439237,-0.359705195614311,1.86849100035057,4.0772,0 +525,4833,4289,4326,"Parameter values from Amersfoort to ETRS89 (5) (tfm code 4830) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaces Amersfoort to WGS 84 (3) (code 15934).","Approximation at the +/- 1m level.",1275,50.75,53.75,3.2,7.24,1,0,9607,565.4171,50.3319,465.5524,0.398957388243134,-0.343987817378283,1.87740163998045,4.0725,1 +526,15934,4289,4326,"Parameter values from Amersfoort to ETRS89 (3) (tfm code 15739) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaces Amersfoort to WGS 84 (2) (code 1672). Replaced by Amersfoort to WGS 84 (4) (tfm code 4833).","Approximation at the +/- 1m level.",1275,50.75,53.75,3.2,7.24,1,0,9607,565.2369,50.0087,465.658,0.406857330322398,-0.350732676542563,1.8703473836068,4.0812,0 +527,1212,4291,4326,Derived at 84 stations.,"For military purposes only. Accuracy 15m, 6m and 9m in X, Y and Z axes.",1341,-56.15,13,-82,-34,1,1,9603,-57,1,-41,,,,,0 +528,1213,4291,4326,Derived at 10 stations.,For military purposes only. Accuracy 5m in each axis.,1033,-58.4,-21.78,-73.58,-52.63,1,1,9603,-62,-1,-37,,,,,0 +529,1214,4291,4326,Derived at 4 stations.,For military purposes. Accuracy 15m in each axis.,1049,-22.9,-9.68,-69.66,-57.52,1,1,9603,-61,2,-48,,,,,0 +530,1215,4291,4326,Derived at 22 stations.,"For military purposes only. Accuracy 3m, 5m and 5m in X, Y and Z axes.",1053,-35.71,7.04,-74,-25.28,1,1,9603,-60,-2,-41,,,,,0 +531,1216,4291,4326,Derived at 9 stations.,"For military purposes only. Accuracy 15m, 8m and 11m in X, Y and Z axes.",1066,-59.86,-17.51,-113.2,-65.73,1,1,9603,-75,-1,-44,,,,,0 +532,1217,4291,4326,Derived at 7 stations.,"For military purposes only. Accuracy 6m, 6m and 5m in X, Y and Z axes.",1070,-4.24,15.5,-84.77,-66.87,1,1,9603,-44,6,-36,,,,,0 +533,1218,4291,4326,Derived at 11 stations.,For military purposes. Accuracy 3m in each axis.,1085,-5,5,-95.35,-75.22,1,1,9603,-48,3,-44,,,,,0 +534,1219,4291,4326,Derived at 1 station.,For military purposes. Accuracy 25m in each axis.,2356,-1.41,0.17,-91.71,-89.2,1,1,9603,-47,26,-42,,,,,0 +535,1220,4291,4326,Derived at 5 stations.,"For military purposes only. Accuracy 9m, 5m and 5m in X, Y and Z axes.",1114,1.19,10.69,-61.39,-55.78,1,1,9603,-53,3,-47,,,,,0 +536,1221,4291,4326,Derived at 4 stations.,For military purposes. Accuracy 15m in each axis.,1188,-27.58,-19.3,-62.64,-54.24,1,1,9603,-61,2,-33,,,,,0 +537,1222,4291,4326,Derived at 6 stations.,For military purposes. Accuracy 5m in each axis.,1189,-21.05,-0.04,-84.67,-68.67,1,1,9603,-58,0,-44,,,,,0 +538,1223,4291,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,1235,9.83,12.33,-62.08,-57.29,1,1,9603,-45,12,-33,,,,,0 +539,1224,4291,4326,Derived at 5 stations.,"For military purposes only. Accuracy 3m, 6m and 3m in X, Y and Z axes.",1251,0.65,16.75,-73.38,-58.95,1,1,9603,-45,8,-33,,,,,0 +540,1548,4291,4326,"Derived by Brazilean Institute of Geography and Statistics (IGBE) in 1989. Used by ANP.",Medium and small scale mapping.,1053,-35.71,7.04,-74,-25.28,1,1,9603,-66.87,4.37,-38.52,,,,,0 +541,1225,4292,4326,Derived at 5 stations.,For military purposes. Accuracy 1m in each axis.,2355,-52.5,-51.25,-59.75,-57.5,1,0,9603,-355,21,72,,,,,1 +542,1226,4293,4326,Derived at 3 stations.,For military purposes only. Accuracy 20m in each axis.,1169,-31.2,-16.99,8.32,25.28,1,0,9603,616,97,-251,,,,,1 +543,1271,4293,4326,"Beware! Schwarzeck CRS uses German legal metres. Example: Schwarzeck Lat 19d 35m 46.952s S Long 20d 41m 50.649s E; X=5623409.40 Y=2124618.00 Z=-2125847.62 GLM; X=5623485.86 Y=2124646.89 Z=-2125876.53 m; WGS84 X=5624101.50 Y=2124748.97 Z=2126132.34 m.","?",1169,-31.2,-16.99,8.32,25.28,1,0,9603,615.64,102.08,-255.81,,,,,0 +544,1286,4294,4326,Accuracy estimate not available.,For military purposes.,2354,-5.72,4.4,104.94,119.62,1,1,9603,-403,684,41,,,,,0 +545,1834,4294,4326,Accuracy estimate not available.,For military purposes.,2354,-5.72,4.4,104.94,119.62,1,1,9603,-403,684,41,,,,,0 +546,1835,4294,4326,,Oil exploration.,1360,-5.72,4.4,113.69,119.62,1,1,9603,-387.06,636.53,46.29,,,,,0 +547,1836,4294,4326,,Oil exploration.,2770,-2.35,4.4,113.7,119.62,1,1,9603,-403.4,681.12,46.56,,,,,0 +548,1227,4297,4326,Accuracy estimate not available.,For military purposes.,1149,-28.89,-10.6,41.14,55.34,1,0,9603,-189,-242,-91,,,,,1 +549,1228,4298,4326,Derived at 8 stations.,"For military purposes. Accuracy 10m, 10m and 12m in X, Y and Z axes.",1362,0.85,7.35,109.55,119.26,1,0,9603,-679,669,-48,,,,,0 +550,1592,4298,4326,"Originally used by BSP offshore only, use extended to onshore in 2010.",Oil exploration and production.,1055,4,6.37,112.5,115.36,1,0,9603,-678,670,-48,,,,,0 +551,1615,4298,4326,"CARE! Erroneous GPS data was used in the derivation of these parameters. They produce a coordinate difference of 10m horizontally and 50m vertically compared to Timbalai 1948 to WGS 84 (2) (code 1592).",Topographic and engineering survey onshore.,2349,4,5.05,114.1,115.36,1,0,9603,-726.282,703.611,-48.999,,,,,0 +552,1852,4298,4326,"Derived by Racal Survey for SSB at 24 coastal stations (including Timbalai fundamental point and 6 other primary triangulation stations) between in Sabah (Kudat southwards) and Sarawak (Sibu northwards).",Oil exploration.,2780,1.5,12,109.5,119,1,0,9606,-533.4,669.2,-52.5,0,0,4.28,9.4,1 +553,5248,4298,4326,,Oil exploration.,1055,4,6.37,112.5,115.36,1,0,9607,-689.5937,623.84046,-65.93566,0.02331,-1.17094,0.80054,5.88536,0 +554,5249,4298,4326,"Parameter values taken from Timbalai 1948 to GDBD2009 (1) (code 5248) assuming that GDBD2009 is equivalent to WGS 84 within the accuracy of the transformation.",Oil exploration.,1055,4,6.37,112.5,115.36,1,0,9607,-689.5937,623.84046,-65.93566,0.02331,-1.17094,0.80054,5.88536,0 +555,1229,4299,4326,Derived at 7 stations.,For military purposes only. Accuracy 3m in each axis.,1305,51.33,55.4,-10.6,-5.33,1,1,9603,506,-122,611,,,,,0 +556,1641,4299,4326,"Parameter values from TM75 to ETRS89 (2) (code 1953). Assumes each pair of (i) TM65 and TM75, and (ii) ETRS89 and WGS 84, can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1305,51.33,55.4,-10.6,-5.33,1,0,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15,1 +557,1954,4300,4326,"Parameter values taken from TM65 to ETRS89 (2) (code 1953). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1305,51.33,55.4,-10.6,-5.33,1,0,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15,1 +558,1956,4300,4326,"Derived at 7 stations. TM75 is based on the geodetic datum of 1965 which should not be confused with the mapping adjustment of 1965 (TM65).",For military purposes only. Accuracy 3m in each axis.,1305,51.33,55.4,-10.6,-5.33,1,0,9603,506,-122,611,,,,,0 +559,1230,4301,4326,Derived at 31 stations.,"For military purposes only. Accuracy 20m, 5m and 20m in X, Y and Z axes.",2409,24.25,45.49,123.68,145.81,1,0,9603,-148,507,685,,,,,0 +560,1231,4301,4326,Derived at 16 stations.,"For military purposes only. Accuracy 8m, 5m and 8m in X, Y and Z axes.",3263,30.15,45.92,128.5,146.09,1,0,9603,-148,507,685,,,,,0 +561,1232,4301,4326,"Derived at 29 stations. Replaced by Tokyo to WGS 84 (5) (code 1305).","For military purposes only. Accuracy 8m, 5m and 8m in X, Y and Z axes.",3266,33.18,38.67,125.8,129.72,1,0,9603,-146,507,687,,,,,0 +562,1233,4301,4326,Derived at 3 stations.,"For military purposes only. Accuracy 20m, 5m and 20m in X, Y and Z axes.",2408,26,27.5,127.5,128.5,1,0,9603,-158,507,676,,,,,0 +563,1305,4301,4326,"Derived at 29 stations. Replaces Tokyo to WGS 84 (3) (code 1232).",For military purposes. Accuracy 2m in each axis.,3266,33.18,38.67,125.8,129.72,1,0,9603,-147,506,687,,,,,0 +564,15484,4301,4326,"Parameter values from Tokyo to JGD2000 (1) (code 15483). Assumes JGD2000 and WGS 84 can be considered the same to within the accuracy of the transformation.","Surveying, mapping and civil engineering purposes. Accuracy on main islands 9m.",1129,19.01,45.92,122.49,160.09,1,0,9603,-146.414,507.337,680.507,,,,,1 +565,1296,4302,4326,Derived in 1989 by ONI for Amoco.,Oil exploration.,1339,9.83,11.5,-62.08,-60,1,0,9603,-61.702,284.488,472.052,,,,,1 +566,10085,4302,4326,"Parameter values provided to EOG by Trinidad Ministry of Energy and Energy Industries. Used by EOG offshore Trinidad (including Pelican, Kiskadee and Ibis fields) since 1996.",Oil exploration.,1339,9.83,11.5,-62.08,-60,1,0,9603,-61,285.2,471.6,,,,,0 +567,1932,4644,4326,,"Accuracy better than +/- 1 metre.",2823,-22.35,-22.1,166.3,166.5,1,1,9606,-166.207,-154.777,254.831,-37.5444,7.7011,-10.2025,-30.8598,0 +568,15904,4644,4326,"Parameter values taken from NEA74 Noumea to RGNC91-93 (1) ( code 15886) assuming that RGNC91-93 is equivalent to WGS 84 to within the accuracy of the transformation.",Accuracy 1 metre.,2823,-22.35,-22.1,166.3,166.5,1,0,9603,-10.18,-350.43,291.37,,,,,1 +569,1294,4304,4326,Accuracy estimate not available.,For military purposes.,1365,32,37.09,-2.92,9.09,1,0,9603,-73,-247,227,,,,,1 +570,15815,4728,4326,Determined at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3873,27.6,29.5,-18.3,-13.3,1,0,9603,-307,-92,127,,,,,1 +571,1253,4307,4326,Derived at 3 stations.,For military purposes only. Accuracy 25m in each axis.,3213,18.98,37,-8.67,11.99,1,0,9603,-186,-93,310,,,,,1 +572,1255,4307,4326,"CAUTION: Source CRS described by DMA as from Voirol 1960. OGP believes that the data used in the derivation of these parameters contains a blunder. We recommend using transformation North Sahara 1959 to WGS84 (1) (code 1253). Derived at 2 stations.",For military purposes only. Accuracy 25m in each axis.,1365,32,37.09,-2.92,9.09,1,0,9603,-123,-206,219,,,,,0 +573,1815,4307,4326,Used by BP in District 3 and In Salah Gas.,Oil industry operations.,2598,25,32,1.5,3.25,1,0,9606,-152.9,43.8,358.3,2.714,1.386,-2.788,-6.743,0 +574,1816,4307,4326,"Derived at astro station central to concession. Significant and varying differences (>100m) at 4 neighbouring astro stations.",Oil industry operations.,2599,27.5,28.25,9,9.7,1,0,9603,-95.7,10.2,158.9,,,,,0 +575,1817,4307,4326,Derived at astro station Guerrara.,Oil industry operations.,2600,31.3,31.5,6.8,7.2,1,0,9603,-165.914,-70.607,305.009,,,,,0 +576,15874,4307,4326,"Derived at 11 stations throughout blocks 317b, 319b, 321b and 322b. Network based on station P4 (horizontal) and benchmark RN51 (vertical) using EGM96 geoid height. Used by Statoil in Hassi Mouina.",Oil exploration and production. Accuracy 5m.,3402,29.25,31,0,1.52,1,0,9603,-169.559,-72.34,303.102,,,,,0 +577,1234,4309,4326,Accuracy estimate not available.,For military purposes.,3326,-34.99,-30.1,-58.49,-53.1,1,0,9603,-155,171,37,,,,,1 +578,5386,4309,4326,Derived at 11 stations during 1998 densification of Uruguay control based on SIRGAS 1995.,"Accuracy at stations used for derivation: 0.13 to 1.17m.",3326,-34.99,-30.1,-58.49,-53.1,1,0,9606,-124.45,183.74,44.64,-0.4384,0.5446,-0.9706,-2.1365,0 +579,15816,4734,4326,Determined at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3184,-37.43,-37.05,-12.73,-12.21,1,0,9603,-632,438,-609,,,,,1 +580,1235,4311,4326,Derived at 5 stations.,"For military purposes. Accuracy 5m, 5m and 8m in X, Y and Z axes.",1222,1.84,9.35,-58.07,-52.66,1,0,9603,-265,120,-358,,,,,1 +581,1194,4312,4326,May be taken as approximate transformation MGI to ETRS89 assuming ETRS89 is equivalent to WGS 84 within the accuracy of the transformation - see tfm code 1024. Information source gives scale as -2.388739 ppm.,Provincial GIS and other applications to an accuracy of 0.5 metres.,1543,46.6,47.9,13.5,16.2,1,0,9607,601.705,84.263,485.227,-4.7354,-1.3145,-5.393,-2.3887,0 +582,1306,4312,4326,Accuracy estimate not available.,For military purposes only.,2370,41.85,46.88,13.38,23.01,1,1,9603,682,-203,480,,,,,0 +583,1471,4312,4326,,For applications to an accuracy of 1.5 metres.,1037,46.41,49.02,9.53,17.17,1,1,9606,-577.326,-90.129,-463.919,-5.1365988,-1.4742,-5.2970436,-2.4232,0 +584,1618,4312,4326,"Same transformation parameters used for MGI to ETRS89 (1) (code 1619).",For applications to an accuracy of 1.5 metres.,1037,46.41,49.02,9.53,17.17,1,0,9606,577.326,90.129,463.919,5.137,1.474,5.297,2.4232,1 +585,1621,4312,4326,"Parameter values from MGI to ETRS89 (2) (code 1620). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1076,42.3,46.57,13.02,19.5,1,1,9606,551.7,162.9,467.9,6.04,1.96,-11.38,-4.82,0 +586,1786,4312,4326,"Parameter values from MGI to ETRS89 (3) (code 1785). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1212,45.44,46.91,13.37,16.68,1,1,9606,426.9,142.6,460.1,4.91,4.49,-12.42,17.1,0 +587,1794,4312,4326,"For more accurate transformation see MGI to WGS 84 (7) (code 1795).",Oil industry,3536,41.82,43.55,18.44,20.39,1,1,9603,695.5,-216.6,491.1,,,,,0 +588,15982,4312,4326,"Parameter values from MGI to Slovenia 1996 (1) (code 15981). Assumes Slovenia 1996 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1212,45.44,46.91,13.37,16.68,1,1,9607,409.545,72.164,486.872,-3.085957,-5.46911,11.020289,17.919665,0 +589,1609,4313,4326,"Scale difference is given by information source as 0.999999. Given in this record in ppm to assist application usage. Very similar parameter values (to slightly less precision) used for BD72 to ETRS89: see code 1652.",For applications to an accuracy of 1 metre.,1347,49.51,51.5,2.54,6.4,1,0,9607,-99.059,53.322,-112.486,-0.419,0.83,-1.885,-1,0 +590,1610,4313,4326,,For applications to an accuracy of 5 metres.,1347,49.51,51.5,2.54,6.4,1,0,9603,-125.8,79.9,-100.5,,,,,0 +591,15749,4313,4326,"Parameter values from BD72 to ETRS89 (2) (code 15748). Scale difference is given by information source as 1.0000012747. Given in this record in ppm to assist application usage.",For applications to an accuracy of 0.5 metre.,1044,49.53,51.83,2.12,6.4,1,1,9607,-106.8686,52.2978,-103.7239,-0.3366,0.457,-1.8422,1.2747,0 +592,15929,4313,4326,"Parameter values from BD72 to ETRS89 (2) (code 15928). Scale difference is given by information source as -1.0000012747. Given in this record in ppm to assist application usage.",For applications to an accuracy of 0.5 metre.,1347,49.51,51.5,2.54,6.4,1,0,9607,-106.8686,52.2978,-103.7239,-0.3366,0.457,-1.8422,-1.2747,1 +593,1673,4314,4326,"Parameter values from DHDN to ETRS89 (1) (code 1309) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaced by DHDN to WGS 84 (2) (tfm code 1777).",For applications with an accuracy at 5 m level.,2326,47.27,55.04,5.87,13.83,1,0,9607,582,105,414,-1.04,-0.35,3.08,8.3,0 +594,1777,4314,4326,"Parameter values from DHDN to ETRS89 (2) (code 1776) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Replaces DHDN to WGS 84 (1) (tfm code 1673).",For applications with an accuracy at 3 m level,2326,47.27,55.04,5.87,13.83,1,0,9606,598.1,73.7,418.2,0.202,0.045,-2.455,6.7,1 +595,15869,4314,4326,"Parameter values taken from RD/83 to ETRS89 (1) (tfm code 15868) assuming that within the accuracy of the transformation ETRS89 is equivalent to WGS 84 and RD/83 is equivalent to DHDN.",For applications with an accuracy at 2m level,1343,50.17,54.72,9.87,15.03,1,0,9606,612.4,77,440.2,-0.054,0.057,-2.797,2.55,0 +596,1517,4315,4326,,"?",3257,7.16,12.69,-15.12,-7.65,1,0,9603,-23,259,-9,,,,,1 +597,1789,4316,4326,"Parameter values taken from Pulkovo 1942 to WGS 84 (9) (code 1293) assuming that","?",1197,43.62,48.26,20.26,31.5,1,1,9603,103.25,-100.4,-307.19,,,,,0 +598,1995,4316,4326,,Oil exploration,3295,43.62,48.26,20.26,29.67,1,0,9603,103.25,-100.4,-307.19,,,,,1 +599,1097,4317,4326,"Parameter values taken from Pulkovo 1942 to WGS 84 (9) (code 1293) assuming that Pulkovo 1942 in Romania is equivalent to Dealul Piscului 1970.","Accuracy 3m, 5m and 3m in X, Y and Z axes.",1197,43.62,48.26,20.26,31.5,1,1,9603,28,-121,-77,,,,,0 +600,1996,4317,4326,,Oil exploration,1197,43.62,48.26,20.26,31.5,1,1,9603,44.107,-116.147,-54.648,,,,,0 +601,1060,4318,4326,,1 metre accuracy.,3267,28.56,30.1,46.57,48.45,1,0,9603,-3.2,-5.7,2.8,,,,,1 +602,1061,4319,4326,,For applications requiring an accuracy of better than 1 metre.,1310,29.25,29.45,47.67,48.15,1,0,9603,-20.8,11.3,2.4,,,,,1 +603,1062,4319,4326,,For applications requiring an accuracy of better than 1 metre.,1310,29.25,29.45,47.67,48.15,1,0,9607,226.702,-193.337,-35.371,2.229,4.391,-9.238,0.9798,0 +604,1237,4322,4326,,For scientific purposes.,1262,-90,90,-180,180,1,0,9606,0,0,4.5,0,0,0.554,0.2263,1 +605,1238,4322,4326,,For scientific purposes.,1262,-90,90,-180,180,1,0,9606,0,0,4.5,0,0,0.554,0.219,0 +606,15821,4731,4326,Derived at 1 satellite station.,"For military and topographic mapping. Accuracy +/-25m in each axis.",3195,-18.6,-17.26,177.02,178.87,1,1,9603,51,391,-36,,,,,0 +607,1240,4324,4326,,Geodesy.,2346,-90,90,-180,180,1,0,9606,0,0,1.9,0,0,0.814,-0.38,1 +608,5521,4646,4326,,For military purposes. Accuracy unknown.,2807,-11.9,-11.4,43.2,43.5,1,0,9603,-963,510,-359,,,,,1 +609,15822,4732,4326,Derived at 10 satellite stations.,"For military and topographic mapping. Accuracy +/-3 m in each axis.",3191,8.64,19.34,162.03,168,1,0,9603,102,52,-38,,,,,1 +610,5327,5324,4326,For many purposes ISN2004 can be considered to be coincident with WGS 84.,"Approximation at the +/- 1m level assuming that ISN2004 is equivalent to WGS 84.",1120,59.87,69.23,-28.64,-10.32,1,0,9603,0,0,0,,,,,1 +611,3817,3819,4326,Horizontal coordinates of 66 points of the National Geodetic Network were used to compute this transformation.,GIS and topographic survey.,1119,45.78,48.6,16.12,22.91,1,0,9607,595.48,121.69,515.35,-4.115,2.9383,-0.853,-3.408,1 +612,1920,4645,4326,,"Accuracy +/- 1 metre.",1174,-23.46,-17.26,157.09,173.89,1,1,9603,0,0,0,,,,,0 +613,15823,4733,4326,Derived at 2 satellite stations.,"For military and topographic mapping. Accuracy +/-25m in each axis.",3190,19.26,19.34,166.58,166.66,1,0,9603,276,-57,149,,,,,1 +614,3830,3824,4326,"Approximation at the +/- 1m level assuming that TWD97 is equivalent to WGS 84.","Accuracy +/- 1m.",1228,21.43,26.36,118.07,122.49,1,0,9603,0,0,0,,,,,1 +615,5376,5365,4326,,Accuracy 1m.,1074,2.15,11.77,-90.44,-81.43,1,0,9603,0,0,0,,,,,1 +616,15808,4724,4326,Derived at 2 satellite stations.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3189,-7.49,-7.21,72.34,72.5,1,0,9603,208,-435,-229,,,,,1 +617,5377,5371,4326,,Accuracy 1m.,1186,5,12.5,-84.32,-77.05,1,0,9603,0,0,0,,,,,1 +618,5378,5373,4326,,Accuracy 1m.,1189,-21.05,-0.04,-84.67,-68.67,1,0,9603,0,0,0,,,,,1 +619,15812,4736,4326,,"Scientific mapping. Accuracy +/- 20m in each axis.",3204,-64.1,-62.86,-61,-60.18,1,0,9603,260,12,-147,,,,,1 +620,15795,4707,4326,Derived at 1 satellite station. Same transformation parameter values related to same datum area given in original 1987 DMA TR8350.2 edition for Sorol Atoll.,For military purposes only. Accuracy 25m in each axis.,3181,23.69,23.93,-166.36,-166.03,1,0,9603,114,-116,-333,,,,,1 +621,5384,5381,4326,,Accuracy 1m.,1247,-37.77,-30.1,-58.49,-50.01,1,0,9603,0,0,0,,,,,1 +622,15831,4737,4326,"Approximation at the +/- 1m level assuming that ITRF2000 is equivalent to WGS 84.","Accuracy +/- 1 metre.",1135,31.6,39.16,122.52,132.1,1,0,9603,0,0,0,,,,,1 +623,5227,5228,4326,"Parameter values from S-JTSK/05 to ETRS89 (1) (code 5226). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaces tfm code 1622.",For applications to an accuracy of 1 metre.,1079,48.56,51.09,12.11,18.98,1,0,9607,572.213,85.334,461.94,-4.9732,-1.529,-5.2484,3.5378,1 +624,15771,4692,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from Maupiti 83 to RGPF (1) (tfm code 15759).","Accuracy +/- 1 metre.",3126,-16.52,-16.33,-152.33,-152.16,1,0,9603,217.037,86.959,23.956,,,,,1 +625,15973,4055,4326,"Executes change of sphere/ellipsoid",Web mapping. Accuracy may be no better than 800 metres.,1262,-90,90,-180,180,1,1,9603,0,0,0,,,,,0 +626,5395,5393,4326,,Accuracy 1m.,1087,9.97,14.43,-91.42,-87.65,1,0,9603,0,0,0,,,,,1 +627,15842,4739,4326,"Derived at 2 satellite stations. Care: does not use Hong Kong 1963 (code 4838) as the source CRS.","Military mapping. Accuracy +/- 1m.",1118,22.16,22.62,113.89,114.57,1,0,9603,-156,-271,-189,,,,,1 +628,5261,5252,4326,,"Approximation at the +/- 1m level as both TUREF and WGS 84 are realisations of ITRS.",1237,34.47,43.93,25.59,44.85,1,0,9603,0,0,0,,,,,1 +629,1925,4639,4326,,"Accuracy +/- 10 metres.",2815,-14,-13,-177,-176,1,1,9603,252,-132,-125,,,,,0 +630,15847,4639,4326,"Replaces information from 2001 (tfm code 1925).","Accuracy +/- 10 metres.",2815,-14,-13,-177,-176,1,0,9603,253,-132,-127,,,,,1 +631,15801,4714,4326,Derived at 3 satellite stations.,"Military and topographic mapping; Accuracy +/- 20 m in each axis",3193,-19.7,-17.4,168.1,169.64,1,0,9603,-127,-769,472,,,,,1 +632,15802,4715,4326,No accuracy estimate available.,Military and scientific mapping.,3205,-78,-77,165.5,167,1,0,9603,-104,-129,239,,,,,1 +633,1994,4657,4326,,Low accuracy applications.,3262,63.25,66.6,-24.6,-13.4,1,0,9603,-28,199,5,,,,,1 +634,5351,5340,4326,,Approximation at the sub meter level.,1033,-58.4,-21.78,-73.58,-52.63,1,0,9603,0,0,0,,,,,1 +635,5078,4743,4326,"Parameter values from Karbala 1979 to IGRS (1) (tfm code 5077) assuming that IGRS is equivalent to WGS 84 within the accuracy of the transformation. Replaces Karbala 1979 to WGS 84 (1) (tfm code 15872).",Accuracy 1m.,3625,29.06,37.41,38.82,49.4,1,0,9603,70.995,-335.916,262.898,,,,,1 +636,15872,4743,4326,"Derived from shifts in UTM rectangular coordinates for one point in Basra area provided by Iraq National Oil Exploration Company. Replaced by Karbala 1979 to WGS 84 (2) (tfm code 5078).",Oil exploration.,3397,29.06,31,46,49.4,1,0,9603,84.1,-320.1,218.7,,,,,0 +637,1951,4658,4326,Derived at 6 stations.,"Accuracy 3m, 3m and 5m in X, Y and Z axes.",3262,63.25,66.6,-24.6,-13.4,1,0,9603,-73,46,-86,,,,,1 +638,3894,3889,4326,"Approximation at the +/- 1m level assuming that IGRS is equivalent to WGS 84 within the accuracy of the transformation.",Accuracy 1m.,1124,29.06,37.41,38.82,49.4,1,0,9603,0,0,0,,,,,1 +639,1952,4659,4326,For many purposes ISN93 can be considered to be coincident with WGS 84.,"Approximation at the +/- 1m level assuming that ISN93 is equivalent to WGS 84.",1120,59.87,69.23,-28.64,-10.32,1,0,9603,0,0,0,,,,,1 +640,1957,4660,4326,Derived at 3 stations. Residuals under 1m.,For applications to an accuracy of 1 metre.,2869,70.8,71.2,-9.15,-7.9,1,0,9606,982.6087,552.753,-540.873,6.68162662527694,-31.6114924086422,-19.8481610048168,16.805,1 +641,1958,4661,4326,,LKS92 is a realisation of ETRS89 coincident to WGS84 within 1 metre. This transformation has an accuracy equal to the coincidence figure.,1139,55.64,58.12,20.98,28.23,1,0,9603,0,0,0,,,,,1 +642,15849,4213,4326,"Used by Elf / CGG between December 1991 and March 1992. Probably derived from results of concatenated tfm Beduaram to WGS 84 (1) (code 8634).",Oil exploration.,2771,12.6,16.5,8,15.5,1,0,9603,-106,-87,188,,,,,1 +643,15803,4716,4326,Derived at 4 satellite stations.,"Military and topographic mapping. Accuracy +/- 15 m in each axis.",3196,-4.64,-2.72,-174.2,-171.3,1,0,9603,298,-304,-375,,,,,1 +644,3915,3906,4326,"Parameter values from MGI 1901 to ETRS89 (3) (code 3914). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1212,45.44,46.91,13.37,16.68,1,0,9606,426.9,142.6,460.1,4.91,4.49,-12.42,17.1,0 +645,3917,3906,4326,"Parameter values from MGI 1901 to Slovenia 1996 (1) (code 3916). Assumes Slovenia 1996 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1212,45.44,46.91,13.37,16.68,1,0,9607,409.545,72.164,486.872,-3.085957,-5.46911,11.020289,17.919665,0 +646,3962,3906,4326,Accuracy estimate not available from information source but established empirically by OGP.,For military purposes only.,2370,41.85,46.88,13.38,23.01,1,0,9603,682,-203,480,,,,,1 +647,3964,3906,4326,"Parameter values from MGI 1901 to ETRS89 (2) (code 3963). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,3234,42.39,46.57,13.47,19.5,1,0,9606,551.7,162.9,467.9,6.04,1.96,-11.38,-4.82,0 +648,3965,3906,4326,,Oil industry,3536,41.82,43.55,18.44,20.39,1,0,9603,695.5,-216.6,491.1,,,,,0 +649,15879,4747,4326,"Approximation at the +/- 1m level assuming that GR96 is equivalent to WGS 84 within the accuracy of the transformation.","For applications with an accuracy of +/- 1m.",1107,56.38,87.02,-75,8.12,1,0,9603,0,0,0,,,,,1 +650,1962,4662,4326,Withdrawn by information source and replaced by improved information from local authority - see tfm code 15903.,"Accuracy +/- 10 metres.",2822,-22.5,-20,163.9,167.1,1,0,9603,-13,-348,292,,,,,0 +651,1963,4662,4326,Withdrawn by information source and replaced by improved information - see tfm code 15903.,"Accuracy better than +/- 1 metre.",2822,-22.5,-20,163.9,167.1,1,0,9606,97.295,-263.247,310.882,-1.5999,0.8386,3.1409,13.3259,0 +652,15903,4662,4326,"Parameter values taken from IGN72 Grande Terre to RGNC91-93 (1) ( code 15882) assuming that RGNC91-93 is equivalent to WGS 84 to within the accuracy of the transformation.","Accuracy +/- 2 metres.",2822,-22.5,-20,163.9,167.1,1,0,9603,-11.64,-348.6,291.98,,,,,1 +653,15878,4748,4326,"Parameter values taken from Viti Levu 1912 to WGS 84 (1) (tfm code 15897). Approximation at the +/- 50m level assuming that CRS 4748 is equivalent to CRS 4752 within the transformation accuracy. Source CRSs 4748 and 4752 are independent but connected.","For applications with an accuracy of +/-50m.",3401,-17.05,-16,178.25,-179.5,1,0,9603,51,391,-36,,,,,1 +654,1966,4663,4326,Derived at Forte de Sao Tiago.,For low resolution applications.,2870,32.62,33.15,-17.27,-16.25,1,0,9603,-502.862,-247.438,312.724,,,,,1 +655,1967,4663,4326,,For medium resolution applications.,2870,32.62,33.15,-17.27,-16.25,1,0,9607,-210.502,-66.902,-48.476,-2.094,15.067,5.817,0.485,0 +656,15880,4749,4326,,"Accuracy +/- 1 metre.",1174,-23.46,-17.26,157.09,173.89,1,0,9603,0,0,0,,,,,1 +657,1968,4664,4326,Calculated in 2001.,For low resolution applications.,2871,37.65,37.95,-25.9,-25.1,1,0,9603,-204.633,140.216,55.199,,,,,0 +658,1969,4664,4326,Calculated in 2001.,For medium resolution applications.,2871,37.65,37.95,-25.9,-25.1,1,0,9607,-211.939,137.626,58.3,0.089,-0.251,-0.079,0.384,0 +659,1970,4664,4326,Mean for all islands in group.,For low resolution applications.,1345,36.9,37.95,-25.9,-24.95,1,0,9603,-204.619,140.176,55.226,,,,,1 +660,1971,4664,4326,Mean for all islands in group.,For medium resolution applications.,1345,36.9,37.95,-25.9,-24.95,1,0,9607,-208.719,129.685,52.092,0.195,0.014,-0.327,0.198,0 +661,15881,4750,4326,"Parameter values taken from ST87 Ouvea to RGNC91-93 (1) ( code 15885) assuming that RGNC91-93 is equivalent to WGS 84 to within the accuracy of the transformation.","Accuracy better than +/- 1 metre.",2813,-20.75,-20.35,166.35,166.7,1,0,9603,-56.263,16.136,-22.856,,,,,1 +662,1972,4665,4326,,For low resolution applications.,2872,38.6,38.85,-27.4,-27.05,1,0,9603,-106.301,166.27,-37.916,,,,,0 +663,1973,4665,4326,,For medium resolution applications.,2872,38.6,38.85,-27.4,-27.05,1,0,9607,-105.854,165.589,-38.312,0.003,0.026,-0.024,-0.048,0 +664,1974,4665,4326,,For low resolution applications.,2873,38.5,38.65,-28.8,-28.58,1,0,9603,-106.248,166.244,-37.845,,,,,0 +665,1975,4665,4326,,For medium resolution applications.,2873,38.5,38.65,-28.8,-28.58,1,0,9607,-104,162.924,-38.882,0.075,0.071,-0.051,-0.338,0 +666,1976,4665,4326,,For low resolution applications.,2874,38.37,38.57,-28.55,-28,1,0,9603,-106.044,166.655,-37.876,,,,,0 +667,1977,4665,4326,,For medium resolution applications.,2874,38.37,38.57,-28.55,-28,1,0,9607,-95.323,166.098,-69.942,0.215,1.031,-0.047,1.922,0 +668,1978,4665,4326,,For low resolution applications.,2875,38.5,38.75,-28.35,-27.75,1,0,9603,-106.253,166.239,-37.854,,,,,0 +669,1979,4665,4326,,For medium resolution applications.,2875,38.5,38.75,-28.35,-27.75,1,0,9607,-100.306,161.246,-48.761,0.192,0.385,-0.076,0.131,0 +670,1980,4665,4326,Mean for all islands in group.,For low resolution applications.,1301,38.37,39.15,-28.8,-27.05,1,0,9603,-106.226,166.366,-37.893,,,,,1 +671,1981,4665,4326,Mean for all islands in group.,For medium resolution applications.,1301,38.37,39.15,-28.8,-27.05,1,0,9607,-103.088,162.481,-28.276,-0.167,-0.082,-0.168,-1.504,0 +672,1986,4666,4326,May be taken as a transformation from Lisbon 1890 to ETRS89 - see tfm code 5039.,For low resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9603,508.088,-191.042,565.223,,,,,1 +673,1990,4666,4326,,For medium resolution applications.,1294,37.01,42.15,-9.5,-6.19,1,0,9607,631.392,-66.551,481.442,-1.09,4.445,4.487,-4.43,0 +674,15804,4717,4326,Derived at 19 satellite stations.,"US space and military operations. Accuracy +/- 3 m in each axis.",3206,20.87,30.83,-82.33,-72.69,1,0,9603,-2,151,181,,,,,1 +675,5267,5264,4326,DRUKREF 03 and WGS 84 are both realisations of ITRS.,For applications to an accuracy of 1 metre.,1048,26.7,28.25,88.74,92.13,1,0,9603,0,0,0,,,,,1 +676,15708,4683,4326,Derived during GPS campaign which established PRS92 coordinates at 330 first order stations.,"Accuracy: 1-10 parts per million.",1190,2.25,21.43,116.09,140.08,1,0,9607,-127.62,-67.24,-47.04,3.068,-4.903,-1.578,-1.06,1 +677,1993,4667,4326,For all practical purposes this transformation is exact.,Boundary demarcation.,2876,29.05,30.1,46.5,48,1,0,9603,0,0,0,,,,,1 +678,15897,4752,4326,Derived at 1 satellite station.,"For military and topographic mapping. Accuracy +/-25m in each axis.",3195,-18.6,-17.26,177.02,178.87,1,0,9603,51,391,-36,,,,,1 +679,15752,4668,4326,Derived at 22 stations.,For military purposes. Accuracy 3m in each axis.,1297,36,71.05,-8.95,31.6,1,0,9603,-86,-98,-119,,,,,1 +680,15810,4735,4326,Derived at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3192,4,12.76,136.66,168.43,1,0,9603,647,1777,-1124,,,,,1 +681,15908,4754,4326,Derived at 5 stations throughout Libya used to define LGD2006 in May 2006.,For applications to an accuracy of 0.1 metre.,1143,19.51,36,9.31,25.98,1,0,9603,-208.4058,-109.8777,-2.5764,,,,,1 +682,4477,4463,4326,"Approximation at the +/- 1m level assuming that RGSPM06 is equivalent to WGS 84.","Accuracy +/- 1 metre.",1220,43.42,47.37,-57.1,-55.9,1,0,9603,0,0,0,,,,,1 +683,5501,5489,4326,"Approximation at the +/- 1m level assuming that RGAF09 is equivalent to WGS 84 within the accuracy of the transformation.","Accuracy +/- 1 metre.",2824,14.08,18.53,-63.66,-57.53,1,0,9603,0,0,0,,,,,1 +684,15912,4755,4326,"Approximation at the +/- 1m level assuming that DGN95 is equivalent to WGS 84 within the accuracy of the transformation.",Accuracy 1 metre.,1122,-13.01,7.92,91.66,141.1,1,0,9603,0,0,0,,,,,1 +685,1555,4158,4326,Derived in 1989 by ONI for Amoco.,Oil exploration.,3143,9.99,10.89,-61.97,-60.86,1,0,9603,-0.465,372.095,171.736,,,,,1 +686,1556,4158,4326,Described by NIMA as Naparima to WGS 84. In Trinidad the source CRS is better known as Naparima 1955. EPSG has duplicated the tfm using the alternative source CRSs. See also tfm code 1307.,For military purposes only. Accuracy given by NIMA 15m in each axis. EPSG believes there is an 8-10m blunder in dX.,3143,9.99,10.89,-61.97,-60.86,1,0,9603,-2,374,172,,,,,0 +687,4476,4470,4326,"Approximation at the +/- 1m level assuming that RGM04 is equivalent to WGS 84.","Accuracy +/- 1 metre.",1159,-14.37,-11.32,44.13,45.77,1,0,9603,0,0,0,,,,,1 +688,5194,4756,4326,Used by Total in Mekong delta.,Academic research not officially adopted.,3770,9.35,11.05,104.25,107.1,1,0,9607,-192.873,-39.382,-111.202,0.00205,0.0005,-0.00335,0.0188,1 +689,1931,4643,4326,,"Accuracy better than +/- 1 metre.",2821,-19.85,-19.54,163.55,163.7,1,0,9606,-480.26,-438.32,-643.429,16.3119,20.1721,-4.0349,-111.7002,1 +690,4290,4475,4326,"Parameter values taken from Cadastre 1997 to RGM04 (1) (transformation code 4478) assuming that RGM04 is coincident with WGS 84 within the accuracy of the transformation.","Accuracy +/- 1 metre.",3340,-13,-12.6,44.97,45.32,1,0,9603,-381.788,-57.501,-256.673,,,,,1 +691,5374,5354,4326,,Accuracy 1m.,1049,-22.9,-9.68,-69.66,-57.52,1,0,9603,0,0,0,,,,,1 +692,15787,4701,4326,Derived by Topnav in 1991 at station TSH 85.,Oil exploration. Accuracy 5m.,3171,-6.1,-3.95,12.21,16.5,1,0,9603,-79.9,-158,-168.9,,,,,1 +693,4832,4483,4326,,Accuracy 1m.,1160,12.1,32.72,-122.18,-84.64,1,0,9603,0,0,0,,,,,1 +694,1917,4633,4326,Withdrawn by information source and replaced by improved information from local authority - see tfm code 15902.,"Accuracy +/- 10 metres.",2814,-21.2,-20.7,167,167.5,1,0,9603,336,223,-231,,,,,0 +695,1927,4633,4326,Withdrawn by information source and replaced by improved information - see tfm code 15902.,"Accuracy better than +/- 1 metre.",2814,-21.2,-20.7,167,167.5,1,0,9606,137.092,131.66,91.475,-1.9436,-11.5993,-4.3321,-7.4824,0 +696,15902,4633,4326,"Parameter values taken from IGN56 Lifou to RGNC91-93 (1) ( code 15883) assuming that RGNC91-93 is equivalent to WGS 84 to within the accuracy of the transformation.",Accuracy 1 metre.,2814,-21.2,-20.7,167,167.5,1,0,9603,335.47,222.58,-230.94,,,,,1 +697,15925,4758,4326,,For all practical purposes JAD2001 can be considered to be coincident with WGS 84.,1128,14.08,19.36,-80.59,-74.51,1,0,9603,0,0,0,,,,,1 +698,15845,4161,4326,Transformation parameter precision given to millimetres in information source but due to accuracy rounded to nearest decimetre for EPSG database.,Geodetic surveying within the oil industry. Accuracy 25 m.,1265,-46.7,-45.2,-69.5,-67.1,1,0,9603,27.5,14,186.4,,,,,1 +699,15931,4759,4326,"Approximation at the +/- 1m level assuming that NAD83(NSRS2007) is equivalent to WGS 84 within the accuracy of the transformation.",For applications to an accuracy of 1 metre.,1511,14.93,74.71,167.65,-63.89,1,0,9603,0,0,0,,,,,1 +700,1540,4163,4326,,Accuracy better than 1 metre.,1257,11.61,19.01,41.44,55.03,1,0,9603,0,0,0,,,,,1 +701,4905,5013,4326,,PTRA08 and WGS 84 are realisations of ITRS coincident to within 1 metre. This transformation has an accuracy equal to the coincidence figure.,3670,28,41.5,-33,-14,1,0,9603,0,0,0,,,,,1 +702,15806,4719,4326,Derived at 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis",3188,-27.25,-27.02,-109.5,-109.16,1,0,9603,211,147,111,,,,,1 +703,15860,4702,4326,Mauritania 1999 can be considered to be the same as WGS 84 within the accuracy of this transformation.,Minerals management. Accuracy 1m.,1157,14.73,27.31,-20.41,-4.81,1,0,9603,0,0,0,,,,,1 +704,15971,4762,4326,"Approximation at the +/- 1m level assuming that BDA2000 is equivalent to WGS 84.","Accuracy +/- 1 metre.",1047,28.91,35.72,-68.83,-60.71,1,0,9603,0,0,0,,,,,1 +705,5375,5360,4326,,Accuracy 1m.,1066,-59.86,-17.51,-113.2,-65.73,1,0,9603,0,0,0,,,,,1 +706,15972,4763,4326,"Approximation at the +/- 1m level assuming that Pitcairn 2006 is equivalent to WGS 84.","Accuracy +/- 1 metre.",3208,-25.16,-25,-130.18,-129.99,1,0,9603,0,0,0,,,,,1 +707,1558,4166,4326,Derived at 5 stations.,For military purposes. Accuracy 1m in each axis.,3266,33.18,38.67,125.8,129.72,1,0,9603,0,0,0,,,,,1 +708,4084,4081,4326,"Approximation at the +/- 1m level assuming that REGCAN95 is equivalent to WGS 84.","Accuracy +/- 1m.",3199,27.6,29.5,-18.3,-13.3,1,0,9603,0,0,0,,,,,1 +709,15974,4764,4326,"Approximation at the +/- 1m level assuming that RSRGD2000 is equivalent to WGS 84.","Accuracy +/- 1 metre.",3558,-90,-60,145,-140,1,0,9603,0,0,0,,,,,1 +710,5553,5546,4326,"Exact in 1994 but due to significant and variable tectonic activity in PNG, in 2011 PNG94 and WGS 84 differ generally by 2m but in areas of significant tectonic activity differences can exceed 9m.",Approximation at the 2-10m level.,1187,-12.01,2.6,140.93,164.1,1,0,9603,0,0,0,,,,,1 +711,15870,4679,4326,Derived at 5 points in 2002.,Hydrographic survey,2967,19.36,21.25,-17.5,-16,1,0,9603,-80.01,253.26,291.19,,,,,1 +712,15976,4765,4326,"Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.","Accuracy +/- 1 metre.",1212,45.44,46.91,13.37,16.68,1,0,9603,0,0,0,,,,,1 +713,15820,4730,4326,Derived at 1 satellite station.,For military and topographic mapping. Accuracy 25m in each axis.,3194,-17.4,-14.61,166.5,168.31,1,0,9603,170,42,84,,,,,1 +714,15709,4680,4326,Derived by IGN in 1992 at 7 stations within Nouakchott city.,Oil exploration.,2972,17.8,18.3,-16.67,-15.75,1,0,9603,124.5,-63.5,-281,,,,,1 +715,5585,4023,4326,"Parameter values from MOLDREF99 to ETRS89 (1) (code 5584). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation.",For applications with an accuracy of 1m.,1162,45.48,48.52,26.61,30.16,1,0,9603,0,0,0,,,,,1 +716,15876,4720,4326,"Approximation at the +/- 2m level assuming that Fiji 1986 is equivalent to WGS 72. Parameter values taken from WGS 72 to WGS 84 (1) (tfm code 1237).",tbc,1094,-25.1,-9.79,172.87,-176.16,1,0,9606,0,0,4.5,0,0,0.554,0.2263,1 +717,15877,4720,4326,"Suitable for GIS mapping purposes but not rigorous surveying. Very similar results may be obtained through Fiji 1986 to WGS 84 (1) (tfm code 15876).","Horizontal accuracy 2m, vertical accuracy approximately 40 metres..",3398,-18.5,-16,177,-179.5,1,0,9607,-35.173,136.571,-36.964,1.37,-0.842,-4.718,-1.537,0 +718,15700,4682,4326,Derived at origin station in Dhaka.,Oil exploration.,1041,15.09,26.65,88.1,92.72,1,1,9603,283.8,735.9,261.1,,,,,0 +719,15779,4682,4326,Derived at origin station in Dhaka. Source information given to 3 decimal places but rounded by OGP to be commensurate with stated accuracy.,Oil exploration.,1041,15.09,26.65,88.1,92.72,1,0,9603,283.7,735.9,261.1,,,,,1 +720,1919,4635,4326,,"Accuracy better than +/- 1 metre.",2813,-20.75,-20.35,166.35,166.7,1,1,9606,-122.383,-188.696,103.344,3.5107,-4.9668,-5.7047,4.4798,0 +721,5470,5451,4326,,Topographic mapping.,3876,7.98,17.82,-92.29,-82.53,1,0,9603,213.11,9.37,-74.95,,,,,1 +722,5473,5451,4326,"Rotations in original source given in radians are equivalent to Rx = 2.35"", Ry = -0.06"", Rz = 6.39"".",Topographic mapping.,3232,7.98,11.21,-85.96,-82.53,1,0,9607,213.116,9.358,-74.946,2.3514187912169,-0.0614669122616347,6.39420899365999,-5.22,0 +723,5474,5451,4326,,Topographic mapping.,3876,7.98,17.82,-92.29,-82.53,1,0,9603,205.435,-29.099,292.202,,,,,0 +724,15713,4684,4326,Derived at 1 station.,For military purposes only. Accuracy 25m in each axis.,3274,3.9,4.5,73.33,73.7,1,0,9603,-133,-321,50,,,,,1 +725,15830,4723,4326,Determined from 6 satellite stations.,"Topographic survey. Accuracy +/- 1m.",3185,19.22,19.4,-81.45,-81.04,1,0,9603,67.8,106.1,138.8,,,,,1 +726,4064,4046,4326,"Approximation at the +/- 1m level assuming that RGRDC 2005 is equivalent to WGS 84 within the accuracy of the transformation.",Accuracy 1m.,3613,-13.46,-3.3,28.5,30.78,1,0,9603,0,0,0,,,,,1 +727,15846,4706,4326,"Sometime referred to as ""Egypt 1907 to WGS 84"". However, application to WGS 84 coordinates of the reverse of this tfm results in Gulf of Suez S-650 TL, not Egypt 1907, position. Gulf of Suez S-650 TL and Egypt 1907 CRSs differ by some 20 metres.",Used for oil exploration by GUPCO.,2341,27.3,29.96,32.3,34.25,1,0,9603,-146.21,112.63,4.05,,,,,1 +728,15918,4214,4326,Provided by BGP to TOTAL in June 2006.,Geophysical exploration in Ordos basin. Accuracy stated as 1m within basin.,3466,37.75,38.25,108,108.5,1,0,9603,12.646,-155.176,-80.863,,,,,0 +729,15919,4214,4326,Derived via WGS 72BE. Original transformation derived in 1979 at 4 stations on Yellow Sea coast.,Geophysical exploration in Yellow Sea.,3469,31.4,37,119.2,124.2,1,0,9606,15.53,-113.82,-41.38,0,0,0.814,-0.38,0 +730,15920,4214,4326,"Derived via WGS 72BE. Original transformation derived by GSI in 1980-81. The GSI memo incorrectly gave the parameters as from WGS 72 to Beijing 1954, but it has been determined by the OGP that the memo should have stated from Beijing 1954 to WGS 72BE.",Geophysical exploration in South China Sea.,3470,19.5,22,111,117,1,0,9606,31.4,-144.3,-74.8,0,0,0.814,-0.38,0 +731,15921,4214,4326,Provided by BGP to ELF in 1994.,Geophysical exploration in Tarim basin. Accuracy stated as 1m within basin.,3507,37,42,77.5,88,1,0,9603,15.8,-154.4,-82.3,,,,,1 +732,15935,4214,4326,Concatenated via WGS 72BE. Recomputation by Shelltech in 1981 of SSB 1980 observation.,Geophysical exploration in Bei Bu basin. Accuracy stated as 1m within basin.,3561,19,21.4,108,109.6,1,0,9606,18,-136.8,-73.7,0,0,0.814,-0.38,0 +733,15936,4214,4326,Provided by Sinopec to TOTAL in January 2007.,Geophysical exploration in Ordos basin. Accuracy stated as 1m within basin.,3466,37.75,38.25,108,108.5,1,0,9603,11.911,-154.833,-80.079,,,,,0 +734,15875,4721,4326,Derived at 20 stations.,"For military purposes. Accuracy 5m, 3m and 2m in X, Y and Z axes.",3398,-18.5,-16,177,-179.5,1,0,9603,265.025,384.929,-194.046,,,,,1 +735,15832,4687,4326,"Transformation is to original definition of WGS 84. It is consistent with later WGS 84 realisations G730, G873 and G1150 to no better than 1m.","Accuracy +/- 0.5 metre (to original definition of WGS 84 - see remarks).",1098,-29,-7,-155,-132,1,0,9607,0.072,-0.507,-0.245,0.0183,-0.0003,0.007,-0.0093,1 +736,15833,4687,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84.","Accuracy +/- 1 metre.",1098,-29,-7,-155,-132,1,0,9603,0,0,0,,,,,0 +737,1921,4636,4326,,"Accuracy +/- 10 metres.",2817,-66.9,-66.5,139.5,140.5,1,0,9603,365,194,166,,,,,1 +738,15772,4688,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from Fatu Iva 72 to RGPF (1) (tfm code 15760).","Accuracy +/- 2 metres.",3133,-10.55,-10.33,-138.7,-138.55,1,0,9607,347.103,1078.125,2623.922,33.8875,-70.6773,9.3943,186.074,1 +739,5236,5233,4326,Derived at 58 stations.,Accuracy 14m.,3310,5.85,9.92,79.6,81.95,1,0,9607,-0.293,766.95,87.713,-0.195704,-1.695068,-3.473016,-0.039338,1 +740,4077,4075,4326,"Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84. SREF98 is a regional realisation of ETRS89.","Accuracy +/- 1 metre.",3534,41.82,46.23,18.83,23.05,1,0,9603,0,0,0,,,,,1 +741,4835,4690,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from Tahiti 79 to RGPF (1) (tfm code 15756).","Accuracy +/- 1 metre.",3124,-17.91,-17.45,-149.69,-149.07,1,0,9607,221.525,152.948,176.768,2.3847,1.3896,0.877,11.4741,1 +742,1922,4637,4326,,"Accuracy +/- 10 metres.",2818,-68,-66,135,142,1,0,9603,325,154,172,,,,,1 +743,15797,4712,4326,Derived at 2 satellite stations.,For military purposes only. Accuracy 25m in each axis.,3182,-7.99,-7.88,-14.42,-14.29,1,0,9603,-205,107,53,,,,,1 +744,15769,4691,4326,"Approximation at the +/- 1m level assuming that RGPF is equivalent to WGS 84. Parameter values taken from Moorea 87 to RGPF (1) (tfm code 15757).","Accuracy +/- 1 metre.",3125,-17.61,-17.45,-149.96,-149.69,1,0,9607,215.525,149.593,176.229,3.2624,1.692,1.1571,10.4773,1 +745,15813,4722,4326,Determined from 1 satellite station.,"Military and topographic mapping. Accuracy +/- 25m in each axis.",3187,-55.22,-53.8,-38.46,-34.63,1,0,9603,-794,119,-298,,,,,1 +746,4066,4695,4326,"Parameter values taken from Katanga 1955 to RGRDC 2005 (1) (code 4065) assuming that RGRDC 2005 is equivalent to WGS 84 within the accuracy of the transformation.",Accuracy 1.5m.,3614,-11.9,-10.8,26.66,27.7,1,0,9603,-103.746,-9.614,-255.95,,,,,1 +747,15746,4693,4326,Derived in Tombak district in March 2005. Used for South Pars phase 11 and Pars LNG plants.,Petroleum Exploration and Production.,3141,27.7,27.8,52.1,52.25,1,0,9603,0,-0.15,0.68,,,,,1 +748,1441,4601,4326,,"?",1273,16.94,17.21,-61.94,-61.62,1,0,9603,-255,-15,71,,,,,1 +749,15811,4601,4326,Determined from 1 satellite station.,"Military mapping. Accuracy +/- 25m in each axis.",1273,16.94,17.21,-61.94,-61.62,1,0,9603,-270,13,62,,,,,0 +750,1442,4602,4326,,"?",3239,15.15,15.68,-61.54,-61.2,1,0,9603,725,685,536,,,,,1 +751,1443,4603,4326,,"?",3118,11.95,12.29,-61.83,-61.55,1,0,9603,72,213.7,93,,,,,1 +752,1444,4604,4326,Derived at 1 satellite station.,Accuracy 25m in each axis.,3279,16.62,16.86,-62.29,-62.09,1,0,9603,174,359,365,,,,,1 +753,1445,4605,4326,,"?",3297,17.07,17.46,-62.91,-62.5,1,0,9603,9,183,236,,,,,1 +754,15750,4605,4326,Derived at 2 stations.,"For military purposes. Accuracy 25m in each of X, Y and Z axes.",3297,17.07,17.46,-62.91,-62.5,1,0,9603,-7,215,225,,,,,0 +755,1446,4606,4326,,"?",3298,13.66,14.16,-61.13,-60.83,1,0,9603,-149,128,296,,,,,1 +756,1959,4607,4326,Derived at 4 points.,1m accuracy.,3300,12.55,13.43,-61.51,-61.07,1,0,9603,195.671,332.517,274.607,,,,,1 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/DotSpatial.Plugins.WebMap.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_ellips.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_ellips.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_ellips.csv (revision 2866) @@ -0,0 +1,24 @@ +NAME,CODE,A,B,RF +Airy 1830 ,AA,6377563.396,6356256.9090,299.324964600 +Modified Airy ,AM,6377340.189,6356034.4480,299.324964600 +Australian National ,AN,6378160.000,6356774.7190,298.250000000 +Bessel 1841(Namibia) ,BN,6377483.865,6356165.3830,299.152812800 +Bessel 1841 ,BR,6377397.155,6356078.9630,299.152812800 +Clarke 1866 ,CC,6378206.400,6356583.8000,294.978698200 +Clarke 1880 ,CD,6378249.145,6356514.8700,293.465000000 +Everest (India 1830) ,EA,6377276.345,6356075.4130,300.801700000 +Everest (E. Malasia, Brunei) ,EB,6377298.556,6356097.5500,300.801700000 +Everest 1956 (India) ,EC,6377301.243,6356100.2280,300.801700000 +Everest 1969 (West Malasia) ,ED,6377295.664,6356094.6680,300.801700000 +Everest 1948(W.Mals. & Sing.) ,EE,6377304.063,6356103.0390,300.801700000 +Everest (Pakistan) ,EF,6377309.613,6356109.5710,300.801700000 +Mod. Fischer 1960(South Asia) ,FA,6378155.000,6356773.3200,298.300000000 +Helmert 1906 ,HE,6378200.000,6356818.1700,298.300000000 +Hough 1960 ,HO,6378270.000,6356794.3430,297.000000000 +Indonesian 1974 ,ID,6378160.000,6356774.5040,298.247000000 +International 1924 ,IN,6378388.000,6356911.9460,297.000000000 +Krassovsky 1940 ,KA,6378245.000,6356863.0190,298.300000000 +GRS 80 ,RF,6378137.000,6356752.3141,298.257222101 +South American 1969 ,SA,6378160.000,6356774.7190,298.250000000 +WGS 72 ,WD,6378135.000,6356750.5200,298.260000000 +WGS 84 ,WE,6378137.000,6356752.3142,298.257223563 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/DotSpatial.Plugins.WebMap.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/DotSpatial.Plugins.WebMap.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/DotSpatial.Plugins.WebMap.dll.config (revision 2866) @@ -0,0 +1,27 @@ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/other.extra =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/other.extra (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/other.extra (revision 2866) @@ -0,0 +1,53 @@ +## NAD83 / BC Albers (this has been superceeded but is kept for compatibility) +<42102> +proj=aea +ellps=GRS80 +lat_0=45 +lon_0=-126.0 +lat_1=50.0 +lat_2=58.5 +x_0=1000000.0 +y_0=0 +datum=NAD83 +units=m no_defs <> + + +# +# OGC-defined extended codes (41000--41999) +# see http://www.digitalearth.gov/wmt/auto.html +# +# WGS84 / Simple Mercator +<41001> +proj=merc +lat_ts=0 +lon_0=0 +k=1.000000 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs no_defs <> +# +# CubeWerx-defined extended codes (42100--42199) +# +# WGS 84 / LCC Canada +<42101> +proj=lcc +lat_1=49 +lat_2=77 +lat_0=0 +lon_0=-95 +x_0=0 +y_0=-8000000 +ellps=WGS84 +datum=WGS84 +units=m +no_defs no_defs <> +#EPSG:42102,"PROJCS[\"NAD83 / BC Albers\",GEOGCS[\"NAD83\",DATUM[\"North_American_Datum_1983\",SPHEROID[\"GRS_1980\",6378137,298.257222101]],PRIMEM[\"Greenwich\",0],UNIT[\"Decimal_Degree\",0.0174532925199433]],PROJECTION[\"Albers_conic_equal_area\"],PARAMETER[\"central_meridian\",-126.0],PARAMETER[\"latitude_of_origin\",45],PARAMETER[\"standard_parallel_1\",50.0],PARAMETER[\"standard_parallel_2\",58.5],PARAMETER[\"false_easting\",1000000.0],PARAMETER[\"false_northing\",0],UNIT[\"Meter\",1]]" +# WGS 84 / LCC USA +<42103> +proj=lcc +lat_1=33 +lat_2=45 +lat_0=0 +lon_0=-100 +x_0=0 +y_0=0 +ellps=WGS72 +datum=WGS84 +units=m +no_defs no_defs <> +# NAD83 / MTM zone 8 Québec +<42104> +proj=tmerc +lat_0=0 +lon_0=-73.5 +k=0.999900 +x_0=304800 +y_0=0 +ellps=GRS80 +units=m +no_defs no_defs <> +# WGS84 / Merc NorthAm +<42105> +proj=merc +lat_ts=0 +lon_0=-96 +k=1.000000 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs no_defs <> +# WGS84 / Lambert Azim Mozambique +<42106> +proj=laea +lat_0=5 +lon_0=20 +x_0=0 +y_0=0 +a=6370997 +b=6370997 +datum=WGS84 +units=m +no_defs no_defs <> +# +# CubeWerx-customer definitions (42300--42399) +# +# NAD27 / Polar Stereographic / CM=-98 +<42301> +proj=stere +lat_0=90 +lon_0=-98 +x_0=0 +y_0=0 +ellps=clrk66 +datum=NAD27 +units=m +no_defs no_defs <> +# JapanOrtho.09 09 +<42302> +proj=tmerc +lat_0=36 +lon_0=139.833333333333 +k=0.999900 +x_0=0 +y_0=0 +ellps=bessel +units=m +no_defs no_defs <> +# NAD83 / Albers NorthAm +<42303> +proj=aea +lat_1=29.5 +lat_2=45.5 +lat_0=23 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <> +# NAD83 / NRCan LCC Canada +<42304> +proj=lcc +lat_1=49 +lat_2=77 +lat_0=49 +lon_0=-95 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <> +# France_II +<42305> +proj=lcc +lat_1=45.898918964419 +lat_2=47.696014502038 +lat_0=46.8 +lon_0=2.337229166666667 +x_0=600000 +y_0=2200000 +a=6378249.2 +b=6356514.999904194 +pm=2.337229166666667 +units=m +no_defs no_defs <> +# NAD83/QC_LCC +<42306> +proj=lcc +lat_1=46 +lat_2=60 +lat_0=44 +lon_0=-68.5 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <> +# NAD83 / Texas Central - feet +<42307> +proj=lcc +lat_1=31.8833333333333 +lat_2=30.1166666666667 +lat_0=29.6666666666667 +lon_0=-100.333333333333 +x_0=700000.0000000001 +y_0=3000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs no_defs <> +# NAD27 / California Albers +<42308> +proj=aea +lat_1=34 +lat_2=40.5 +lat_0=0 +lon_0=-120 +x_0=0 +y_0=-4000000 +ellps=clrk66 +datum=NAD27 +units=m +no_defs no_defs <> +# NAD 83 / LCC Canada AVHRR-2 +<42309> +proj=lcc +lat_1=49 +lat_2=77 +lat_0=0 +lon_0=-95 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <> +# WGS84+GRS80 / Mercator +<42310> +proj=merc +lat_ts=0 +lon_0=0 +k=1.000000 +x_0=0 +y_0=0 +ellps=GRS80 +datum=WGS84 +units=m +no_defs no_defs <> +# NAD83 / LCC Statcan +<42311> +proj=lcc +lat_1=49 +lat_2=77 +lat_0=63.390675 +lon_0=-91.86666700000001 +x_0=6200000 +y_0=3000000 +ellps=GRS80 +datum=NAD83 +units=m +no_defs no_defs <> +# +# Funny epsgish code for google mercator - you should really use EPSG:3857 +# +<900913> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <> Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.Forms.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.Forms.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.Forms.xml (revision 2866) @@ -0,0 +1,349 @@ + + + + DotSpatial.Projections.Forms + + + + + A User control for entering double values into text boxes + + + + + Required designer variable. + + + + + Creates a new instance of DoubleBox + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires TextChanged + + + + + Fires ValidChanged + + + + + Occurs when the user changes values in the text box + + + + + Occurs either when changing from valid to invalid or when + changing from invalid to valid. + + + + + Gets or sets the normal background color + + + + + Gets or sets the invalid background color + + + + + Gets or sets the caption + + + + + Gets or sets the string number format + + + + + Gets or sets teh tool tip text help when this + item has an invalid entry. + + + + + Gets or sets a boolean indicating if the text in this box can be parsed + into a double precision value. + + + + + Gets or sets the tool tip text for regular help + + + + + Gets the raw text entered in the textbox + + + + + Gets the currently entered double value. + + + + + ProjectionCustomDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + gets or sets the selected projection info + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the currently chosen coordinate system + + + + + ProjectionSelectDialog + + + + + Creates a new instance of + + + + + Fires the ChangesApplied event + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the currently chosen coordinate system + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The value entered could not be correctly parsed into a valid double precision floating point value.. + + + + + Looks up a localized string similar to Enter a double precision floating point value.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to [Nothing]. + + + + + The Undefined Projection Action enumeration + + + + + No action should be taken. + + + + + Always assume an undefined projection is Latitude Longitude + + + + + Always rely on the existing Map projection + + + + + Use a projection that was specified from the list + + + + + A Dialog for choosing how to define a projection. + + + + + Initializes a new instance of the Undefined Projection Dialog + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets a value that indicates that the newly selected Projection should be used. If this + is false, then this layer should be drawn unmodified. + + + + + Gets or sets the Projection chosen to be the final defined projection. + + + + + Gets or sets the current MapProjection. + + + + + Gets or sets the original projection string that could not be identified. + + + + + Gets or sets whether the option chosen here should be used for the rest of the session. + + + + + Gets or sets the layername of the layer that could not be identified. + + + + + Gets the action selected from the dialog. + + + + + Gets the result of the dialog. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_datum.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_datum.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gt_datum.csv (revision 2866) @@ -0,0 +1,229 @@ +CODE,NAME,ELLIPSOID,DELTAX,SIGMAX,DELTAY,SIGMAY,DELTAZ,SIGMAZ,NORTH,SOUTH,WEST,EAST,ROTX,ROTY,ROTZ,SCALE +ADI-M,"ADINDAN, Mean",CD,-166,5,-15,5,204,3,-5,31,15,55 +ADI-A,"ADINDAN, Ethiopia",CD,-165,3,-11,3,206,3,-3,25,26,50 +ADI-B,"ADINDAN, Sudan",CD,-161,3,-14,5,205,3,-3,31,15,45 +ADI-C,"ADINDAN, Mali",CD,-123,25,-20,25,220,25,3,31,-20,11 +ADI-D,"ADINDAN, Senegal",CD,-128,25,-18,25,224,25,5,23,-24,-5 +ADI-E,"ADINDAN, Burkina Faso",CD,-118,25,-14,25,218,25,4,22,-12,8 +ADI-F,"ADINDAN, Cameroon",CD,-134,25,-2,25,210,25,-4,19,3,23 +AFG,"AFGOOYE, Somalia",KA,-43,25,-163,25,45,25,-8,19,35,60 +AIA,"ANTIGUA ISLAND ASTRO 1943",CD,-270,25,13,25,62,25,16,20,-65,-61 +AIN-A,"AIN EL ABD 1970, Bahrain",IN,-150,25,-250,25,-1,25,24,28,49,53 +AIN-B,"AIN EL ABD 1970, Saudi Arabia",IN,-143,10,-236,10,7,10,8,38,28,62 +AMA,"AMERICAN SAMOA 1962",CC,-115,25,118,25,426,25,-19,-9,-174,-165 +ANO,"ANNA 1 ASTRO 1965, Cocos Is.",AN,-491,25,-22,25,435,25,-14,-10,94,99 +ARF-M,"ARC 1950, Mean",CD,-143,20,-90,33,-294,20,-36,10,4,42 +ARF-A,"ARC 1950, Botswana",CD,-138,3,-105,5,-289,3,-33,-13,13,36 +ARF-B,"ARC 1950, Lesotho",CD,-125,3,-108,3,-295,8,-36,-23,21,35 +ARF-C,"ARC 1950, Malawi",CD,-161,9,-73,24,-317,8,-21,-3,26,42 +ARF-D,"ARC 1950, Swaziland",CD,-134,15,-105,15,-295,15,-33,-20,25,40 +ARF-E,"ARC 1950, Zaire",CD,-169,25,-19,25,-278,25,-21,10,4,38 +ARF-F,"ARC 1950, Zambia",CD,-147,21,-74,21,-283,27,-24,-1,15,40 +ARF-G,"ARC 1950, Zimbabwe",CD,-142,5,-96,8,-293,11,-29,-9,19,39 +ARF-H,"ARC 1950, Burundi",CD,-153,20,-5,20,-292,20,-11,4,21,37 +ARS-M,"ARC 1960, Kenya & Tanzania",CD,-160,20,-6,20,-302,20,-18,8,23,47 +ARS-A,"ARC 1960, Kenya",CD,-157,4,-2,3,-299,3,-11,8,28,47 +ARS-B,"ARC 1960, Tanzania",CD,-175,6,-23,9,-303,10,-18,5,23,47 +ASC,"ASCENSION ISLAND 1958",IN,-205,25,107,25,53,25,-9,-6,-16,-13 +ASM,"MONTSERRAT ISLAND ASTRO 1958",CD,174,25,359,25,365,25,15,18,-64,-61 +ASQ,"ASTRO STATION 1952, Marcus Is.",IN,124,25,-234,25,-25,25,22,26,152,156 +ATF,"ASTRO BEACON E 1945, Iwo Jima",IN,145,25,75,25,-272,25,22,26,140,144 +AUA,"AUSTRALIAN GEODETIC 1966",AN,-133,3,-48,3,148,3,-46,-4,109,161 +AUG,"AUSTRALIAN GEODETIC 1984",AN,-134,2,-48,2,149,2,-46,-4,109,161 +BAT,"DJAKARTA, INDONESIA",BR,-377,3,681,3,-50,3,-16,11,89,146 +BID,"BISSAU, Guinea-Bissau",IN,-173,25,253,25,27,25,5,19,-23,-7 +BER,"BERMUDA 1957, Bermuda Islands",CC,-73,20,213,20,296,20,31,34,-66,-63 +BOO,"BOGOTA OBSERVATORY, Colombia",IN,307,6,304,5,-318,6,-10,16,-85,-61 +BUR,"BUKIT RIMPAH, Banka & Belitung",BR,-384,-1,664,-1,-48,-1,-6,0,103,110 +CAC,"CAPE CANAVERAL, Fla & Bahamas",CC,-2,3,151,3,181,3,15,38,-94,-58 +CAI,"CAMPO INCHAUSPE 1969, Arg.",IN,-148,5,136,5,90,5,-62,-20,-76,-47 +CAO,"CANTON ASTRO 1966, Phoenix Is.",IN,298,15,-304,15,-375,15,-13,3,-180,-165 +CAP,"CAPE, South Africa",CD,-136,3,-108,6,-292,6,-43,-15,10,40 +CAZ,"CAMP AREA ASTRO, Camp McMurdo",IN,-104,-1,-129,-1,239,-1,-85,-70,135,180 +CCD,"S-JTSK, Czech Republic",BR,589,4,76,2,480,3,43,56,6,28 +CGE,"CARTHAGE, Tunisia",CD,-263,6,6,9,431,8,24,43,2,18 +CHI,"CHATHAM ISLAND ASTRO 1971, NZ",IN,175,15,-38,15,113,15,-46,-42,-180,-174 +CHU,"CHUA ASTRO, Paraguay",IN,-134,6,229,9,-29,5,-33,-14,-69,-49 +COA,"CORREGO ALEGRE, Brazil",IN,-206,5,172,3,-6,5,-39,9,-80,-29 +DAL,"DABOLA, Guinea",CD,-83,15,37,15,124,15,1,19,-18,-4 +DID,"DECEPTION ISLAND",CD,260,20,12,20,-147,20,-65,-62,-62,-58 +DOB,"GUX 1 ASTRO, Guadalcanal Is.",IN,252,25,-209,25,-751,25,-12,-8,158,163 +EAS,"EASTER ISLAND 1967",IN,211,25,147,25,111,25,-29,-26,-111,-108 +ENW,"WAKE-ENIWETOK 1960",HO,102,3,52,3,-38,3,1,16,159,175 +EST,"ESTONIA, 1937",BR,374,2,150,3,588,3,52,65,16,34 +EUR-M,"EUROPEAN 1950, Mean (3 Param)",IN,-87,3,-98,8,-121,5,30,80,5,33 +EUR-A,"EUROPEAN 1950, Western Europe",IN,-87,3,-96,3,-120,3,30,78,-15,25 +EUR-B,"EUROPEAN 1950, Greece",IN,-84,25,-95,25,-130,25,30,48,14,34 +EUR-C,"EUROPEAN 1950, Norway & Finland",IN,-87,3,-95,5,-120,3,52,80,-2,38 +EUR-D,"EUROPEAN 1950, Portugal & Spain",IN,-84,5,-107,6,-120,3,30,49,-15,10 +EUR-E,"EUROPEAN 1950, Cyprus",IN,-104,15,-101,15,-140,15,33,37,31,36 +EUR-F,"EUROPEAN 1950, Egypt",IN,-130,6,-117,8,-151,8,16,38,19,42 +EUR-G,"EUROPEAN 1950, England, Channel",IN,-86,3,-96,3,-120,3,48,62,-10,3 +EUR-H,"EUROPEAN 1950, Iran",IN,-117,9,-132,12,-164,11,19,47,37,69 +EUR-I,"EUROPEAN 1950, Sardinia(Italy)",IN,-97,25,-103,25,-120,25,37,43,6,12 +EUR-J,"EUROPEAN 1950, Sicily(Italy)",IN,-97,20,-88,20,-135,20,35,40,10,17 +EUR-K,"EUROPEAN 1950, England, Ireland",IN,-86,3,-96,3,-120,3,48,62,-12,3 +EUR-L,"EUROPEAN 1950, Malta",IN,-107,25,-88,25,-149,25,34,38,12,16 +EUR-S,"EUROPEAN 1950, Iraq, Israel",IN,-103,-1,-106,-1,-141,-1,20,48,24,60 +EUR-T,"EUROPEAN 1950, Tunisia",IN,-112,25,-77,25,-145,25,24,43,2,18 +EUS,"EUROPEAN 1979",IN,-86,3,-98,3,-119,3,30,80,-15,24 +FAH,"OMAN",CD,-346,3,-1,3,224,9,10,32,46,65 +FLO,"OBSERVATORIO MET. 1939, Flores",IN,-425,20,-169,20,81,20,38,41,-33,-30 +FOT,"FORT THOMAS 1955, Leeward Is.",CD,-7,25,215,25,225,25,16,19,-64,-61 +GAA,"GAN 1970, Rep. of Maldives",IN,-133,25,-321,25,50,25,-2,9,71,75 +GEO,"GEODETIC DATUM 1949, NZ",IN,84,5,-22,3,209,5,-48,-33,165,180 +GIZ,"DOS 1968, Gizo Island",IN,230,25,-199,25,-752,25,-10,-7,155,158 +GRA,"GRACIOSA BASE SW 1948, Azores",IN,-104,3,167,3,-38,3,37,41,-30,-26 +GUA,"GUAM 1963",CC,-100,3,-248,3,259,3,12,15,143,146 +GSE,"GUNUNG SEGARA, Indonesia",BR,-403,-1,684,-1,41,-1,-6,9,106,121 +HEN,"HERAT NORTH, Afghanistan",IN,-333,-1,-222,-1,114,-1,23,44,55,81 +HER,"HERMANNSKOGEL, old Yugoslavia",BR,682,-1,-203,-1,480,-1,35,52,7,29 +HIT,"PROVISIONAL SOUTH CHILEAN 1963",IN,16,25,196,25,93,25,-64,-25,-83,-60 +HJO,"HJORSEY 1955, Iceland",IN,-73,3,46,3,-86,6,61,69,-27,-11 +HKD,"HONG KONG 1963",IN,-156,25,-271,25,-189,25,21,24,112,116 +HTN,"HU-TZU-SHAN, Taiwan",IN,-637,15,-549,15,-203,15,20,28,117,124 +IBE,"BELLEVUE (IGN), Efate Is.",IN,-127,20,-769,20,472,20,-20,-16,167,171 +IDN,"INDONESIAN 1974",ID,-24,25,-15,25,5,25,-16,11,89,146 +IND-B,"INDIAN, Bangladesh",EA,282,10,726,8,254,12,15,33,80,100 +IND-I,"INDIAN, India & Nepal",EC,295,12,736,10,257,15,2,44,62,105 +IND-P,"INDIAN, Pakistan",EF,283,-1,682,-1,231,-1,17,44,55,81 +INF-A,"INDIAN 1954, Thailand",EA,217,15,823,6,299,12,0,27,91,111 +ING-A,"INDIAN 1960, Vietnam 16N",EA,198,25,881,25,317,25,2,30,101,115 +ING-B,"INDIAN 1960, Con Son Island",EA,182,25,915,25,344,25,6,11,104,109 +INH-A,"INDIAN 1975, Thailand",EA,209,12,818,10,290,12,0,27,91,111 +INH-A1,"INDIAN 1975, Thailand",EA,210,3,814,2,289,3,0,27,91,111 +IRL,"IRELAND 1965",AM,506,3,-122,3,611,3,50,57,-12,-4 +ISG,"ISTS 061 ASTRO 1968, S Georgia",IN,-794,25,119,25,-298,25,-56,-52,-38,-34 +IST,"ISTS 073 ASTRO 1969, Diego Garc",IN,208,25,-435,25,-229,25,-10,-4,69,75 +JOH,"JOHNSTON ISLAND 1961",IN,189,25,-79,25,-202,25,15,19,-171,-168 +KAN,"KANDAWALA, Sri Lanka",EA,-97,20,787,20,86,20,4,12,77,85 +KEG,"KERGUELEN ISLAND 1949",IN,145,25,-187,25,103,25,-52,-47,65,74 +KEA,"KERTAU 1948, W Malaysia & Sing.",EE,-11,10,851,8,5,6,-5,12,94,112 +KUS,"KUSAIE ASTRO 1951, Caroline Is.",IN,647,25,1777,25,-1124,25,-1,12,134,167 +LCF,"L.C. 5 ASTRO 1961, Cayman Brac",CC,42,25,124,25,147,25,18,21,-83,-78 +LEH,"LEIGON, Ghana",CD,-130,2,29,3,364,2,-1,17,-9,7 +LIB,"LIBERIA 1964",CD,-90,15,40,15,88,15,-1,14,-17,-1 +LUZ-A,"LUZON, Philippines",CC,-133,8,-77,11,-51,9,3,23,115,128 +LUZ-B,"LUZON, Mindanao Island",CC,-133,25,-79,25,-72,25,4,12,120,128 +MAS,"MASSAWA, Ethiopia",BR,639,25,405,25,60,25,7,25,37,53 +MER,"MERCHICH, Morocco",CD,31,5,146,3,47,3,22,42,-19,5 +MID,"MIDWAY ASTRO 1961, Midway Is.",IN,403,25,-81,25,277,25,25,30,-180,-169 +MIK,"MAHE 1971, Mahe Is.",CD,41,25,-220,25,-134,25,-6,-3,54,57 +MIN-A,"MINNA, Cameroon",CD,-81,25,-84,25,115,25,-4,19,3,23 +MIN-B,"MINNA, Nigeria",CD,-92,3,-93,6,122,5,-1,21,-4,20 +MOD,"ROME 1940, Sardinia",IN,-225,25,-65,25,9,25,37,43,6,12 +MPO,"M'PORALOKO, Gabon",CD,-74,25,-130,25,42,25,-10,8,3,20 +MVS,"VITI LEVU 1916, Viti Levu Is.",CD,51,25,391,25,-36,25,-20,-16,176,180 +NAH-A,"NAHRWAN, Masirah Island (Oman)",CD,-247,25,-148,25,369,25,19,22,57,60 +NAH-B,"NAHRWAN, United Arab Emirates",CD,-249,25,-156,25,381,25,17,32,45,62 +NAH-C,"NAHRWAN, Saudi Arabia",CD,-243,20,-192,20,477,20,8,38,28,62 +NAP,"NAPARIMA, Trinidad & Tobago",IN,-10,15,375,15,165,15,8,13,-64,-59 +NAR-A,"NORTH AMERICAN 1983, Alaska",RF,0,2,0,2,0,2,48,78,-175,-135 +NAR-B,"NORTH AMERICAN 1983, Canada",RF,0,2,0,2,0,2,36,90,-150,-50 +NAR-C,"NORTH AMERICAN 1983, CONUS",RF,0,2,0,2,0,2,15,60,-135,-60 +NAR-D,"NORTH AMERICAN 1983, Mexico",RF,0,2,0,2,0,2,11,35,-122,-72 +NAR-E,"NORTH AMERICAN 1983, Aleutian",RF,-2,5,0,2,4,5,51,74,-180,180 +NAR-H,"NORTH AMERICAN 1983, Hawaii",RF,1,2,1,2,-1,2,17,24,-164,-153 +NAS-A,"NORTH AMERICAN 1927, Eastern US",CC,-9,5,161,5,179,8,18,55,-102,-60 +NAS-B,"NORTH AMERICAN 1927, Western US",CC,-8,5,159,3,175,3,19,55,-132,-87 +NAS-C,"NORTH AMERICAN 1927, CONUS",CC,-8,5,160,5,176,6,15,60,-135,-60 +NAS-D,"NORTH AMERICAN 1927, Alaska",CC,-5,5,135,9,172,5,47,78,-175,-130 +NAS-E,"NORTH AMERICAN 1927, Canada",CC,-10,15,158,11,187,6,36,90,-150,-50 +NAS-F,"NORTH AMERICAN 1927, Alberta/BC",CC,-7,8,162,8,188,6,43,65,-145,-105 +NAS-G,"NORTH AMERICAN 1927, E. Canada",CC,-22,6,160,6,190,3,38,68,-85,-45 +NAS-H,"NORTH AMERICAN 1927, Man/Ont",CC,-9,9,157,5,184,5,36,63,-108,-69 +NAS-I,"NORTH AMERICAN 1927, NW Terr.",CC,4,5,159,5,188,3,43,90,-144,-55 +NAS-J,"NORTH AMERICAN 1927, Yukon",CC,-7,5,139,8,181,3,53,75,-147,-117 +NAS-L,"NORTH AMERICAN 1927, Mexico",CC,-12,8,130,6,190,6,10,38,-122,-80 +NAS-N,"NORTH AMERICAN 1927, C. America",CC,0,8,125,3,194,5,3,25,-98,-77 +NAS-O,"NORTH AMERICAN 1927, Canal Zone",CC,0,20,125,20,201,20,3,15,-86,-74 +NAS-P,"NORTH AMERICAN 1927, Caribbean",CC,-3,3,142,9,183,12,8,29,-87,-58 +NAS-Q,"NORTH AMERICAN 1927, Bahamas",CC,-4,5,154,3,178,5,19,29,-83,-71 +NAS-R,"NORTH AMERICAN 1927, San Salv.",CC,1,25,140,25,165,25,23,26,-75,-74 +NAS-T,"NORTH AMERICAN 1927, Cuba",CC,-9,25,152,25,178,25,18,25,-87,-72 +NAS-U,"NORTH AMERICAN 1927, Greenland",CC,11,25,114,25,195,25,74,81,-74,-56 +NAS-V,"NORTH AMERICAN 1927, Aleutian E",CC,-2,6,152,8,149,10,50,58,-180,-161 +NAS-W,"NORTH AMERICAN 1927, Aleutian W",CC,2,10,204,10,105,10,50,58,169,180 +NSD,"NORTH SAHARA 1959, Algeria",CD,-186,25,-93,25,310,25,13,43,-15,18 +OEG,"OLD EGYPTIAN 1907",HE,-130,3,110,6,-13,8,16,38,19,42 +OGB-M,"ORDNANCE GB 1936, Mean (3 Para)",AA,375,10,-111,10,431,15,44,66,-14,7 +OGB-A,"ORDNANCE GB 1936, England",AA,371,5,-112,5,434,6,44,61,-12,7 +OGB-B,"ORDNANCE GB 1936, Eng., Wales",AA,371,10,-111,10,434,15,44,61,-12,7 +OGB-C,"ORDNANCE GB 1936, Scotland",AA,384,10,-111,10,425,10,49,66,-14,4 +OGB-D,"ORDNANCE GB 1936, Wales",AA,370,20,-108,20,434,20,46,59,-11,3 +OHA-M,"OLD HAWAIIAN (CC), Mean",CC,61,25,-285,20,-181,20,17,24,-164,-153 +OHA-A,"OLD HAWAIIAN (CC), Hawaii",CC,89,25,-279,25,-183,25,17,22,-158,-153 +OHA-B,"OLD HAWAIIAN (CC), Kauai",CC,45,20,-290,20,-172,20,20,24,-161,-158 +OHA-C,"OLD HAWAIIAN (CC), Maui",CC,65,25,-290,25,-190,25,19,23,-158,-154 +OHA-D,"OLD HAWAIIAN (CC), Oahu",CC,58,10,-283,6,-182,6,20,23,-160,-156 +OHI-M,"OLD HAWAIIAN (IN), Mean",IN,201,25,-228,20,-346,20,17,24,-164,-153 +OHI-A,"OLD HAWAIIAN (IN), Hawaii",IN,229,25,-222,25,-348,25,17,22,-158,-153 +OHI-B,"OLD HAWAIIAN (IN), Kauai",IN,185,20,-233,20,-337,20,20,24,-161,-158 +OHI-C,"OLD HAWAIIAN (IN), Maui",IN,205,25,-233,25,-355,25,19,23,-158,-154 +OHI-D,"OLD HAWAIIAN (IN), Oahu",IN,198,10,-226,6,-347,6,20,23,-160,-156 +PHA,"AYABELLE LIGHTHOUSE, Djibouti",CD,-79,25,-129,25,145,25,5,20,36,49 +PIT,"PITCAIRN ASTRO 1967",IN,185,25,165,25,42,25,-27,-21,-134,-119 +PLN,"PICO DE LAS NIEVES, Canary Is.",IN,-307,25,-92,25,127,25,26,31,-20,-12 +POS,"PORTO SANTO 1936, Madeira Is.",IN,-499,25,-249,25,314,25,31,35,-18,-15 +PRP-A,"PROV. S AMERICAN 1956, Bolivia",IN,-270,5,188,11,-388,14,-28,-4,-75,-51 +PRP-B,"PROV. S AMERICAN 1956, N Chile",IN,-270,25,183,25,-390,25,-45,-12,-83,-60 +PRP-C,"PROV. S AMERICAN 1956, S Chile",IN,-305,20,243,20,-442,20,-64,-20,-83,-60 +PRP-D,"PROV. S AMERICAN 1956, Colombia",IN,-282,15,169,15,-371,15,-10,16,-85,-61 +PRP-E,"PROV. S AMERICAN 1956, Ecuador",IN,-278,3,171,5,-367,3,-11,7,-85,-70 +PRP-F,"PROV. S AMERICAN 1956, Guyana",IN,-298,6,159,14,-369,5,-4,14,-67,-51 +PRP-G,"PROV. S AMERICAN 1956, Peru",IN,-279,6,175,8,-379,12,-24,5,-87,-63 +PRP-H,"PROV. S AMERICAN 1956, Venez",IN,-295,9,173,14,-371,15,-5,18,-79,-54 +PRP-M,"PROV. S AMERICAN 1956, Mean",IN,-288,17,175,27,-376,27,-64,18,-87,-51 +PTB,"POINT 58, Burkina Faso & Niger",CD,-106,25,-129,25,165,25,0,10,-15,25 +PTN,"POINT NOIRE 1948, Congo",CD,-148,25,51,25,-291,25,-11,10,5,25 +PUK,"PULKOVO 1942, Russia",KA,28,-1,-130,-1,-95,-1,36,89,-180,180 +PUR,"PUERTO RICO & Virgin Is.",CC,11,3,72,3,-101,3,16,20,-69,-63 +QAT,"QATAR NATIONAL",IN,-128,20,-283,20,22,20,19,32,45,57 +QUO,"QORNOQ, South Greenland",IN,164,25,138,25,-189,32,57,85,-77,-7 +REU,"REUNION, Mascarene Is.",IN,94,25,-948,25,-1262,25,-27,-12,47,65 +SAE,"SANTO (DOS) 1965",IN,170,25,42,25,84,25,-20,-11,163,172 +SAO,"SAO BRAZ, Santa Maria Is.",IN,-203,25,141,25,53,25,35,39,-27,-23 +SAP,"SAPPER HILL 1943, E Falkland Is",IN,-355,1,21,1,72,1,-54,-50,-61,-56 +SAN-M,"SOUTH AMERICAN 1969, Mean",SA,-57,15,1,6,-41,9,-65,-50,-90,-25 +SAN-A,"SOUTH AMERICAN 1969, Argentina",SA,-62,5,-1,5,-37,5,-62,-20,-76,-47 +SAN-B,"SOUTH AMERICAN 1969, Bolivia",SA,-61,15,2,15,-48,15,-28,-4,-75,-51 +SAN-C,"SOUTH AMERICAN 1969, Brazil",SA,-60,3,-2,5,-41,5,-39,9,-80,-29 +SAN-D,"SOUTH AMERICAN 1969, Chile",SA,-75,15,-1,8,-44,11,-64,-12,-83,-60 +SAN-E,"SOUTH AMERICAN 1969, Colombia",SA,-44,6,6,6,-36,5,-10,16,-85,-61 +SAN-F,"SOUTH AMERICAN 1969, Ecuador",SA,-48,3,3,3,-44,3,-11,7,-85,-70 +SAN-G,"SOUTH AMERICAN 1969, Guyana",SA,-53,9,3,5,-47,5,-4,14,-67,-51 +SAN-H,"SOUTH AMERICAN 1969, Paraguay",SA,-61,15,2,15,-33,15,-33,-14,-69,-49 +SAN-I,"SOUTH AMERICAN 1969, Peru",SA,-58,5,0,5,-44,5,-24,5,-87,-63 +SAN-J,"SOUTH AMERICAN 1969, Baltra",SA,-47,25,26,25,-42,25,-2,1,-92,-89 +SAN-K,"SOUTH AMERICAN 1969, Trinidad",SA,-45,25,12,25,-33,25,4,17,-68,-55 +SAN-L,"SOUTH AMERICAN 1969, Venezuela",SA,-45,3,8,6,-33,3,-5,18,-79,-54 +SCK,"SCHWARZECK, Namibia",BN,616,20,97,20,-251,20,-35,-11,5,31 +SGM,"SELVAGEM GRANDE 1938, Salvage Is,"I,N -28,9 2,5 -12,4 25,6,0 2,28,32,-18,-14 +SHB,"ASTRO DOS 71/4, St. Helena Is.",IN,-320,25,550,25,-494,25,-18,-14,-7,-4 +SOA,"SOUTH ASIA, Singapore",FA,7,25,-10,25,-26,25,0,3,102,106 +SPK-A,"S-42 (PULKOVO 1942), Hungary",KA,28,2,-121,2,-77,2,40,54,11,29 +SPK-B,"S-42 (PULKOVO 1942), Poland",KA,23,4,-124,2,-82,4,43,60,8,30 +SPK-C,"S-42 (PK42) Former Czechoslov.",KA,26,3,-121,3,-78,2,42,57,6,28 +SPK-D,"S-42 (PULKOVO 1942), Latvia",KA,24,2,-124,2,-82,2,50,64,15,34 +SPK-E,"S-42 (PK 1942), Kazakhstan",KA,15,25,-130,25,-84,25,35,62,41,93 +SPK-F,"S-42 (PULKOVO 1942), Albania",KA,24,3,-130,3,-92,3,34,48,14,26 +SPK-G,"S-42 (PULKOVO 1942), Romania",KA,28,3,-121,5,-77,3,38,54,15,35 +SRL,"SIERRA LEONE 1960",CD,-88,15,4,15,101,15,1,16,-19,-4 +TAN,"TANANARIVE OBSERVATORY 1925",IN,-189,-1,-242,-1,-91,-1,-34,-8,40,53 +TDC,"TRISTAN ASTRO 1968",IN,-632,25,438,25,-609,25,-39,-36,-14,-11 +TIL,"TIMBALAI 1948, Brunei & E Malay",EB,-679,10,669,10,-48,12,-5,15,101,125 +TOY-A,"TOKYO, Japan",BR,-148,8,507,5,685,8,19,51,119,156 +TOY-B,"TOKYO, South Korea",BR,-146,8,507,5,687,8,27,45,120,139 +TOY-B1,"TOKYO, South Korea",BR,-147,2,506,2,687,2,27,45,120,139 +TOY-C,"TOKYO, Okinawa",BR,-158,20,507,5,676,20,19,31,119,134 +TOY-M,"TOKYO, Mean",BR,-148,20,507,5,685,20,23,53,120,155 +TRN,"ASTRO TERN ISLAND (FRIG) 1961",IN,114,25,-116,25,-333,25,22,26,-168,-164 +VOI,"VOIROL 1874, Algeria",CD,-73,-1,-247,-1,227,-1,13,43,-15,18 +VOR,"VOIROL 1960, Algeria",CD,-123,25,-206,25,219,25,13,43,-15,18 +WAK,"WAKE ISLAND ASTRO 1952",IN,276,25,-57,25,149,25,17,21,164,168 +YAC,"YACARE, Uruguay",IN,-155,-1,171,-1,37,-1,-40,-25,-65,-47 +ZAN,"ZANDERIJ, Suriname",IN,-265,5,120,5,-358,8,-10,20,-76,-47 +KGS,"KOREAN GEO DATUM 1995, S Korea",WE,0,1,0,1,0,1,27,45,120,139 +SIR,"SIRGAS, South America",RF,0,1,0,1,0,1,-65,-50,-90,-25 +EUR-7,"EUROPEAN 1950, Mean (7 Param)",IN,-102,,-102,,-129,,,,,0.413,-0.184,0.385,0.0000024664 +OGB-7,"ORDNANCE GB 1936, Mean (7 Para)",AA,446,,-99,,544,,,,,,-0.945,-0.261,-0.435,-0.0000208927 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.override.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.override.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.override.csv (revision 2866) @@ -0,0 +1,7 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","GREENWICH_DATUM","UOM_CODE","ELLIPSOID_CODE","PRIME_MERIDIAN_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_CODE","COORD_OP_CODE_MULTI","COORD_OP_METHOD_CODE","DX","DY","DZ","RX","RY","RZ","DS" +# +# NOTICE: The master version of this file is in the libgeotiff subversion at: +# +# https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/gcs.override.csv +# +# Do *not* change other copies without upstreaming the results to libgeotiff. Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/libcurl.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/lti_dsdk.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/liblas.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/zlib1.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xml (revision 2866) @@ -0,0 +1,1100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/CommandLine.XML =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/CommandLine.XML (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/CommandLine.XML (revision 2866) @@ -0,0 +1,868 @@ + + + + /home/giacomo/Projects/CommandLine/src/libcmdline/bin/Release/CommandLine + + + + + Provides base properties for creating an attribute, used to define rules for command line parsing. + + + + + Short name of this command line option. You can use only one character. + + + + + Long name of this command line option. This name is usually a single english word. + + + + + True if this command line option is required. + + + + + Gets or sets mapped property default value. + + + + + A short description of this command line option. Usually a sentence summary. + + + + + Indicates the instance method that must be invoked when it becomes necessary show your help screen. + The method signature is an instance method with no parameters and + return value. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + Allows you to define short and long option names. + + The short name of the option or null if not used. + The long name of the option or null if not used. + + + + Returns always false for this kind of option. + This behaviour can't be changed by design; if you try set + an will be thrown. + + + + + Models an option that can accept multiple values as separated arguments. + + + + + Initializes a new instance of the class. + + The short name of the option or null if not used. + The long name of the option or null if not used. + + + + Models an option specification. + + + + + Initializes a new instance of the class. + + The short name of the option or null if not used. + The long name of the option or null if not used. + + + + Gets or sets the option's mutually exclusive set. + + + + + Models an option that can accept multiple values. + Must be applied to a field compatible with an interface + of instances. + + + + + Initializes a new instance of the class. + + The short name of the option or null if not used. + The long name of the option or null if not used. + + + + Initializes a new instance of the class. + + The short name of the option or null if not used. + The long name of the option or null if not used. + Values separator character. + + + + Gets or sets the values separator character. + + + + + Models a list of command line arguments that are not options. + Must be applied to a field compatible with an interface + of instances. + + + + + Initializes a new instance of the class. + + A type that implements . + Thrown if is null. + + + + Gets or sets the maximum element allow for the list managed by type. + If lesser than 0, no upper bound is fixed. + If equal to 0, no elements are allowed. + + + + + Models a bad parsed option. + + + + + The short name of the option + + Returns the short name of the option. + + + + The long name of the option + + Returns the long name of the option. + + + + Models a parsing error. + + + + + Gets or a the bad parsed option. + + + The bad option. + + + + + Gets or sets a value indicating whether this violates required. + + + true if violates required; otherwise, false. + + + + + Gets or sets a value indicating whether this violates format. + + + true if violates format; otherwise, false. + + + + + Gets or sets a value indicating whether this violates mutual exclusiveness. + + + true if violates mutual exclusiveness; otherwise, false. + + + + + Models a type that records the parser state afeter parsing. + + + + + Gets a list of parsing errors. + + + Parsing errors. + + + + + Defines a basic interface to parse command line arguments. + + + + + Parses a array of command line arguments, setting values in + parameter instance's public fields decorated with appropriate attributes. + + A array of command line arguments. + An object's instance used to receive values. + Parsing rules are defined using derived types. + True if parsing process succeed. + Thrown if is null. + Thrown if is null. + + + + Parses a array of command line arguments, setting values in + parameter instance's public fields decorated with appropriate attributes. + This overload allows you to specify a derived instance for write text messages. + + A array of command line arguments. + An object's instance used to receive values. + Parsing rules are defined using derived types. + Any instance derived from , + usually . Setting this argument to null, will disable help screen. + True if parsing process succeed. + Thrown if is null. + Thrown if is null. + + + + Provides the abstract base class for a strongly typed options target. Used when you need to get parsing errors. + + + + + This exception is thrown when a generic parsing error occurs. + + + + + Specifies a set of features to configure a behavior. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class, + setting the case comparison behavior. + + If set to true, parsing will be case sensitive. + + + + Initializes a new instance of the class, + setting the used for help method output. + + Any instance derived from , + default . Setting this argument to null, will disable help screen. + + + + Initializes a new instance of the class, + setting case comparison and help output options. + + If set to true, parsing will be case sensitive. + Any instance derived from , + default . Setting this argument to null, will disable help screen. + + + + Initializes a new instance of the class, + setting case comparison and mutually exclusive behaviors. + + If set to true, parsing will be case sensitive. + If set to true, enable mutually exclusive behavior. + + + + Initializes a new instance of the class, + setting case comparison, mutually exclusive behavior and help output option. + + If set to true, parsing will be case sensitive. + If set to true, enable mutually exclusive behavior. + Any instance derived from , + default . Setting this argument to null, will disable help screen. + + + + Initializes a new instance of the class, + setting case comparison, mutually exclusive behavior and help output option. + + If set to true, parsing will be case sensitive. + If set to true, enable mutually exclusive behavior. + If set to true, allow the parser to skip unknown argument, otherwise return a parse failure + Any instance derived from , + default . Setting this argument to null, will disable help screen. + + + + Gets or sets the case comparison behavior. + Default is set to true. + + + + + Gets or sets the mutually exclusive behavior. + Default is set to false. + + + + + Gets or sets the used for help method output. + Setting this property to null, will disable help screen. + + + + + Gets or sets a value indicating if the parser shall move on to the next argument and ignore the given argument if it + encounter an unknown arguments + + + true to allow parsing the arguments with differents class options that do not have all the arguments. + + + This allows fragmented version class parsing, useful for project with addon where addons also requires command line arguments but + when these are unknown by the main program at build time. + + + + + Provides methods to parse command line arguments. + Default implementation for . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class, + configurable with a object. + + The object is used to configure + aspects and behaviors of the parser. + + + + Singleton instance created with basic defaults. + + + + + Parses a array of command line arguments, setting values in + parameter instance's public fields decorated with appropriate attributes. + + A array of command line arguments. + An object's instance used to receive values. + Parsing rules are defined using derived types. + True if parsing process succeed. + Thrown if is null. + Thrown if is null. + + + + Parses a array of command line arguments, setting values in + parameter instance's public fields decorated with appropriate attributes. + This overload allows you to specify a derived instance for write text messages. + + A array of command line arguments. + An object's instance used to receive values. + Parsing rules are defined using derived types. + Any instance derived from , + usually . Setting this argument to null, will disable help screen. + True if parsing process succeed. + Thrown if is null. + Thrown if is null. + + + + Models an abstract sentence builder. + + + + + Gets a string containing word 'option'. + + + The word 'option'. + + + + + Gets a string containing the word 'and'. + + + The word 'and'. + + + + + Gets a string containing the sentence 'required option missing'. + + + The sentence 'required option missing'. + + + + + Gets a string containing the sentence 'violates format'. + + + The sentence 'violates format'. + + + + + Gets a string containing the sentence 'violates mutual exclusiveness'. + + + The sentence 'violates mutual exclusiveness'. + + + + + Gets a string containing the error heading text. + + + The error heading text. + + + + + Creates the built in sentence builder. + + + The built in sentence builder. + + + + + Models an english sentence builder, currently the default one. + + + + + Gets a string containing word 'option' in english. + + + The word 'option' in english. + + + + + Gets a string containing the word 'and' in english. + + + The word 'and' in english. + + + + + Gets a string containing the sentence 'required option missing' in english. + + + The sentence 'required option missing' in english. + + + + + Gets a string containing the sentence 'violates format' in english. + + + The sentence 'violates format' in english. + + + + + Gets a string containing the sentence 'violates mutual exclusiveness' in english. + + + The sentence 'violates mutual exclusiveness' in english. + + + + + Gets a string containing the error heading text in english. + + + The error heading text in english. + + + + + Models the copyright informations part of an help text. + You can assign it where you assign any instance. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + specifying author and year. + + The company or person holding the copyright. + The year of coverage of copyright. + Thrown when parameter is null or empty string. + + + + Initializes a new instance of the class + specifying author and years. + + The company or person holding the copyright. + The years of coverage of copyright. + Thrown when parameter is null or empty string. + Thrown when parameter is not supplied. + + + + Initializes a new instance of the class + specifying symbol case, author and years. + + The case of the copyright symbol. + The company or person holding the copyright. + The years of coverage of copyright. + Thrown when parameter is null or empty string. + Thrown when parameter is not supplied. + + + + When overridden in a derived class, allows to specify a different copyright word. + + + + + Returns the copyright informations as a . + + The that contains the copyright informations. + + + + When overridden in a derived class, allows to specify a new algorithm to render copyright years + as a instance. + + A array of years. + A instance with copyright years. + + + + Converts the copyright informations to a . + + This instance. + The that contains the copyright informations. + + + + Models the heading informations part of an help text. + You can assign it where you assign any instance. + + + + + Initializes a new instance of the class + specifying program name. + + The name of the program. + Thrown when parameter is null or empty string. + + + + Initializes a new instance of the class + specifying program name and version. + + The name of the program. + The version of the program. + Thrown when parameter is null or empty string. + + + + Returns the heading informations as a . + + The that contains the heading informations. + + + + Writes out a string and a new line using the program name specified in the constructor + and parameter. + + The message to write. + The target derived type. + Thrown when parameter is null or empty string. + Thrown when parameter is null. + + + + Writes out a string and a new line using the program name specified in the constructor + and parameter to standard output stream. + + The message to write. + Thrown when parameter is null or empty string. + + + + Writes out a string and a new line using the program name specified in the constructor + and parameter to standard error stream. + + The message to write. + Thrown when parameter is null or empty string. + + + + Converts the heading informations to a . + + This instance. + The that contains the heading informations. + + + + Handle parsing errors delegate. + + + + + Provides data for the FormatOptionHelpText event. + + + + + Initializes a new instance of the class. + + Option to format. + + + + Gets the option to format. + + + + + Models an help text and collects related informations. + You can assign it in place of a instance. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + specifying the sentence builder. + + + A instance. + + + + + Initializes a new instance of the class + specifying heading informations. + + A string with heading information or + an instance of . + Thrown when parameter is null or empty string. + + + + Initializes a new instance of the class + specifying the sentence builder and heading informations. + + + A instance. + + + A string with heading information or + an instance of . + + + + + Initializes a new instance of the class + specifying heading and copyright informations. + + A string with heading information or + an instance of . + A string with copyright information or + an instance of . + Thrown when one or more parameters are null or empty strings. + + + + Initializes a new instance of the class + specifying heading and copyright informations. + + A string with heading information or + an instance of . + A string with copyright information or + an instance of . + The instance that collected command line arguments parsed with class. + Thrown when one or more parameters are null or empty strings. + + + + Message type enumeration. + + + + + Parsing error due to a violation of the format of an option value. + + + + + Parsing error due to a violation of mandatory option. + + + + + Parsing error due to a violation of the mutual exclusiveness of two or more option. + + + + + Occurs when an option help text is formatted. + + + + + Sets the heading information string. + You can directly assign a instance. + + + + + Sets the copyright information string. + You can directly assign a instance. + + + + + Gets or sets the maximum width of the display. This determines word wrap when displaying the text. + + The maximum width of the display. + + + + Gets or sets the format of options for adding or removing dashes. + It modifies behavior of method. + + + + + Gets or sets whether to add an additional line after the description of the option. + + + + + Creates a new instance of the class using common defaults. + + + An instance of class. + + + The instance that collected command line arguments parsed with class. + + + + + Creates a new instance of the class using common defaults. + + + An instance of class. + + + The instance that collected command line arguments parsed with class. + + + A delegate used to customize the text block for reporting parsing errors. + + + + + Adds a text line after copyright and before options usage informations. + + A instance. + Thrown when parameter is null or empty string. + + + + Adds a text line at the bottom, after options usage informations. + + A instance. + Thrown when parameter is null or empty string. + + + + Adds a text block with options usage informations. + + The instance that collected command line arguments parsed with class. + Thrown when parameter is null. + + + + Adds a text block with options usage informations. + + The instance that collected command line arguments parsed with the class. + The word to use when the option is required. + Thrown when parameter is null. + Thrown when parameter is null or empty string. + + + + Adds a text block with options usage informations. + + The instance that collected command line arguments parsed with the class. + The word to use when the option is required. + The maximum length of the help documentation. + Thrown when parameter is null. + Thrown when parameter is null or empty string. + + + + Builds a string that contains a parsing error message. + + + An options target instance that collected command line arguments parsed with the class. + + + The that contains the parsing error message. + + + + + Returns the help informations as a . + + The that contains the help informations. + + + + Converts the help informations to a . + + This instance. + The that contains the help informations. + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gcs.csv (revision 2866) @@ -0,0 +1,463 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","GREENWICH_DATUM","UOM_CODE","ELLIPSOID_CODE","PRIME_MERIDIAN_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_CODE","COORD_OP_CODE_MULTI","COORD_OP_METHOD_CODE","DX","DY","DZ","RX","RY","RZ","DS" +3819,HD1909,1024,Hungarian Datum 1909,1024,9122,7004,8901,1,0,6422,3817,0,9607,595.48,121.69,515.35,-4.115,2.9383,-0.853,-3.408 +3821,TWD67,1025,Taiwan Datum 1967,1025,9122,7050,8901,1,0,6422,,0,,,,,,,, +3824,TWD97,1026,Taiwan Datum 1997,1026,9122,7019,8901,1,0,6422,3830,0,9603,0,0,0,,,, +3889,IGRS,1029,Iraqi Geospatial Reference System,1029,9122,7019,8901,1,0,6422,3894,0,9603,0,0,0,,,, +3906,MGI 1901,1031,MGI 1901,1031,9122,7004,8901,1,0,6422,3962,1,9603,682,-203,480,,,, +4001,Unknown datum based upon the Airy 1830 ellipsoid,6001,"Not specified (based on Airy 1830 ellipsoid)",6001,9122,7001,8901,0,0,6422,,0,,,,,,,, +4002,Unknown datum based upon the Airy Modified 1849 ellipsoid,6002,"Not specified (based on Airy Modified 1849 ellipsoid)",6002,9122,7002,8901,0,0,6422,,0,,,,,,,, +4003,Unknown datum based upon the Australian National Spheroid,6003,"Not specified (based on Australian National Spheroid)",6003,9122,7003,8901,0,0,6422,,0,,,,,,,, +4004,Unknown datum based upon the Bessel 1841 ellipsoid,6004,"Not specified (based on Bessel 1841 ellipsoid)",6004,9122,7004,8901,0,0,6422,,0,,,,,,,, +4005,Unknown datum based upon the Bessel Modified ellipsoid,6005,"Not specified (based on Bessel Modified ellipsoid)",6005,9122,7005,8901,0,0,6422,,0,,,,,,,, +4006,Unknown datum based upon the Bessel Namibia ellipsoid,6006,"Not specified (based on Bessel Namibia ellipsoid)",6006,9122,7046,8901,0,0,6422,,0,,,,,,,, +4007,Unknown datum based upon the Clarke 1858 ellipsoid,6007,"Not specified (based on Clarke 1858 ellipsoid)",6007,9122,7007,8901,0,0,6422,,0,,,,,,,, +4008,Unknown datum based upon the Clarke 1866 ellipsoid,6008,"Not specified (based on Clarke 1866 ellipsoid)",6008,9122,7008,8901,0,0,6422,,0,,,,,,,, +4009,Unknown datum based upon the Clarke 1866 Michigan ellipsoid,6009,"Not specified (based on Clarke 1866 Michigan ellipsoid)",6009,9122,7009,8901,0,0,6422,,0,,,,,,,, +4010,"Unknown datum based upon the Clarke 1880 (Benoit) ellipsoid",6010,"Not specified (based on Clarke 1880 (Benoit) ellipsoid)",6010,9122,7010,8901,0,0,6422,,0,,,,,,,, +4011,"Unknown datum based upon the Clarke 1880 (IGN) ellipsoid",6011,"Not specified (based on Clarke 1880 (IGN) ellipsoid)",6011,9122,7011,8901,0,0,6422,,0,,,,,,,, +4012,"Unknown datum based upon the Clarke 1880 (RGS) ellipsoid",6012,"Not specified (based on Clarke 1880 (RGS) ellipsoid)",6012,9122,7012,8901,0,0,6422,,0,,,,,,,, +4013,"Unknown datum based upon the Clarke 1880 (Arc) ellipsoid",6013,"Not specified (based on Clarke 1880 (Arc) ellipsoid)",6013,9122,7013,8901,0,0,6422,,0,,,,,,,, +4014,"Unknown datum based upon the Clarke 1880 (SGA 1922) ellipsoid",6014,"Not specified (based on Clarke 1880 (SGA 1922) ellipsoid)",6014,9122,7014,8901,0,0,6422,,0,,,,,,,, +4015,"Unknown datum based upon the Everest 1830 (1937 Adjustment) ellipsoid",6015,"Not specified (based on Everest 1830 (1937 Adjustment) ellipsoid)",6015,9122,7015,8901,0,0,6422,,0,,,,,,,, +4016,"Unknown datum based upon the Everest 1830 (1967 Definition) ellipsoid",6016,"Not specified (based on Everest 1830 (1967 Definition) ellipsoid)",6016,9122,7016,8901,0,0,6422,,0,,,,,,,, +4018,Unknown datum based upon the Everest 1830 Modified ellipsoid,6018,"Not specified (based on Everest 1830 Modified ellipsoid)",6018,9122,7018,8901,0,0,6422,,0,,,,,,,, +4019,Unknown datum based upon the GRS 1980 ellipsoid,6019,"Not specified (based on GRS 1980 ellipsoid)",6019,9122,7019,8901,0,0,6422,,0,,,,,,,, +4020,Unknown datum based upon the Helmert 1906 ellipsoid,6020,"Not specified (based on Helmert 1906 ellipsoid)",6020,9122,7020,8901,0,0,6422,,0,,,,,,,, +4021,Unknown datum based upon the Indonesian National Spheroid,6021,"Not specified (based on Indonesian National Spheroid)",6021,9122,7021,8901,0,0,6422,,0,,,,,,,, +4022,Unknown datum based upon the International 1924 ellipsoid,6022,"Not specified (based on International 1924 ellipsoid)",6022,9122,7022,8901,0,0,6422,,0,,,,,,,, +4023,MOLDREF99,1032,MOLDREF99,1032,9122,7019,8901,1,0,6422,5585,0,9603,0,0,0,,,, +4024,Unknown datum based upon the Krassowsky 1940 ellipsoid,6024,"Not specified (based on Krassowsky 1940 ellipsoid)",6024,9122,7024,8901,0,0,6422,,0,,,,,,,, +4025,Unknown datum based upon the NWL 9D ellipsoid,6025,"Not specified (based on NWL 9D ellipsoid)",6025,9122,7025,8901,0,0,6422,,0,,,,,,,, +4027,Unknown datum based upon the Plessis 1817 ellipsoid,6027,"Not specified (based on Plessis 1817 ellipsoid)",6027,9122,7027,8901,0,0,6422,,0,,,,,,,, +4028,Unknown datum based upon the Struve 1860 ellipsoid,6028,"Not specified (based on Struve 1860 ellipsoid)",6028,9122,7028,8901,0,0,6422,,0,,,,,,,, +4029,Unknown datum based upon the War Office ellipsoid,6029,"Not specified (based on War Office ellipsoid)",6029,9122,7029,8901,0,0,6422,,0,,,,,,,, +4030,Unknown datum based upon the WGS 84 ellipsoid,6030,"Not specified (based on WGS 84 ellipsoid)",6030,9122,7030,8901,0,0,6422,,0,,,,,,,, +4031,Unknown datum based upon the GEM 10C ellipsoid,6031,"Not specified (based on GEM 10C ellipsoid)",6031,9122,7031,8901,0,0,6422,,0,,,,,,,, +4032,Unknown datum based upon the OSU86F ellipsoid,6032,"Not specified (based on OSU86F ellipsoid)",6032,9122,7032,8901,0,0,6422,,0,,,,,,,, +4033,Unknown datum based upon the OSU91A ellipsoid,6033,"Not specified (based on OSU91A ellipsoid)",6033,9122,7033,8901,0,0,6422,,0,,,,,,,, +4034,Unknown datum based upon the Clarke 1880 ellipsoid,6034,"Not specified (based on Clarke 1880 ellipsoid)",6034,9122,7034,8901,0,0,6422,,0,,,,,,,, +4035,Unknown datum based upon the Authalic Sphere,6035,"Not specified (based on Authalic Sphere)",6035,9108,7035,8901,0,1,6402,,0,,,,,,,, +4036,Unknown datum based upon the GRS 1967 ellipsoid,6036,"Not specified (based on GRS 1967 ellipsoid)",6036,9122,7036,8901,0,0,6422,,0,,,,,,,, +4041,Unknown datum based upon the Average Terrestrial System 1977 ellipsoid,6041,"Not specified (based on Average Terrestrial System 1977 ellipsoid)",6041,9122,7041,8901,0,0,6422,,0,,,,,,,, +4042,"Unknown datum based upon the Everest (1830 Definition) ellipsoid",6042,"Not specified (based on Everest (1830 Definition) ellipsoid)",6042,9122,7042,8901,0,0,6422,,0,,,,,,,, +4043,Unknown datum based upon the WGS 72 ellipsoid,6043,"Not specified (based on WGS 72 ellipsoid)",6043,9122,7043,8901,0,0,6422,,0,,,,,,,, +4044,"Unknown datum based upon the Everest 1830 (1962 Definition) ellipsoid",6044,"Not specified (based on Everest 1830 (1962 Definition) ellipsoid)",6044,9122,7044,8901,0,0,6422,,0,,,,,,,, +4045,"Unknown datum based upon the Everest 1830 (1975 Definition) ellipsoid",6045,"Not specified (based on Everest 1830 (1975 Definition) ellipsoid)",6045,9122,7045,8901,0,0,6422,,0,,,,,,,, +4046,RGRDC 2005,1033,Reseau Geodesique de la RDC 2005,1033,9122,7019,8901,1,0,6422,4064,0,9603,0,0,0,,,, +4047,Unspecified datum based upon the GRS 1980 Authalic Sphere,6047,"Not specified (based on GRS 1980 Authalic Sphere)",6047,9122,7048,8901,0,0,6422,,0,,,,,,,, +4052,Unspecified datum based upon the Clarke 1866 Authalic Sphere,6052,"Not specified (based on Clarke 1866 Authalic Sphere)",6052,9122,7052,8901,0,0,6422,,0,,,,,,,, +4053,Unspecified datum based upon the International 1924 Authalic Sphere,6053,"Not specified (based on International 1924 Authalic Sphere)",6053,9122,7057,8901,0,0,6422,,0,,,,,,,, +4054,Unspecified datum based upon the Hughes 1980 ellipsoid,6054,"Not specified (based on Hughes 1980 ellipsoid)",6054,9122,7058,8901,0,0,6422,,0,,,,,,,, +4055,Popular Visualisation CRS,6055,Popular Visualisation Datum,6055,9122,7059,8901,1,1,6422,15973,0,9603,0,0,0,,,, +4075,SREF98,1034,Serbian Reference Network 1998,1034,9122,7019,8901,1,0,6422,4077,0,9603,0,0,0,,,, +4081,REGCAN95,1035,Red Geodesica de Canarias 1995,1035,9122,7019,8901,1,0,6422,4084,0,9603,0,0,0,,,, +4120,Greek,6120,Greek,6120,9122,7004,8901,1,0,6422,,0,,,,,,,, +4121,GGRS87,6121,Greek Geodetic Reference System 1987,6121,9122,7019,8901,1,0,6422,1272,0,9603,-199.87,74.79,246.62,,,, +4122,ATS77,6122,Average Terrestrial System 1977,6122,9122,7041,8901,1,0,6422,,0,,,,,,,, +4123,KKJ,6123,"Kartastokoordinaattijarjestelma (1966)",6123,9122,7022,8901,1,0,6422,10099,1,9607,-96.062,-82.428,-121.753,-4.801,-0.345,1.376,1.496 +4124,RT90,6124,Rikets koordinatsystem 1990,6124,9122,7004,8901,1,0,6422,1896,1,9607,414.1,41.3,603.1,0.855,-2.141,7.023,0 +4125,Samboja,6125,Samboja,6125,9108,7004,8901,1,1,6402,1282,0,9603,-404.78,685.68,45.47,,,, +4126,"LKS94 (ETRS89)",6126,"Lithuania 1994 (ETRS89)",6126,9108,7019,8901,1,1,6402,,0,,,,,,,, +4127,Tete,6127,Tete,6127,9122,7008,8901,1,0,6422,1687,1,9607,219.315,168.975,-166.145,-0.198,-5.926,2.356,-57.104 +4128,Madzansua,6128,Madzansua,6128,9122,7008,8901,1,0,6422,,0,,,,,,,, +4129,Observatario,6129,Observatario,6129,9122,7008,8901,1,0,6422,,0,,,,,,,, +4130,Moznet,6130,"Moznet (ITRF94)",6130,9122,7030,8901,1,0,6422,1302,0,9607,0,0,0,0,0,0,0 +4131,Indian 1960,6131,Indian 1960,6131,9122,7015,8901,1,0,6422,1542,1,9603,198,881,317,,,, +4132,FD58,6132,Final Datum 1958,6132,9122,7012,8901,1,0,6422,1854,1,9603,-239.1,-170.02,397.5,,,, +4133,EST92,6133,Estonia 1992,6133,9122,7019,8901,1,0,6422,1333,0,9607,0.055,-0.541,-0.185,-0.0183,0.0003,0.007,-0.014 +4134,PSD93,6134,PDO Survey Datum 1993,6134,9122,7012,8901,1,0,6422,1439,1,9606,-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.71006 +4135,Old Hawaiian,6135,Old Hawaiian,6135,9122,7008,8901,1,0,6422,15824,1,9603,61,-285,-181,,,, +4136,St. Lawrence Island,6136,St. Lawrence Island,6136,9122,7008,8901,1,0,6422,,0,,,,,,,, +4137,St. Paul Island,6137,St. Paul Island,6137,9122,7008,8901,1,0,6422,,0,,,,,,,, +4138,St. George Island,6138,St. George Island,6138,9122,7008,8901,1,0,6422,,0,,,,,,,, +4139,Puerto Rico,6139,Puerto Rico,6139,9122,7008,8901,1,0,6422,1893,0,9603,11,72,-101,,,, +4140,"NAD83(CSRS98)",6140,NAD83 Canadian Spatial Reference System,6140,9108,7019,8901,1,1,6402,1473,0,9603,0,0,0,,,, +4141,Israel,6141,Israel,6141,9122,7019,8901,1,0,6422,1073,0,9603,-48,55,52,,,, +4142,Locodjo 1965,6142,Locodjo 1965,6142,9122,7012,8901,1,0,6422,1469,0,9603,-125,53,467,,,, +4143,Abidjan 1987,6143,Abidjan 1987,6143,9122,7012,8901,1,0,6422,1470,0,9603,-124.76,53,466.79,,,, +4144,Kalianpur 1937,6144,Kalianpur 1937,6144,9122,7015,8901,1,0,6422,1155,1,9603,282,726,254,,,, +4145,Kalianpur 1962,6145,Kalianpur 1962,6145,9122,7044,8901,1,0,6422,1247,1,9603,283,682,231,,,, +4146,Kalianpur 1975,6146,Kalianpur 1975,6146,9122,7045,8901,1,0,6422,1156,0,9603,295,736,257,,,, +4147,Hanoi 1972,6147,Hanoi 1972,6147,9122,7024,8901,1,0,6422,1544,0,9603,-17.51,-108.32,-62.39,,,, +4148,Hartebeesthoek94,6148,Hartebeesthoek94,6148,9122,7030,8901,1,0,6422,1505,0,9603,0,0,0,,,, +4149,CH1903,6149,CH1903,6149,9122,7004,8901,1,0,6422,1766,1,9603,674.4,15.1,405.3,,,, +4150,"CH1903+",6150,"CH1903+",6150,9122,7004,8901,1,0,6422,1676,0,9603,674.374,15.056,405.346,,,, +4151,CHTRF95,6151,Swiss Terrestrial Reference Frame 1995,6151,9122,7019,8901,1,0,6422,1511,0,9603,0,0,0,,,, +4152,"NAD83(HARN)",6152,"NAD83 (High Accuracy Reference Network)",6152,9122,7019,8901,1,0,6422,1580,1,9603,0,0,0,,,, +4153,Rassadiran,6153,Rassadiran,6153,9122,7022,8901,1,0,6422,1512,0,9603,-133.63,-157.5,-158.62,,,, +4154,"ED50(ED77)",6154,"European Datum 1950(1977)",6154,9122,7022,8901,1,0,6422,1141,1,9603,-117,-132,-164,,,, +4155,Dabola 1981,6155,Dabola 1981,6155,9122,7011,8901,1,0,6422,1518,0,9603,-83,37,124,,,, +4156,S-JTSK,6156,System Jednotne Trigonometricke Site Katastralni,6156,9122,7004,8901,1,0,6422,15965,1,9603,589,76,480,,,, +4157,Mount Dillon,6157,Mount Dillon,6157,9122,7007,8901,1,0,6422,,0,,,,,,,, +4158,Naparima 1955,6158,Naparima 1955,6158,9122,7022,8901,1,0,6422,1555,1,9603,-0.465,372.095,171.736,,,, +4159,ELD79,6159,European Libyan Datum 1979,6159,9122,7022,8901,1,0,6422,15909,1,9603,-115.8543,-99.0583,-152.4616,,,, +4160,Chos Malal 1914,6160,Chos Malal 1914,6160,9122,7022,8901,1,0,6422,,0,,,,,,,, +4161,Pampa del Castillo,6161,Pampa del Castillo,6161,9122,7022,8901,1,0,6422,15845,0,9603,27.5,14,186.4,,,, +4162,Korean 1985,6162,Korean Datum 1985,6162,9122,7004,8901,1,0,6422,,0,,,,,,,, +4163,Yemen NGN96,6163,Yemen National Geodetic Network 1996,6163,9122,7030,8901,1,0,6422,1540,0,9603,0,0,0,,,, +4164,South Yemen,6164,South Yemen,6164,9122,7024,8901,1,0,6422,1682,0,9603,-76,-138,67,,,, +4165,Bissau,6165,Bissau,6165,9122,7022,8901,1,0,6422,1547,0,9603,-173,253,27,,,, +4166,Korean 1995,6166,Korean Datum 1995,6166,9122,7030,8901,1,0,6422,1558,0,9603,0,0,0,,,, +4167,NZGD2000,6167,New Zealand Geodetic Datum 2000,6167,9122,7019,8901,1,0,6422,1565,0,9603,0,0,0,,,, +4168,Accra,6168,Accra,6168,9122,7029,8901,1,0,6422,1569,1,9603,-199,32,322,,,, +4169,American Samoa 1962,6169,American Samoa 1962,6169,9122,7008,8901,1,0,6422,1577,0,9603,-115,118,426,,,, +4170,SIRGAS 1995,6170,Sistema de Referencia Geocentrico para America del Sur 1995,6170,9122,7019,8901,1,0,6422,1581,0,9603,0,0,0,,,, +4171,RGF93,6171,Reseau Geodesique Francais 1993,6171,9122,7019,8901,1,0,6422,1671,0,9603,0,0,0,,,, +4172,POSGAR,6172,Posiciones Geodesicas Argentinas,6172,9108,7019,8901,1,1,6402,1598,0,9603,0,0,0,,,, +4173,IRENET95,6173,IRENET95,6173,9122,7019,8901,1,0,6422,1678,0,9603,0,0,0,,,, +4174,Sierra Leone 1924,6174,Sierra Leone Colony 1924,6174,9122,7029,8901,1,0,6422,,0,,,,,,,, +4175,Sierra Leone 1968,6175,Sierra Leone 1968,6175,9122,7012,8901,1,0,6422,1614,0,9603,-88,4,101,,,, +4176,Australian Antarctic,6176,Australian Antarctic Datum 1998,6176,9122,7019,8901,1,0,6422,1890,0,9603,0,0,0,,,, +4178,"Pulkovo 1942(83)",6178,"Pulkovo 1942(83)",6178,9122,7024,8901,1,0,6422,15998,1,9603,26,-121,-78,,,, +4179,"Pulkovo 1942(58)",6179,"Pulkovo 1942(58)",6179,9122,7024,8901,1,0,6422,1645,1,9606,33.4,-146.6,-76.3,-0.359,-0.053,0.844,-0.84 +4180,EST97,6180,Estonia 1997,6180,9122,7019,8901,1,0,6422,1649,0,9603,0,0,0,,,, +4181,Luxembourg 1930,6181,Luxembourg 1930,6181,9122,7022,8901,1,0,6422,5486,1,9607,-189.6806,18.3463,-42.7695,0.33746,3.09264,-2.53861,0.4598 +4182,Azores Occidental 1939,6182,Azores Occidental Islands 1939,6182,9122,7022,8901,1,0,6422,1887,1,9603,-425,-169,81,,,, +4183,Azores Central 1948,6183,Azores Central Islands 1948,6183,9122,7022,8901,1,0,6422,1886,0,9603,-104,167,-38,,,, +4184,Azores Oriental 1940,6184,Azores Oriental Islands 1940,6184,9122,7022,8901,1,0,6422,1885,0,9603,-203,141,53,,,, +4185,Madeira 1936,6185,Madeira 1936,6185,9108,7022,8901,1,1,6402,,0,,,,,,,, +4188,OSNI 1952,6188,OSNI 1952,6188,9122,7001,8901,1,0,6422,1955,0,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15 +4189,REGVEN,6189,Red Geodesica Venezolana,6189,9122,7019,8901,1,0,6422,1768,0,9603,0,0,0,,,, +4190,POSGAR 98,6190,Posiciones Geodesicas Argentinas 1998,6190,9122,7019,8901,1,0,6422,1773,1,9603,0,0,0,,,, +4191,Albanian 1987,6191,Albanian 1987,6191,9122,7024,8901,1,0,6422,,0,,,,,,,, +4192,Douala 1948,6192,Douala 1948,6192,9122,7022,8901,1,0,6422,15873,0,9603,-206.1,-174.7,-87.7,,,, +4193,Manoca 1962,6193,Manoca 1962,6193,9122,7011,8901,1,0,6422,1796,0,9603,-70.9,-151.8,-41.4,,,, +4194,Qornoq 1927,6194,Qornoq 1927,6194,9122,7022,8901,1,0,6422,1797,1,9603,164,138,-189,,,, +4195,Scoresbysund 1952,6195,Scoresbysund 1952,6195,9122,7022,8901,1,0,6422,1799,0,9606,105,326,-102.5,0,0,0.814,-0.6 +4196,Ammassalik 1958,6196,Ammassalik 1958,6196,9122,7022,8901,1,0,6422,1800,0,9606,-45,417,-3.5,0,0,0.814,-0.6 +4197,Garoua,6197,Garoua,6197,9122,7012,8901,1,0,6422,,0,,,,,,,, +4198,Kousseri,6198,Kousseri,6198,9122,7012,8901,1,0,6422,,0,,,,,,,, +4199,Egypt 1930,6199,Egypt 1930,6199,9122,7022,8901,1,0,6422,,0,,,,,,,, +4200,Pulkovo 1995,6200,Pulkovo 1995,6200,9122,7024,8901,1,0,6422,5043,1,9607,24.47,-130.89,-81.56,0,0,-0.13,-0.22 +4201,Adindan,6201,Adindan,6201,9122,7012,8901,1,0,6422,1100,1,9603,-166,-15,204,,,, +4202,AGD66,6202,Australian Geodetic Datum 1966,6202,9122,7003,8901,1,0,6422,15980,1,9607,-117.808,-51.536,137.784,-0.303,-0.446,-0.234,-0.29 +4203,AGD84,6203,Australian Geodetic Datum 1984,6203,9122,7003,8901,1,0,6422,1109,1,9603,-134,-48,149,,,, +4204,Ain el Abd,6204,Ain el Abd 1970,6204,9122,7022,8901,1,0,6422,1111,1,9603,-143,-236,7,,,, +4205,Afgooye,6205,Afgooye,6205,9122,7024,8901,1,0,6422,1107,0,9603,-43,-163,45,,,, +4206,Agadez,6206,Agadez,6206,9122,7011,8901,1,0,6422,,0,,,,,,,, +4207,Lisbon,6207,Lisbon 1937,6207,9122,7022,8901,1,0,6422,1984,1,9603,-304.046,-60.576,103.64,,,, +4208,Aratu,6208,Aratu,6208,9122,7022,8901,1,0,6422,5067,1,9603,-151.99,287.04,-147.45,,,, +4209,Arc 1950,6209,Arc 1950,6209,9122,7013,8901,1,0,6422,1113,1,9603,-143,-90,-294,,,, +4210,Arc 1960,6210,Arc 1960,6210,9122,7012,8901,1,0,6422,1122,1,9603,-160,-6,-302,,,, +4211,Batavia,6211,Batavia,6211,9122,7004,8901,1,0,6422,1123,1,9603,-377,681,-50,,,, +4212,Barbados 1938,6212,Barbados 1938,6212,9122,7012,8901,1,0,6422,15793,0,9603,31.95,300.99,419.19,,,, +4213,Beduaram,6213,Beduaram,6213,9122,7011,8901,1,0,6422,15849,0,9603,-106,-87,188,,,, +4214,Beijing 1954,6214,Beijing 1954,6214,9122,7024,8901,1,0,6422,15921,1,9603,15.8,-154.4,-82.3,,,, +4215,Belge 1950,6215,Reseau National Belge 1950,6215,9122,7022,8901,1,0,6422,,0,,,,,,,, +4216,Bermuda 1957,6216,Bermuda 1957,6216,9122,7008,8901,1,0,6422,1124,1,9603,-73,213,296,,,, +4218,Bogota 1975,6218,Bogota 1975,6218,9122,7022,8901,1,0,6422,1125,1,9603,307,304,-318,,,, +4219,Bukit Rimpah,6219,Bukit Rimpah,6219,9122,7004,8901,1,0,6422,1126,0,9603,-384,664,-48,,,, +4220,Camacupa,6220,Camacupa,6220,9122,7012,8901,1,0,6422,1327,1,9603,-50.9,-347.6,-231,,,, +4221,Campo Inchauspe,6221,Campo Inchauspe,6221,9122,7022,8901,1,0,6422,1127,1,9603,-148,136,90,,,, +4222,Cape,6222,Cape,6222,9122,7013,8901,1,0,6422,1128,1,9603,-136,-108,-292,,,, +4223,Carthage,6223,Carthage,6223,9122,7011,8901,1,0,6422,1130,1,9603,-263,6,431,,,, +4224,Chua,6224,Chua,6224,9122,7022,8901,1,0,6422,1131,1,9603,-134,229,-29,,,, +4225,Corrego Alegre 1970-72,6225,Corrego Alegre 1970-72,6225,9122,7022,8901,1,0,6422,1132,0,9603,-206,172,-6,,,, +4226,"Cote d'Ivoire",6226,"Cote d'Ivoire",6226,9108,7011,8901,1,1,6402,,0,,,,,,,, +4227,Deir ez Zor,6227,Deir ez Zor,6227,9122,7011,8901,1,0,6422,15742,1,9603,-190.421,8.532,238.69,,,, +4228,Douala,6228,Douala,6228,9108,7011,8901,1,1,6402,,0,,,,,,,, +4229,Egypt 1907,6229,Egypt 1907,6229,9122,7020,8901,1,0,6422,1148,1,9603,-130,110,-13,,,, +4230,ED50,6230,European Datum 1950,6230,9122,7022,8901,1,0,6422,1133,1,9603,-87,-98,-121,,,, +4231,ED87,6231,European Datum 1987,6231,9122,7022,8901,1,0,6422,3905,1,9606,-83.11,-97.38,-117.22,0.00569290865241986,-0.0446975835137458,0.0442850539012516,0.1218 +4232,Fahud,6232,Fahud,6232,9122,7012,8901,1,0,6422,1256,1,9603,-346,-1,224,,,, +4233,Gandajika 1970,6233,Gandajika 1970,6233,9122,7022,8901,1,1,6422,1894,0,9603,-133,-321,50,,,, +4234,Garoua,6234,Garoua,6234,9108,7011,8901,1,1,6402,,0,,,,,,,, +4235,Guyane Francaise,6235,Guyane Francaise,6235,9108,7022,8901,1,1,6402,,0,,,,,,,, +4236,Hu Tzu Shan 1950,6236,Hu Tzu Shan 1950,6236,9122,7022,8901,1,0,6422,1152,0,9603,-637,-549,-203,,,, +4237,HD72,6237,Hungarian Datum 1972,6237,9122,7036,8901,1,0,6422,1242,1,9603,52.17,-71.82,-14.9,,,, +4238,ID74,6238,Indonesian Datum 1974,6238,9122,7021,8901,1,0,6422,1248,1,9603,-24,-15,5,,,, +4239,Indian 1954,6239,Indian 1954,6239,9122,7015,8901,1,0,6422,1153,0,9603,217,823,299,,,, +4240,Indian 1975,6240,Indian 1975,6240,9122,7015,8901,1,0,6422,1304,1,9603,210,814,289,,,, +4241,Jamaica 1875,6241,Jamaica 1875,6241,9122,7034,8901,1,0,6422,,0,,,,,,,, +4242,JAD69,6242,Jamaica 1969,6242,9122,7008,8901,1,0,6422,1084,1,9603,70,207,389.5,,,, +4243,Kalianpur 1880,6243,Kalianpur 1880,6243,9122,7042,8901,1,0,6422,,0,,,,,,,, +4244,Kandawala,6244,Kandawala,6244,9122,7015,8901,1,0,6422,1157,0,9603,-97,787,86,,,, +4245,Kertau 1968,6245,Kertau 1968,6245,9122,7018,8901,1,0,6422,1158,0,9603,-11,851,5,,,, +4246,KOC,6246,Kuwait Oil Company,6246,9122,7012,8901,1,0,6422,1059,0,9603,-294.7,-200.1,525.5,,,, +4247,La Canoa,6247,La Canoa,6247,9122,7022,8901,1,0,6422,1516,0,9603,-273.5,110.6,-357.9,,,, +4248,PSAD56,6248,Provisional South American Datum 1956,6248,9122,7022,8901,1,0,6422,1201,1,9603,-288,175,-376,,,, +4249,Lake,6249,Lake,6249,9122,7022,8901,1,0,6422,,0,,,,,,,, +4250,Leigon,6250,Leigon,6250,9122,7012,8901,1,0,6422,1159,0,9603,-130,29,364,,,, +4251,Liberia 1964,6251,Liberia 1964,6251,9122,7012,8901,1,0,6422,1160,0,9603,-90,40,88,,,, +4252,Lome,6252,Lome,6252,9122,7011,8901,1,0,6422,,0,,,,,,,, +4253,Luzon 1911,6253,Luzon 1911,6253,9122,7008,8901,1,0,6422,1161,1,9603,-133,-77,-51,,,, +4254,Hito XVIII 1963,6254,Hito XVIII 1963,6254,9122,7022,8901,1,0,6422,1892,1,9603,16,196,93,,,, +4255,Herat North,6255,Herat North,6255,9122,7022,8901,1,0,6422,1246,0,9603,-333,-222,114,,,, +4256,Mahe 1971,6256,Mahe 1971,6256,9122,7012,8901,1,0,6422,1164,0,9603,41,-220,-134,,,, +4257,Makassar,6257,Makassar,6257,9122,7004,8901,1,0,6422,1837,0,9603,-587.8,519.75,145.76,,,, +4258,ETRS89,6258,European Terrestrial Reference System 1989,6258,9122,7019,8901,1,0,6422,1149,1,9603,0,0,0,,,, +4259,Malongo 1987,6259,Malongo 1987,6259,9122,7022,8901,1,0,6422,1557,1,9603,-254.1,-5.36,-100.29,,,, +4260,Manoca,6260,Manoca,6260,9108,7012,8901,1,1,6402,1316,0,9603,-70.9,-151.8,-41.4,,,, +4261,Merchich,6261,Merchich,6261,9122,7011,8901,1,0,6422,1166,0,9603,31,146,47,,,, +4262,Massawa,6262,Massawa,6262,9122,7004,8901,1,0,6422,1165,0,9603,639,405,60,,,, +4263,Minna,6263,Minna,6263,9122,7012,8901,1,0,6422,1168,1,9603,-92,-93,122,,,, +4264,Mhast,6264,Mhast,6264,9122,7022,8901,1,1,6422,1329,0,9603,-252.95,-4.11,-96.38,,,, +4265,Monte Mario,6265,Monte Mario,6265,9122,7022,8901,1,0,6422,1660,1,9606,-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68 +4266,"M'poraloko",6266,"M'poraloko",6266,9122,7011,8901,1,0,6422,1163,1,9603,-74,-130,42,,,, +4267,NAD27,6267,North American Datum 1927,6267,9122,7008,8901,1,0,6422,,0,,,,,,,, +4268,NAD27 Michigan,6268,NAD27 Michigan,6268,9122,7009,8901,1,0,6422,,0,,,,,,,, +4269,NAD83,6269,North American Datum 1983,6269,9122,7019,8901,1,0,6422,1188,1,9603,0,0,0,,,, +4270,Nahrwan 1967,6270,Nahrwan 1967,6270,9122,7012,8901,1,0,6422,1190,1,9603,-243,-192,477,,,, +4271,Naparima 1972,6271,Naparima 1972,6271,9122,7022,8901,1,0,6422,1192,1,9603,-10,375,165,,,, +4272,NZGD49,6272,New Zealand Geodetic Datum 1949,6272,9122,7022,8901,1,0,6422,1564,1,9607,59.47,-5.04,187.44,-0.47,0.1,-1.024,-4.5993 +4273,NGO 1948,6273,NGO 1948,6273,9122,7005,8901,1,0,6422,1654,0,9606,278.3,93,474.5,7.889,0.05,-6.61,6.21 +4274,Datum 73,6274,Datum 73,6274,9122,7022,8901,1,0,6422,1983,1,9603,-223.237,110.193,36.649,,,, +4275,NTF,6275,Nouvelle Triangulation Francaise,6275,9122,7011,8901,1,0,6422,1193,0,9603,-168,-60,320,,,, +4276,NSWC 9Z-2,6276,NSWC 9Z-2,6276,9122,7025,8901,1,0,6422,,0,,,,,,,, +4277,OSGB 1936,6277,OSGB 1936,6277,9122,7001,8901,1,0,6422,1195,1,9603,375,-111,431,,,, +4278,OSGB70,6278,"OSGB 1970 (SN)",6278,9122,7001,8901,1,0,6422,,0,,,,,,,, +4279,"OS(SN)80",6279,"OS (SN) 1980",6279,9122,7001,8901,1,0,6422,,0,,,,,,,, +4280,Padang,6280,Padang 1884,6280,9122,7004,8901,1,0,6422,,0,,,,,,,, +4281,Palestine 1923,6281,Palestine 1923,6281,9122,7010,8901,1,0,6422,1074,0,9606,-275.7224,94.7824,340.8944,-8.001,-4.42,-11.821,1 +4282,Pointe Noire,6282,Congo 1960 Pointe Noire,6282,9122,7011,8901,1,0,6422,1200,1,9603,-148,51,-291,,,, +4283,GDA94,6283,Geocentric Datum of Australia 1994,6283,9122,7019,8901,1,0,6422,1150,0,9603,0,0,0,,,, +4284,Pulkovo 1942,6284,Pulkovo 1942,6284,9122,7024,8901,1,0,6422,1267,1,9607,23.92,-141.27,-80.9,0,-0.35,-0.82,-0.12 +4285,Qatar 1974,6285,Qatar 1974,6285,9122,7022,8901,1,0,6422,1562,1,9603,-128.16,-282.42,21.93,,,, +4286,Qatar 1948,6286,Qatar 1948,6286,9122,7020,8901,1,0,6422,,0,,,,,,,, +4287,Qornoq,6287,Qornoq,6287,9108,7022,8901,1,1,6402,1211,0,9603,164,138,-189,,,, +4288,Loma Quintana,6288,Loma Quintana,6288,9122,7022,8901,1,0,6422,,0,,,,,,,, +4289,Amersfoort,6289,Amersfoort,6289,9122,7004,8901,1,0,6422,4833,1,9607,565.4171,50.3319,465.5524,0.398957388243134,-0.343987817378283,1.87740163998045,4.0725 +4291,SAD69,6291,South American Datum 1969,6291,9108,7036,8901,1,1,6402,1212,1,9603,-57,1,-41,,,, +4292,Sapper Hill 1943,6292,Sapper Hill 1943,6292,9122,7022,8901,1,0,6422,1225,0,9603,-355,21,72,,,, +4293,Schwarzeck,6293,Schwarzeck,6293,9122,7046,8901,1,0,6422,1226,1,9603,616,97,-251,,,, +4294,Segora,6294,Segora,6294,9108,7004,8901,1,1,6402,1286,1,9603,-403,684,41,,,, +4295,Serindung,6295,Serindung,6295,9122,7004,8901,1,0,6422,,0,,,,,,,, +4296,Sudan,6296,Sudan,6296,9108,7011,8901,1,1,6402,,0,,,,,,,, +4297,Tananarive,6297,Tananarive 1925,6297,9122,7022,8901,1,0,6422,1227,0,9603,-189,-242,-91,,,, +4298,Timbalai 1948,6298,Timbalai 1948,6298,9122,7016,8901,1,0,6422,1852,1,9606,-533.4,669.2,-52.5,0,0,4.28,9.4 +4299,TM65,6299,TM65,6299,9122,7002,8901,1,0,6422,1641,1,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15 +4300,TM75,6300,Geodetic Datum of 1965,6300,9122,7002,8901,1,0,6422,1954,1,9606,482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15 +4301,Tokyo,6301,Tokyo,6301,9122,7004,8901,1,0,6422,15484,1,9603,-146.414,507.337,680.507,,,, +4302,Trinidad 1903,6302,Trinidad 1903,6302,9122,7007,8901,1,0,6422,1296,1,9603,-61.702,284.488,472.052,,,, +4303,"TC(1948)",6303,Trucial Coast 1948,6303,9122,7020,8901,1,0,6422,,0,,,,,,,, +4304,Voirol 1875,6304,Voirol 1875,6304,9122,7011,8901,1,0,6422,1294,0,9603,-73,-247,227,,,, +4306,Bern 1938,6306,Bern 1938,6306,9122,7004,8901,1,0,6422,,0,,,,,,,, +4307,Nord Sahara 1959,6307,Nord Sahara 1959,6307,9122,7012,8901,1,0,6422,1253,1,9603,-186,-93,310,,,, +4308,RT38,6308,Stockholm 1938,6308,9122,7004,8901,1,0,6422,,0,,,,,,,, +4309,Yacare,6309,Yacare,6309,9122,7022,8901,1,0,6422,1234,1,9603,-155,171,37,,,, +4310,Yoff,6310,Yoff,6310,9122,7011,8901,1,0,6422,,0,,,,,,,, +4311,Zanderij,6311,Zanderij,6311,9122,7022,8901,1,0,6422,1235,0,9603,-265,120,-358,,,, +4312,MGI,6312,Militar-Geographische Institut,6312,9122,7004,8901,1,0,6422,1618,1,9606,577.326,90.129,463.919,5.137,1.474,5.297,2.4232 +4313,Belge 1972,6313,Reseau National Belge 1972,6313,9122,7022,8901,1,0,6422,15929,1,9607,-106.8686,52.2978,-103.7239,-0.3366,0.457,-1.8422,-1.2747 +4314,DHDN,6314,Deutsches Hauptdreiecksnetz,6314,9122,7004,8901,1,0,6422,1777,1,9606,598.1,73.7,418.2,0.202,0.045,-2.455,6.7 +4315,Conakry 1905,6315,Conakry 1905,6315,9122,7011,8901,1,0,6422,1517,0,9603,-23,259,-9,,,, +4316,Dealul Piscului 1930,6316,Dealul Piscului 1930,6316,9122,7022,8901,1,0,6422,1995,1,9603,103.25,-100.4,-307.19,,,, +4317,Dealul Piscului 1970,6317,Dealul Piscului 1970,6317,9122,7024,8901,1,1,6422,1097,1,9603,28,-121,-77,,,, +4318,NGN,6318,National Geodetic Network,6318,9122,7030,8901,1,0,6422,1060,0,9603,-3.2,-5.7,2.8,,,, +4319,KUDAMS,6319,Kuwait Utility,6319,9122,7019,8901,1,0,6422,1061,1,9603,-20.8,11.3,2.4,,,, +4322,WGS 72,6322,World Geodetic System 1972,6322,9122,7043,8901,1,0,6422,1237,1,9606,0,0,4.5,0,0,0.554,0.2263 +4324,WGS 72BE,6324,WGS 72 Transit Broadcast Ephemeris,6324,9122,7043,8901,1,0,6422,1240,0,9606,0,0,1.9,0,0,0.814,-0.38 +4326,WGS 84,6326,World Geodetic System 1984,6326,9122,7030,8901,1,0,6422,,0,,,,,,,, +4463,RGSPM06,1038,Reseau Geodesique de Saint Pierre et Miquelon 2006,1038,9122,7019,8901,1,0,6422,4477,0,9603,0,0,0,,,, +4470,RGM04,1036,Reseau Geodesique de Mayotte 2004,1036,9122,7019,8901,1,0,6422,4476,0,9603,0,0,0,,,, +4475,Cadastre 1997,1037,Cadastre 1997,1037,9122,7022,8901,1,0,6422,4290,0,9603,-381.788,-57.501,-256.673,,,, +4483,Mexican Datum of 1993,1042,Mexican Datum of 1993,1042,9122,7019,8901,1,0,6422,4832,0,9603,0,0,0,,,, +4490,China Geodetic Coordinate System 2000,1043,China 2000,1043,9122,1024,8901,1,0,6422,,0,,,,,,,, +4555,New Beijing,1045,New Beijing,1045,9122,7024,8901,1,0,6422,,0,,,,,,,, +4558,RRAF 1991,1047,Reseau de Reference des Antilles Francaises 1991,1047,9122,7019,8901,1,0,6422,4560,0,9603,0,0,0,,,, +4600,Anguilla 1957,6600,Anguilla 1957,6600,9122,7012,8901,1,0,6422,,0,,,,,,,, +4601,Antigua 1943,6601,Antigua 1943,6601,9122,7012,8901,1,0,6422,1441,1,9603,-255,-15,71,,,, +4602,Dominica 1945,6602,Dominica 1945,6602,9122,7012,8901,1,0,6422,1442,0,9603,725,685,536,,,, +4603,Grenada 1953,6603,Grenada 1953,6603,9122,7012,8901,1,0,6422,1443,0,9603,72,213.7,93,,,, +4604,Montserrat 1958,6604,Montserrat 1958,6604,9122,7012,8901,1,0,6422,1444,0,9603,174,359,365,,,, +4605,St. Kitts 1955,6605,St. Kitts 1955,6605,9122,7012,8901,1,0,6422,1445,1,9603,9,183,236,,,, +4606,St. Lucia 1955,6606,St. Lucia 1955,6606,9122,7012,8901,1,0,6422,1446,0,9603,-149,128,296,,,, +4607,St. Vincent 1945,6607,St. Vincent 1945,6607,9122,7012,8901,1,0,6422,1959,0,9603,195.671,332.517,274.607,,,, +4608,"NAD27(76)",6608,"North American Datum 1927 (1976)",6608,9122,7008,8901,1,0,6422,,0,,,,,,,, +4609,"NAD27(CGQ77)",6609,"North American Datum 1927 (CGQ77)",6609,9122,7008,8901,1,0,6422,,0,,,,,,,, +4610,Xian 1980,6610,Xian 1980,6610,9122,7049,8901,1,0,6422,,0,,,,,,,, +4611,Hong Kong 1980,6611,Hong Kong 1980,6611,9122,7022,8901,1,0,6422,1825,0,9606,-162.619,-276.959,-161.764,0.067753,-2.243649,-1.158827,-1.094246 +4612,JGD2000,6612,Japanese Geodetic Datum 2000,6612,9122,7019,8901,1,0,6422,1826,0,9603,0,0,0,,,, +4613,Segara,6613,Gunung Segara,6613,9122,7004,8901,1,0,6422,1897,1,9603,-403,684,41,,,, +4614,QND95,6614,Qatar National Datum 1995,6614,9122,7022,8901,1,0,6422,1840,0,9606,-119.4248,-303.65872,-11.00061,1.164298,0.174458,1.096259,3.657065 +4615,Porto Santo,6615,Porto Santo 1936,6615,9122,7022,8901,1,0,6422,1888,0,9603,-499,-249,314,,,, +4616,Selvagem Grande,6616,Selvagem Grande,6616,9122,7022,8901,1,0,6422,1965,1,9603,-289,-124,60,,,, +4617,"NAD83(CSRS)",6140,NAD83 Canadian Spatial Reference System,6140,9122,7019,8901,1,0,6422,1842,1,9603,0,0,0,,,, +4618,SAD69,6618,South American Datum 1969,6618,9122,7050,8901,1,0,6422,1864,1,9603,-57,1,-41,,,, +4619,SWEREF99,6619,SWEREF99,6619,9122,7019,8901,1,0,6422,1879,0,9603,0,0,0,,,, +4620,Point 58,6620,Point 58,6620,9122,7012,8901,1,0,6422,1880,0,9603,-106,-129,165,,,, +4621,Fort Marigot,6621,Fort Marigot,6621,9122,7022,8901,1,0,6422,1903,0,9603,137,248,-430,,,, +4622,Guadeloupe 1948,6622,Guadeloupe 1948,6622,9122,7022,8901,1,0,6422,1904,1,9603,-467,-16,-300,,,, +4623,CSG67,6623,Centre Spatial Guyanais 1967,6623,9122,7022,8901,1,0,6422,1906,0,9603,-186,230,110,,,, +4624,RGFG95,6624,Reseau Geodesique Francais Guyane 1995,6624,9122,7019,8901,1,0,6422,4840,1,9603,0,0,0,,,, +4625,Martinique 1938,6625,Martinique 1938,6625,9122,7022,8901,1,0,6422,1909,1,9603,186,482,151,,,, +4626,Reunion 1947,6626,Reunion 1947,6626,9122,7022,8901,1,0,6422,15751,1,9603,94,-948,-1262,,,, +4627,RGR92,6627,Reseau Geodesique de la Reunion 1992,6627,9122,7019,8901,1,0,6422,1912,0,9603,0,0,0,,,, +4628,Tahiti 52,6628,Tahiti 52,6628,9122,7022,8901,1,0,6422,1924,0,9603,162,117,154,,,, +4629,Tahaa 54,6629,Tahaa 54,6629,9122,7022,8901,1,0,6422,15770,1,9607,72.438,345.918,79.486,-1.6045,-0.8823,-0.5565,1.3746 +4630,IGN72 Nuku Hiva,6630,IGN72 Nuku Hiva,6630,9122,7022,8901,1,0,6422,1914,1,9603,84,274,65,,,, +4631,K0 1949,6631,K0 1949,6631,9122,7022,8901,1,1,6422,1915,0,9603,145,-187,103,,,, +4632,Combani 1950,6632,Combani 1950,6632,9122,7022,8901,1,0,6422,1916,0,9603,-382,-59,-262,,,, +4633,IGN56 Lifou,6633,IGN56 Lifou,6633,9122,7022,8901,1,0,6422,15902,1,9603,335.47,222.58,-230.94,,,, +4634,IGN72 Grand Terre,6634,IGN72 Grande Terre,6634,9108,7022,8901,1,1,6402,1918,1,9603,-13,-348,292,,,, +4635,ST87 Ouvea,6635,ST87 Ouvea,6635,9122,7022,8901,1,1,6422,1919,0,9606,-122.383,-188.696,103.344,3.5107,-4.9668,-5.7047,4.4798 +4636,Petrels 1972,6636,Petrels 1972,6636,9122,7022,8901,1,0,6422,1921,0,9603,365,194,166,,,, +4637,Perroud 1950,6637,Pointe Geologie Perroud 1950,6637,9122,7022,8901,1,0,6422,1922,0,9603,325,154,172,,,, +4638,Saint Pierre et Miquelon 1950,6638,Saint Pierre et Miquelon 1950,6638,9122,7008,8901,1,0,6422,1923,0,9603,30,430,368,,,, +4639,MOP78,6639,MOP78,6639,9122,7022,8901,1,0,6422,15847,1,9603,253,-132,-127,,,, +4640,RRAF 1991,6640,Reseau de Reference des Antilles Francaises 1991,6640,9122,7030,8901,1,1,6422,1934,0,9603,0,0,0,,,, +4641,IGN53 Mare,6641,IGN53 Mare,6641,9122,7022,8901,1,0,6422,15901,1,9603,287.58,177.78,-135.41,,,, +4642,ST84 Ile des Pins,6642,ST84 Ile des Pins,6642,9122,7022,8901,1,0,6422,15848,1,9603,-13,-348,292,,,, +4643,ST71 Belep,6643,ST71 Belep,6643,9122,7022,8901,1,0,6422,1931,0,9606,-480.26,-438.32,-643.429,16.3119,20.1721,-4.0349,-111.7002 +4644,NEA74 Noumea,6644,NEA74 Noumea,6644,9122,7022,8901,1,0,6422,15904,1,9603,-10.18,-350.43,291.37,,,, +4645,RGNC 1991,6645,Reseau Geodesique Nouvelle Caledonie 1991,6645,9122,7022,8901,1,1,6422,1920,0,9603,0,0,0,,,, +4646,Grand Comoros,6646,Grand Comoros,6646,9122,7022,8901,1,0,6422,5521,0,9603,-963,510,-359,,,, +4657,Reykjavik 1900,6657,Reykjavik 1900,6657,9122,7051,8901,1,0,6422,1994,0,9603,-28,199,5,,,, +4658,Hjorsey 1955,6658,Hjorsey 1955,6658,9122,7022,8901,1,0,6422,1951,0,9603,-73,46,-86,,,, +4659,ISN93,6659,Islands Net 1993,6659,9122,7019,8901,1,0,6422,1952,0,9603,0,0,0,,,, +4660,Helle 1954,6660,Helle 1954,6660,9122,7022,8901,1,0,6422,1957,0,9606,982.6087,552.753,-540.873,6.68162662527694,-31.6114924086422,-19.8481610048168,16.805 +4661,LKS92,6661,Latvia 1992,6661,9122,7019,8901,1,0,6422,1958,0,9603,0,0,0,,,, +4662,IGN72 Grande Terre,6634,IGN72 Grande Terre,6634,9122,7022,8901,1,0,6422,15903,1,9603,-11.64,-348.6,291.98,,,, +4663,Porto Santo 1995,6663,Porto Santo 1995,6663,9122,7022,8901,1,0,6422,1966,1,9603,-502.862,-247.438,312.724,,,, +4664,Azores Oriental 1995,6664,Azores Oriental Islands 1995,6664,9122,7022,8901,1,0,6422,1970,1,9603,-204.619,140.176,55.226,,,, +4665,Azores Central 1995,6665,Azores Central Islands 1995,6665,9122,7022,8901,1,0,6422,1980,1,9603,-106.226,166.366,-37.893,,,, +4666,Lisbon 1890,6666,Lisbon 1890,6666,9122,7004,8901,1,0,6422,1986,1,9603,508.088,-191.042,565.223,,,, +4667,IKBD-92,6667,Iraq-Kuwait Boundary Datum 1992,6667,9122,7030,8901,1,0,6422,1993,0,9603,0,0,0,,,, +4668,ED79,6668,European Datum 1979,6668,9122,7022,8901,1,0,6422,15752,0,9603,-86,-98,-119,,,, +4669,LKS94,6126,"Lithuania 1994 (ETRS89)",6126,9122,7019,8901,1,0,6422,1283,0,9603,0,0,0,,,, +4670,IGM95,6670,Istituto Geografico Militaire 1995,6670,9122,7030,8901,1,0,6422,1099,0,9603,0,0,0,,,, +4671,Voirol 1879,6671,Voirol 1879,6671,9122,7011,8901,1,0,6422,,0,,,,,,,, +4672,Chatham Islands 1971,6672,Chatham Islands Datum 1971,6672,9122,7022,8901,1,0,6422,1080,0,9603,175,-38,113,,,, +4673,Chatham Islands 1979,6673,Chatham Islands Datum 1979,6673,9122,7022,8901,1,0,6422,1081,0,9607,174.05,-25.49,112.57,0,0,-0.554,0.2263 +4674,SIRGAS 2000,6674,Sistema de Referencia Geocentrico para las AmericaS 2000,6674,9122,7019,8901,1,0,6422,15894,0,9603,0,0,0,,,, +4675,Guam 1963,6675,Guam 1963,6675,9122,7008,8901,1,0,6422,1070,0,9603,-100,-248,259,,,, +4676,Vientiane 1982,6676,Vientiane 1982,6676,9122,7024,8901,1,0,6422,,0,,,,,,,, +4677,Lao 1993,6677,Lao 1993,6677,9122,7024,8901,1,0,6422,,0,,,,,,,, +4678,Lao 1997,6678,Lao National Datum 1997,6678,9122,7024,8901,1,0,6422,1065,0,9603,44.585,-131.212,-39.544,,,, +4679,Jouik 1961,6679,Jouik 1961,6679,9122,7012,8901,1,0,6422,15870,0,9603,-80.01,253.26,291.19,,,, +4680,Nouakchott 1965,6680,Nouakchott 1965,6680,9122,7012,8901,1,0,6422,15709,0,9603,124.5,-63.5,-281,,,, +4681,Mauritania 1999,6681,Mauritania 1999,6681,9122,7012,8901,1,1,6422,,0,,,,,,,, +4682,Gulshan 303,6682,Gulshan 303,6682,9122,7015,8901,1,0,6422,15779,1,9603,283.7,735.9,261.1,,,, +4683,PRS92,6683,Philippine Reference System 1992,6683,9122,7008,8901,1,0,6422,15708,0,9607,-127.62,-67.24,-47.04,3.068,-4.903,-1.578,-1.06 +4684,Gan 1970,6684,Gan 1970,6684,9122,7022,8901,1,0,6422,15713,0,9603,-133,-321,50,,,, +4685,Gandajika,6685,Gandajika,6685,9122,7022,8901,1,1,6422,,0,,,,,,,, +4686,MAGNA-SIRGAS,6686,Marco Geocentrico Nacional de Referencia,6686,9122,7019,8901,1,0,6422,15738,0,9603,0,0,0,,,, +4687,RGPF,6687,Reseau Geodesique de la Polynesie Francaise,6687,9122,7019,8901,1,0,6422,15832,1,9607,0.072,-0.507,-0.245,0.0183,-0.0003,0.007,-0.0093 +4688,Fatu Iva 72,6688,Fatu Iva 72,6688,9122,7022,8901,1,0,6422,15772,0,9607,347.103,1078.125,2623.922,33.8875,-70.6773,9.3943,186.074 +4689,IGN63 Hiva Oa,6689,IGN63 Hiva Oa,6689,9122,7022,8901,1,0,6422,15773,1,9607,410.721,55.049,80.746,-2.5779,-2.3514,-0.6664,17.3311 +4690,Tahiti 79,6690,Tahiti 79,6690,9122,7022,8901,1,0,6422,4835,0,9607,221.525,152.948,176.768,2.3847,1.3896,0.877,11.4741 +4691,Moorea 87,6691,Moorea 87,6691,9122,7022,8901,1,0,6422,15769,0,9607,215.525,149.593,176.229,3.2624,1.692,1.1571,10.4773 +4692,Maupiti 83,6692,Maupiti 83,6692,9122,7022,8901,1,0,6422,15771,0,9603,217.037,86.959,23.956,,,, +4693,Nakhl-e Ghanem,6693,Nakhl-e Ghanem,6693,9122,7030,8901,1,0,6422,15746,0,9603,0,-0.15,0.68,,,, +4694,POSGAR 94,6694,Posiciones Geodesicas Argentinas 1994,6694,9122,7030,8901,1,0,6422,1210,0,9603,0,0,0,,,, +4695,Katanga 1955,6695,Katanga 1955,6695,9122,7008,8901,1,0,6422,4066,0,9603,-103.746,-9.614,-255.95,,,, +4696,Kasai 1953,6696,Kasai 1953,6696,9122,7012,8901,1,0,6422,,0,,,,,,,, +4697,IGC 1962 6th Parallel South,6697,IGC 1962 Arc of the 6th Parallel South,6697,9122,7012,8901,1,0,6422,,0,,,,,,,, +4698,IGN 1962 Kerguelen,6698,IGN 1962 Kerguelen,6698,9122,7022,8901,1,0,6422,15850,0,9603,145,-187,103,,,, +4699,Le Pouce 1934,6699,Le Pouce 1934,6699,9122,7012,8901,1,0,6422,15784,0,9603,-770.1,158.4,-498.2,,,, +4700,IGN Astro 1960,6700,IGN Astro 1960,6700,9122,7012,8901,1,0,6422,,0,,,,,,,, +4701,IGCB 1955,6701,Institut Geographique du Congo Belge 1955,6701,9122,7012,8901,1,0,6422,15787,0,9603,-79.9,-158,-168.9,,,, +4702,Mauritania 1999,6702,Mauritania 1999,6702,9122,7019,8901,1,0,6422,15860,0,9603,0,0,0,,,, +4703,Mhast 1951,6703,Missao Hidrografico Angola y Sao Tome 1951,6703,9122,7012,8901,1,0,6422,,0,,,,,,,, +4704,"Mhast (onshore)",6704,"Mhast (onshore)",6704,9122,7022,8901,1,0,6422,,0,,,,,,,, +4705,"Mhast (offshore)",6705,"Mhast (offshore)",6705,9122,7022,8901,1,0,6422,,0,,,,,,,, +4706,Egypt Gulf of Suez S-650 TL,6706,Egypt Gulf of Suez S-650 TL,6706,9122,7020,8901,1,0,6422,15846,0,9603,-146.21,112.63,4.05,,,, +4707,Tern Island 1961,6707,Tern Island 1961,6707,9122,7022,8901,1,0,6422,15795,0,9603,114,-116,-333,,,, +4708,Cocos Islands 1965,6708,Cocos Islands 1965,6708,9122,7003,8901,1,0,6422,15794,0,9603,-491,-22,435,,,, +4709,Iwo Jima 1945,6709,Iwo Jima 1945,6709,9122,7022,8901,1,0,6422,15796,0,9603,145,75,-272,,,, +4710,St. Helena 1971,6710,St. Helena 1971,6710,9122,7022,8901,1,0,6422,15798,0,9603,-320,550,-494,,,, +4711,Marcus Island 1952,6711,Marcus Island 1952,6711,9122,7022,8901,1,0,6422,15799,0,9603,124,-234,-25,,,, +4712,Ascension Island 1958,6712,Ascension Island 1958,6712,9122,7022,8901,1,0,6422,15797,0,9603,-205,107,53,,,, +4713,Ayabelle Lighthouse,6713,Ayabelle Lighthouse,6713,9122,7012,8901,1,0,6422,15800,0,9603,-79,-129,145,,,, +4714,Bellevue,6714,Bellevue,6714,9122,7022,8901,1,0,6422,15801,0,9603,-127,-769,472,,,, +4715,Camp Area Astro,6715,Camp Area Astro,6715,9122,7022,8901,1,0,6422,15802,0,9603,-104,-129,239,,,, +4716,Phoenix Islands 1966,6716,Phoenix Islands 1966,6716,9122,7022,8901,1,0,6422,15803,0,9603,298,-304,-375,,,, +4717,Cape Canaveral,6717,Cape Canaveral,6717,9122,7008,8901,1,0,6422,15804,0,9603,-2,151,181,,,, +4718,Solomon 1968,6718,Solomon 1968,6718,9122,7022,8901,1,0,6422,15807,1,9603,252,-209,-751,,,, +4719,Easter Island 1967,6719,Easter Island 1967,6719,9122,7022,8901,1,0,6422,15806,0,9603,211,147,111,,,, +4720,Fiji 1986,6720,Fiji Geodetic Datum 1986,6720,9122,7043,8901,1,0,6422,15876,1,9606,0,0,4.5,0,0,0.554,0.2263 +4721,Fiji 1956,6721,Fiji 1956,6721,9122,7022,8901,1,0,6422,15875,0,9603,265.025,384.929,-194.046,,,, +4722,South Georgia 1968,6722,South Georgia 1968,6722,9122,7022,8901,1,0,6422,15813,0,9603,-794,119,-298,,,, +4723,Grand Cayman 1959,6723,Grand Cayman 1959,6723,9122,7008,8901,1,0,6422,15830,0,9603,67.8,106.1,138.8,,,, +4724,Diego Garcia 1969,6724,Diego Garcia 1969,6724,9122,7022,8901,1,0,6422,15808,0,9603,208,-435,-229,,,, +4725,Johnston Island 1961,6725,Johnston Island 1961,6725,9122,7022,8901,1,0,6422,15809,0,9603,189,-79,-202,,,, +4726,Little Cayman 1961,6726,Little Cayman 1961,6726,9122,7008,8901,1,0,6422,15814,1,9603,42,124,147,,,, +4727,Midway 1961,6727,Midway 1961,6727,9122,7022,8901,1,0,6422,15818,1,9603,403,-81,277,,,, +4728,Pico de las Nieves 1984,6728,Pico de las Nieves 1984,6728,9122,7022,8901,1,0,6422,15815,0,9603,-307,-92,127,,,, +4729,Pitcairn 1967,6729,Pitcairn 1967,6729,9122,7022,8901,1,0,6422,15819,0,9603,185,165,42,,,, +4730,Santo 1965,6730,Santo 1965,6730,9122,7022,8901,1,0,6422,15820,0,9603,170,42,84,,,, +4731,Viti Levu 1916,6731,Viti Levu 1916,6731,9122,7012,8901,1,1,6422,15821,0,9603,51,391,-36,,,, +4732,Marshall Islands 1960,6732,Marshall Islands 1960,6732,9122,7053,8901,1,0,6422,15822,0,9603,102,52,-38,,,, +4733,Wake Island 1952,6733,Wake Island 1952,6733,9122,7022,8901,1,0,6422,15823,0,9603,276,-57,149,,,, +4734,Tristan 1968,6734,Tristan 1968,6734,9122,7022,8901,1,0,6422,15816,0,9603,-632,438,-609,,,, +4735,Kusaie 1951,6735,Kusaie 1951,6735,9122,7022,8901,1,0,6422,15810,0,9603,647,1777,-1124,,,, +4736,Deception Island,6736,Deception Island,6736,9122,7012,8901,1,0,6422,15812,0,9603,260,12,-147,,,, +4737,Korea 2000,6737,Geocentric datum of Korea,6737,9122,7019,8901,1,0,6422,15831,0,9603,0,0,0,,,, +4738,Hong Kong 1963,6738,Hong Kong 1963,6738,9122,7007,8901,1,0,6422,,0,,,,,,,, +4739,"Hong Kong 1963(67)",6739,"Hong Kong 1963(67)",6739,9122,7022,8901,1,0,6422,15842,0,9603,-156,-271,-189,,,, +4740,PZ-90,6740,Parametrop Zemp 1990,6740,9122,7054,8901,1,0,6422,15843,1,9607,0,0,1.5,0,0,-0.076,0 +4741,FD54,6741,Faroe Datum 1954,6741,9122,7022,8901,1,0,6422,,0,,,,,,,, +4742,GDM2000,6742,Geodetic Datum of Malaysia 2000,6742,9122,7019,8901,1,0,6422,,0,,,,,,,, +4743,Karbala 1979,6743,Karbala 1979,6743,9122,7012,8901,1,0,6422,5078,1,9603,70.995,-335.916,262.898,,,, +4744,Nahrwan 1934,6744,Nahrwan 1934,6744,9122,7012,8901,1,0,6422,,0,,,,,,,, +4745,"RD/83",6745,"Rauenberg Datum/83",6745,9122,7004,8901,1,0,6422,,0,,,,,,,, +4746,"PD/83",6746,"Potsdam Datum/83",6746,9122,7004,8901,1,0,6422,,0,,,,,,,, +4747,GR96,6747,Greenland 1996,6747,9122,7019,8901,1,0,6422,15879,0,9603,0,0,0,,,, +4748,Vanua Levu 1915,6748,Vanua Levu 1915,6748,9122,7055,8901,1,0,6422,15878,0,9603,51,391,-36,,,, +4749,RGNC91-93,6749,Reseau Geodesique de Nouvelle Caledonie 91-93,6749,9122,7019,8901,1,0,6422,15880,0,9603,0,0,0,,,, +4750,ST87 Ouvea,6750,ST87 Ouvea,6750,9122,7030,8901,1,0,6422,15881,0,9603,-56.263,16.136,-22.856,,,, +4751,"Kertau (RSO)",6751,"Kertau (RSO)",6751,9122,7056,8901,1,0,6422,,0,,,,,,,, +4752,Viti Levu 1912,6752,Viti Levu 1912,6752,9122,7055,8901,1,0,6422,15897,0,9603,51,391,-36,,,, +4753,fk89,6753,fk89,6753,9122,7022,8901,1,0,6422,,0,,,,,,,, +4754,LGD2006,6754,Libyan Geodetic Datum 2006,6754,9122,7022,8901,1,0,6422,15908,0,9603,-208.4058,-109.8777,-2.5764,,,, +4755,DGN95,6755,Datum Geodesi Nasional 1995,6755,9122,7030,8901,1,0,6422,15912,0,9603,0,0,0,,,, +4756,VN-2000,6756,Vietnam 2000,6756,9122,7030,8901,1,0,6422,5194,0,9607,-192.873,-39.382,-111.202,0.00205,0.0005,-0.00335,0.0188 +4757,SVY21,6757,SVY21,6757,9122,7030,8901,1,0,6422,,0,,,,,,,, +4758,JAD2001,6758,Jamaica 2001,6758,9122,7030,8901,1,0,6422,15925,0,9603,0,0,0,,,, +4759,"NAD83(NSRS2007)",6759,"NAD83 (National Spatial Reference System 2007)",6759,9122,7019,8901,1,0,6422,15931,0,9603,0,0,0,,,, +4760,WGS 66,6760,World Geodetic System 1966,6760,9122,7025,8901,1,0,6422,,0,,,,,,,, +4761,HTRS96,6761,Croatian Terrestrial Reference System,6761,9122,7019,8901,1,0,6422,15967,0,9603,0,0,0,,,, +4762,BDA2000,6762,Bermuda 2000,6762,9122,7030,8901,1,0,6422,15971,0,9603,0,0,0,,,, +4763,Pitcairn 2006,6763,Pitcairn 2006,6763,9122,7030,8901,1,0,6422,15972,0,9603,0,0,0,,,, +4764,RSRGD2000,6764,Ross Sea Region Geodetic Datum 2000,6764,9122,7019,8901,1,0,6422,15974,0,9603,0,0,0,,,, +4765,Slovenia 1996,6765,Slovenia Geodetic Datum 1996,6765,9122,7019,8901,1,0,6422,15976,0,9603,0,0,0,,,, +4801,"Bern 1898 (Bern)",6801,"CH1903 (Bern)",6149,9122,7004,8907,1,0,6422,1766,1,9603,674.4,15.1,405.3,,,, +4802,"Bogota 1975 (Bogota)",6802,"Bogota 1975 (Bogota)",6218,9122,7022,8904,1,0,6422,1125,1,9603,307,304,-318,,,, +4803,"Lisbon (Lisbon)",6803,"Lisbon 1937 (Lisbon)",6207,9122,7022,8902,1,0,6422,1984,1,9603,-304.046,-60.576,103.64,,,, +4804,"Makassar (Jakarta)",6804,"Makassar (Jakarta)",6257,9122,7004,8908,1,0,6422,1837,0,9603,-587.8,519.75,145.76,,,, +4805,"MGI (Ferro)",6805,"Militar-Geographische Institut (Ferro)",1031,9122,7004,8909,1,0,6422,3962,1,9603,682,-203,480,,,, +4806,"Monte Mario (Rome)",6806,"Monte Mario (Rome)",6265,9122,7022,8906,1,0,6422,1660,1,9606,-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68 +4807,"NTF (Paris)",6807,"Nouvelle Triangulation Francaise (Paris)",6275,9105,7011,8903,1,0,6403,1193,0,9603,-168,-60,320,,,, +4808,"Padang (Jakarta)",6808,"Padang 1884 (Jakarta)",6280,9122,7004,8908,1,0,6422,,0,,,,,,,, +4809,"Belge 1950 (Brussels)",6809,"Reseau National Belge 1950 (Brussels)",6215,9122,7022,8910,1,0,6422,,0,,,,,,,, +4810,"Tananarive (Paris)",6810,"Tananarive 1925 (Paris)",6297,9105,7022,8903,1,0,6403,1227,0,9603,-189,-242,-91,,,, +4811,"Voirol 1875 (Paris)",6811,"Voirol 1875 (Paris)",6304,9105,7011,8903,1,0,6403,1294,0,9603,-73,-247,227,,,, +4813,"Batavia (Jakarta)",6813,"Batavia (Jakarta)",6211,9122,7004,8908,1,0,6422,1123,1,9603,-377,681,-50,,,, +4814,"RT38 (Stockholm)",6814,"Stockholm 1938 (Stockholm)",6308,9122,7004,8911,1,0,6422,,0,,,,,,,, +4815,"Greek (Athens)",6815,"Greek (Athens)",6120,9122,7004,8912,1,0,6422,,0,,,,,,,, +4816,"Carthage (Paris)",6816,"Carthage (Paris)",6223,9105,7011,8903,1,0,6403,1130,1,9603,-263,6,431,,,, +4817,"NGO 1948 (Oslo)",6817,"NGO 1948 (Oslo)",6273,9122,7005,8913,1,0,6422,1654,0,9606,278.3,93,474.5,7.889,0.05,-6.61,6.21 +4818,"S-JTSK (Ferro)",6818,"System Jednotne Trigonometricke Site Katastralni (Ferro)",6156,9122,7004,8909,1,0,6422,15965,1,9603,589,76,480,,,, +4819,"Nord Sahara 1959 (Paris)",6819,"Nord Sahara 1959 (Paris)",6307,9105,7012,8903,1,1,6403,1253,1,9603,-186,-93,310,,,, +4820,"Segara (Jakarta)",6820,"Gunung Segara (Jakarta)",6613,9122,7004,8908,1,0,6422,1897,1,9603,-403,684,41,,,, +4821,"Voirol 1879 (Paris)",6821,"Voirol 1879 (Paris)",6821,9105,7011,8903,1,0,6403,,0,,,,,,,, +4823,Sao Tome,1044,Sao Tome,1044,9122,7022,8901,1,0,6422,,0,,,,,,,, +4824,Principe,1046,Principe,1046,9122,7022,8901,1,0,6422,,0,,,,,,,, +4901,"ATF (Paris)",6901,"Ancienne Triangulation Francaise (Paris)",6901,9105,7027,8914,1,0,6403,,0,,,,,,,, +4902,"NDG (Paris)",6902,"Nord de Guerre (Paris)",6902,9105,7027,8903,1,1,6403,,0,,,,,,,, +4903,"Madrid 1870 (Madrid)",6903,"Madrid 1870 (Madrid)",6903,9122,7028,8905,1,0,6422,,0,,,,,,,, +4904,"Lisbon 1890 (Lisbon)",6904,"Lisbon 1890 (Lisbon)",6666,9122,7004,8902,1,0,6422,1986,1,9603,508.088,-191.042,565.223,,,, +5013,PTRA08,1041,Autonomous Regions of Portugal 2008,1041,9122,7019,8901,1,0,6422,4905,0,9603,0,0,0,,,, +5132,Tokyo 1892,1048,Tokyo 1892,6162,9122,7004,8901,1,0,6422,,0,,,,,,,, +5228,"S-JTSK/05",1052,"System Jednotne Trigonometricke Site Katastralni/05",1052,9122,7004,8901,1,0,6422,5227,0,9607,572.213,85.334,461.94,-4.9732,-1.529,-5.2484,3.5378 +5229,"S-JTSK/05 (Ferro)",1055,"System Jednotne Trigonometricke Site Katastralni/05 (Ferro)",1052,9122,7004,8909,1,0,6422,5227,0,9607,572.213,85.334,461.94,-4.9732,-1.529,-5.2484,3.5378 +5233,SLD99,1053,Sri Lanka Datum 1999,1053,9122,7015,8901,1,0,6422,5236,0,9607,-0.293,766.95,87.713,-0.195704,-1.695068,-3.473016,-0.039338 +5246,GDBD2009,1056,Geocentric Datum Brunei Darussalam 2009,1056,9122,7019,8901,1,0,6422,,0,,,,,,,, +5252,TUREF,1057,Turkish National Reference Frame,1057,9122,7019,8901,1,0,6422,5261,0,9603,0,0,0,,,, +5264,DRUKREF 03,1058,Bhutan National Geodetic Datum,1058,9122,7019,8901,1,0,6422,5267,0,9603,0,0,0,,,, +5324,ISN2004,1060,Islands Net 2004,1060,9122,7019,8901,1,0,6422,5327,0,9603,0,0,0,,,, +5340,POSGAR 2007,1062,Posiciones Geodesicas Argentinas 2007,1062,9122,7019,8901,1,0,6422,5351,0,9603,0,0,0,,,, +5354,MARGEN,1063,Marco Geodesico Nacional,1063,9122,7019,8901,1,0,6422,5374,0,9603,0,0,0,,,, +5360,SIRGAS-Chile,1064,SIRGAS-Chile,1064,9122,7019,8901,1,0,6422,5375,0,9603,0,0,0,,,, +5365,CR05,1065,Costa Rica 2005,1065,9122,7030,8901,1,0,6422,5376,0,9603,0,0,0,,,, +5371,MACARIO SOLIS,1066,Sistema Geodesico Nacional de Panama MACARIO SOLIS,1066,9122,7019,8901,1,0,6422,5377,0,9603,0,0,0,,,, +5373,Peru96,1067,Peru96,1067,9122,7019,8901,1,0,6422,5378,0,9603,0,0,0,,,, +5381,SIRGAS-ROU98,1068,SIRGAS-ROU98,1068,9122,7030,8901,1,0,6422,5384,0,9603,0,0,0,,,, +5393,"SIRGAS_ES2007.8",1069,"SIRGAS_ES2007.8",1069,9122,7019,8901,1,0,6422,5395,0,9603,0,0,0,,,, +5451,Ocotepeque 1935,1070,Ocotepeque 1935,1070,9122,7008,8901,1,0,6422,5470,1,9603,213.11,9.37,-74.95,,,, +5464,Sibun Gorge 1922,1071,Sibun Gorge 1922,1071,9122,7007,8901,1,0,6422,,0,,,,,,,, +5467,Panama-Colon 1911,1072,Panama-Colon 1911,1072,9122,7008,8901,1,0,6422,,0,,,,,,,, +5489,RGAF09,1073,Reseau Geodesique des Antilles Francaises 2009,1073,9122,7019,8901,1,0,6422,5501,0,9603,0,0,0,,,, +5524,Corrego Alegre 1961,1074,Corrego Alegre 1961,1074,9122,7022,8901,1,0,6422,,0,,,,,,,, +5527,"SAD69(96)",1075,"South American Datum 1969(96)",1075,9122,7050,8901,1,0,6422,,0,,,,,,,, +5546,PNG94,1076,Papua New Guinea Geodetic Datum 1994,1076,9122,7019,8901,1,0,6422,5553,0,9603,0,0,0,,,, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/DotSpatial.Plugins.WebMap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gdalicon.png =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/it-IT/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_GMT.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.xml (revision 2866) @@ -0,0 +1,829 @@ + + + + DotSpatial.Serialization + + + + + This exception will occur if an assembly referenced by a saved map layer could not be found. + + + + + Initializes a new instance of the AssemblyMissingException. + + The string message to show as the error. + + + + Initializes a new instance of the AssemblyMissingException. + + The string message to show as the error. + The inner exception to send as part of this exception. + + + + Initializes a new instance of the AssemblyMissingException. + + The SerializationInfo that holds the information about the serialized object about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + BaseCollection + + + + + Private storage for the inner list. + + + + + Adds an item to this base collection + + + + + + A boolean that is true if this set contains the specified item + + + + + + + Copies the items from this collection to the specified array + + The array to copy to + The zero based integer array index to start copying to + + + + Moves the given item to the new position. + + Item that gets moved. + Position the item is moved to. + + + + Removes the specified item from the collection + + The item to remove from the collection + Boolean, true if the remove operation is successful. + + + + Returns a type specific enumerator + + + + + + Clears the list + + + + + After serialization, the inner list is directly set. This is uzed by the FeatureLayer, for instance, + to apply the new scheme. + + + + + Clears this collection + + + + + Occurs when items are inserted + + + + + + + Occurs after a new item has been inserted, and fires IncludeComplete + + + + + + + Fires after the remove operation, ensuring that OnExclude gets called + + + + + + + Fires before the set operation ensuring the new item is included if necessary + + + + + + + + Fires after the set operation, ensuring that the item is removed + + + + + + + + Occurs any time an item is added or inserted into the collection + and did not previously exist in the collection + + + + + + Occurs whenever a layer is moved. + + Layer that is moved. + Position the layer is moved to. + + + + Occurs after the item has been included either by set, insert, or addition. + + + + + + Occurs any time an item is removed from the collection and no longer + exists anywhere in the collection + + + + + + Includes the specified item. This should be called BEFORE an item + is added to the list. + + + + + + Exclude should be called AFTER the item is successfully removed from the list. + This allows any handlers that connect to the item to be removed in the event + that the item is no longer anywhere in the list. + + The item to be removed + + + + Creates a new instance of BaseCollection + + + + + Gets or sets the inner list of T that actually controls the content for this BaseCollection. + + + + + False + + + + + Returns the count of the inner list + + + + + Defines a new kind of enumerator designed to make the CollectionBase cooperate with strong type collections + + The enumerator type. + + + + Creates the new enumerator + + A non type specific enumerator + + + + Does nothing + + + + + Moves to the next item in the collection + + + + + + resets the enumerator + + + + + The current item + + + + + BaseList + + + + + Gets the integer index of the specified item. + + The implementation of T to obtain the zero based integer index of. + An integer that is -1 if the item is not found, or the zero based index. + + + + If the read-only property is false, then this inserts the item to the specified index. + + The zero based integer index describing the target index for the item. + The implementation of T to insert into this index. + If ReadOnly is true, then this method will cause an exception + + + + This happens after an item of type T was added to the list + + + + + This happens after a value has been updated in the list. + + The index where the replacement took place. + The item that was removed from the position. + The new item that is replacing it in the list. + + + + The happens after an item was removed from the specified index. + + The index the item was removed from. + The item that was removed + + + + Removes the item from the specified index + + The zero based integer index + + + + Gets or sets the value of type T at the specified index + + The zero-base integer index marking the position of the item + The item + + + + CloneableEM + + + + + The type parameter T is optional, so the intended use would be like: + ObjectType copy = myObject.Copy(); + + The type of the object + The original object + A new object of the same type as the type being copied. + + + + Extent works like an envelope but is faster acting, has a minimum memory profile, only works in 2D and has no events. + + + + + Max X + + + + + Min X + + + + + Max Y + + + + + Min Y + + + + + Creates a new instance of Extent. This introduces no error checking and assumes + that the user knows what they are doing when working with this. + + + + + Creates a new extent from the specified ordinates + + + + + + + + + Given a long array of doubles, this builds an extent from a small part of that + xmin, ymin, xmax, ymax + + + + + + + XMin, YMin, XMax, YMax order + + + + + + Produces a clone, rather than using this same object. + + + + + + If this is undefined, it will have a min that is larger than the max. + + Boolean, true if the envelope has not had values set for it yet. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The collection cannot be altered because it is read only.. + + + + + A class for parsing the components of the assembly qualified type name. + + + + + Reads in the full string, parsing out the separate elements. These are not always in the specified order, + and many times there are several optional elements. This class helps find the optional elements that are + necessary. This does not support mulitple enclosed types yet, like dictionaries or something. We needed + the single enclosed type for supporting the layer collection however. + + The string qualified name. + + + + Returns the full qualified type name as "TypeName, Assembly, Version=x, Culture=x, PublicKeyToken=x". + + The string expression with the full type name. + + + + Gets or sets the name for the enclosed type. + + + + + Gets or sets the TypeName + + + + + Gets or sets the name of the assembly + + + + + Gets or sets a System.Version for getting or setting the version. + + + + + Gets or sets the CultureInfo of the Culture + + + + + Gets or sets the public key token for the strong name of the assembly. + + + + + ReadOnlyException + + + + + Creates a new instance of ReadOnlyException + + + + + Obsolete + + + + + + A set of utilities to automate some common reflection tasks. + + + + + Searches the entire folder tree beginning at the entry assembly path for types that derive from the specified type. + + The base class/interface type + A list of all types found in the search. + + + + Searches the entire folder tree beginning at the entry assembly path for types that derive from the specified type. + + The base class/interface type. + A list of all types found in the search. + + + + Base class for formatters responsible for converting objects to and from string values. + + + + + Converts an object to a string value. + + The object to convert. + The string representation of the given object. + + + + Converts a string representation of an object back into the original object form. + + The string representation of an object. + The object represented by the given string. + + + + This class stores the reflected data required for serialization. + + + + + The static constructor creates a dictionary that maps an object type to a specific SerializationMap instance. + + + + + Creates a new instance of the SerializationMap class. + + The type associated with this SerializationMap. + + + + This overload is used for objects that are marked with the . + + The type to generate a SerializationMap for. + A new serialization map that can be used to serialize the given type. + + + + The forward method that will serialize a property or field with the specified name. + The name does not have to be the same as the name of the member. + + The property or field information to serialize + The name to remove + The Serialization Map Entry created by the serialize method + + + + The type that this serialization map instance is associated with. + + + + + The members that participate in serialization. + + + + + Contains the information needed to serialize a single property or field. + + + + + Creates a new SerializationMapEntry instance. + + Info about the field or property to serialize. + Details about how to serialize this member. + + + + Assigns the constructor argument index of this entry's attribute. + + The constructor argument index to assign + + + + Assigns the formatter value of this entry's attribute. + + The serialization formatter to use for the associated member. + + + + Overrides the normal equality test to take into account serialization + + + + + + + Returns a numeric hash code austensibly uniquishly controlled by the member and attribute hash code. + + + + + + The or instance for the associated member. + + + + + The attribute that contains more details about how to serialize this member. + + + + + This class contains details on how to serialize a field or property. + + + + + Creates a new instance of the SerializeAttribute. + + The name to use when serializing the associated member. + + + + The name to use when serializing the associated member. + + + + + The constructor argument index that the associated member represents. + The default value is -1, which indicates that the associated member is + not used as a constructor argument. + + + + + The type of the formatter to use for the associated value. + The type must be derived from . + + + + + In many cases, the explicit type name references a version or public key token that is expired, + even though the reference is still perfectly valid in the new instance. This type allows testing + for that eventuality, as well as working directly with the components of a fully qualified name. + + + + + Initializes a new instance of the TypeManager class. + + + + + Since the version, or even possibly the strong name may be dynamic, an older + reference may need to be updated with local assembly information. + + The invalidated type name, usually because the version is out of date. + A string represnting the same type, but with a modern assmebly. + + + + This method searches the executable path, as well as sub-folders looking for an instance of + the specified assembly. Since this class is only needed if the fully qualified assembly name + is invalid, we have to assume that we are looking for something else. + + The string assembly name. + + + + A class that works like an enumeration to define several constants. + + + + + dictionary + + + + + entry + + + + + key + + + + + value + + + + + enum + + + + + list + + + + + object + + + + + primitive + + + + + string + + + + + root + + + + + member + + + + + item + + + + + types + + + + + type + + + + + value + + + + + arg + + + + + formatter + + + + + name + + + + + key + + + + + id + + + + + ref + + + + + Returns a System.Type that corresponds to the MemberInfo, + regardless of whether the member is a field or property. + + The base class that can be either a FieldInfo or PropertyInfo + The System.Type + + + + Converts serialized XML into an object. + + + + + Converts the given XML string into an object. + + The type to cast the returned object as. + The serialized XML text. + The object represented by the serialized XML. + + + + Deserializes the given XML, writing the values into the given object. + + The type of the given object. + An existing object to fill with data. + The serialized XML text. + + + + Creates and populates an object from the given XML element. + + The element containing the object description + The parent. + + A populated object specified by the given XML element. + + + + + A class that helps with xml project serialization + + + + + Some characters create problems in xml format by being interpreted by xml parsers as + content formatting tags. + + The string text of the unescaped original characters + The modified string where the characters are replaced + + + + This converts the invalid characters back to the original, unescaped text + + The string text of the escaped characters + The unescaped string text + + + + This tests the string in the provided text parameter starting at the specified startIndex. + If the combination of characters builds one of the recognized escape sequences, then this + returns true. + + The string to test. + The zero based integer start index. + A boolean that is true if the startIndex begins an escape sequence. + + + + Serializes data to XML. A valid serialization map must be available for all classes being serialized. + The serialization map is generally created at runtime from fields and properties marked with the + . For classes that cannot be directly marked up with attributes a + new map class can be created explicitly as needed. + + + + + Converts an object into XML. + + The object to serialize. + A string containing the serialization of the given object. + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/DotSpatial.Tools.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/cfitsio.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/zh-CN/DotSpatial.Tools.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/DotSpatial.Tools.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.override.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.override.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.override.csv (revision 2866) @@ -0,0 +1,19 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","UOM_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_METHOD_CODE_1","PARM_1_1" +# +# NOTICE: The master version of this file is in the libgeotiff subversion at: +# +# https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/vertcs.override.csv +# +# Do *not* change other copies without upstreaming the results to libgeotiff. +# +# Use the Geoid 2003 files to translated from NAVD88 to WGS84 (approx. NAD83) +# +5703,NAVD88 height,5103,North American Vertical Datum 1988,9001,1,0,6499,9665,"g2003conus.gtx,g2003alaska.gtx,g2003h01.gtx,g2003p01.gtx" +# +# Use the EGM 96 geoid grid for translation from EGM96 to WGS84. +# +5773,EGM96 geoid height,5171,EGM96 geoid,9001,1,0,6499,9665,egm96_15.gtx +# +# Use the EGM 2008 geoid grid for translation from EGM08 to WGS84. +# +3855,EGM2008 geoid height,1027,EGM2008 geoid,9001,1,0,6499,9665,egm08_25.gtx Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Updater.exe =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_MrSID.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/libpq.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/DotSpatial.Plugins.zip =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/gdalconst_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allow to measure distances on the map. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-CN/DotSpatial.Data.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.xml (revision 2866) @@ -0,0 +1,15974 @@ + + + + DotSpatial.Symbology + + + + + This class contains two separate layers. The first is the BackImage where features that don't change + over time are drawn. This way if heavy calculations are required to draw the background, you don't + have to re-draw the background over and over again every time a sprite moves. The Front image is + for small sprites that change rapidly, but + + + + + The real world extents for the entire buffer + + + + + The image being shown + + + + + Creates a new BackBuffer bitmap that is the specified size. + + The width of the bitmap + The height of the bitmap + + + + Clears the back buffer. + + + + + + + + + + + + + + + + + + + Calculates a system.Drawing rectangle that corresponds to the specified real world + envelope if it were drawn in pixels on the background image. + + + + + + + + + + + + + + Fires the ExtentsChanged event + + + + + Occurs after something changes the geographic extents. This refers to the outer + geographic extents, not the view extents. + + + + + Gets or sets the geographic extents for the entire back buffer. + + + + + Gets the graphics drawing surface for the BackBuffer + + + + + Gets or sets the height of this backbuffer in pixels + + + + + Gets or sets the actual Bitmap being used as the back buffer. + + + + + Boolean, true if the current thread is different from the original thread, indicating + that cross-threading is taking place. + + + + + Gets or sets the width of the back buffer in pixels. This will copy + the old back buffer to a new bitmap with the new width/height + + + + + Obtains a graphics object already organized into world coordinates. + The client rectangle and world coordinates are used in order to determine + the scale and translation of the transform necessary in the graphics object. + + + + + The envelope bounds in geographic coordinates. + + + + + BitmapFormatException + + + + + An EventArgs specifically tailored to ColorCategory. + + + + + Initializes a new instance of the ColorCategoryEventArgs class. + + The IColorCategory that is involved in this event. + + + + Gets the ColorCategory associated with this event. + + + + + An EventArgs specifically tailored to DynamicVisibilityMode. + + + + + Initializes a new instance of the DynamicVisibilityModeEventArgs class. + + The item that supports IDynamicVisibility. + + + + Gets the item that supports dynamic visibility. + + + + + Adds the given DataColumn as Field. + + DataColumn that should be added. + False, if DataColumn was null. + + + Uses the parsed expression to calculate the expression for the given row. If the expression is invalid only the Fields are replaced (This was the default action for expressions before DS 1.8). + + Row the expression gets calculated for. + FID value that is used to replace the FID field. + The calculated expression. + + + + Clears the fields. + + + + + Checks whether the operations are valid. + + Example result if operation is valid. + Datarow that should be used to show as example result if the operation is valid. + True, if operations can be calculated. + + + + Parses the given string to Expression. + + + True if string can be parsed to expression. + + + + Replaces the current fields with the given datacolumns. + + Columns that should be added as fields. + False if columns was null. + + + + Calculates the whole expression. + + + + + + Calculates the given operation for the values of the given part. + + + + + + + Calculates the operations that are allowed for two boolean values. + + + + + + + + + + Calculates the operations that are allowed for two double values. + + + + + + + + + + Calculates the operations that are allowed for two string values. + + + + + + + + + + + Seeks operation with the highest priority and operands. + + + + + + + + Checks whether opening- and closingSymbol can be found. + + Expression that is checked. + Returns position of openingSymbol if found. + Returns position of closingSymbol if found. + OpeningSymbol that is searched for. + ClosingSymbol that is searched for. + True if opening- and closingSymbol where found. + + + Gets the ExpressionValue of the element of the given part. + + Part that contains the element. + Id of the element whose value is returned. + Value of the element. + + + + Checks whether the given character could belong to a number. + + Character that is checked. + Remembers whether last character was exponential to check whether +- are allowed. + False if character can't belong to a number. + + + + Checks whether the ExpressionString is empty. + + True, if ExpressionString is empty. + + + + Creates elements of the expression parts and checks. + + ExpressionString whose bracketed parts are parsed. + True if partsyntax was correct. + + + Checks whether there is a value or unary operator at the given position. + + + + + + + Checks whether there is an operation at the given position. + + + + + + + Replaces only the Fields in invalid expressions. Before DS 1.8 this was the only thing that got replaced in expressions. + + Datarow that contains the data used to replace the fields. + FID that is used to replace the FID field. + ExpressionString with replaced Fields. + + + Replace the old substring with the new one. + String in which the substring gets replaced. + Startposition of old substring. + Length of old substring. + New substring. + + + + Converts the given value to string. Uses _floatingFormat for double. + + Value that gets converted. + value as string + + + + Sets the ErrorMessage according to the given parameters. + + Position that caused the error. + String that was searched. + Indicates whether operator or operand is missing. + + + Finds the next position that is not a space. + String to check. + Startposition. + + + + FloatingFormat that is used to convert double values to string. + + + + + ErrorMessage that was raised by last method. + + + + + Extension methods for extent that are related to System.Drawing, and not data. + + + + + This method assumes that there was a direct correlation between this envelope and the original + rectangle. This reproportions this window to match the specified newRectangle. + + The original envelope + The original rectangle + The new rectangle + A new IEnvelope + + + + Feature Set Apply Edit Args. + + + + + Initializes a new instance of the FeatureSetApplyEditArgs class. + + The IFeatureSet edit copy. + The delegate should point to a method handler to work with the edit copy. + + + + Invokes the method that will handle changes using the EditCopy. + + + + + Gets or sets a duplicate of the IFeatureSet being referenced so that + changes might be applied. + + + + + Defines the structure of the method that would handle the actual + changes for an apply changes request. + + The IFeatureSet edit copy being manipulated. + + + + This interface provides ability to use in ColorCategory any custom actions (including GUI-dependent dialogs) + + + + + Show edit dialog + + Instance of ColorCategory + + + + An shared interface for members that wish to set dynamic visiblity. + + + + + Dynamic visibility represents layers that only appear when you zoom in close enough. + This value represents the geographic width where that happens. + + + + + This controls whether the layer is visible when zoomed in closer than the dynamic + visiblity width or only when further away from the dynamic visibility width + + + + + Gets or sets a boolean indicating whether dynamic visibility should be enabled. + + + + + This interface provides ability to use in FeatureLayer any custom actions (including GUI-dependent dialogs) + + + + + Show properties + + Feature layer + + + + Show Join Excel + + Feature set + + + + Show dynamic visibility dialog + + Dynamic visibility + + + + Show label setup dialog + + Label layer + + + + Show attributes dialog + + Feature layer + + + + Show export dialog + + Feature layer + + + + This interface provides ability to use in ImageLayer any custom actions (including GUI-dependent dialogs) + + + + + Show properties dialog + + Image layer + + + + Show export dialog + + Image data + + + + This interface provides ability to use in Layer any custom actions (including GUI-dependent dialogs) + + + + + Show Dynamic Visibility dialog + + Dynamic Visibility + + + + An EventArgs specifically tailored to ImageLayerEventArgs. + + + + + Initializes a new instance of the ImageLayerEventArgs class. + + The IImageLayer that is involved in this event. + + + + Gets the ImageLayer associated with this event. + + + + + CantBeDeletedException + + + + + Creates a new instance of CantBeDeletedException + + + + + LegendItem + + + + + Descriptors are simple classes that are used for storing symbology or other basic characteristics. + They are presumed to be made up of value types and other descriptors, and are expected to be serializable. + This being said, some basic capabilities are supported for randomizing, copying and comparing the + properties of descriptors. + + + + + Creates a new instance of CopyBase + + + + + Creates a duplicate of this descriptor using MemberwiseClone + + A clone of this object as a duplicate + + + + PropertyInfo returns overridden members as separate entries. We would rather work with each members + only one time. + + All the properties, including duplicates created by overridden members + An Array of PropertyInfo members + + + + This occurs during the Copy method and is overridable by sub-classes + + The duplicate descriptor + + + + IDescriptor + + + + + Matching is defined as being a different object, but having properties + that would make it indistinguishable from the comparision property. + This is an alternative to overriding the equals behavior in cases + where you might ALSO need to see if the object reference is the same. + + + + + Tests this object against the comparison object. If any of the + value type members are different, or if any of the properties + are IMatchable and do not match, then this returns false. + + The other IMatcheable object of the same type + The list of property names that do not match + Boolean, true if the properties are comparably equal. + + + + IRandomizable + + + + + This method will set the values for this class with random values that are + within acceptable parameters for this class. + + An existing random number generator so that the random seed can be controlled + + + + This copies the public descriptor properties from the specified object to + this object. + + An object that has properties that match the public properties on this object. + + + + Creates a new instance of MatchableObject + + + + + For each of the publicly accessible properties found on this object, this attempts + to copy a public property from the source object of the same name, if it can find it. + For each matching property name/type, it will attempt to copy the value. + + The + + + + Compares the properties of this object with the specified IMatchable other. + This does not test every property of other, but does test every property + of this item. As long as the other item has corresponding properties + for every property on this item, the items are said to match. + The IMatchable interface allows custom definitions of matching. + For collections to match, all of their sub-members must match. + + + + + + + + The default behavior is to cycle through all the properties of this + object, and call Randomize on any that implement the IRandomizable interface. + + The Random seed generator for controling how the random content is created + + + + This occurs while copying properties from the specified source, and + is the default handling for subclasses + + + + + + This gives sub-classes the chance to directly override, control or otherwise tamper + with the matching process. This is also where normal matching is performed, + so to replace it, simply don't call the base.OnMatch method. To tweak the results, + the base method should be performed first, and the results can then be modified. + + + + + + + + This allows overrideable behavior that can replace or extend the basic behavior, + which is to call Randomize on any public properties that are listed as randomizeable. + This does nothing to normal properties or non public members and needs to be overriden + to provide the special case functionality for sub-classes. + + The random number generator to be used during randomization + + + + The LegendItem interface controls specifically the + properties associated with the legend. It is assumed that + All layers will support one legend item, but this way + ostensibly we can eventually add things to the legend that + are not technically layers. + + + + + Any item which can be contained by a parent item + + The type class of the potential parent + + + + Gets the parent item relative to this item. + + + + + Sets teh parent legend item for this item + + + + + + Tests the specified legend item to determine whether or not + it can be dropped into the current item. + + Any object that implements ILegendItem + Boolean that is true if a drag-drop of the specified item will be allowed. + + + + Instructs this legend item to perform custom drawing for any symbols. + + A Graphics surface to draw on + The rectangular coordinates that confine the symbol. + + + + Prints the formal legend content without any resize boxes or other notations. + + The graphics object to print to + The system.Drawing.Font to use for the lettering + The color of the font + Assuming 0, 0 is the top left, this is the maximum extent + + + + Gets the size of the symbol to be drawn to the legend + + + + + This is a list of menu items that should appear for this layer. + These are in addition to any that are supported by default. + Handlers should be added to this list before it is retrieved. + + + + + Gets or sets whether or not this legend item should be visible. + This will not be altered unless the LegendSymbolMode is set + to CheckBox. + + + + + Gets or sets whether this legend item is expanded. + + + + + Gets or sets whether this legend item is currently selected (and therefore drawn differently) + + + + + Gets whatever the child collection is and returns it as an IEnumerable set of legend items + in order to make it easier to cycle through those values. + + + + + Gets or sets a boolean, that if false will prevent this item, or any of its child items + from appearing in the legend when the legend is drawn. + + + + + Gets the symbol mode for this legend item. + + + + + The text that will appear in the legend + + + + + Gets or sets a pre-defined behavior in the legend when referring to drag and drop functionality. + + + + + Creates a new instance of the legend item + + + + + Configures the default settings of the legend item + + + + + Returns a boolean indicating whether or not this item can have other items dropped on it. + By default this is false. This can be overridden for more customized behaviors. + + The item to test for dropping. + + + + + Draws the symbol for this specific category to the legend + + + + + + + Prints the formal legend content without any resize boxes or other notations. + + The graphics object to print to + The system.Drawing.Font to use for the lettering + The color of the font + Assuming 0, 0 is the top left, this is the maximum extent + + + + Gets the nearest value. + + The value. + The values. + + + + + Bytes the range. + + The value. + + + + + Handles updating event handlers during a copy process + + + + + + Allows the ItemChanged event to fire in response to individual changes again. + This will also fire the event once if there were any changes that warent it + that were made while the event was suspended. + + + + + Each suspend call increments an integer, essentially keeping track of the depth of + suspension. When the same number of ResumeChangeEvents methods have been called + as SuspendChangeEvents have been called, the suspension is aborted and the + legend item is allowed to broadcast its changes. + + + + + Gets or sets the size of the symbol to be drawn to the legend + + + + + Gets the Parent Legend item for this category. This should probably be the appropriate layer item. + + + + + Sets the parent legend item for this category. + + + + + + Allows for the set behavior for the parent item to be overridden in child classes + + + + + + Fires the ItemChanged event + + + + + Fires the ItemChanged event, optionally specifying a different + sender + + + + + Instructs the parent legend item to remove this item from the list of legend items. + + + + + Occurs whenever the symbol content has been updated + + + + + Occurs whenever the item should be removed from the parent collection + + + + + Boolean, true if changes are suspended + + + + + Gets or sets a boolean that indicates whether or not this legend item can be dragged to a new position in the legend. + + + + + Gets or sets a boolean, that if false will prevent this item, or any of its child items + from appearing in the legend when the legend is drawn. + + + + + Because these are in symbol mode, this is not used. + + + + + Gets the MenuItems that should appear in the context menu of the legend for this category + + + + + Gets or sets a boolean that indicates whether or not the legend should draw the child LegendItems for this category. + + + + + Gets or sets whether this legend item has been selected in the legend + + + + + Gets whatever the child collection is and returns it as an IEnumerable set of legend items + in order to make it easier to cycle through those values. This defaults to null and must + be overridden in specific cases where child legend items exist. + + + + + Gets or sets the symbol mode for the legend. By default this should be "Symbol", but this can be overridden + + + + + Gets or sets the text for this category to appear in the legend. This might be a category name, + or a range of values. + + + + + Gets or sets a pre-defined behavior in the legend when referring to drag and drop functionality. + + + + + If this is true, then "can receive + + + + + Creates a new instance of Category + + + + + Creaates a new instance of this category, and tailors the range to the specifeid values. + + The start value + The end value + + + + Creates a category that has the same value for both minimum and maximum + + The value to use + + + + Applies the snapping rule directly to the categories, instead of the breaks. + + + + + Searches the list and returns the nearest value in the list to the specified value. + + + + + + + + Since rasters are numeric and not relying on an SQL expression, this allows + this only sets the legend text using the method and digits to help with + formatting. + + An EditorSettings from either a feature scheme or color scheme. + + + + Tests to see if the specified value falls in the range specified by this ColorCategory + + The value of type int to test + Boolean, true if the value was found in the range + + + + Returns this Number as a string. This uses the DotSpatial.Globalization.CulturePreferences and + Controls the number type using the NumberFormat enumeration plus the DecimalCount to create + a number format. + + The string created using the specified number format and precision. + + + + Returns this Number as a string. + + Specifies how the numbers are modified so that the numeric text can be cleaned up. + An integer clarifying digits for rounding or significant figure situations. + A string with the formatted number. + + + + Maximum this is a convenient caching tool only, and doesn't control the filter expression at all. + Use ApplyMinMax after setting this to update the filter expression. + + + + + Gets or sets the color to be used for this break. For + BiValued breaks, this only sets one of the colors. If + this is higher than the high value, both are set to this. + If this equals the high value, IsBiValue will be false. + + + + + Gets the numeric Range for this color break. + + + + + Gets or sets a status message for this string. + + + + + This is not used by DotSpatial, but is provided for convenient linking for this object + in plugins or other applications. + + + + + Forces the Changed event to fire. If events are suspended, + then this simply will mark the changes so that when + the ResumeChanges is called it will automatically fire + the Changed events. + + + + + Resumes the events. If any changes occured during the period of time when + the events were suspended, this will automatically fire the chnaged event. + + + + + Causes this filter collection to suspend the Changed event, so that + it will only be fired once after a series of updates. + + + + + Fires the Changed event as long as ChangesSuspended is not true. + + + + + Occurs when members are added to or removed from this collection. If SuspendChanges + is called, this will temporarilly prevent this event from firing, until ResumeEvents + has been called. + + + + + To suspend events, call SuspendChanges. Then to resume events, call ResumeEvents. If the + suspension is greater than 0, then events are suspended. + + + + + Creates a new instance of ChangedObjectEvent + + + + + Gets the item that has been changed + + + + + Misc extensions for class + + + + + Creates a color with the same hue and saturation but that is slightly brighter than this color. + + The starting color + The floating point value of brightness to add to this color. + If the combined result is greater than 1, the result will equal one. + A color lighter than this color + + + + Creates a color with the same hue and saturation but that is slightly darker than this color. + + The starting color + The floating point value of brightness to add to this color. + if the combined result is less than 0, the result will equal 0. + A color darker than this color. + + + + Calculates the opacity as a function of the Alpha channel. + + The color to determine the opacity for + + + + + Given a floating point opacity, where 0 is fully transparent and 1 is fully opaque, + this will generate a new color that is the transparent version. + + + + + + + + Returns an equivalent version of this color that is fully opaque (having an alpha value of 255) + + The transparent color + The new Color + + + + uses a linear ramp to extrapolate the midpoint between the specified color and the new color + as defined by ARGB values independantly + + This color + The color to blend with this color + A color that is midway between this color and the specified color + + + + DeadSea + + + + + Desert + + + + + Fall Leaves + + + + + Glacier + + + + + Highway + + + + + Meadow + + + + + Summer Mountains + + + + + Valley Fires + + + + + ILabel + + + + + Occurs when the Symbolizer for this label is changed. + + + + + Gets or sets the geographic position for the anchoring the label. The relationship + between this and the text depends on the horizontal alignment. + + + + + Gets the integer index for this label + + + + + Gets the Symbol group that currently contains this label. + + + + + Gets or sets the text that appears on this layer. + + + + + Gets or sets the symbolizer for this specific label. This allows customization for + individual labels, but at the same time can allow many labels to point to one set + of symbolic characteristics. + + + + + Gets or sets the symbolizer that is being used. Symbol groups are defined by the + original symbolizer, and there is only one selection symbolizer per group. This + simply is a shortcut to accessing the symbolgroup's selection symbolizer. + + + + + This interface provides ability to use in RasterLayer any custom actions (including GUI-dependent dialogs) + + + + + SHow properties dialog + + Raster layer + + + + Show export dialog + + Raster + + + + ITextSymbolGroup + + + + + Add a new integer into this group. + + The label to be added to the group. + Boolean, false if the integer was already in this group. + + + + Removes all the selected indices and returns them to the regular indices. + This returns a list of integer indices for the labels that were changed. + + + + + Selects a single label + + The integer label to select + + + + Unselect a single label in this group. + + The integer label + + + + Gets or sets the text symbolizer for this group of labels + + + + + Gets or sets the list of regular labels based on their index in the actual list of labels + + + + + Gets or sets the list of selected labels based on their index in the actual list of labels + + + + + Gets or sets the set of symbolic characteristics that should be used for drawing selected labels. + + + + + A generic event argument that also allows sending the strong typed item. + + The generic item associated with the event. + + + + Creates a new instance of hte LegendItemEventArgs + + The item associated with the event. This is not necessarilly the sender. + + + + The item associated with this event. This is not necessarilly the sender. + + + + + An EventArgs specifically tailored to LabelLayerEventArgs. + + + + + Initializes a new instance of the LabelLayerEventArgs class. + + The ILabelLayer that is involved in this event. + + + + Gets the LabelLayer associated with this event. + + + + + Creates a new instance of LayerEventArgs + + + + + Layer that was moved. + + + + + Position the layer was moved to. + + + + + PointFConverter + + + + + True if the source type is a string + + + + Boolean, true if source type is a string + + + + Uses a string to return a new Position2D + + + + + A String + + + + Creates a string from the specified Position2D + + + + + + A Position2D + + + + An EventArgs specifically tailored to RasterLayer. + + + + + Initializes a new instance of the RasterLayerEventArgs class. + + The IRasterLayer that is involved in this event. + + + + Gets the RasterLayer associated with this event. + + + + + The ExpandableSetConverter works by assuming that a pair of + + + + + Returns true if the source type is string + + + + + + + + Converts a string into a Size2D + + + + + + + + + Converts the Size2D into a string + + + + + + + + + + Create Hillshade of values ranging from 0 to 1, or -1 for no-data regions. + This should be a little faster since we are accessing the Data field directly instead of working + through a value parameter. + + The raster to create the hillshade from. + An implementation of IShadedRelief describing how the hillshade should be created. + An implementation of IProgressHandler for progress messages + + + + Create Hillshade of values ranging from 0 to 1, or -1 for no-data regions. + This should be a little faster since we are accessing the Data field directly instead of working + through a value parameter. + + The raster to create the hillshade from. + An implementation of IShadedRelief describing how the hillshade should be created. + An implementation of IProgressHandler for progress messages + + + + Creates a bitmap from this raster using the specified rasterSymbolizer + + The raster to draw to a bitmap + The raster symbolizer to use for assigning colors + This must be an Format32bbpArgb bitmap that has already been saved to a file so that it exists. + The progress handler to use. + rasterSymbolizer cannot be null + + + + Creates a bitmap from this raster using the specified rasterSymbolizer + + The raster to draw to a bitmap + The raster symbolizer to use for assigning colors + Byte values representing the ARGB image bytes + The stride + The progress meter to use. + rasterSymbolizer cannot be null + + + + Creates a bitmap using only the colorscheme, even if a hillshade was specified. + + The Raster containing values that need to be drawn to the bitmap as a color scheme. + The raster symbolizer to use. + The bitmap to edit. Ensure that this has been created and saved at least once. + An IProgressHandler implementation to receive progress updates. + rasterSymbolizer cannot be null. + + + + Creates a bitmap using only the colorscheme, even if a hillshade was specified. + + The Raster containing values that need to be drawn to the bitmap as a color scheme. + The raster symbolizer to use. + The bitmap to edit. Ensure that this has been created and saved at least once. + An IProgressHandler implementation to receive progress updates. + cannot be null, cannot be null, cannot be null + + + + Obtains a list of unique values from the grid. + + The IRaster to obtain unique values for + A list of double values, where no value is repeated. + + + + Obtains an set of unique values. If there are more than maxCount values, the process stops and overMaxCount is set to true. + + the raster to obtain the unique values from. + An integer specifying the maximum number of values to add to the list of unique values + A boolean that will be true if the process was halted prematurely. + A set of doubles representing the independant values. + + + + This will sample randomly from the raster, preventing duplicates. + If the sampleSize is larger than this raster, this returns all of the + values from the raster. If a "Sample" has been prefetched and stored + in the Sample array, then this will return that. + + + + + + + + DrawArgs contains the parameters necessary for 2D drawing + + + + + Creates a new instance of DrawArgs + + A System.Windows.Drawing.Graphics object + A DotSpatial.Drawing.DrawWindow to draw to + + + + Creates a new instance of DrawArgs + + A System.Windows.Drawing.Graphics object + A DotSpatial.Drawing.DrawWindow to draw to + An integer part representing a value from 0 to NumParts being drawn + + + + Creates a new instance of DrawArgs + + A System.Windows.Drawing.Graphics object + A DotSpatial.Drawing.DrawWindow to draw to + An integer part representing a value from 0 to NumParts being drawn + The integer stage representing an object that has several stages, for all of the parts to be passed through + + + + Gets the Graphics device to draw to + + + + + Gets the geographic extent for the drawing operation + + + + + Gets the part index being drawn. + + + + + Gets the integer stage index. As an example, if all the borders are drawn first, and then all the fillings are drawn, + but each stage has several parts, the stage gives a way to subdivide a larger object into several drawing passes. + + + + + A set of PaintEventArgs that can be used before a drawing function in order to cancel an event. + + + + + Creates a new instance of the DrawCompleted Event Arguments + + A Graphics surface + An implementation of DotSpatial.Geometries.IEnvelope defining the geographic drawing region + True if the draw method was cancelled before any rendering took place. A Cancel is different from when an acception is thrown. + If an exception occured during rendering, this will not be null. + + + + Creates a default DrawCompleted event for the situation where the drawing was successful, not cancelled and no exception occured + + The DrawArgs being used during the drawing, specifying the Graphics device and geographic envelope + A boolean parameter specifying whether or not the drawing was cancelled + + + + Creates a new DrawCompleted in the case where an exception was thrown + + The drawing arguments for drawing, specifying the Graphics device and the geographic envelope + The Exception being thrown + + + + Boolean, true if the draw method was cancelled before rendering took place. + This will not be true if visible was false or an exception was thrown. + + + + + An Exception object for situations where the drawing threw an exception. + + + + + A set of PaintEventArgs that can be used before a drawing function in order to cancel an event. + + + + + Creates a new instance of the CancelPaint Event Arguments. + + The device that contains the drawing information for the event to determine whether or not to cancel. + The geographic bounds of the draw event + The part being drawn. This is usually 0, unless NumParts is greater than 1. + The 0-based integer index indicating the stage of the drawing. + A boolean specifying the default setting for the draw args. + + + + Constructs a new instance with cancel set to false using an Existing DrawArgs + + + + + + Returns a boolean specifying whether the action that caused the default drawing + for this event should be prevented. + + + + + A Draw Window is a special type of envelope that supports some basic transformations + + + + + Creates a new instance of DrawWindow, making the assumption that the map is in Geographic coordinates of decimal degrees + + + + + Creates a new draw window with the specified coordinates + + The first x-value. + The second x-value. + The first y-value. + The second y-value. + The first z-value. + The second z-value. + + + + Constructs a new DrawWindow based on the specified IEnvelope. The envelope becomes + the GeographicView for this DrawWindow. + + + + + + Replaces the inherited Envelope copy in order to create a copy of the DrawWindow instead + + + + + + Replaces the inherited clone in order to make a copy of the DrawWindow + + + + + + Converts two dimensions of the specified coordinate into a two dimensional PointF + + + + A PointF + + + + Converts two dimensions of the specified coordinate into a two dimensional PointF + + Any valid ICoordinate + A PointF + + + + Converts two dimensions of the specified coordinate into a two dimensional PointF. + + + + + + + Converts a PointF from the draw window back into the double precision data coordinate. + + + + + + + Converts an Array of PointF values from the draw window back into the double precision data coordinates. + There will be uncertainty based on how zoomed in you are. + + + + + + + + + + + + + + Calculates a geographic envelope from the specified window in the DrawWindow coordinates. + + + + + + + This calculates the DrawWindowView from the GeographicView + + + + + This is the the current extent of the map in geographic coordinates. + + + + + Retrieves the MinX value of the GeographicView, in DrawWindow coordinates + + + + + The main difference here is that tests against the DrawWindow happen before the nested Draw2D methods. + The DrawWindow is editable at this stage, but will become read-only during drawing. + + + + + Creates a new instance of DrawArgs + + A System.Windows.Drawing.Graphics object + A DotSpatial.Drawing.DrawWindow to draw to + + + + Gets the Graphics device to draw to + + + + + Gets or sets the geographic extent for the drawing operation + + + + + DynamicVisibilityModes + + + + + The layer will only be visible when zoomed in closer than the + DynamicVisibilityWidth. + + + + + The layer will only be visible when zoomed out beyond the + DynamicVisibilityWidth. + + + + + EditorSettings + + + + + Creates a new instance of EditorSettings + + + + + Gets or sets the characteristics of the "right" color. + + + + + Gets or sets a string that allows the user to use any of the + data fields to eliminate values from being considered as part + of the histogram for statistical interval calculations. + + + + + Gets or sets a boolean indicating to display + the hue, saturation, lightness as bounds + instead of start-color, end-color. + + + + + Gets or sets the hue shift. + + + + + Gets or sets the interval method + + + + + Gets or sets the maximum sample count. + + + + + Gets or sets the integer count if equal breaks are used + + + + + Gets or sets whether this editor should ramp the colors, + or use randomly generated colors. The default is random. + + + + + Gets or sets the characteristics of the "left" color. + + + + + Gets or sets whether to use the color specifications + + + + + Gets or sets how intervals like equal breaks choose the + actual values, and whether they are rounded or snapped. + + + + + Gets or sets the number of digits to preserve when IntervalSnapMethod is set to Rounding + + + + + World or pixel coordinates + + + + + No referencing was specified so the default will be used + + + + + The coordinates are given relative to the geographic locations, rather than pixel coordinates + + + + + The coordinates are given in pixels + + + + + An enumeration showing whetehr this item should use a picture or an image + + + + + No specification was set, so use the default + + + + + Specifies to use an icon + + + + + Specifies to use an image + + + + + Gives an enumeration for several different line styles + + + + + Specifies that none of the normal options were chosen so a default should be used. + + + + + This will draw the specified line so that the curve joins itself + at the ends. + + + + + Draws a cardinal spline through the points of this feature + + + + + Draws a set of line segments through the points of this feature + + + + + This is like a boolean, but with a "default" of empty. Empty signifies + that the value is not specified. + + + + + Not specified + + + + + Specified as true + + + + + Specified as false + + + + + Specifies the OGC type of connection that can occur between two segments + + + + + Flat? + + + + + Rounded + + + + + Beveled + + + + + Specifies the OGC treatment to give the line at the end-points + + + + + Flat? + + + + + Round + + + + + flat but a little outwards + + + + + Creates a new instance of EnvelopeArgs + + + + + Gets the envelope specific to this event. + + + + + Creates a new instance of SelectionEventArgs + + + + + Gets the list of features that were changed by this event. + + + + + FeatureChangeEnvelopeArgs + + + + + Creates a new instance of FeatureChangeEnvelopeArgs + + + + + Gets the geographic envelope for the most recent selection event. + + + + + Adds all the features in the specified range. This will throw an exception if the + the features are not already in the feature list, since this is simply trying + to select those features. + + The IFilterCollection to add the range to + The features being selected. + + + + This uses extent checking (rather than full polygon intersection checking). It will add + any members that are either contained by or intersect with the specified region + depending on the SelectionMode property. The order of operation is the region + acting on the feature, so Contains, for instance, would work with points. + + + + True if any item was actually added to the collection + + + + Removes the entire list of features + + The IFilterCollection to remove the range from + The enumerable collection of IFeatures. + + + + Tests each member currently in the selected features based on + the SelectionMode. If it passes, it will remove the feature from + the selection. + + The IFilterCollection that this should be applied to + The geographic region to remove + Boolean, true if the collection was changed + + + + An enumeration specifying the way that a gradient of color is attributed to the values in the specified range. + + + + + The values are colored in even steps in each of the Red, Green and Blue bands. + + + + + The even steps between values are used as powers of two, greatly increasing the impact of higher values. + + + + + The log of the values is used, reducing the relative impact of the higher values in the range. + + + + + GraphicsPathEM + + + + + Adds a round rectangle to the graphics path where the integer radius specified determines how rounded the rectangle should become. + This can be thought of rounded arcs connected by straight lines. + + + + + + + + Adds the unclosed set of lines that are the top and left of the shape + + + + + + + + Adds the unclosed set of lines that are the bottom and right of the shape + + + + + + + + Tests each of the points in the graphics path, and calculates a RectangleF that completely contains + all of the points in the graphics path. + + The grpahics path to test. + A RectangleF + + + + Group + + + + + RenderableLegendItem + + + + + Items with this setup can both be organized as an item, + and feature the elemental control methods and properties + around drawing. Layers, MapFrames, groups etc can fall in this + category. + + + + + Anything that can draw itself to the map is an IRenderable. This is implemented by RenderBase. + + + + + Invalidates the drawing methods + + + + + Occurs whenever the geographic bounds for this renderable object have changed + + + + + Occurs when an outside request is sent to invalidate this object + + + + + Occurs immediately after the visible parameter has been adjusted. + + + + + Obtains an IEnvelope in world coordinates that contains this object + + + + + + Gets whether or not the unmanaged drawing structures have been created for this item + + + + + If this is false, then the drawing function will not render anything. + Warning! This will also prevent any execution of calculations that take place + as part of the drawing methods and will also abort the drawing methods of any + sub-members to this IRenderable. + + + + + Creates a new instance of RenderBase + + + + + Invalidates the drawing methods + + + + + Fires the EnvelopeChanged event. + + The object sender for this event (this) + The EnvelopeArgs specifying the envelope + + + + Fires the Invalidated event + + The object sender (usually this) + An EventArgs parameter + + + + Fires the Visible Changed event + + The object sender (usually this) + An EventArgs parameter + + + + Occurs whenever the geographic bounds for this renderable object have changed + + + + + Occurs when an outside request is sent to invalidate this object + + + + + Occurs immediately after the visible parameter has been adjusted. + + + + + The protected extent is a direct, sealed accessor for the extent variable. + This is safe to use in constructors. + + + + + Obtains an IEnvelope in world coordinates that contains this object. This is virtual, and + will usually be reconfigured in subclasses to simply show the dataset extent. + + + + + + Gets whether or not the unmanaged drawing structures have been created for this item + + + + + If this is false, then the drawing function will not render anything. + Warning! This will also prevent any execution of calculations that take place + as part of the drawing methods and will also abort the drawing methods of any + sub-members to this IRenderable. + + + + + Just specifies the organization of interfaces that make up a layer. + It is recommended to create derived classes that inherit from an + abstract layer that implements the majority of this shared functionality + + + + + This supports the FeatureLayer event SelectionChanged, for both groups and feature layers, or + any other layer that supports both an ISelection and inherits from IFeatureLayer. + + + + + Removes any members from existing in the selected state + + + + + Inverts the selected state of any members in the specified region. + + The geographic region to invert the selected state of members + The geographic region when working with absolutes, without a tolerance + The selection mode determining how to test for intersection + The geographic region encapsulating the changed members + Boolean, true if members were changed by the selection process. + + + + Adds any members found in the specified region to the selected state as long as + SelectionEnabled is set to true. + + The geographic region where selection occurs + The geographic region when working with absolutes, without a tolerance + The selection mode + The envelope affected area + Boolean, true if any members were added to the selection + + + + Removes any members found in the specified region from the selection + + The geographic region to investigate + The geographic region when working with absolutes, without a tolerance + The selection mode to use for selecting items + The geographic region containing all the shapes that were altered + Boolean, true if any members were removed from the selection + + + + OCcurs after all of the layers have been updated with new selection content. + + + + + Gets or sets the Boolean indicating whether this item is actively supporting selection + + + + + Given a geographic extent, this tests the "IsVisible", "UseDynamicVisibility", + "DynamicVisibilityMode" and "DynamicVisibilityWidth" + In order to determine if this layer is visible. + + The geographic extent, where the width will be tested. + Boolean, true if this layer should be visible for this extent. + + + + Notifies the layer that the next time an area that intersects with this region + is specified, it must first re-draw content to the image buffer. + + The envelope where content has become invalidated. + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + Occurs before the properties are actually shown, also allowing the event to be handled. + + + + + Occurs if the maps should zoom to this layer. + + + + + Occurs if this layer was selected + + + + + Occurs when all aspects of the layer finish loading. + + + + + Gets or sets the core dataset for this layer. + + + + + Gets the currently invalidated region. + + + + + Gets the MapFrame that contains this layer. + + + + + Gets or sets the progress handler + + + + + Creates a new Layer, but this should be done from the derived classes + + + + + Creates a new Layer, but this should be done from the derived classes + + The container this layer should be a member of + + + + Creates a new layer with only a progress handler + + + + + + Creates a new Layer, but this should be done from the derived classes + + The container this layer should be a member of + A progress handler for handling progress messages + + + + Given a geographic extent, this tests the "IsVisible", "UseDynamicVisibility", + "DynamicVisibilityMode" and "DynamicVisibilityWidth" + In order to determine if this layer is visible for the specified scale. + + The geographic extent, where the width will be tested. + Boolean, true if this layer should be visible for this extent. + + + + Tests the specified legend item. If the item is another layer or a group or a map-frame, then this + will return false. Furthermore, if the parent of the item is not also this object, then it will + also return false. The idea is that layers can have sub-nodes move around, but not transport from + place to place. + + the legend item to test + Boolean that if true means that it is ok to insert the specified item into this layer. + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + Notifies the layer that the next time an area that intersects with this region + is specified, it must first re-draw content to the image buffer. + + The envelope where content has become invalidated. + + + + Notifies parent layer that this item is invalid and should be redrawn. + + + + + Fires the zoom to layer event. + + + + + Fires the zoom to layer event, but specifies the extent. + + IEnvelope env + + + + Occurs before showing the properties dialog. If the handled member + was set to true, then this class will not show the event args. + + + + + + This should be overridden to copy the symbolizer properties from editCopy + + The version that went into the property dialog + + + + Zooms to the specific layer + + + + + + + Removes this layer from its parent list + + + + + + + Fires the LayerSelected event + + + + + Fires the OnFinishedLoading event. + + + + + Occurs when instructions are being sent for this layer to export data. + + + + + special treatment for event handlers during a copy event + + + + + + Opens a fileName using the default layer provider and returns a new layer. The layer will not automatically have a container or be added to a map. + + The string fileName of the layer to open + An ILayer interface + + + + Opens a fileName using the default layer provider and returns a new layer. The layer will not automatically have a container or be added to a map. + + The string fileName of the layer to open + An IProgresshandler that overrides the Default Layer Manager's progress handler + An ILayer interface with the new layer. + + + + Opens a new layer and automatically adds it to the specified container. + + A String fileName to attempt to open. + The container (usually a LayerCollection) to add to + The layer after it has been created and added to the container + + + + Attempts to call the open fileName method for any ILayerProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this LayerManager. + A container to open this layer in + Specifies the progressHandler to receive progress messages. This value overrides the property on this LayerManager. + An ILayer + + + + This is overriden in sub-classes + + + + + + + This is overriden in sub-classes + + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + + + + + + + This is overriden in sub-classes + + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + + + + + + + This is overriden in sub-classes + + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + + + + + + + Disposes the memory objects in this layer. + + + + + Locks dispose. This typically adds one instance of an internal reference counter. + + + + + Unlocks dispose. This typically removes one instance of an internal reference counter. + + + + + Reprojects the dataset for this layer. + + The target projection to use. + + + + Fires the SelectionChanged event + + + + + Finalizes an instance of the Layer class. + + + + + This allows overriding layers to handle any memory cleanup. + + True if managed resources should be set to null. + + + + Occurs if this layer was selected + + + + + Occurs if the maps should zoom to this layer. + + + + + Occurs before the properties are actually shown, also allowing the event to be handled. + + + + + Occurs when all aspects of the layer finish loading. + + + + + Occurs after the selection is changed + + + + + Occurs when layer disposed. + + + + + Gets or sets custom actions for Layer + + + + + Gets or sets the internal data set. This can be null, as in the cases of groups or map-frames. + Copying a layer should not create a duplicate of the dataset, but rather it should point to the + original dataset. The ShallowCopy attribute is used so even though the DataSet itself may be cloneable, + cloning a layer will treat the dataset like a shallow copy. + + + + + Dynamic visibility represents layers that only appear when you zoom in close enough. + This value represents the geographic width where that happens. + + + + + This controls whether the layer is visible when zoomed in closer than the dynamic + visibility width or only when further away from the dynamic visibility width + + + + + Gets the currently invalidated region. + + + + + Gets the map frame of the parent LayerCollection. + + + + + Gets or sets the ProgressHandler for this layer. Setting this overrides the default + behavior which is to use the + + + + + Gets or sets a boolean indicating whether to allow the dynamic visibility + envelope to control visibility. + + + + + + + + + + + Layers launch a "Property Grid" by default. However, this can be overridden with a different UIEditor by this + + + + + Gets or sets the progress meter being used internally by layer classes. + + + + + Gets or sets a boolean indicating whether the memory objects have already been disposed of. + + + + + Gets or sets the boolean that controls whether or not items from the layer can be selected + + + + + Gets a value indicating whether an existing reference is requesting that the object is not disposed of. + Automatic disposal, as is the case when a layer is removed from the map, will not take place until + all the locks on dispose have been removed. + + + + + Gets a Boolean indicating if this layer can be reprojected. + + + + + Gets the or sets the projection information for the dataset of this layer. + This only defines the projection information and does not reproject the dataset or the layer. + + + + + Gets or sets the unmodified projection string that can be used regardless of whether the + DotSpatial.Projection module is available. This string can be in the Proj4string or in the + EsriString format. Setting the Projection string only defines projection information. + Call the Reproject() method to actually reproject the dataset and layer. + + + + + Group + + + + + Resume events will resume events on the layers if all the suspensions are + canceled out. + + + + + Adds one more increment of suspension which will prevent events from firing + for the layers. + + + + + Gets the layers cast as ILayer without any information about the actual drawing methods. + This is useful for handling methods that my come from various types of maps. + + An enumerable collection of ILayer + + + + Returns the number of data layers, not counting groups. If recursive is true, then layers that are within + groups will be counted, even though the groups themselves are not. + + Boolean, if true forces checking even the number of child members. + An integer representing the total number of layers in this collection and its children. + + + + Returns a snapshot image of this group + + Width in pixels of the returned image (height is determined by the number of layers in the group) + Bitmap of the group and sublayers (expanded) + + + + Gets the layer handle of the specified layer + + 0 based index into list of layers + Layer's handle on success, -1 on failure + + + + This occurs when a new layer is added either to this group, or one of the child groups within this group. + + + + + This occurs when a layer is removed from this group. + + + + + Gets whether or not the events are suspended on the layer collection + + + + + Gets the integer handle for this group + + + + + Gets or sets the icon + + + + + Gets the integer count of layers. This can also be accessed through Layers.Count. + + + + + Gets or sets the visibility of the layers within this group. + Note: When reading this property, it returns true if any layer is visible within + this group + + + + + Gets the parent group of this group. + + + + + gets or sets the locked property, which prevents the user from changing the visual state + except layer by layer + + + + + Creates a new instance of Group + + + + + Creates a group that sits in a layer list and uses the specified progress handler + + + the progress handler + + + + Creates a group that sits in a layer list and uses the specified progress handler + + the layer list + + the progress handler + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the layer handle of the specified layer + + 0 based index into list of layers + Layer's handle on success, -1 on failure + + + + Creates a virtual method when sub-groups are being created + + + + + Given a new LayerCollection, we need to be sensitive to certain events + + + + + Occurs when removing a layer. This also fires the LayerRemoved event. + + + + + + + Simply echo this event out to members above this group that might be listening to it. + + + + + + + When setting an old layer collection it is advisable to not only add + new handlers to the new collection, but remove the handlers related + to the old collection. + + + + + + Disposes the unmanaged resourced of this group. If disposeManagedResources is true, then this will + also dispose the resources of the child layers and groups unless they are dispose locked. + + Boolean, true to dispose child objects and set managed members to null. + + + + + + + + + + + + + + + + + + + + + + This occurs when a new layer is added either to this group, or one of the child groups within this group. + + + + + This occurs when a layer is removed from this group. + + + + + + + + gets or sets the list of layers. + + + + + Boolean, true if any sub-layers in the group are visible. Setting this + will force all the layers in this group to become visible. + + + + + The envelope that contains all of the layers for this data frame. Essentially this would be + the extents to use if you want to zoom to the world view. + + + + + Gets the integer handle for this group + + + + + Gets or sets the icon + + + + + Gets the currently invalidated region as a union of all the + invalidated regions of individual layers in this group. + + + + + Returns the count of the layers that are currently stored in this map frame. + + + + + Gets a boolean that is true if any of the immediate layers or groups contained within this + control are visible. Setting this will set the visibility for each of the members of this + map frame. + + + + + This is a different view of the layers cast as legend items. This allows + easier cycling in recursive legend code. + + + + + Gets the parent group of this group. + + + + + Gets or sets the progress handler to use. Setting this will set the progress handler for + each of the layers in this map frame. + + + + + gets or sets the locked property, which prevents the user from changing the visual state + except layer by layer + + + + + + + + + + + + + + ICategory + + + + + Applies the minimum and maximum in order to create the filter expression. This will also + count the members that match the specified criteria. + + + + + Applies the snapping rule directly to the categories, instead of the breaks. + + + + + For quantitative categories, this simply tests to see if the specified value can be + found between the minimum and maximum range values. + + The double value to check against the minimum and maximum values. + Boolean, true if the value is inside the range. + + + + Returns this Number as a string. + + Specifies how the numbers are modified so that the numeric text can be cleaned up. + An integer clarifying digits for rounding or significant figure situations. + A string with the formatted number. + + + + Minimum this is a convenient caching tool only, and doesn't control the filter expression at all. + Use ApplyMinMax after setting this to update the filter expression. + + + + + Maximum this is a convenient caching tool only, and doesn't control the filter expression at all. + Use ApplyMinMax after setting this to update the filter expression. + + + + + Gets or sets the value range, which overrides any existing min/max setup. + This is only valid for numeric values that can be expressed as doubles. + + + + + Gets or sets a status message for this string. + + + + + This is not used by DotSpatial, but is provided for convenient linking for this object + in plugins or other applications. + + + + + IChangeable + + + + + Resumes the events. If any changes occured during the period of time when + the events were suspended, this will automatically fire the chnaged event. + + + + + Causes this filter collection to suspend the Changed event, so that + it will only be fired once after a series of updates. + + + + + Occurs when members are added to or removed from this collection. If SuspendChanges + is called, this will temporarilly prevent this event from firing, until ResumeEvents + has been called. + + + + + To suspend events, call SuspendChanges. Then to resume events, call ResumeEvents. If the + suspension is greater than 0, then events are suspended. + + + + + This interface stores a single extent window describing a view, and also contains + the list of all the layers associated with that view. The layers are ordered. + + + + + This will create a new layer from the featureset and add it. + + Any valid IFeatureSet that does not yet have drawing characteristics + + + + Occurs when some items should no longer render, and the map needs a refresh. + + + + + Occurs after zooming to a specific location on the map and causes a camera recent. + + + + + Gets or sets a boolean that controls whether or not a newly added layer + will also force a zoom to that layer. If this is true, then nothing + will happen. Otherwise, adding layers to this frame or a group in this + frame will set the extent. + + + + + Drawing layers are tracked separately, and do not appear in the legend. + + + + + Gets or sets the currently active layer. + + + + + Controls the smoothing mode. Default or None will have faster performance + at the cost of quality. + + + + + This is the geographic envelope in view. + + + + + A layer or other object capable of containing + + + + + Draws every label in the layer without worrying about any collision testing + or specific tests outside of this label container. If LabelCollisionTesting + is set to true, it should still do collision testing for the labels INSIDE + this label container. + + + + + The list of integers corresponds to the integer values that were returned as + keys to the GetLabelExtents dictionary. The Layer will then draw each of the + specific lables to draw. + + + + + + Gets the list of non-rotated extents for labels visible in the current display. + The integer keys represent the index of the labeled item. + The envelope values represent the actual rectangles that the labels occupy for + collision testing. If LabelCollisionTesting is true, then collisions should + be resolved for the entire layer first based on whatever internal priority + methods exist. Only the non-colliding visible labels will be returned. + + + + + Gets the list of possibly rotated label boundaries visible in the current display. + The integer keys represent the index of the labeled item. + The envelope values represent the actual rectangles that the labels occupy for + collision testing. If LabelCollisionTesting is true, then collisions should + be resolved for the entire layer first based on whatever internal priority + methods exist. Only the non-colliding visible labels will be returned. + + + + + The integer indexed list of all the labels in this container. + + + + + If this is set to true, then the only labels being sent to GetLabelExtents + should be the labels that actually need to be drawn. + + + + + A priority rating for all the labels in this layer. The higher this number, + the more likely the labels from this layer are to win a collision contest + between layers. + + + + + ILayerCollection2 + + + + + Constructor + + + + + ILayerEvents + + + + + Selects the layer to use for tools or operations that act on a single layer. + + The integer index indicating the layer to select in this collection. + + + + Occurs when a layer is added to this item. + + + + + Occurs when a layer is moved. + + + + + Occurs when a layer is removed from this item. + + + + + Occurs when one of the layers in this collection changes visibility. + + + + + Zooms to a layer + + + + + Occurs immediately after the layer is selected. + + + + + Occurs when the selection on a feature layer changes. + + + + + Occurs after the selection has been updated for all the layers. + + + + + Given a base name, this increments a number for appending + if the name already exists in the collection. + + The string base name to start with + The base name modified by a number making it unique in the collection + + + + Gets or sets the ParentGroup for this layer collection, even if that parent group + is not actually a map frame. + + + + + Gets or sets the MapFrame for this layer collection. + + + + + Gets or sets the currently active layer. + + + + + IDataManager + + + + + This launches an open file dialog and attempts to load the specified file. + + + + + This launches an open file dialog and attempts to load the specified file. + + The layer will be created in the specified collection + A Layer + + + + This launches an open file dialog and attempts to load the specified file. + + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + A Layer + + + + Opens a new layer and automatically adds it to the specified container. + + A String fileName to attempt to open. + The container (usually a LayerCollection) to add to + The layer after it has been created and added to the container + + + + This launches an open file dialog and attempts to load the specified file. + + A String fileName to attempt to open. + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + A Layer + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this DataManager. + any valid IContainer that this should be added to + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + + + + This opens a file, but populates the dialog filter with only raster formats. + + An IRaster with the data from the file specified in an open file dialog + + + + This opens a file, but populates the dialog filter with only raster formats. + + An IFeatureSet with the data from the file specified in a dialog + + + + This attempts to open the specified raster file and returns an associated layer + + The string fileName to open + An IRaster with the data from the file specified in an open file dialog + + + + This attempts to open the specified vector file and returns an associated layer + + the string fileName to open + An IFeatureSet with the data from the file specified in a dialog + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance + The string short name of the driver for creating the raster + The number of columns in the raster + The number of rows in the raster + The number of bands to create in the raster + The data type to use for the raster + The options to be used. + An IRaster + + + + Checks a dialog filter and returns a list of just the extensions. + + The Dialog Filter to read extensions from + A list of extensions + + + + Given a string fileName for the "*.dll" file, this will attempt to load any classes that implement the + IDataProvder interface. + + The string path of the assembly to load from. + A list that contains only the providers that were just loaded. This may be a list of count 0, but shouldn't return null. + + + + This should be called once all the permitted directories have been set in the code. + This will not affect the PreferredProviders or the general list of Providers. + These automatically have the lowest priority and will only be used if nothing + else works. Use the PreferredProviders to force preferential loading of + a plugin DataProvider. + + A list of just the newly added DataProviders from this method. + + + + Occurs after the directory providers have been loaded into the project. + + + + + Gets or sets a temporary list of active project layers. This is designed to house + the layers from a map frame when the property grids are shown for layers in that + map frame. This list on the DefaultLayerManager is what is used to create the + list that populates dropdowns that can take a Layer as a parameter. + + + + + Gets or sets the list of IDataProviders that should be used in the project. + + + + + Gets or sets the path (either as a full path or as a path relative to + the DotSpatial.dll) to search for plugins that implement the IDataProvider interface. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Sets the default condition for how this data manager should try to load layers. + This will be overridden if the inRam property is specified as a parameter. + + + + + Gets or sets the dialog read filter to use for opening data files that are specifically raster formats. + + + + + Gets or sets the dialog write filter to use for saving raster files. + + + + + Gets or sets the dialog read filter to use for opening vector files. + + + + + Gets or sets the dialog write filter to use for saving vector files. + + + + + Gets or sets a dictionary of IDataProviders keyed by the extension. The + standard order is to try to load the data using a PreferredProvider. If that + fails, then it will check the list of dataProviders, and finally, if that fails, + it will check the plugin Data Providers in directories. + + + + + Gets or sets a progress handler for any open operations that are intiated by this + DataManager. + + + + + Creates a new instance of the ImageGraphics class for assisting with drawing. + + + + + + + The destination rectangle on the bitmap where drawing should occur. + + + + + The geographic extents where drawing will take place. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + IImageLayer + + + + + Gets or sets a class that has some basic parameters that control how the image layer + is drawn. + + + + + Gets or sets the dataset specifically as an IImageData object + + + + + Gets or sets the image being drawn by this layer + + + + + IImageSymbolizer + + + + + Gets or sets a float value from 0 to 1, where 1 is fully opaque while 0 is fully transparent + + + + + GeoImageLayer + + + + + Creates a blank image layer that needs to be configured later. + + + + + Creates a new instance of the ImageLayer by opening the specified fileName + + + + + + Creates a new instance of the ImageLayer by opening the specified fileName, relaying progress to the + specified handler, and automatically adds the new layer to the specified container. + + The fileName to open + A ProgressHandler that can receive progress updates + The layer list that should contain this image layer + + + + Creates a new instance of the image layer by opening the specified fileName and + relaying progress to the specified handler. + + The fileName to open + The progressHandler + + + + Creates a new instance of GeoImageLayer + + + + + Creates a new instance of a GeoImageLayer + + The image to draw as a layer + The Layers collection that keeps track of the image layer + + + + Handles when this layer should show its properties by firing the event on the shared event sender + + + + + + Handles export data from this layer. + + + + + Dispose memory objects. + + True if managed memory objects should be set to null. + + + + Gets or sets the underlying data for this object + + + + + Gets the geographic bounding envelope for the image + + + + + Gets or sets a class that has some basic parameters that control how the image layer + is drawn. + + + + + Gets or sets the image being drawn by this layer + + + + + Gets or sets custom actions for ImageLayer + + + + + Gets or sets a float value from 0 to 1, where 1 is fully opaque while 0 is fully transparent. + + + + + ITiledImageLayer + + + + + Gets or sets the TiledImage that supports the tile data for this image. + + + + + TiledImageLayer + + + + + Creates a new instance of TiledImageLayer + + + + + The bounding envelope of the image layer + + + + + The tiled image dataset + + + + + IPropertyDialogProvider + + + + + Shows a PropertyGrid Dialog and uses the specified object as the edit copy. + + A clone of the actual object to be edited. This should not be the original object. + + + + Fires an event signifying that the item has been updated + + + + + Gets the item that was changed by this operation. + + + + + IScheme + + + + + Adds a new scheme, assuming that the new scheme is the correct type. + + The category to add + + + + Applies the snapping rule directly to the categories, based on the most recently + collected set of values, and the current VectorEditorSettings. + + + + + Creates the category using a random fill color + + The base color to use for creating the category + For points this is the maximal point size, for lines this is the maximum line width + A new IFeatureCategory that matches the type of this scheme + + + + Uses the settings on this scheme to create a random category. + + A new ICategory + + + + Reduces the index value of the specified category by 1 by + exchaning it with the category before it. If there is no + category before it, then this does nothing. + + /// The category to decrease the index of + + + + Draws the regular symbolizer for the specified cateogry to the specified graphics + surface in the specified bounding rectangle. + + The integer index of the feature to draw. + The Graphics object to draw to + The rectangular bounds to draw in + + + + Re-orders the specified member by attempting to exchange it with the next higher + index category. If there is no higher index, this does nothing. + + The category to increase the index of + + + + Inserts the category at the specified index + + The integer index where the category should be inserted + The category to insert + + + + Removes the specified category + + The category to insert + + + + Suspends the category events + + + + + Resumes the category events + + + + + Clears the categories + + + + + Gets or sets the editor settings that control how this scheme operates. + + + + + This is cached until a GetValues call is made, at which time the statistics will + be re-calculated from the values. + + + + + Gets the current list of values calculated in the case of numeric breaks. + This includes only members that are not excluded by the exclude expression, + and have a valid numeric value. + + + + + Characterizes + + + + + Boolean Tests a value against the minimum and maximum values. + If the value is greater than or equal to the MinValue and + is less than or equal to the MaxValue then it will be included. + + The IComparable value to test. This is usually a numeric value. + True if value is between MinValue and MaxValue + + + + The classification must implement IComparable. The normal value types like + strings, doubles and integers already do this. If the CompareTo method + on value returns 0 when compared to the Classification property of this + instance, this method will return true. Otherwise, it returns false. + + Any valid implementation of IComparable. This can be either + the default value types like integer or string, or else it can be a custom + implementation of IComparable. + Boolean, true if value.CompareTo returns 0 when compared against this classification. + + + + The minimum value, inclusive, in a range of values. If + the value being tested is less than this value, + then these properties should not be applied. + + + + + Describes the maximum value, inclusive, in a range of values. If + the value being tested is greater than this value, then these + properties should not be applied. + + + + + The classification for this symbol. This is the same as + specifying the MinValue and MaxValue to be equal and testing + the IsInRange property. + + + + + A smaller interface that just gives the user enough control to draw on a map surface + without giving them the ability to change the base control. + + + + + Causes the view to shift in geographic coordinates by the specified dX and dY. + The geographic width and height of the Extents will remain the same, as + will the aspect ratio. + + Double specifying the pixel change in X position + Double specifying the pixel change in Y position + + + + Expands or shrinks the envelope so that it's new size is the specified + percent of the previous size. The aspect ratio will be preserved. + + The double percentage of the previous size + + Zoom in to a geographic extents half as large: Zoom(50); + Zoom out to a geographic extents twice as large: Zoom(200); + + + + + Transforms a valid location on the screen (relative to the upper left corner of + the map) into world coordinates (like longitude, latitude) + + The integer pixel location relative to the left of the control + The integer pixel location relative to the top of the control + The double horizontal or longitude coordinate + The double vertical or latitude coordinate + + + + Transforms a valid location on the screen (relative to the upper left corner of + the map) into world coordinates (like longitude, latitude) + + A Point showing the PixelPosition + A Valid ICoordiante showing the location of the point in geographic coordinates + + + + Transforms a valid location on the screen (relative to the upper left corner of + the map) into world coordinates (like longitude, latitude) + + A Rectangle in pixel coordinates to find the geographic equivalent of + A Valid IEnvelope that shows the location on the screen + + + + Transforms the specified world location (like latitude, longitude) into a + valid screen location (measured in pixels from the upper left corner of the map) + + The double horizontal or longitude coordinate + The double vertical or latitude coordinate + The integer pixel location relative to the left of the control + The integer pixel location relative to the top of the control + + + + Transforms the specified world location (like latitude, longitude) into a + valid screen location (measured in pixels from the upper left corner of the map) + + + + + + + Transforms the specified world envelope (like latitude, longitude) into a + valid screen rectangle (measured in pixels from the upper left corner of the map) + + The envelope in geographic coordinates + A Rectangle relative to the upper left corner of the control + + + + Gets a graphics surface that is essentially the "white box" area of a map to draw on. + By default the GraphicsUnit should be set to world and the PageScale and PageOffset + should be set to the appropriate value for world coordinates. + + + + + Gets the IEnvelope representing the world coordinate extents of the map + + + + + Occurs when the visible region being displayed on the map changes + + + + + FastLabelDrawnState + + + + + Gets or sets the category + + + + + Gets or sets whether the label is selected + + + + + Creates a new drawn state with the specified category + + The category + + + + ILabelCategory + + + + + Returns a shallow copy of this object cast as a LabelCategory. + + A shallow copy of this object. + + + + Calculates the expression for the given row. The Expression.Columns have to be in sync with the Features columns for calculation to work without error. + + Datarow the expression gets calculated for. + Indicates whether the feature is selected. + The FID of the feature, the expression gets calculated for. + null if there was an error while parsing the expression, else the calculated expression + + + + Updates the Expression-Object with the columns that exist inside the features that belong to this category. The will be used for calculating the expression. + + Columns that should be updated. + False if columns were not set. + + + + Gets or sets the string expression that controls the integration of field values into the label text. + This is the raw text that is used to do calculations and concat fields and strings. + + + + + Gets or sets the string filter expression that controls which features + that this should apply itself to. + + + + + Gets or sets the string name + + + + + Gets or sets the text symbolizer to use for this category + + + + + Gets or sets the text symbolizer to use for this category + + + + + ILabelLayer + + + + + Clears the current selection, reverting the geometries back to their + normal colors. + + + + + Expression creates the labels based on the given string expression. Field names in + square brackets will be replaced by the values for those fields in the FeatureSet. + + + + + Invalidates any cached content for this layer. + + + + + Highlights the values from a specified region. This will not unselect any members, + so if you want to select a new region instead of an old one, first use ClearSelection. + This is the default selection that only tests the anchor point, not the entire label. + + An IEnvelope showing a 3D selection box for intersection testing. + True if any members were added to the current selection. + + + + Gets or sets the featureSet that defines the text for the labels on this layer. + + + + + Gets or sets an optional layer to link this layer to. If this is specified, then drawing will + be associated with this layer. + + + + + Gets or sets the symbology + + + + + Gets or sets the selection symbolizer from the first TextSymbol group. + + + + + Gets or sets the regular symbolizer from the first TextSymbol group. + + + + + ILabelScheme + + + + + Adds a category to the scheme, and also names the category with an integer that has not yet been used. + + A new category with a name that has not yet been used + + + + returns a duplicate scheme, where the categories are copied, but + the underlying featureset is not duplicated. + + A copy of this label scheme + + + + Attempts to reduce the integer index representing this categories rank in the + list. By doing this, it will be drawn sooner, and therefore subsequent + layers will be drawn on top of this layer, and so it reduces the categories + priority. If this collection does not contain the category or it is already + at index 0, this will return false. + + The ILabelCategory to demote + Boolean, true if the demotion was successful + + + + This attempts to increase the numeric index, which will cause it to be drawn later, + or higher up on the cue, which means it will be drawn AFTER the previous layers, + and therefore is a higher priority. If the category does not exist in the collection + or the category is already at the highest value, this returns false. + + The category to promote if possible. + Boolean, true if the promotion was successful + + + + Gets or sets the list of categories that make up this label scheme + + + + + ITextSymbolizer + + + + + Uses the properties defined on this symbolizer to return a font. + + A new font + + + + Gets or sets the orientation of line labels. + + + + + Gets or sets a boolean indicating whether or not the LineOrientation gets used. + + + + + Gets or sets the labeling method + + + + + Gets or sets the labeling method + + + + + Gets or sets the way features with multiple parts are labeled + + + + + Gets or sets the the multi-line text alignment in the box. + + + + + Gets or set the angle that the font should be drawn in + + + + + Gets or set a boolean indicating whether or not should be used + + + + + Gets or set the field with angle to draw label + + + + + Gets or set a boolean indicating whether or not should be used + + + + + Gets or sets the background color + + + + + Gets or sets a boolean indicating whether or not a background color should be used + + + + + Gets or sets the border color + + + + + Gets or sets a boolean indicating whether or not a border should be drawn around the label. + + + + + Gets or sets a boolean that will force a shadow to be drawn if this is true. + + + + + Gets or sets the color of the actual shadow. Use the alpha channel to specify opacity. + + + + + Gets or sets an X and Y geographic offset that is only used if ScaleMode is set to Geographic + + + + + Gets or sets an X and Y pixel offset that is used if the ScaleMode is set to Symbolic or Simple. + + + + + Gets or sets the string font family name + + + + + gets or sets the font size + + + + + Gets or sets the font style. + + + + + Gets or set the color that the font should be drawn in. + + + + + Gets or sets a boolean that governs whether or not to draw a halo. + + + + + Gets or sets the color of the halo that surrounds the text. + + + + + Gets or sets the X offset in pixels from the center of each feature. + + + + + Gets or sets the Y offset in pixels from the center of each feature. + + + + + Gets or sets a boolean. If true, as high priority labels are placed, they + take up space and will not allow low priority labels that conflict for the + space to be placed. + + + + + Gets or sets the string field name for the field that controls which labels + get placed first. If collision detection is on, a higher priority means + will get placed first. If it is off, higher priority will be labeled + on top of lower priority. + + + + + Gets or sets a boolean. Normally high values from the field are given + a higher priority. If this is true, low values are given priority instead. + + + + + Gets or sets the position of the label relative to the placement point + + + + + Gets or sets the scaling behavior for the text + + + + + Gets or sets format string used to draw float fields. E.g.: + #.##, 0.000. If empty - then format not used. + + + + + Creates a new instance of LabelCategory + + + + + Returns the Copy() method cast as an object. + + + + + + Returns a shallow copy of this category with the exception of + the TextSymbolizer, which is duplicated. This uses memberwise + clone, so sublcasses using this method will return an appropriate + version. + + A shallow copy of this object. + + + + Updates the Expression-Object with the columns that exist inside the features that belong to this category. They are used for calculating the expression. + + Columns that should be updated. + False if columns were not set. + + + + Calculates the expression for the given row. The Expression.Columns have to be in sync with the Features columns for calculation to work without error. + + Datarow the expression gets calculated for. + Indicates whether the feature is selected. + The FID of the feature, the expression gets calculated for. + null if there was an error while parsing the expression, else the calculated expression + + + + Gets or sets the string filter expression that controls which features + that this should apply itself to. + + + + + Gets or sets the string expression that controls the integration of field values into the label text. + This is the raw text that is used to do calculations and concat fields and strings. + + + + + Gets or sets the string name + + + + + Gets or sets the text symbolizer to use for this category + + + + + Gets or sets the text symbolizer to use for this category + + + + + LabelDrawState + + + + + A LabelCategory interface representing the drawing information for this label. + + + + + A boolean indicating whether or not this is selected. + + + + + A boolean indicating whether the associated feature should be drawn. + + + + + Creates a new instance of the LabelDrawState class where selected is false + but visible is true. + + The category + + + + Creates a new instance of the LabelDrawState based on the specified parameters. + + The category + Boolean, true if the label is selected + Boolean, true if the label should be visible + + + + LabelLayer + + + + + Creates a new instance of LabelLayer + + + + + Creates a new layer that uses the attributes from the given featureSet + + + + + + Creates a new label layer based on the features in the + + + + + + Clears the current selection, reverting the geometries back to their + normal colors. + + + + + This builds the _drawnStates based on the current label scheme. + + + + + Highlights the values from a specified region. This will not unselect any members, + so if you want to select a new region instead of an old one, first use ClearSelection. + This is the default selection that only tests the anchor point, not the entire label. + + An IEnvelope showing a 3D selection box for intersection testing. + True if any members were added to the current selection. + + + + This builds the _drawnStates based on the current label scheme. + + + + + Removes the features in the given region + + the geographic region to remove the feature from the selection on this layer + Boolean true if any features were removed from the selection. + + + + Fires the selection cleared event + + + + + Fires the selection extended event + + + + + + Occurs after the selection has been cleared + + + + + Occurs after the selection is updated by the addition of new members + + + + + Gets or sets the dictionary that quickly identifies the category for + each label. + + + + + Gets or sets the indexed collection of drawn states + + + + + Gets or sets a valid IList of ILabels. This can just be a List of labels, but allows for + custom list development later. + + + + + Gets or sets the featureSet that defines the text for the labels on this layer. + + + + + Gets or sets an optional layer to link this layer to. If this is specified, then drawing will + be associated with this layer. This also updates the FeatureSet property. + + + + + Gets or sets the labeling scheme as a collection of categories. + + + + + Gets or sets the selection symbolizer from the first TextSymbol group. + + + + + Gets or sets the regular symbolizer from the first TextSymbol group. + + + + + Methods used in calculating the placement of a label. + + + + + Use the centroid of the feature. + + + + + Use the center of the extents of the feature. + + + + + Use the closest point to the centroid that is in the feature. + + + + + Orientation of the line label is parallel to the line at the PlacementPosition. + + + + + Orientation of the line label is perpendicular to the line at the PlacementPosition. + + + + + Methods used to calculate the placement of line labels. + + + + + Uses the longest segment of the LineString. + + + + + Uses the first segment of the LineString. + + + + + Uses the middle segment of the LineString. + + + + + Uses the last segment of the LineString. + + + + + Determines if all parts should be labeled or just the largest. + + + + + Label all parts. + + + + + Only label the largest part. + + + + + LabelScheme + + + + + Creates a new instance of LabelScheme + + + + + Adds a category to the scheme, and also names the category with an integer that has not yet been used. + + A new category with a name that has not yet been used + + + + Returns the Copy, but as an object. + + + + + + Attempts to reduce the integer index representing this categories rank in the + list. By doing this, it will be drawn sooner, and therefore subsequent + layers will be drawn on top of this layer, and so it reduces the categories + priority. If this collection does not contain the category or it is already + at index 0, this will return false. + + The ILabelCategory to demote + Boolean, true if the demotion was successful + + + + This attempts to increase the numeric index, which will cause it to be drawn later, + or higher up on the cue, which means it will be drawn AFTER the previous layers, + and therefore is a higher priority. If the category does not exist in the collection + or the category is already at the highest value, this returns false. + + The category to promote if possible. + Boolean, true if the promotion was successful + + + + The individual categories are copied, meaning that the text symbolizers + will be new, and disconnected from the original text symbolizers of this + scheme. MemberwiseClone is used so that any subclass members appended + to this will be shallow copies unless this method is overridden. + + A Duplicate LabelScheme, but with new, duplicated categories and symbolizers + + + + Gets or sets the Categories + + + + + Creates a new instance of TextSymbolizer + + + + + Uses the properties defined on this symbolizer to return a font. + + A new font + + + + Gets or sets the background color + + + + + Gets or sets the border color + + + + + Gets or set the color that the font should be drawn in. + + + + + Gets or sets the multi-line text alignment in the box. I.e., Control the positioning of the text within the rectangular bounds. + + + + + Gets or set the angle that the font should be drawn in + + + + + Gets or set a boolean indicating whether or not should be used + + + + + Gets or set the field with angle to draw label + + + + + Gets or set a boolean indicating whether or not should be used + + + + + Gets or sets the background color + + + + + Gets or sets a boolean indicating whether or not a background color should be used + + + + + Gets or sets the border color + + + + + Gets or sets a boolean indicating whether or not a border should be drawn around the label. + + + + + Gets or sets a boolean that will force a shadow to be drawn if this is true. + + + + + Gets or sets the color of the actual shadow. Use the alpha channel to specify opacity. + + + + + Gets or sets an X and Y geographic offset that is only used if ScaleMode is set to Geographic + + + + + Gets or sets an X and Y pixel offset that is used if the ScaleMode is set to Symbolic or Simple. + + + + + Gets or sets format string used to draw float fields. E.g.: + #.##, 0.000. If empty - then format not used. + + + + + Gets or sets the string font family name + + + + + Gets or sets the font size + + + + + Gets or sets the font style. + + + + + Gets or sets the orientation relative to the placement point. I.e., Controls the position of the label relative to the feature. + + + + + Gets or set the color that the font should be drawn in. + + + + + Gets or sets a boolean that governs whether or not to draw a halo. + + + + + Gets or sets the color of the halo that surrounds the text. + + + + + Gets or sets the labeling method + + + + + Gets or sets the labeling method for line labels. + + + + + Gets or sets the orientation of line labels. + + + + + Gets or sets the way features with multiple parts are labeled + + + + + Gets or sets the X offset in pixels from the center of each feature. + + + + + Gets or sets the Y offset in pixels from the center of each feature. + + + + + Gets or sets a boolean. If true, as high priority labels are placed, they + take up space and will not allow low priority labels that conflict for the + space to be placed. + + + + + Gets or sets the string field name for the field that controls which labels + get placed first. If collision detection is on, a higher priority means + will get placed first. If it is off, higher priority will be labeled + on top of lower priority. + + + + + Gets or sets a boolean. Normally high values from the field are given + a higher priority. If this is true, low values are given priority instead. + + + + + Gets or sets the scaling behavior for the text + + + + + Gets or sets a boolean indicating whether or not the LineOrientation gets used. + + + + + This extends the ChangeEventList by providing methods that allow access by an object Key, and will pass + + + + + This extends the ChangeEventList by providing methods that allow access by an object Key, and will pass + + + + + This selects the layer with the specified integer index + + THe zero based integer index + + + + Standard Dispose implementation since layers are now disposable. + + + + + Adds one request to prevent disposal of this object and its children. + + + + + Removes one request to prevent disposal of this object and its children. + + + + + Extends the event listeners to include events like ZoomToLayer and VisibleChanged + + + + + + + + + + + + + Occurs when the selection is changed + + + + + Ensures that we re-draw the content when inserting new layers + + + + + + Removes the extended event listeners once a layer is removed from this list. + + + + + + Fires the LayerMoved event. + + The layer that was moved. + LayerEventArgs + + + + Fires the LayerRemoved event. + + + + + + Handles the default selection behavior and fires the LayerSelected event. + + The integer index of the layer being selected + + + + Fires the LayerSelected event and adjusts the selected state of the layer. + + The layer to select + Boolean, true if the specified layer is selected + + + + Fires the ItemChanged event and the MembersChanged event and resets any cached lists + + + + + Fires the ZoomToLayer method when one of the layers fires its ZoomTo event + + The layer to zoom to + The extent of the layer + + + + Fires the LayerAdded event + + The layer that was added + LayerEventArgs + + + + Fires the selection changed event + + the object sender of the event + The FeatureLayerSelectionEventArgs of the layer + + + + Finalizes an instance of the LayerEventList class. + + + + + Overrides the dispose behavior. If disposeManagedMemory objects is true, then managed objects + should be set to null, effectively removing reference counts. If it is false, then only + unmanaged memory objects should be removed. + + Boolean, true if managed memory objects should be set to null, and + if the Dispose method should be called on contained objects. + + + + Occurs if the maps should zoom to this layer. + + + + + Occurs when one of the layers in this collection changes visibility. + + + + + Occurs when a layer is added to this item. + + + + + Occurs when a layer is moved. + + + + + Occurs when a layer is removed from this item. + + + + + Occurs immediately after a layer is selected. + + + + + Occurs when the selection on a feature layer changes. + + + + + Occurs after the selection has changed, and all the layers have had their selection information updated. + + + + + Gets the currently selected layer in this collection. + + + + + The envelope that contains all of the layers for this data frame. Essentially this would be + the extents to use if you want to zoom to the world view. + + + + + Gets a value indicating whether dispose has already been called on this object. + + + + + Gets a value indicating whether there are requests to prevent disposal of this object. + + + + + Creates a new blank instance of a MapLayer collection. This is especially useful + for tracking layers that can draw themselves. This does not concern itself with + view extents like a dataframe, but rather is a grouping of layers that is itself + also an IMapLayer. + + + + + Creates a new layer collection where the parent group is different from the + map frame. + + + + + + + Creates a LayerCollection that is not confined in a MapFrame + + + + + Occurs when wiring events + + + + + + Occurs when unwiring events + + + + + + Occurs when layer was moved. + + Layer that was moved. + Position the layer was moved to. + + + + Given a base name, this increments a number for appending + if the name already exists in the collection. + + The string base name to start with + The base name modified by a number making it unique in the collection + + + + Gets the index of the specified item in this collection if it is a layer + + + + + + + Inserts the specified item into this collection if it is a layer + + + + + + + Adds a range of values + + + + + + Gets the current count. + + + + + Gets the map frame of this layer collection + + + + + Gets or sets the ParentGroup for this layer collection, even if that parent group + is not actually a map frame. + + + + + LayerEnumerator + + + + + Creates a new instance of LayerEnumerator + + + + + Calls the Dispose method + + + + + Moves to the next member + + boolean, true if the enumerator was able to advance + + + + Resets to before the first member + + + + + Retrieves the current member as an ILegendItem + + + + + Returns the current member as an object + + + + + Creates a new instance of LayerEventArgs + + + + + Gets a layer + + + + + This is a class that organizes a list of renderable layers into a single "view" which might be + shared by multiple displays. For instance, if you have a map control and a print preview control, + you could draw the same data frame property on both, just by passing the graphics object for each. + Be sure to handle any scaling or translation that you require through the Transform property + of the graphics object as it will ultimately be that scale which is used to back-calculate the + appropriate pixel sizes for point-size, line-width and other non-georeferenced characteristics. + + + + + The Constructor for the MapFrame object + + + + + + + + + + + Draws the layers icon to the legend + + + + + + + Suspends firing the ExtentsChanges event. It only fires if all suspension is gone. + + + + + Resumes firing the method, and will fire it automatically if any changes have occurred. + + + + + This will create a new layer from the featureset and add it. + + Any valid IFeatureSet that does not yet have drawing characteristics + + + + This adjusts the extents when ZoomToLayer is called in one of the internal layers. + + + + + + + Zooms to the envelope if no envelope has been established for this frame. + + + + + + + Fires the ExtentsChanged event + + + + + + Fires the ExtentsChanged event + + + + + This is responsible for wiring the ZoomToLayer event from any layers + in the map frame whenever the layer collection is changed. + + + + + + This is responsible for unwiring the ZoomToLayer event. + + + + + + Occurs when the visible region being displayed on the map should update + + + + + Occurs after zooming to a specific location on the map and causes a camera recent. + + + + + Drawing layers are tracked separately, and do not appear in the legend. + + + + + Overrides the default behavior for groups, which should return null in the + event that they have no layers, with a more tolerant, getting started + behavior where geographic coordinates are assumed. + + + + + Gets the container control that this MapFrame belongs to. + + + + + + + + If this is false, then the drawing function will not render anything. + Warning! This will also prevent any execution of calculations that take place + as part of the drawing methods and will also abort the drawing methods of any + sub-members to this IRenderable. + + + + + Gets the currently selected layer. This will be an active layer that is used for operations. + + + + + Controls the smoothing mode. Default or None will have faster performance + at the cost of quality. + + + + + This should be the geographic extents visible in the map. + + + + + This can be used as a component to work as a LayerManager. This also provides the + very important DefaultLayerManager property, which is where the developer controls + what LayerManager should be used for their project. + + + + + Creates a new instance of the LayerManager class. A data manager is more or less + just a list of data providers to use. The very important + LayerManager.DefaultLayerManager property controls which LayerManager will be used + to load data. By default, each LayerManager sets itself as the default in its + constructor. + + + + + Checks a dialog filter and returns a list of just the extensions. + + The Dialog Filter to read extensions from + A list of extensions + + + + This opens a file, but populates the dialog filter with only raster formats. + + An IRaster with the data from the file specified in an open file dialog + + + + This opens a file, but populates the dialog filter with only raster formats. + + An IFeatureSet with the data from the file specified in a dialog + + + + This attempts to open the specified raster file and returns an associated layer + + The string fileName to open + An IRaster with the data from the file specified in an open file dialog + + + + This attempts to open the specified vector file and returns an associated layer + + the string fileName to open + An IFeatureSet with the data from the file specified in a dialog + + + + Opens a new layer and automatically adds it to the specified container. + + The container (usually a LayerCollection) to add to + The layer after it has been created and added to the container + + + + This launches an open file dialog and attempts to load the specified file. + + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + A Layer + + + + This launches an open file dialog and attempts to load the specified file. + + A Layer created from the file + + + + Attempts to call the open fileName method for any ILayerProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + + + + Opens a new layer and automatically adds it to the specified container. + + A String fileName to attempt to open. + The container (usually a LayerCollection) to add to + The layer after it has been created and added to the container + + + + This launches an open file dialog and attempts to load the specified file. + + A String fileName to attempt to open. + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + A Layer + + + + Attempts to call the open fileName method for any ILayerProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this LayerManager. + A container to open this layer in + Specifies the progressHandler to receive progress messages. This value overrides the property on this LayerManager. + An ILayer + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance. + The string short name of the driver for creating the raster. + The number of columns in the raster. + The number of rows in the raster. + The number of bands to create in the raster. + The data type to use for the raster. + The options to be used. + A new IRasterLayer. + + + + This opens a file, but populates the dialog filter with only raster formats. + + for now an ILayerSet + + + + Triggers the DirectoryProvidersLoaded event + + + + + This should be called once all the permitted directories have been set in the code. + This will not affect the PreferredProviders or the general list of Providers. + These automatically have the lowest priority and will only be used if nothing + else works. Use the PreferredProviders to force preferential loading of + a plugin LayerProvider. + + A list of just the newly added LayerProviders from this method. + + + + Given a string fileName for the "*.dll" file, this will attempt to load any classes that implement the + ILayerProvder interface. + + The string path of the assembly to load from. + A list that contains only the providers that were just loaded. This may be a list of count 0, but shouldn't return null. + + + + Gets or sets the implemenation of ILayerManager for the project to use when + accessing data. This is THE place where the LayerManager can be replaced + by a different data manager. If you add this data manager to your + project, this will automatically set itself as the DefaultLayerManager. + However, since each DM will do this, you may have to control this manually + if you add more than one LayerManager to the project in order to set the + one that will be chosen. + + + + + Gets or sets a temporary list of active project layers. This is designed to house + the layers from a map frame when the property grids are shown for layers in that + map frame. This list on the DefaultLayerManager is what is used to create the + list that populates dropdowns that can take a Layer as a parameter. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the list of ILayerProviders that should be used in the project. + + + + + Gets or sets the path (either as a full path or as a path relative to + the DotSpatial.dll) to search for plugins that implement the ILayerProvider interface. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the dialog read filter to use for opening data files that are specifically raster formats. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Sets the default condition for how this data manager should try to load layers. + This will be overridden if the inRam property is specified as a parameter. + + + + + Gets or sets a dictionary of ILayerProviders with corresponding extensions. The + standard order is to try to load the data using a PreferredProvider. If that + fails, then it will check the list of dataProviders, and finally, if that fails, + it will check the plugin Layer Providers in directories. + + + + + Gets or sets a progress handler for any open operations that are intiated by this + LayerManager and don't override this value with an IProgressHandler specified in the parameters. + + + + + Occurs after the directory providers have been loaded into the project. + + + + + DataProviders + + + + + Creates a new instance of DataProviders + + Specifies a list of IDataProviders + + + + Gets the list of providers for this event. + + + + + Creates a new instance of LayerEventArgs + + + + + Gets a boolean that indicates whether or not the layer is selected + + + + + LegendIcon + + + + + Creates a new instance of LegendIcon + + + + + Gets the legend symbol size (as an icon size) + + + + + + Draws the icon to the legend + + + + + + + The icon to draw for this legend item + + + + + Contains extension methods for ILegendItems + + + + + This method starts with this legend item and tests to see if it can contain + the specified target. As it moves up the + + This legend item + The target legend item to test + An ILegendItem that is one of the parent items of this item, but that can receive the target. + + + + Given the starting position, which might not be able to contain the drop item, + determine the index in the valid container where this item should end up. + + The legend item that may not be a sibling or be able to contain the drop item + The item being added to the legend + The integer index of the valid container where insertion should occur when dropping onto this item. + + + + Searches through the LegendItems recursively, looking for the 0 index + member of the deepest part of the tree. + + + + + + + This method starts with this legend item and searches through the + parent groups until it finds a valid mapframe. + + The ILegendItem to start from + The IMapFrame that contains this item. + + + + LegendType + + + + + Schemes can contain symbols and be contained by layers + + + + + The ability to contain another layer type is controlled by CanReceiveItem instead + of being specified by these pre-defined criteria. + + + + + Groups can be contained by groups, and contain groups or layers, but not categories or symbols + + + + + Layers can contain symbols or categories, but not other layers or groups + + + + + Symbols can't contain anything, but can be contained by layers and categories + + + + + MatchableEM + + + + + This tests the public properties from the two objects. If any properties implement + the IMatchable interface, and do not match, this returns false. If any public + properties are value types, and they are not equal, then this returns false. + + This matchable item + The other item to compare to this item + Boolean, true if there is a match + + + + This class simply stores enough information for the appropriate menu item to be + generated. It is not the Windows Forms MenuItem. + + + + + Creates a new instance of the menu item + + The name or text to appear for this item + The icon to draw for this menu item + The click event handler + + + + Creates a new instance of the menu item + + The name or text to appear for this item + The icon to draw for this menu item + The click event handler + + + + Creates a new instance of the menu item + + The name or text to appear for this item + The click event handler + + + + Creates a new instance of the menu item + + The name or text to appear for this item + + + + Gets or sets the name for this menu item + + + + + Gets or sets the icon for this menu item + + + + + Gets or sets the image for this menu item + + + + + Gets or sets the set of sub-menu items. + + + + + The handler for the click event. + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Zeichenfolge, die Data ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Creating Shaded Relief ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Painting color scheme to bitmap. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Painting Hillshade To Bitmap ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Export Data ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The closing bracket wasn't found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The expression is empty. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The expression contains empty fields. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The following field wasn't found: ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No left operand was found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The value is not a number: ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Expected operand. Found character {0} at position {1}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed to find operation. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Operation not supported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Expected operator. Found character {0} at position {1}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die There is an operator in place of a value. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die + operation isn't allowed for boolean values. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No right operand was found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The expression contains unpaired square brackets. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The expression contains unpaired text quotes. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Division by zero. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Create Layer from Selected Features ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Join Excel file 'Data' Label ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Label Setup ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Labeling ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Select All ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Selection ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unselect All ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Zoom to Selected Features ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The file %S can't be deleted, probably because it is currently in use by another application. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Properties ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Create Group ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Map Layers ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Remove Map Frame ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Zoom to Map Frame ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The specified file type is not supported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An incompatible feature type was supplied and was not of type Line. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The argument %S cannot be null. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An incompatible feature type was supplied and was not of type Point. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An incompatible feature type was supplied and was not of type polygon. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Properties ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Remove Layer ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Set Dynamic Visibility Scale ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Zoom to Layer ähnelt. + + + + + Calculates a new rectangle by using the input points to define the far corners. + The position of the points doesn't matter. + + One of the points to form a rectangle with. + The second point to use when drawing a rectangle. + A Rectangle created from the points. + + + + ILayerProvider + + + + + This open method is only called if this plugin has been given priority for one + of the file extensions supported in the DialogReadFilter property supplied by + this control. Failing to provide a DialogReadFilter will result in this plugin + being added to the list of DataProviders being supplied under the Add Other Data + option in the file menu. + + A string specifying the complete path and extension of the file to open. + A boolean that, if ture, will request that the data be loaded into memory + Any valid IContainer that should have the new layer automatically added to it + An IProgressHandler interface for status messages + A List of IDataSets to be added to the Map. These can also be groups of datasets. + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided on this object. + + + + + Gets a prefereably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This provides a basic description of what your provider does. + + + + + A DataProvider that is specific to raster formats. + + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance. + The string short name of the driver for creating the raster. + The number of columns in the raster. + The number of rows in the raster. + The number of bands to create in the raster. + The data type to use for the raster. + The options to be used. + A new IRaster. + + + + IFeatureProvider + + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance + Point, Line, Polygon etc. Sometimes this will be specified, sometimes it will be "Unspecified" + Boolean, true if the dataset should attempt to store data entirely in ram + The container for this layer. This can be null. + An IProgressHandler for status messages. + An IRaster + + + + Position2D is much simpler than a typical geometric construct, using fields instead of properties to make it work faster. + + + + + The position in the X, or horizontal direction + + + + + The position in the Y or vertical direction + + + + + Creates a new instance of Position2D + + + + + Creates a new position2D class using the specified coordinates + + The X or horizontal coordinate + The Y or vertical coordinate + + + + Randomizes the position by selecting a random position from -1000 to 1000 for X and Y + + The random number generator so that a seed can be chosen. + + + + Creates a valid 2D coordinate using this position2D class + + + + + + This is a custom (predefined) symbolizer which is displayed in the 'Predefined symbol' control. + + + + + Interface for a predefined symbolizer which can be stored in a xml symbolizer file. + + + + + Jiri's code to save to XML + + The xml data source to load the symbology from + + + + Jiri's code to load from XML + + The xml Data source to load the symbology from + A Unique name for the symbology item + + + + Jiri's code to load from XML + + The xml Data source to load the symbology from + The organizational group or category + The string name within the specified group or category + + + + Gets or sets the symbolizer for this predifined symbolizer + + + + + Gets or sets the string name for this predefined symbolizer + + + + + Gets or sets the string group for this predefined symbolizer + + + + + Gets or sets the unique name for this predefined symbolizer. + + + + + Gets the symbolizer type of this predefined symbolizer + + + + + Constructs a new instance of a custom symbolizer + + + + + Creates a new instance of CustomSymbolizer + + + + + Jiri's code to save to XML + + The xml data source to load the symbology from + + + + Jiri's code to load from XML + + The xml Data source to load the symbology from + A Unique name for the symbology item + + + + Jiri's code to load from XML + + The xml Data source to load the symbology from + The organizational group or category + The string name within the specified group or category + + + + Gets or sets the symbolizer for this predifined symbolizer + + + + + Gets or sets the string name for this predefined symbolizer + + + + + Gets or sets the string group for this predefined symbolizer + + + + + Gets or sets the unique name for this predefined symbolizer. + + + + + The type of the symbolizer (point, line, polygon) + + + + + Creates a new CustomSymbolizer for symbolizing lines + + + + + Creates a new Custom Line symbolizer with the specified properties + + the unique name + the name of the custom symbolizer + the map category of the custom symbolizer + the associated line symbolizer + + + + Gets or sets the line symbolizer + + //Editor(typeof(LineSymbolizerEditor), typeof(UITypeEditor)) + + + + This class provides a list of predefined symbolizers. + In the current implementation the symbolizers are 'hard-coded'. + In other implementations they will be loaded from a xml resource file. + + + + + The interface IPredefinedLineSymbolProvider defines methods to save and load predefined + line symbolizers from a xml file or from another source. + + + + + Loads a list of custom line symbolizers from a data file + + The file name + The list of custom line symbolizers + + + + Saves a list of custom line symbolizers to a data file + + + + + + Creates a new instance of PredefinedLineSymbolProvider + + + + + Gets a string array of all available categories (groups) of custom predefined symbols + + + + + Returns all available predefined custom line symbols + + A list of vailable custom line symbols + + + + Gets a list of all predefined custom symbols that belong to the specific category + + The name of the category group + The list of custom symbols + + + + Loads a list of custom line symbolizers from a binary serialized file + + The serialized binary file + The list of custom line symbolizers + + + + Saves + + + + + + Creates a new CustomSymbolizer for symbolizing Points + + + + + Creates a new Custom Point symbolizer with the specified properties + + the unique name + the name of the custom symbolizer + the map category of the custom symbolizer + the associated Point symbolizer + + + + Gets or sets the Point symbolizer + + + [Editor(typeof(PointSymbolizerEditor), typeof(UITypeEditor))] + + + + + Creates a new CustomSymbolizer for symbolizing Polygons + + + + + Creates a new Custom Polygon symbolizer with the specified properties + + the unique name + the name of the custom symbolizer + the map category of the custom symbolizer + the associated Polygon symbolizer + + + + Gets or sets the Polygon symbolizer + + + [Editor(typeof(PolygonSymbolizerEditor), typeof(UITypeEditor))] + + + + + Extension methods for a collection of custom symbolizers + + + + + Saves a list of custom line symbolizers to a file. + + The list of custom line symbolizers + the file name + + + + This class returns a list of predefined symbolizers. + In the current implementation the symbolizers are 'hard-coded'. + In other implementations they will be loaded from a xml resource file. + + + + + Creates a new instance of PredefinedLineSymbolProvider + + + + + Gets a string array of all available categories (groups) of custom predefined symbols + + + + + The available feature symbolizer types + + + + + The type is PointSymbolizer + + + + + The type is LineSymbolizer + + + + + The type is PolygonSymbolizer + + + + + The type is RasterSymbolizer + + + + + The type of the symbolizer is unknown + + + + + Gets the first member in the enumerable collection of property info with the specified name. + + + + + Determines whether there is a member with the specified name + + + + + Extensions for class + + + + + Generates a boolean at random from this generator. + + THe random class that generates the random content. + A boolean that has equal probability of being on or off. + + + + Extends the Random class to also allow it to generate random colors + + This random number generator + + + + Generates a floating point value from 0 to 1 + + The random class to extend + A new randomly created floating point value from 0 to 1 + + + + Generates a random floating point value from 0 to the specified extremeValue, which can + be either positive or negative. + + This random class + The floating point maximum for the number being calculated + A value ranging from 0 to ma + + + + Calculates a random floating point value that ranges between (inclusive) the specified minimum and maximum values. + + The random class to generate the random value + The floating point maximum + The floating point minimum + A floating point value that is greater than or equal to the minimum and less than or equal to the maximum + + + + Given any enumeration of type T, this will return a random instance of that enumeration + + The type of the enumeration + This random generator + The T type to generate + + + + Generates an array of boolean values that ranges from minLength to maxLength + + The Random class for generating random values + THe minimum length of the array + The maximum length of the array + An array of boolean values. + + + + Numeric range using doubles + + + + + Boolean, true if the upper bounds includes the maximum value. + + + + + The maximum value. If this is null, the upper range is unbounded. + + + + + Boolean, true if the the lower bounds includes the minimum value. + + + + + The minimum value. If this is null, the lower range is unbounded. + + + + + Creates a new instance of Range (with undefined interval) + + + + + Creates a new instance of Range + + Either bound of the range + The other bound of the range + + + + Creates an equality type range where both the minimum and maximum are the + same value and both are inclusive. + + + + + + A string expression that can be two separate numbers separated by a dash, + + + + + + Expresses this range in string form. By default, ranges include the maximum, + and exclude the minimum. A null value for one expression will result in a + a semi-unbounded range using the greater than or less than symbols. A null + expression for both values is completely unbounded and will result in a string + that reads like [All Values]. + + A string representing the range. + + + + This is a slightly more complex specification where the numeric formatting + controls how the generated string will appear. + + The interval snap method + This is only used for rounding or significant figures, but controls those options + A string equivalent of this range, but using a number format. + + + + Generates a valid SQL query expression for this range, using the field string + as the member being compared. The field string should already be bound in + brackets, or put together as a normal composit like "[males]/[pop1990]" + + The field name to build into an expression. This should already be wrapped in square brackets. + The string SQL query expression. + + + + Tests to determine if this range contains the specified double value. + + the double value to test + Boolean, true if the value is within the current bounds. + + + + If the minimum and maximum are out of order, this reverses them. + + + + + Gets or sets teh Minimum value. If this is null, the lower range is unbounded. + + + + + The maximum value. If this is null, the upper range is unbounded. + + + + + Boolean, true if the the lower bounds includes the minimum value. + + + + + Boolean, true if the upper bounds includes the maximum value. + + + + + BinaryLayerProvider + + + + + Creates a new BinaryRasterLayer + + IRasterLayer + + + + Opens an existing raster and returns a layer containing it + + The string fileName to open + Opens in ram + A container to automatically add this layer to + Returns progress + An ILayer + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided on this object. + + + + + Gets a prefereably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This is a basic description that will fall next to your plugin in the Add Other Data dialog. + This will only be shown if your plugin does not supply a DialogReadFilter. + + + + + ColorCategory + + + + + IColorCategory + + + + + This is primarilly used in the BiValue situation where a color needs to be generated + somewhere between the startvalue and the endvalue. + + The integer value to be converted into a color from the range on this colorbreak + A color that is selected from the range values. + + + + Gets or sets how the color changes are distributed across the + BiValued range. If IsBiValue is false, this does nothing. + + + + + Gets or sets the second of two colors to be used. + This is only used for BiValued breaks. + + + + + This not only indicates that there are two values, + but that the values are also different from one another. + + + + + Gets or sets the color to be used for this break. For + BiValued breaks, this only sets one of the colors. If + this is higher than the high value, both are set to this. + If this equals the high value, IsBiValue will be false. + + + + + Creates a new instance of ColorCategory + + + + + Creates a ColorBreak that has a single value, which can be an object of any type. + The LowValue field will contain this single value. + + The value to test. + + + + Creates a ColorBreak that has a single value, which can be an object of any type. + The LowValue field will contain this single value. + + The value to test. + The color to use as the low value. + + + + Creates a new color category, but doesn't specify the colors themselves. + + The start value + The end value + + + + Creates a bi-valued colorbreak that will automatically test which of the specified values is higher + and use that as the high value. The other will become the low value. This will be set to a + bi-value colorbreak. + + One of the values to use in this colorbreak. + The other value to use in this colorbreak. + The color to assign to the higher of the two values + The color to assign to the lower of the two values + + + + Fires the EditItem event. If e returns handled, then this will not launch the default editor + + The HandledEventArgs + + + + + + + This is primarily used in the BiValue situation where a color needs to be generated + somewhere between the start value and the end value. + + The value to be converted into a color from the range on this color break + A color that is selected from the range values. + + + + Paints legend symbol + + + + + + + Occurs when this ColorBreak received instructions to show an editor. If this is + handled, then no action will be taken. + + + + + Gets or sets custom actions for ColorCategory + + + + + Gets or sets how the color changes are distributed across the + BiValued range. If IsBiValue is false, this does nothing. + + + + + Gets or sets the second of two colors to be used. + This is only used for BiValued breaks. + + + + + This not only indicates that there are two values, + but that the values are also different from one another. + + + + + Gets or sets the color to be used for this break. For + BiValued breaks, this only sets one of the colors. If + this is higher than the high value, both are set to this. + If this equals the high value, IsBiValue will be false. + + + + + Gets or sets the opacity for the low color. This was added to save opacity to dspx. + + + + + Gets or sets the opacity for the high color. This was added to save opacity to dspx. + + + + + ColorCategoryCollection + + + + + Default constructor for the PolygonCategoryCollection class. + + + + + Initializes a new PolygonCategoryCollection instance with the supplied scheme. + + The scheme to use ofr this collection. + + + + Ensures that newly added categories can navigate to higher legend items. + + The newly added legend item. + + + + Changes the parent item of the specified category + + + + + + Updates all of the categories so that they have a parent item that matches the + schemes parent item. + + + + + Gets or sets the parent scheme for this collection + + + + + DrawingScheme + + + + + Creates a new instance of DrawingScheme + + + + + Creates the category using a random fill color + + The base color to use for creating the category + For points this is the larger dimension, for lines this is the largest width + A new IFeatureCategory that matches the type of this scheme + + + + Draws the regular symbolizer for the specified cateogry to the specified graphics + surface in the specified bounding rectangle. + + The integer index of the feature to draw. + The Graphics object to draw to + The rectangular bounds to draw in + + + + Adds a new scheme, assuming that the new scheme is the correct type. + + The category to add + + + + Reduces the index value of the specified category by 1 by + exchaning it with the category before it. If there is no + category before it, then this does nothing. + + The category to decrease the index of + + + + Removes the specified category + + The category to insert + + + + Inserts the category at the specified index + + The integer index where the category should be inserted + The category to insert + + + + Re-orders the specified member by attempting to exchange it with the next higher + index category. If there is no higher index, this does nothing. + + The category to increase the index of + + + + Suspends the category events + + + + + Resumes the category events + + + + + Clears the categories + + + + + Generates the break categories for this scheme + + + + + THe defaul + + + + + + + Creates a list of generated colors according to the convention + specified in the EditorSettings. + + The integer count of the number of colors to create. + The list of colors created. + + + + Uses the settings on this scheme to create a random category. + + A new ICategory + + + + Creates the colors in the case where the color range controls are not being used. + This can be overriddend for handling special cases like ponit and line symbolizers + that should be using the template colors. + + The integer count to use + + + + + The default behavior for creating ramp colors is to create colors in the mid-range for + both lightness and saturation, but to have the full range of hue + + + + + + + Creates a random color, but accepts a given random class instead of creating a new one. + + + + + + + Applies the snapping rule directly to the categories, based on the most recently + collected set of values, and the current VectorEditorSettings. + + + + + Uses the currently calculated Values in order to calculate a list of breaks + that have equal separations. + + + + + + + Applies the snapping type to the given breaks + + + + + Searches the list and returns the nearest value in the list to the specified value. + + + + + + + + Attempts to create the specified number of breaks with equal numbers of members in each. + + The integer count. + A list of breaks. + + + + Sets the names for the break categories + + + + + + Gets or sets the editor settings that control how this scheme operates. + + + + + This is cached until a GetValues call is made, at which time the statistics will + be re-calculated from the values. + + + + + Gets or sets the list of breaks for this scheme + + + + + Gets the current list of values calculated in the case of numeric breaks. + This includes only members that are not excluded by the exclude expression, + and have a valid numeric value. + + + + + Breaks for value ranges + + + + + A double value for the maximum value for the break + + + + + The string name + + + + + Creates a new instance of a break + + + + + Creates a new instance of a break with a given name + + The string name for the break + + + + IColorScheme + + + + + Applies the specified color scheme from a list of predefined scheme options. + + The predefined color scheme + The raster that provides values to govern symbolizing + + + + Creates the categories for this scheme based on statistics and values + sampled from the specified raster. + + The raster to use when creating categories + + + + Gets the values from the raster. If MaxSampleCount is less than the + number of cells, then it randomly samples the raster with MaxSampleCount + values. Otherwise it gets all the values in the raster. + + The raster to sample + + + + Gets or sets the floating point value for the opacity + + + + + Gets or sets the collection of color scheme categories to use. + + + + + gets or sets the editor settings for controls that affect the color scheme. + + + + + Creates a new instance of ColorScheme + + + + + Creates a new instance of a color scheme using a predefined color scheme and the minimum and maximum specified + from the raster itself + + The predefined scheme to use + The raster to obtain the minimum and maximum settings from + + + + This creates a new scheme, applying the specified color scheme, and using the minimum and maximum values indicated. + + The predefined color scheme + The minimum + The maximum + + + + Applies the specified color scheme and uses the specified raster to define the + minimum and maximum to use for the scheme. + + + + + + + Creates the category using a random fill color + + The base color to use for creating the category + For points this is the larger dimension, for lines this is the largest width + A new IFeatureCategory that matches the type of this scheme + + + + Creates the categories for this scheme based on statistics and values + sampled from the specified raster. + + The raster to use when creating categories + + + + Gets the values from the raster. If MaxSampleCount is less than the + number of cells, then it randomly samples the raster with MaxSampleCount + values. Otherwise it gets all the values in the raster. + + The raster to sample + + + + Applies the specified color scheme and uses the specified raster to define the + minimum and maximum to use for the scheme. + + ColorSchemeType + THe minimum value to use for the scheme + THe maximum value to use for the scheme + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + + + + Occurs when setting the parent item and updates the parent item pointers + + + + + + Draws the category in the specified location. + + + + + + + + Adds the specified category + + + + + + Attempts to decrease the index value of the specified category, and returns + true if the move was successful. + + The category to decrease the index of + + + + + Removes the specified category + + + + + + Inserts the item at the specified index + + + + + + + Attempts to increase the position of the specified category, and returns true + if the index increase was successful. + + The category to increase the position of + Boolean, true if the item's position was increased + + + + Suspends the change item event from firing as the list is being changed + + + + + Allows the ChangeItem event to get passed on when changes are made + + + + + Clears the categories + + + + + Gets or sets the floating point value for the opacity + + + + + Gets or sets the raster categories + + + + + Gets or sets the raster editor settings associated with this scheme. + + + + + Some of the more common relationships between elevation and geographic coordinates + + + + + The elevation values are in centimeters, but the geographic projection uses decimal degrees + + + + + The elevation values are in centimeters, but the geographic projection uses Meters + + + + + The elevation values are in centimeters, but the geographic projection uses Feet + + + + + The elevation values are in feet, but the geographic projection uses decimal degrees + + + + + The elevation values are in feet, but the geographic projection uses meters + + + + + The elevation values are in feet, but the geographic projection uses feet + + + + + The elevation values are in meters, but the geographic projection uses decimal degrees + + + + + The elevation values are in meters, but the geographic projection uses meters + + + + + The elevation values are in meters, but the geographic projection uses feet + + + + + A raster layer describes using a single raster, and the primary application will be using this as a texture. + + + + + Creates a bmp texture and saves it to the same fileName as the raster, but with a bmp ending. + This also generates a bpw world file for the texture. + + + + + Creates a bmp texture and saves it to the same fileName as the raster but with a bmp ending. + This also generates a bpw world file for the texture. + + An implementation of IProgressHandler to recieve status messages + + + + Creates a bmp texture and saves it to the specified fileName. The fileName should end in bmp. + This also generates a bpw world file for the texture. + + The string fileName to write to + The image band type. + + + + Creates a bmp texture and saves it to the specified fileName. The fileName should end in bmp. + This also generates a bpw world file for the texture. + + The string fileName to write to + The progress handler for creating a new bitmap. + The image band type. + + + + Gets or sets the boundaries of the raster. + + + + + Gets or sets the item that controls rendering this raster as a bitmap. + + + + + Gets the geographic width of the cells for this raster (East-West) + + + + + Gets the geographic height of the cells for this raster (North-South) + + + + + Gets or sets the underlying dataset raster for this object + + + + + Gets the data type of the values in this raster. + + + + + Gets the eastern boundary of this raster. + + + + + This is a conversion factor that is required in order to convert the elevation units into the same units as the geospatial projection for the latitude and logitude values of the grid. + + + + + Gets the exaggeration beyond normal elevation values. A value of 1 is normal elevation, a vlaue of 0 would be flat, + while a value of 2 would be twice the normal elevation. This applies to the three-dimensional rendering and is + not related to the shaded relief pattern created by the texture. + + + + + Gets the fileName where this raster is saved. + + + + + Gets the maximum value of this raster. If this is an elevation raster, this is also the top. + + + + + Gets the minimum value of this raster. If this is an elevation raster, this is also the bottom. + + + + + Gets the value that is used when no actual data exists for the specified location. + + + + + Gets the northern boundary of this raster. + + + + + Gets the number of bands in this raster. + + + + + Gets the number of columns in this raster. + + + + + Gets the number of rows in this raster. + + + + + Gets the southern boundary of this raster. + + + + + Gets or sets the collection of symbolizer properties to use for this raster. + + + + + Gets the western boundary of this raster. + + + + + IRasterSymbolizer + + + + + Creates a bmp from the in-memory portion of the raster. + + + + + + Causes the raster to calculate a hillshade based on this symbolizer + + + + + Causes the raster to calculate a hillshade using the specified progress handler + + The progress handler to use + + + + Gets the color for a specific row and column. This does not include any hillshade information. + + The double value to find in the colorbreaks. + A Color + + + + Creates a bitmap based on the specified RasterSymbolizer + + the bitmap to paint to + The progress handler + + + + Sends a symbology updated event, which should cause the layer to be refreshed. + + + + + Indicates that the bitmap has been updated and that the colorscheme is currently + synchronized with the characteristics of this symbolizer. This also fires the + ColorSchemeChanged event. + + + + + This event occurs after a new bitmap has been created to act as a texture. + + + + + If this value is true, whenever a texture is created, the vector layers are drawn onto the texture. + + + + + Gets or sets the editor settings class to help setup up the symbology controls appropriately. + + + + + This is kept separate from extrusion to reduce confusion. This is a conversion factor that will + convert the units of elevation into the same units that the latitude and longitude are stored in. + To convert feet to decimal degrees is around a factor of .00000274. This is used only in the + 3D-context and does not affect ShadedRelief. + + + + + A float value expression that modifies the "height" of the apparent shaded relief. A value + of 1 should show the mountains at their true elevations, presuming the ElevationFactor is + correct. A value of 0 would be totally flat, while 2 would be twice the value. This controls + the 3D effects and has nothing to do with the creation of shaded releif on the texture. + + + + + Gets the calculated hillshade map, or re-calculates it if something has changed + + + + + Gets or sets the symbol characteristics for the border of this raster + + + + + Gets or sets a boolean that determines whether to treat the values as if they are elevation + in the 3-D context. If this is true, then it will automatically use this grid for + calculating elevation values. + + + + + Gets or sets whether or not this raster should render itself + + + + + Gets or sets whether or not htis raster should be anti-alliased + + + + + Gets or sets the color to use if the value of the cell corresponds to a No-Data value + + + + + Gets or sets a float value from 0 to 1, where 1 is fully opaque while 0 is fully transparent + + + + + Gets or sets the raster that should provide elevation values, but only if "IsElevation" is false. + + + + + This should be set to true if the elevation values have changed + + + + + Gets or sets the parent layer. This is not always used, but can be useful for symbolic editing + that may require a bitmap to be drawn with draped vector layers. + + + + + Gets or sets the coloring scheme for the raster. + + + + + Gets or sets the characteristics of the shaded relief. This only affects the coloring, + and will not control any 3-D properties. + + + + + This should be set to true if the texture needs to be reloaded from a file + + + + + IShadedRelief + + + + + Returns the normalized light direction in X, Y, Z format + + + + + + Occurs when the shading for this object has been altered. + + + + + Gets or sets a float specifying how strong the ambient directional light is. This should probably be about 1. + + + + + This is kept separate from extrusion to reduce confusion. This is a conversion factor that will + convert the units of elevation into the same units that the latitude and longitude are stored in. + To convert feet to decimal degrees is around a factor of .00000274 + + + + + A float value expression that modifies the "height" of the apparent shaded relief. A value + of 1 should show the mountains at their true elevations, presuming the ElevationFactor is + correct. A value of 0 would be totally flat, while 2 would be twice the value. + + + + + Gets or sets a boolean value indicating whether the ShadedRelief should be used or not. + + + + + This specifies a float that should probably be around 1, which controls the light intensity. + + + + + Gets the zenith angle in degrees measured with 0 at the horizon and 90 vertically up + + + + + The Azimuth light direction in degrees measured clockwise from North + + + + + Gets whether or not the values have been changed on this ShadedRelief more recently than + a HillShade map has been calculated from it. + + + + + Creates a new instance of VectorEditorSettings + + + + + Gets or sets the minimum value that will contribute to statistics + + + + + Gets or sets the maximum value that will contribute to statistics. + + + + + A raster layer describes using a single raster, and the primary application will be using this as a texture. + + + + + Gets or sets maximum number of cells which can be stored in memory. + By default it is 8000 * 8000. + + + + + Opens the specified fileName using the layer manager. + + + + + + + Opens the specified fileName and automatically creates a raster that can be used by this raster layer. + + The string fileName to use in order to open the file + The progress handler to show progress messages + + + + Creates a new raster layer using the progress handler defined on the DefaultLayerManager + + The raster to create this layer for + + + + Creates a new instance of RasterLayer + + The Raster + The Progress handler for any status updates + + + + This only updates the bitmap representation of the raster. It does not write to a file unless + the file is too large to fit in memory, in which case it will update the pyramid image. + + + + + This only updates the bitmap representation of this raster. This can be overridden, but currently + uses the default implementation. + + An implementation of IProgressHandler to receive status messages + + + + Creates a bmp texture and saves it to the specified fileName. + + The string fileName to write to + The color band type. + + + + Creates a new filename and saves the content from the current BitmapGetter to the + file format. This relies on the DataManager and will only be successful for + formats supported by the write format possibility. This will not update this raster + + The string fileName to write to + The progress handler for creating a new bitmap. + The band type ot use. + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Render the full raster block by block, and then save the values to the pyramid raster. + This will probably be nasty and time consuming, but what can you do. + + + + + + + + This does not have to be used to work, but provides a default implementation for writing bitmap, + and will be used by the MapRasterLayer class during file creation. + + + + + + Handles the situation for exporting the layer as a new source. + + + + + Occurs when this member should raise the shared event to show the property dialog for this raster layer. + + + + + + Reprojects the dataset for this layer. + + The target projection to use. + + + + Gets or sets custom actions for RasterLayer + + + + + Gets or sets the boundaries of the raster. + + + [Editor(typeof(Forms.PropertyGridEditor), typeof(UITypeEditor))] + [TypeConverter(typeof(Forms.GeneralTypeConverter))] + + + + + This is what the raster layer uses to retrieve a bitmap representing the specified + extent. This could later be redesigned to generate the bitmap on the fly, but I think + that that would be slow, so caching is probably better. + + + + + Gets the geographic height of the cells for this raster (North-South) + + + + + Gets the geographic width of the cells for this raster (East-West) + + + + + Gets or sets whether this should appear as checked in the legend. This is also how the + layer will + + + + + Gets the data type of the values in this raster. + + + + + Gets the eastern boundary of this raster. + + + + + This is a conversion factor that is required in order to convert the elevation units into the same units as the geospatial projection for the latitude and logitude values of the grid. + + + + + Obtains an envelope + + + + + + Gets the exaggeration beyond normal elevation values. A value of 1 is normal elevation, + a value of 0 would be flat, while a value of 2 would be twice the normal elevation. + This applies to the three-dimensional rendering and is not related to the shaded relief pattern + created by the texture. + + + + + Gets the fileName where this raster is saved. + + + + + If this is false, then the drawing function will not render anything. + Warning! This will also prevent any execution of calculations that take place + as part of the drawing methods and will also abort the drawing methods of any + sub-members to this IRenderable. + + + + + Gets or sets the complete list of legend items contained within this legend item + + + + + The text that will appear in the legend + + + + + Gets the maximum value of this raster. If this is an elevation raster, this is also the top. + + + + + Gets the minimum value of this raster. If this is an elevation raster, this is also the bottom. + + + + + Gets the value that is used when no actual data exists for the specified location. + + + + + Gets the northern boundary of this raster. + + + + + Gets the number of bands in this raster. + + + + + Gets the number of columns in this raster. + + + + + Gets the number of rows in this raster. + + + + + Gets or sets the underlying dataset + + + [TypeConverter(typeof(Forms.GeneralTypeConverter))] + [Editor(typeof(Forms.PropertyGridEditor), typeof(UITypeEditor))] + + + + + Gets or sets the collection of symbolzier properties to use for this raster. + [Editor(typeof(Forms.RasterColorSchemeEditor), typeof(UITypeEditor))] + [TypeConverter(typeof(Forms.GeneralTypeConverter))] + + + + + Gets the southern boundary of this raster. + + + + + Gets the western boundary of this raster. + + + + + Initializes a new instance of the ProjectionHelper class. + + The geographic extents to project to and from. + The view rectangle in pixels to transform with. + + + + Gets or sets the geographic extent to use. + + + + + Gets or sets the rectangular pixel region to use. + + + + + RasterSymbolizer + + + + + Creates a new instance of the raster symbolizer + + The parent item + + + + Creates a new instance of Raste + + + + + Causes the raster to calculate a hillshade based on this symbolizer + + + + + Causes the raster to calculate a hillshade using the specified progress handler + + The progress handler to use + + + + Creates a bmp from the in-memory portion of the raster. This will be stored as a + fileName with the same name as the current raster, but ends in bmp. + + + + + + Gets the color information for a specific value. This does not include any hillshade information. + + Specifies the value to obtain a color for. + A Color + + + + Sends a symbology updated event, which should cause the layer to be refreshed. + + + + + Creates a bitmap based on the specified RasterSymbolizer + + the bitmap to paint to + The progress handler + + + + Indicates that the bitmap has been updated and that the colorscheme is currently + synchronized with the characteristics of this symbolizer. This also fires the + ColorSchemeChanged event. + + + + + Fires the SymbologyUpdated event, which should happen after symbology choices are finalized, + a new texture has been created and we are ready for an update. + + + + + Fires the on color scheme changed event + + + + + Fires the SymbologyChanged event + + + + + This event occurs after a new bitmap has been created to act as a texture. + + + + + Occurs when the symbology has been changed + + + + + Occurs if any of the properties that would contribute to bitmap construction have changed + + + + + This should be set to true if the texture needs to be reloaded from a file + + + + + This should be set to true if the elevation values have changed + + + + + Gets or sets a boolean that indicates if the color has changed. + + + + + If this value is true, whenever a texture is created, the vector layers are drawn onto the texture. + + + + + Gets or sets the editor settings class to help setup up the symbology controls appropriately. + + + + + This is kept separate from extrusion to reduce confusion. This is a conversion factor that will + convert the units of elevation into the same units that the latitude and longitude are stored in. + To convert feet to decimal degrees is around a factor of .00000274. This is used only in the + 3D-context and does not affect ShadedRelief. + + + + + A float value expression that modifies the "height" of the apparent shaded relief. A value + of 1 should show the mountains at their true elevations, presuming the ElevationFactor is + correct. A value of 0 would be totally flat, while 2 would be twice the value. This controls + the 3D effects and has nothing to do with the creation of shaded releif on the texture. + + + + + Gets the calculated hillshade map, or re-calculates it if something has changed + + + + + Gets or sets the symbol characteristics for the border of this raster + + + + + Gets or sets a boolean that determines whether to treat the values as if they are elevation + in the 3-D context. If this is true, then it will automatically use this grid for + calculating elevation values. This does not affect ShadedRelief texture creation. + + + + + Gets or sets whether or not this raster should render itself + + + + + Gets or sets the color to use if the value of the cell corresponds to a No-Data value + + + + + Gets or sets the raster that should provide elevation values, but only if "IsElevation" is false. + + + + + Gets or sets the parent layer. This is not always used, but can be useful for symbolic editing + that may require a bitmap to be drawn with draped vector layers. + + + + + Gets or sets a float value from 0 to 1, where 1 is fully opaque while 0 is fully transparent + + + + + Gets or sets the characteristics of the shaded relief. This is specifically used + to control HillShade characteristics of the BitMap texture creation. + + + + + Gets or sets whether or not htis raster should be anti-alliased + + + + + Gets or sets the raster coloring scheme. + + + + + ShadedRelief + + + + + Creates a new instance of the ShadedRelief preset for elevation in feet and coordinates in decimal degrees + + + + + Creates a new instance of ShadedRelief based on some more common + elevation to goegraphic coordinate sysetem scenarios + + + + + Returns a normalized vector in 3 dimensions representing the angle + of the light source. + + + + + + Fires the ShadingChanged event + + + + + Occurs when the shading for this object has been altered. + + + + + Gets or sets a float specifying how strong the ambient directional light is. This should probably be about 1. + + + + + This is kept separate from extrusion to reduce confusion. This is a conversion factor that will + convert the units of elevation into the same units that the latitude and longitude are stored in. + To convert feet to decimal degrees is around a factor of .00000274 + + + + + A float value expression that modifies the "height" of the apparent shaded relief. A value + of 1 should show the mountains at their true elevations, presuming the ElevationFactor is + correct. A value of 0 would be totally flat, while 2 would be twice the value. + + + + + Gets or sets a boolean value indicating whether the ShadedRelief should be used or not. + + + + + Gets or sets the zenith angle for the light direction in degrees from 0 (at the horizon) to 90 (straight up). + + + + + Gets or sets a double that represents the light direction in degrees clockwise from North + + + + + This specifies a float that should probably be around 1, which controls the light intensity. + + + + + Gets whether or not the values have been changed on this ShadedRelief more recently than + a HillShade map has been calculated from it. + + + + + Specifies whether non-coordinate drawing properties like width or size + use pixels or map coordinates. If pixels are used, a "back transform" + to approximate pixel sizes. + + + + + Uses the simplest symbology possible, but can draw quickly + + + + + Symbol sizing parameters are based in world coordinates and will get smaller when zooming out like a real object. + + + + + The symbols approximately preserve their size as you zoom + + + + + Extends the ISelectable interface with some overloads that ignore the output affected areas + + + + + Clears the selection, and ignores the affected area. + + This selectable item + Boolean, true if members were removed from the selection + + + + This ignores the affected region and assumes that you want to use a selection based on + the Intersects selection mode. + + The ISelectable object + The region where selection should take place + The region in cases where tolerance is not used + Boolean, true if the selected state of any members of this item were altered + + + + Inverts the selection state of members that intersect the specified region. + The affected area will be returned. + + The IFeatureLayer to modify the selection for + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + The affected area to modify + Boolean, true if the selection state was modified by this action + + + + This ignores the affected region and assumes that you want to use a selection based on + the Intersects selection mode. + + This ISelectable + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + Boolean, true if any items were added to the selection + + + + Highlights the values in the specified region, and returns the affected area from the selection, + which should allow for slightly faster drawing in cases where only a small area is changed. + + The IFeatureLayer from which to select features + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + The geographic envelope of the region impacted by the selection. + True if any members were added to the current selection. + + + + This ignores the affected region and assumes that you want to use a selection based on + the Intersects selection mode. + + This ISelectable + The geographic envelope in cases like cliking near points where tolerance is allowed + The geographic region when working with absolutes, without a tolerance + Boolean, true if any items were added to the selection + + + + Un-highlights or returns the features that intersect with the specified region. + + The IFeatureLayer from which to unselect features. + The geographic envelope in cases like cliking near points where tolerance is allowed. + The geographic region when working with absolutes, without a tolerance. + The geographic envelope that will be visibly impacted by the change. + Boolean, true if members were removed from the selection. + + + + Normally, cloning an object starts with MemberwiseClone, which + creates a shallow copy of the object. For any members that + derive from the Descriptor, however, any public properties + or fields that implement ICloneable are copied (deep copy behavior). + This is not always desirable, even if the member CAN be copied. + This attribute causes the deep copy behavior to skip over + properties marked with this attribute. + + + + + LayerEventArgs + + + + + Creates a new instance of LayerEventArgs + + + + + Gets a layer + + + + + Size2D + + + + + Gets or sets the height + + + + + Gets or sets the width + + + + + Creates a new instance of Size2D + + + + + Creates a new instance of a Size2D + + The double width + The double height + + + + Tests for equality against an object. + + + + + + + Tests for equality against another size. + + the size to compare this size to + boolean, true if the height and width are the same in each case. + + + + Gets the string equivalent of this object + + + + + + Determines if the height and width are both equal + + + + + + + + Determiens if the height and width are not equal + + + + + + + + Returns the basic hash code for the object. + + + + + + Generates random doubles for the size from 1 to 100 for both the width and height + + + + + SnapShotEventArgs + + + + + Creates a new instance of SnapShotEventArgs + + + + + Gets the picture that was taken by the snapshot + + + + + This describes the three permitted states for legend items. + Items can have a checkbox or a symbol, but not both. + + + + + Display a checkbox next to the legend item + + + + + Draws a symbol, but also allows collapsing. + + + + + Display a symbol next to the legend item + + + + + Display only legend text + + + + + Global has some basic methods that may be useful in lots of places. + + + + + An instance of Random that is created when needed and sits around so we don't keep creating new ones. + + + + + Gets a cool Highlight brush for highlighting things + + The rectangle in the box + The color to use for the higlight + + + + + Draws a rectangle with ever so slightly rounded edges. Good for selection borders. + + The Graphics object + The pen to draw with + The rectangle to draw to. + + + + Obtains a system.Drawing.Rectangle based on the two points, using them as + opposite extremes for the rectangle. + + one corner point of the rectangle. + The opposing corner of the rectangle. + A System.Draing.Rectangle + + + + Returns a completely random opaque color. + + A random color. + + + + This allows the creation of a transparent color with the specified opacity. + + A float ranging from 0 for transparent to 1 for opaque + A Color + + + + This allows the creation of a transparent color with the specified opacity. + + A float ranging from 0 for transparent to 1 for opaque + A Color + + + + This allows the creation of a transparent color with the specified opacity. + + A float ranging from 0 for transparent to 1 for opaque + A Color + + + + Converts a colour from HSL to RGB + + Adapted from the algoritm in Foley and Van-Dam + A double representing degrees ranging from 0 to 360 and is equal to the GetHue() on a Color structure. + A double value ranging from 0 to 1, where 0 is gray and 1 is fully saturated with color. + A double value ranging from 0 to 1, where 0 is black and 1 is white. + A Color structure with the equivalent hue saturation and brightness + + + + Creates a new instance of MemberChangedEventArgs + + + + + Gets the Label that was updated + + + + + Gets the previous symbolizer that this label no longer uses. + + + + + Gets the new symbolizer that this label now uses. + + + + + ClassificationTypes + + + + + Each category is designed with a custom expression + + + + + Unique values are added + + + + + A Quantile scheme is applied, which forces the behavior of continuous categories. + + + + + IDrawingFilter + + + + + This will set all values to the default (0) category. Then, it will use the filter + expressions on the remaining categories to change the categories for those members. + This means that an item will be classified as the last filter that it qualifies for. + + The scheme of categories to apply to the drawing states + + + + Invalidates this drawing filter, forcing a re-creation + of the entire dictionary from the source featureset. + This should only be done if changes are made to the + feature list while SuspendChanges on the list is true. + + + + + If UseChunks is true, this uses the index value combined with the chunk size + to calculate the chunk, and also sets the category to the [0] category and the + selection state to unselected. This can be overridden in sub-classes to come up + with a different default state. + + The integer index to get the default state of + An IDrawnState + + + + Occurs after this filter has built its internal list of items. + + + + + Gets or sets the scheme category to use + + + + + Gets the integer chunk that the filter should use + + + + + Gets or sets the integer size of each chunk. Setting this to + a new value will cycle through and update the chunk on all + the features. + + + + + If the drawing state for any features has changed, or else if + the state of any members has changed, this will cycle through + the filter members and cache a new count. If nothing has + changed, then this will simply return the cached value. + + + + + Gets the default category for the scheme. + + + + + Gets the dictionary of drawn states that this drawing filter uses. + + + + + Gets the underlying list of features that this drawing filter + is ultimately based upon. + + + + + If chunks are being used, then this indicates the total count of chunks. + Otherwise, this returns 1 as everything is effectively in one chunk. + + + + + If UseSelection is true, this will get or set the boolean selection state + that will be used to select values. + + + + + This uses the feature as the key and attempts to find the specified drawn state + that describes selection, chunk and category. + + The feature + The strength is that if someone inserts a new member or re-orders + the features in the featureset, we don't forget which ones are selected. + The disadvantage is that duplicate features in the same featureset + will cause an exception. + + + + + This is less direct as it requires searching two indices rather than one, but + allows access to the drawn state based on the feature ID. + + The integer index in the underlying featureSet. + The current IDrawnState for the current feature. + + + + Gets or sets a boolean that indicates whether we should use the chunk + + + + + Gets or sets a boolean that indicates whether this filter should use the Selected + + + + + Gets or sets a boolean that indicates whether the filter should subdivide based on category. + + + + + Gets or sets a boolean that indicates whether the filter should consider the IsVisible property + + + + + Gets or sets a boolean that specifies whether to return visible, or hidden features if UseVisibility is true. + + + + + Creates a new instance of DrawingFilter without using any chunks. The use chunks + value will be false, and sub-categories will not be selected based on the chunk. + + + + + Creates a new instance of DrawingFilter, sub-dividing the features into chunks. + regardless of selection or category, chunks simply subdivide the filter + into chunks of equal size. + + + + + Creates a shallow copy + + Returns a shallow copy of this object. + + + + This will use the filter expressions on the categories to change the categories for those members. + This means that an item will be classified as the last filter that it qualifies for. + + The scheme of categories to apply to the drawing states + + + + If UseChunks is true, this uses the index value combined with the chunk size + to calculate the chunk, and also sets the category to the [0] category and the + selection state to unselected. This can be overridden in sub-classes to come up + with a different default state. + + The integer index to get the default state of + An IDrawnState + + + + Gets an enumator for cycling through exclusively the features that satisfy all the listed criteria, + including chunk index, selected state, and scheme category. + + An Enumerator for cycling through the values + + + + Invalidates this drawing filter, effectively eliminating all the original + categories, selection statuses, and only keeps the basic chunk size. + + + + + Fires the Initialized Event + + + + + This block of code actually cycles through the source features, and assigns a default + drawing state to each feature. I thought duplicate features would be less of a problem + then people re-ordering an indexed list at some point, so for now we are using + features to index the values. + + + + + Occurs after this filter has built its internal list of items. + + + + + Gets or sets the scheme category to use + + + + + Gets the integer chunk that the filter should use + + + + + Gets or sets the integer size of each chunk. Setting this to + a new value will cycle through and update the chunk on all + the features. + + + + + If the drawing state for any features has changed, or else if + the state of any members has changed, this will cycle through + the filter members and cache a new count. If nothing has + changed, then this will simply return the cached value. + + + + + Gets the default category for the scheme. + + + + + Gets the dictionary of drawn states that this drawing filter uses. + + + + + Gets the underlying list of features that this drawing filter + is ultimately based upon. + + + + + If chunks are being used, then this indicates the total count of chunks. + Otherwise, this returns 1 as everything is effectively in one chunk. + + + + + If UseSelection is true, this will get or set the boolean selection state + that will be used to select values. + + + + + This uses the feature as the key and attempts to find the specified drawn state + that describes selection, chunk and category. + + The feature + The strength is that if someone inserts a new member or re-orders + the features in the featureset, we don't forget which ones are selected. + The disadvantage is that duplicate features in the same featureset + will cause an exception. + + + + + This is less direct as it requires searching two indices rather than one, but + allows access to the drawn state based on the feature ID. + + The integer index in the underlying featureSet. + The current IDrawnState for the current feature. + + + + Gets or sets a boolean that indicates whether the filter should subdivide based on category. + + + + + Gets or sets a boolean that indicates whether we should use the chunk + + + + + Gets or sets a boolean that indicates whether this filter should use the Selected + + + + + Gets or sets the boolean indicating whether or not this feature should be drawn. + + + + + Gets or sets a boolean that specifies whether to return visible, or hidden features if UseVisibility is true. + + + + + DrawFeatures simply group the feature with characteristics like selected and category for easier tracking. + + + + + IDrawnFeature + + + + + Gets or sets the integer chunk that this item belongs to. + + + + + Gets or sets the scheme category + + + + + Gets or sets a boolean, true if this feature is currently selected + + + + + Gets or sets whether this feature is currently being drawn. + + + + + Creates a new instance of DrawnState class that helps to narrow down the features to be drawn. + + + + + Creates a new instance of a DrawnState class for subdividing features. + + A category that the feature belongs to + Boolean, true if the feature is currently selected + An integer chunk that this feature should belong to + A boolean indicating whether this feature is visible or not + + + + Not entirely sure about using these features this way. It might not work well with interfaces. + + + + + + Takes any object, but attempts to compare it with values as an IDrawnState. If it can satisfy + the IDrawnState interface and all the values are the same then this returns true. + + + + + + + Overrides the standard equal operator + + + + + + + + Overrides the not-equal to operator + + + + + + + + Gets or sets the scheme category + + + + + Gets or sets a boolean, true if this feature is currently selected + + + + + Gets or sets whether this feature is currently being drawn. + + + + + Gets or sets the integer chunk that this item belongs to. + + + + + Creates a new instance of StringEventArgs + + The string expression for this event args + + + + The string expression for this event. + + + + + FastDrawnState uses fields, not properties. + + + + + The category that describes the symbolic drawing for this item. + + + + + Boolean, true if this item should be drawn as being selected + + + + + A Boolean that indicates whether or not this feature should be drawn at all. + This should default to true. + + + + + Creates a blank fast drawn state + + + + + Creates a new FastDrawnState with the specified parameters + + + + + + + Overrides ToString to give a description of the FastDrawnState. + + + + + + Equality based on the Boolean and category settings + + The fast drawn state to compare with + + + + + For ordering in a dictionary, if get hash code is the same, then equals is used to test equality. + For performance, try to make sure that hash codes are different enough for organizing in the + dictionary, but are the same in cases where Category and Selected are the same. + + An integer hash code for this item. + + + + A Scheme category does not reference individual members or indices, but simply describes a symbolic representation that + can be used by an actual category. + + + + + IFeatureCategory + + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + This gets a single color that attempts to represent the specified + category. For polygons, for example, this is the fill color (or central fill color) + of the top pattern. If an image is being used, the color will be gray. + + The System.Color that can be used as an approximation to represent this category. + + + + This applies the color to the top symbol stroke or pattern. + + The Color to apply + + + + In some cases, it is useful to simply be able to show an approximation of the actual expression. + This also removes brackets from the field names to make it slightly cleaner. + + + + + Occurs when the select features context menu is clicked. + + + + + Occurs when the deselect features context menu is clicked. + + + + + Gets or sets the symbolizer used for this category. + + + + + Gets or sets the symbolizer used for this category + + + + + Gets or set the filter expression that is used to add members to generate a category based on this scheme. + + + + + Creates a new instance of FeatureSchemeCategory + + + + + Applies the minimum and maximum in order to create the filter expression. This will also + count the members that match the specified criteria. + + + + + Controls what happens in the legend when this item is instructed to draw a symbol. + + + + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + This gets a single color that attempts to represent the specified + category. For polygons, for example, this is the fill color (or central fill color) + of the top pattern. If an image is being used, the color will be gray. + + The System.Color that can be used as an approximation to represent this category. + + + + This applies the color to the top symbol stroke or pattern. + + The Color to apply + + + + In some cases, it is useful to simply be able to show an approximation of the actual expression. + This also removes brackets from the field names to make it slightly cleaner. + + + + + Makes it so that if there are any pre-existing listeners to the SelectFeatuers + event when creating a clone of this object, those listeners are removed. + They should be added correctly when the cloned item is added to the collection, + after being cloned. + + + + + + Forces the creation of an entirely new context menu list. That way, we are not + pointing to an event handler in the previous parent. + + + + + Fires the SelectFeatures event + + + + + Triggers the DeselectFeatures event. + + + + + Occurs when the select features context menu is clicked. + + + + + Occurs when the deselect features context menu is clicked. + + + + + Gets or sets the symbolizer used for this category. + + + + + Gets or sets the symbolizer used for this category + + + + + Gets or set the filter expression that is used to add members to generate a category based on this scheme. + + [Editor(typeof(ExpressionEditor), typeof(UITypeEditor))] + + + + FeatureSchemeCategoryCollection + + + + + Creates a new instance of the FeatureSchemeCategoryCollection + + + + + Occurs when including legend items + + + + + + Occurs when excluding legend items + + + + + + Optionally allows the scheme to identify itself for future reference. + + + + + Creates a new instance of VectorEditorSettings + + + + + Gets or sets the unique values. + + + + + Gets or sets the double size for the last item in the range + + + + + Gets or sets the field name that categories are based on + + + + + Gets or sets the normalization field + + + + + Gets or sets the gradient angle if use gradient is true + and the shape is a polygon shape. + + + + + Gets or sets the double start size for point or line size ranges + + + + + Gets or sets the feature symbolizer that acts as a template for + any characteristics not covered by the size and color ranges. + + + + + Gets or sets a boolean indicating whether or not to + use a gradient when randomly calculating polygon + forms. + + + + + Gets or sets a boolean indicating whether the size range should be used instead of + the size specified by the template. + + + + + This is should not be instantiated because it cannot in itself perform the necessary functions. + Instead, most of the specified functionality must be implemented in the more specific classes. + This is also why there is no direct constructor for this class. You can use the static + "FromFile" or "FromFeatureLayer" to create FeatureLayers from a file. + + + + + This is should not be instantiated because it cannot in itself perform the necessary functions. + Instead, most of the specified functionality must be implemented in the more specific classes. + This is also why there is no direct constructor for this class. You can use the static + "FromFile" or "FromFeatureLayer" to create FeatureLayers from a file. + + + + + Applies the specified scheme to this layer, applying the filter constraints in the scheme. + It is at this time when features are grouped as a one-time operation into their symbol + categories, so that this doesn't have to happen independently each drawing cycle. + + + The scheme to be applied to this layer. + + + + + Assigns the fast drawn states based on the latest feature setup. + + + + + This method actually draws the image to the snapshot using the graphics object. This should be + overridden in sub-classes because the drawing methods are very different. + + + A graphics object to draw to + + + A projection handling interface designed to translate geographic coordinates to screen + coordinates + + + + + Saves a featureset with only the selected features to the specified fileName. + + + The string fileName to export features to. + + + + + Gets the visible characteristic for an individual feature, regardless of whether + this layer is in edit mode. + + + + + + + Gets the visible characteristic for a given feature, rather than using the index, + regardless of whether this layer is in edit mode. + + + + + + + Gets the visible characteristic for an individual feature + + + + + The get visible. + + + + + Gets the visible characteristic for a given feature, rather than using the index. + + + + + The get visible. + + + + + This method will remove the in ram features from the underlying dataset. + This will not affect the data source. Beware! Removing features + without populating the DataTable first will almost assuredly mean + indexing failures if you choose to load it later. + + The list or array of integer index values. + + + + This forces the removal of all the selected features. + + + + + Selects the specified list of features. If the specified feature is already selected, + this method will not alter it. + + + A List of integers representing the zero-based feature index values + + + + + Selects a single feature specified by the integer index in the Features list. + + + The zero-based integer index of the feature. + + + + + Selects the specified feature. + + + The feature. + + + + + Cycles through all the features and selects them + + + + + Selects all the features in this layer that are associated + with the specified attribute, clearing the selection first. + + + The string expression to + identify based on attributes the features to select. + + + + + Modifies the features with a new selection based on the modifyMode. + + + The string filter expression to use + + + Determines how the newly chosen features should interact with the existing + selection + + + + + Sets the category for the specified shape index regardless of whether this layer is in edit mode. + + + The 0 based integer shape index + + + The category for this feature. The exact kind of category depends on the + feature type. + + + + + Sets the visible characteristic for a given feature, rather than using the index + regardless of whether this layer is in edit mode. + + + The actual reference to the feature object to update + + + The new category to use for the specified feature + + + + + This forces the creation of a category for the specified symbolizer, if it doesn't exist. + This will add the specified feature to the category. Be sure that the symbolizer type + matches the feature type. + + + The integer index of the shape to control. + + + The symbolizer to assign. + + + + + Sets the visible characteristic for an individual feature + + + + + + + + + Sets the visible characteristic for a given feature, rather than using the index. + + + + + + + + + Displays a form with the attributes for this shapefile. + + + + + Creates a bitmap of the requested size that covers the specified geographic extent using + the current symbolizer for this layer. This does not have any drawing optimizations, + or techniques to speed up performance and should only be used in special cases like + draping of vector content onto a texture. It also doesn't worry about selections. + + + The extent to use when computing the snapshot. + + + The integer height of the bitmap + + + A Bitmap object + + + + + Unselects the specified features. If any features already unselected, they are ignored. + + + + + + + Unselects the specified feature. + + + The integer representing the feature to unselect. + + + + + Removes the specified feature from the selection + + + The feature to remove + + + + + Unselects all the features that are currently selected + + + + + Zooms to the envelope of the selected features. + + + + + Occurs before the attribute Table is displayed, also allowing this event to be handled. + + + + + Occurs after a snapshot is taken, and contains an event argument with the bitmap + to be displayed. + + + + + Occurs after a new symbolic scheme has been applied to the layer. + + + + + Gets or sets the base FeatureSet + + + + + Controls the drawn states according to a feature index. This is used if the EditMode is + false. When EditMode is true, then drawn states are tied to the features instead. + + + + + Gets or sets the Boolean flag that controls whether the DrawnStates are needed. If nothing is selected, + and there is only one category, and there is no filter expression on that category, then this should be false. + + + + + Gets or sets a Boolean. If edit mode is true, feature index is ignored, and features + are assumed to be entirely loaded into ram. If edit mode is false, then index + is used instead and features are not assumed to be loaded into ram. + + + + + Gets or sets the label layer + + + + + Gets a Selection class that is allows the user to cycle through all the unselected features with + a for each method, even if the features are in many categories. + + + + + Gets or sets the shared characteristics to use with the selected features. + + + + + Gets or sets whether labels should be drawn. + + + + + Gets or sets and interface for the shared symbol characteristics between point, line and polygon features + + + + + Gets the current feature scheme, but to change it ApplyScheme should be called, so that + feature categories are updated as well. + + + + + The _category extents. + + + + + The _drawing filter. + + + + + The _drawn states. + + + + + The _drawn states needed. + + + + + The _edit mode. + + + + + The _feature symbolizer. + + + + + The _label layer. + + + + + The _scheme. + + + + + The _selection. + + + + + The _selection feature symbolizer. + + + + + The _show labels. + + + + + Initializes a new instance of the class. + Constructor + + + The data bearing layer to apply new drawing characteristics to + + + + + Initializes a new instance of the class. + Constructor + + + The data bearing layer to apply new drawing characteristics to + + + The container this layer should be added to + + + + + Initializes a new instance of the class. + Constructor + + + The data bearing layer to apply new drawing characteristics to + + + The container this layer should be added to + + + A progress handler for receiving status messages + + + + + Zooms to the envelope of the selected features. + + + + + Zooms to the envelope of the selected features, adding a border of the size specified. + + + + + The configure. + + + The feature set. + + + + + Applies the specified scheme to this layer, applying the filter constraints in the scheme. + It is at this time when features are grouped as a one-time operation into their symbol + categories, so that this doesn't have to happen independently each drawing cycle. + + + The scheme to be applied to this layer. + + + + + Clears the current selection, reverting the geometries back to their + normal colors. + + + An out value that represents the envelope that was modified by the clear selection instruction + + + The clear selection. + + + + + This method actually draws the image to the snapshot using the graphics object. This should be + overridden in sub-classes because the drawing methods are very different. + + + A graphics object to draw to + + + A projection handling interface designed to translate + geographic coordinates to screen coordinates + + + + + Saves a featureset with only the selected features to the specified fileName. + + + The string fileName to export features to. + + + + + Gets the visible characteristic for an individual feature, regardless of whether + this layer is in edit mode. + + + + + + + Gets the visible characteristic for a given feature, rather than using the index, + regardless of whether this layer is in edit mode. + + + + + + + Gets the visible characteristic for an individual feature + + + + + The get visible. + + + + + Gets the visible characteristic for a given feature, rather than using the index. + + + + + The get visible. + + + + + This method inverts the selection for the specified region. Members already a part of the selection + will be removed from the selection, while members that are not a part of the selection will be added + to the selection. + + + The region specifying where features should be added or removed from the + selection. + + + With polygon selection it is better not to allow any tolerance since the + polygons already contain it. + + + The SelectionModes enumeration that clarifies how the features should + interact with the region. + + + The geographic region that will be impacted by the changes. + + + The invert selection. + + + + + Highlights the values in the specified region, and returns the affected area from the selection, + which should allow for slightly faster drawing in cases where only a small area is changed. + This will also specify the method by which members should be selected. + + + The envelope to change. + + + The envelope to use in cases like polygons where the geometry has no tolerance. + + + The selection mode that clarifies the rules to use for selection. + + + The geographic envelope of the region impacted by the selection. + + + Boolean, true if items were selected. + + + + + Selects the specified list of features. If the specified feature is already selected, + this method will not alter it. This will only fire a single SelectionExtended event, + rather than firing it for each member selected. + + + A List of integers representing the zero-based feature index values + + + + + Selects a single feature specified by the integer index in the Features list. + + + The zero-based integer index of the feature. + + + + + Selects the specified feature + + + The feature to select + + + + + Cycles through all the features and selects them + + + + + Selects all the features in this layer that are associated + with the specified attribute. This automatically replaces the existing selection. + + + The string expression to + identify based on attributes the features to select. + + + + + Unselects the features by attribute. + + The filter expression. + + + + Modifies the features with a new selection based on the modifyMode. + + + The string filter expression to use + + + Determines how the newly chosen features should interact with the existing + selection + + + + + + + + + + + This forces the creation of a category for the specified symbolizer, if it doesn't exist. + This will add the specified feature to the category. Be sure that the symbolizer type + matches the feature type. + + + The integer index of the shape to control. + + + The symbolizer to assign. + + + + + Sets the visible characteristic for an individual feature regardless of + whether this layer is in edit mode. + + + + + Sets the visible characteristic for a given feature, rather than using the index + regardless of whether this layer is in edit mode. + + + + + Displays a form with the attributes for this shapefile. + + + + + Creates a bitmap of the requested size that covers the specified geographic extent using + the current symbolizer for this layer. This does not have any drawing optimizations, + or techniques to speed up performance and should only be used in special cases like + draping of vector content onto a texture. It also doesn't worry about selections. + + + The extent to use when computing the snapshot. + + + The integer height of the bitmap. The height is calculated based on + the aspect ratio of the specified geographic extent. + + + A Bitmap object + + + + + Unselects the specified features. If any features already unselected, they are ignored. + This will only fire a single Selection + + + + + + + Unselects the specified feature. + + + The integer representing the feature to unselect. + + + + + Removes the specified feature from the selection. + + + The feature to unselect. + + + + + Un-highlights or returns the features from the specified region. The specified selectionMode + will be used to determine how to choose features. + + + The geographic envelope in cases like clicking near points where tolerance + is allowed. + + + The geographic region when working with absolutes, without a tolerance. + + + The selection mode that controls how to choose members relative to the + region. + + + The geographic envelope that will be visibly impacted by the change. + + + Boolean, true if members were removed from the selection. + + + + + Unselects all the features that are currently selected + + + + + This is testing the idea of using an input parameter type that is marked as out + instead of a return type. + + + The result of the creation + + + Boolean, true if a layer can be created + + + + + Occurs when the properties should be shown, and launches a layer dialog. + + + + + + + Occurs when setting the symbology to a new scheme and allows removing event handlers + + + + + + + Occurs as a new featureset is being assigned to this layer + + + The feature Set. + + + + + Unwires event handlers for the specified featureset. + + + + + + + Occurs when setting symbology to a new scheme and allows adding event handlers + + + + + + + Occurs when selecting features and fires the SelectByAttribute event with + the expression used as the filter expression + + + + + + + + + Occurs when selecting features and fires the SelectByAttribute event with + the expression used as the filter expression + + + + + Assigns the fast drawn states + + + + + This method will remove the in ram features from the underlying dataset. + This will not affect the data source. + + The list or array of integer index values. + + + + This forces the removal of all the selected features. + + + + + This does more than remove an index key. This also shifts down the category + and selection state for every drawn state with a higher index than the + given index value. Call this only in index mode, and only if the shape + is being removed from the FeatureSet. in practice, this should really + only be called internally, but is here just in case. + + + The list or array of index values to remove. + + + + + This calculates the extent for the category and caches it in the extents collection + + + + + + + This method cycles through all the Categories in the scheme and creates a new + category. + + + The scheme to apply + + + + + Occurs during a copy operation and handles removing surplus event handlers + + + + + + + A default method to generate a label layer. + + + + + Handles the situation for exporting the layer as a new source. + + + + + Occurs before the label setup dialog is shown. If handled is set to true, + then the dialog will not be shown. + + + A HandledEventArgs parameter + + + + + This fires the scheme applied event after the scheme has been altered + + + + + Fires the SnapShotTaken event. This can be overridden in order to modify the bitmap returned etc. + + + + + + + Occurs before attributes are about to be viewed. Overriding this + allows that to be handled, and if e.Handled is true, this class + won't show the attributes. + + + A HandledEventArgs + + + + + The distinct fields in expression. + + + The expression. + + + + + + + Occurs after a new symbolic scheme has been applied to the layer. + + + + + Occurs after a snapshot is taken, and contains an event argument with the bitmap + to be displayed. + + + + + Occurs before the attribute Table is displayed, also allowing this event to be handled. + + + + + Occurs before the label setup dialog is displayed, allowing the event to be handled. + + + + + Gets or sets the Boolean flag that controls whether the DrawnStates are needed. If nothing is selected, + and there is only one category, and there is no filter expression on that category, then this should be false. + + + + + Gets or sets custom actions for FeatureLayer + + + + + Gets the dictionary of extents that is calculated from the categories. This is calculated one time, + when the scheme is applied, and then the cached value is used to help drawing symbols that + are modified by the categorical boundaries. + + + + + Gets or sets a rectangle that gives the maximal extent for 2D GDI+ drawing in pixels. + Coordinates outside this range will cause overflow exceptions to occur. + + + + + Gets or sets the drawing filter that can be used to narrow the list of features and then + cycle through those features. Using a for-each expression on the filter will automatically + apply the constraints specified by the characteristics. + + + + + Gets or sets a string name for this layer. This is not necessarily the same as the legend text. + + + + + Gets or sets the chunk size on the drawing filter. This should be controlled + by drawing layers. + + + + + Gets or sets the underlying dataset for this layer, specifically as an IFeatureSet + + + + + Gets underlying dataset for this layer + + + + + Controls the drawn states according to a feature index. This is used if the EditMode is + false. When EditMode is true, then drawn states are tied to the features instead. + + + + + Gets or sets a boolean. If edit mode is true, feature index is ignored, and features + are assumed to be entirely loaded into ram. If edit mode is false, then index + is used instead and features are not assumed to be loaded into ram. + + + + + Gets the envelope of the DataSet supporting this FeatureLayer + + + + + Gets or sets the label layer + + + + + Restructures the LegendItems based on whether or not the symbology makes use + of schemes. + + + + + Gets a Selection class that is allows the user to cycle through all the selected features with + a foreach method. This can be null. + + + + + Gets or sets the shared characteristics to use with the selected features. + + + + + Gets or sets whether labels should be drawn. + + + + + Gets or sets and interface for the shared symbol characteristics between point, line and polygon features + + + + + Gets the current feature scheme, but to change it ApplyScheme should be called, so that + feature categories are updated as well. + + + + + Inverts the selection + + + + + + Creates a new instance of FeatureLayerEventArgs + + + + + Gets or sets the feature layer for this event + + + + + Creates a new instance of FeatureLayerSelectionEventArgs + + + + + Gets the list of changed features + + + + + FeatureScheme + + + + + IFeatureScheme + + + + + Creates a list of all 'unique value' categories. This will use the "VectorEditorSettings" + to determine how to create the values, so ensure that you update that property first. + + The attribute source that can provide the attribute information. + The progress handler for showing progress on what is likely a slow process + + + + Creates the categories using the specified data table + + + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + The filter expression to use + + + + This keeps the existing categories, but uses the current scheme settings to apply + a new color to each of the symbols. + + + + + When using this scheme to define the symbology, these individual categories will be referenced in order to + create genuine categories (that will be cached). + + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + Occurs when a category indicates that its filter expression should be used + to select its members. + + + + + Occurs when the deselect features context menu is clicked. + + + + + Gets or sets the dialog settings + + + + + Gets or sets a boolean that indicates whether or not the legend should draw this item as a categorical + tier in the legend. If so, it will allow the LegendText to be visible as a kind of group for the + categories. If not, the categories will appear directly below the layer.C:\dev\Mapwindow6Dev\DotSpatial\DotSpatial\Drawing\Vectors\Points\PointCategoryCollection.cs + + + + + Gets the number of categories of this scheme. + + + + + Gets or sets the UITypeEditor to use for editing this FeatureScheme + + + + + Creates a new instance of FeatureScheme + + + + + When using this scheme to define the symbology, these individual categories will be referenced in order to + create genuine categories (that will be cached). + + + + + Queries this layer and the entire parental tree up to the map frame to determine if + this layer is within the selected layers. + + + + + Special handling of not copying the parent during a copy operation + + + + + + Handles the special case of not copying the parent during an on copy properties operation + + + + + + Ensures that the parentage gets set properly in the event that + this scheme is not appearing in the legend. + + + + + + This keeps the existing categories, but uses the current scheme settings to apply + a new color to each of the symbols. + + + + + Creates categories either based on unique values, or classification method. + If the method is + + The System.DataTable to that has the data values to use + + + + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + The filter expression to use + + + + This simply ensures that we are creating the appropriate empty filter expression version + of create random category. + + + + + + Gets the values from a file based data source rather than an in memory object. + + + + + + + Before attempting to create categories using a color ramp, this must be calculated + to updated the cache of values that govern statistics and break placement. + + The data Table to use. + + + + Returns + + + + + Gets a list of all unique values of the attribute field. + + + + + Gets a list of all unique values of the attribute field. + + + + + This checks the type of the specified field whether it's a string field + + + + + This checks the type of the specified field whether it's a string field + + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender. + The event args. + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender. + The event args. + + + + Uses the current settings to generate a random color between the start and end color. + + A Randomly created color that is within the bounds of this scheme. + + + + This replaces the constant size calculation with a size + calculation that is appropriate for features. + + The integer count of the number of sizes to create. + A list of double valued sizes. + + + + Calculates the unique colors as a scheme + + The featureset with the data Table definition + The unique field + Func for creating category + + + + Occurs when a category indicates that its filter expression should be used + to select its members. + + + + + Occurs when the deselect features context menu is clicked. + + + + + Occurs when there are more than 1000 unique categories. If the "Cancel" + is set to true, then only the first 1000 categories are returned. Otherwise + it may allow the application to lock up, but will return all of them. + If this event is not handled, cancle is assumed to be true. + + + + + Occurs + + + + + Gets or sets a boolean that indicates whether or not the legend should draw this item as a categorical + tier in the legend. If so, it will allow the LegendText to be visible as a kind of group for the + categories. If not, the categories will appear directly below the layer. + + + + + Gets or sets the dialog settings + + + + + Gets or sets the UITypeEditor to use for editing this FeatureScheme + + + + + Gets the number of categories in this scheme + + + + + An enumerable of LegendItems allowing the true members to be cycled through. + + + + + IFilterCollection + + + + + ISelection + + + + + Clears the selection + + + + + Add REgion + + + + + + + + + + + + + + + + + + + + + + + + Returns a new featureset based on the features in this collection + + + + + + Generates a list of the features that match this collection + + + + + + Gets the integer count of the members in the collection + + + + + Calculates the envelope of this collection + + + + + Gets or sets the handler to use for progress messages during selection. + + + + + Selection Mode controls how envelopes are treated when working with geometries. + + + + + Gets or sets whether this should work as "Selected" indices (true) or + "UnSelected" indices (false). + + + + + Setting this to a specific category will only allow selection by + region to affect the features that are within the specified category. + + + + + Clears the selection + + + + + Gets the integer count of the members in the collection + + + + + Gets the drawing filter used by this collection. + + + + + Creates a new instance of FilterCollection, where the current state of the filter is + recorded as the kind of "collection" that this item belongs to. The filter can be + altered later, and this will retain the original state. + + + + + + + + + + + + + + Adding a feature state sets the drawing state of the item to be + + The item to add to this category + Occurs if this list is set to read-only in the constructor + + + + This uses extent checking (rather than full polygon intersection checking). It will add + any members that are either contained by or intersect with the specified region + depending on the SelectionMode property. The order of operation is the region + acting on the feature, so Contains, for instance, would work with points. + + + The affected area of this addition + True if any item was actually added to the collection + + + + Inverts the selection based on the current SelectionMode + + The geographic region to reverse the selected state + The affected area to invert + + + + This cycles through all the members in the current grouping and re-sets the current category + back to the default setting. In other words, if the active type is selection, then this + will unselect all the features, but won't adjust any of the other categories. + + Occurs if this list is set to read-only in the constructor + + + + Tests to see if the item is contained in this collection. + + + + + + + Copies each of the members of this group to the specified array + + + + + + + Gets the enumerator for this collection. + + + + + + Removes the specified item from the subset of this classification if that category is used. + Selected -> !Selected + Category[>0] -> Category[0] + Category[0] -> Null + Visible -> !Visible + Chunk -> -1 or basically a chunk index that is never drawn. + + The item to change the drawing state of + Boolean, false if the item does not match the current grouping + Occurs if this list is set to read-only in the constructor + + + + Tests each member currently in the selected features based on + the SelectionMode. If it passes, it will remove the feature from + the selection. + + The geographic region to remove + A geographic area that was affected by this change. + Boolean, true if the collection was changed + + + + As an example, choosing myFeatureLayer.SelectedFeatures.ToFeatureSet creates a new set. + + An in memory featureset that has not yet been saved to a file in any way. + + + + Exports the members of this collection as a list of IFeature. + + A List of IFeature + + + + + + + + + + + + + + + + + + + + + + The new row will be added to the underlying featureset, and this selection will not be updated + in any way, as that row is not associated with a featureset here. + + + + + + The new row will be added to the underlying featureset, and this selection will not be updated + in any way, as that row is not associated with a featureset here. + + + + + + + + + + + + + + + Collections can be nested, but for instance if you have gone into category[2].SelectedFeatures and want to + remove an item, then we would expect it to show up in Category[2].UnSelectedFeatures, not in + Category[0].UnselectedFeatures. So while add necessarilly acts on every filter constraint, remove or clear only + operates on the most intimate. The ActiveType records which criteria that is. + + + + + Gets the feature list of underlying features that the filter is using + + + + + This cycles through the entire enumeration, so don't access this in every loop. + + + + + Gets the envelope that represents the features in this collection. + If the collection changes, this will be invalidated automatically, + and the next envelope request will re-calcualte the envelope. + + + + + Gets the drawing filter used by this collection. + + + + + Gets whether or not this collection can be edited with add, remove, or clear. + + + + + Gets or sets the handler to use for progress messages during selection. + + + + + Setting this to a specific category will only allow selection by + region to affect the features that are within the specified category. + + + + + Gets or sets the scheme category to use + + + + + Gets the integer chunk that the filter should use + + + + + If UseSelection is true, this will get or set the boolean selection state + that will be used to select values. + + + + + Gets or sets a boolean that indicates whether the filter should subdivide based on category. + + + + + Gets or sets a boolean that indicates whether we should use the chunk + + + + + Gets or sets a boolean that indicates whether this filter should use the Selected + + + + + Gets or sets the boolean indicating whether or not this feature should be drawn. + + + + + Gets or sets a boolean that specifies whether to return visible, or hidden features if UseVisibility is true. + + + + + True if members of this collection are considered selected, false otherwise. + + + + + Gets or sets the selection mode to use when Adding or Removing features + from a specified envelope region. + + + + + FeatureSymbolizer + + + + + IFeatureSymbolizer + + + + + Draws a simple rectangle in the specified location. + + + + + + + Sets the outline, assuming that the symbolizer either supports outlines, or + else by using a second symbol layer. + + The color of the outline + The width of the outline in pixels + + + + Gets or sets a boolean indicating whether or not this specific feature should be drawn. + + + + + Gets or Sets a ScaleModes enumeration that determines whether non-coordinate drawing + properties like width or size use pixels or world coordinates. If pixels are + specified, a back transform is used to approximate pixel sizes. + + + + + Gets or sets the smoothing mode to use that controls advanced features like + anti-aliasing. By default this is set to antialias. + + + + + Gets or sets the graphics unit to work with. + + + + + Creates a new instance of FeatureSymbolizer + + + + + Sets the outline, assuming that the symbolizer either supports outlines, or + else by using a second symbol layer. + + The color of the outline + The width of the outline in pixels + + + + Draws a simple rectangle in the specified location. + + + + + + + Occurs during the copy properties method, when copying properties from the source symbolizer + to this symbolizer. + + The source symbolizer to copy properties from. + + + + Gets or sets a boolean indicating whether or not this specific feature should be drawn. + + + + + Gets or Sets a ScaleModes enumeration that determines whether non-coordinate drawing + properties like width or size use pixels or world coordinates. If pixels are + specified, a back transform is used to approximate pixel sizes. + + + + + Gets or sets the smoothing mode to use that controls advanced features like + anti-aliasing. By default this is set to antialias. + + + + + Gets or sets the graphics unit to work with. + + + + + Creates a new instance of FeatureSymbolizerEventArgs + + + + + Gets or sets the feature symbolizer for this event + + + + + This contains the shared symbolizer properties between Points, Lines and Polygons. + + + + + This contains the set of symbology members that are shared + between points, lines and polygons. + + + + + Gets or sets the color of the brush used to fill the shape. + Setting this will change the brush to a new SolidBrush. + + + + + Gets or sets the brush used to fill the shape. + + + + + Gets or sets whether or not to use a texture when drawing these lines. By default, this either + checks the DefaultLineProvider or else it is false. + + + + + Gets or sets a string name to help identify this Symbolizer + + + + + Gets or sets a float value from 0 to 1 where 0 is completely transparent + and 1 is completely solid. Setting an alpha of a specific feature, like + FillColor, to something less than 255 will control that feature's transparency + without affecting the others. The final transparency of the feature will + be that alpha multiplied by this value and rounded to the nearest byte. + + + + + Gets or sets the string TextureFile to define the fill texture + + + + + Gets or sets the actual bitmap to use for the texture. + + + + + Gets or Sets a ScaleModes enumeration that determines whether non-coordinate drawing + properties like width or size use pixels or world coordinates. If pixels are + specified, a back transform is used to approximate pixel sizes. + + + + + Gets or sets the smoothing mode to use that controls advanced features like + anti-aliasing. By default this is set to antialias. + + + + + This constructor takes on some default values, and assumes that it + has no other underlying symblizer to reference. + + + + + + + + Draws a basic symbol to the specified rectangle + + The graphics surface to draw on + The target to draw the symbol to + + + + Occurs in response to the legend symbol being painted + + The Graphics surface to draw on + The box to draw to + + + + Gets or sets a boolean indicating whether or not this specific feature should be drawn. + + + + + Gets or sets the solid color to be used for filling the symbol. + This will also change the FillBrush to a solid brush of the specified color. + + + + + Gets or sets the Brush to be used when filling this point. + Setting this value will also change the FillColor property, but only if + the brush is a SolidBrush. + + + + + Gets or sets whether to use the specified TextureImage during drawing + + + + + Gets or sets a string name to help identify this Symbolizer + + + + + Gets or sets a float value from 0 to 1 where 0 is completely transparent + and 1 is completely solid. Setting an alpha of a specific feature, like + FillColor, to something less than 255 will control that feature's transparency + without affecting the others. The final transparency of the feature will + be that alpha multiplied by this value and rounded to the nearest byte. + + + + + Gets or Sets a ScaleModes enumeration that determines whether non-coordinate drawing + properties like width or size use pixels or world coordinates. If pixels are + specified, a back transform is used to approximate pixel sizes. + + + + + Gets or sets the smoothing mode to use that controls advanced features like + anti-aliasing. By default this is set to antialias. + + + + + Gets or sets the string TextureFile to define the fill texture + + + + + Gets or sets the actual bitmap to use for the texture. + + + + + Add, remove and clear methods don't work on all the categorical sub-filters, but rather only on the + most immediate. + + + + + Categories + + + + + Chunks + + + + + Selected or unselected + + + + + Visible or not + + + + + IIndexSelection + + + + + Clears the selection + + + + + Adds a range of indices all at once. + + The indices to add + + + + Removes a set of indices all at once + + + + + + + Gets the integer count of the members in the collection + + + + + IndexSelection + + + + + Adds all of the specified index values to the selection + + The indices to add + + + + Add REgion + + + + + + + + + + + + + + + + Attempts to remove all the members from the collection. If + one of the specified indices is outside the range of possible + values, this returns false, even if others were successfully removed. + This will also return false if none of the states were changed. + + The indices to remove + + + + + + + + + + + + + Returns a new featureset based on the features in this collection + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of IndexSelection + + + + + Calculates the envelope of this collection + + + + + Selection Mode controls how envelopes are treated when working with geometries. + + + + + Gets or sets whether this should work as "Selected" indices (true) or + "UnSelected" indices (false). + + + + + Gets or sets the handler to use for progress messages during selection. + + + + + + + + + + + Setting this to a specific category will only allow selection by + region to affect the features that are within the specified category. + + + + + This class cycles through the members + + + + + Creates a new instance of IndexSelectionEnumerator + + + + + + + + + + + + + + + + + + + IntervalMethods + + + + + A numeric value fixes a constant separation between breaks. + + + + + The breaks are set to being evenly spaced. + + + + + Breaks are calculated according to the following restrictions: + 1) break sizes follow a geometric progression + 2) the number of breaks is specified + 3) the sum of squares of the counts per bin is minimized + + + + + Breaks start equally placed, but can be positioned manually instead. + + + + + Jenks natural breaks looks for "clumping" in the data and + attempts to group according to the clumps. + + + + + The breaks are positioned to ensure close to equal quantities + in each break. + + + + + Not sure how this works yet. Something to do with standard deviations. + + + + + IntervalSnapMethods + + + + + Snap the chosen values to the nearest data value. + + + + + No snapping at all is used + + + + + Snaps to the nearest integer value. + + + + + Disregards scale, and preserves a fixed number of figures. + + + + + IPointSchemeCategory + + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + A layer with drawing characteristics for LineStrings + + + + + Gets or sets the drawing characteristics to use for this layer. + + Unable to assign a non-point symbolizer to a PointLayer + + + + Gets or sets the LineSymbolizer to use for selected properties. + + + + + Gets or sets the categorical scheme for categorical drawing. + + + + + IPointScheme + + + + + Gets the list of scheme categories belonging to this scheme. + + + + + ILineSymbolizer + + + + + Draws the line that is needed to show this lines legend symbol. + + The graphics device to draw to. + The rectangle that is used to calculate the lines position and size. + + + + Sequentially draws all of the strokes using the specified graphics path. + + The graphics device to draw to + The graphics path that describes the pathway to draw + The double scale width that when multiplied by the width gives a measure in pixels + + + + Gets the color of the top-most stroke. + + + + + Sets the fill color fo the top-most stroke, and forces the top-most stroke + to be a type of stroke that can accept a fill color if necessary. + + + + + + This gets the largest width of all the strokes. + Setting this will change the width of all the strokes to the specified width, and is not recommended + if you are using thin lines drawn over thicker lines. + + + + + This forces the width to exist across all the strokes in this symbolizer. + + + + + Gets or sets the list of strokes that will be combined to make up a single drawing pass for this line. + + + + + PointSchemeCategory + + + + + Creates a new instance of PointSchemeCategory + + + + + Creates a new set of cartographic lines that together form a line with a border. Since a compound + pen is used, it is possible to use this to create a transparent line with just two border parts. + The selection symbolizer will be dark cyan bordering light cyan, but use the same dash and cap + patterns. + + The fill color for the line + The border color of the line + The width of the entire line + The dash pattern to use + The style of the start and end caps + + + + Creates a new line category with the specified color and width + + The color of the unselected line + The width of both the selected and unselected lines. + + + + Creates a new instanec of a default point scheme category where the geographic symbol size has been + scaled to the specified extent. + + The geographic extent that is 100 times wider than the geographic size of the points. + + + + Creates a new category based on a symbolizer, and uses the same symbolizer, but with a fill and border color of light cyan + for the selection symbolizer + + The symbolizer to use in order to create a category + + + + This gets a single color that attempts to represent the specified + category. For polygons, for example, this is the fill color (or central fill color) + of the top pattern. If an image is being used, the color will be gray. + + The System.Color that can be used as an approximation to represent this category. + + + + Gets the legend symbol size of the symbolizer for this category. + + + + + Controls what happens in the legend when this item is instructed to draw a symbol. + + + + + + + Sets the specified color as the color for the top most stroke. + + The color to apply + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + This is simply an alias to make things a tad (though not much) more understandable + + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender. + The event args. + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender where features were selected. + The event args describing which expression was used. + + + + Ensures that newly added categories can navigate to higher legend items. + + The newly added legend item. + + + + Overrides the default OnCopy behavior to remove the duplicte SelectFeatures event handler + + + + + + + + + + + + Cycles through all the categories and resets the parent item. + + + + + Gets or sets the parent line scheme + + + + + Occurs when a category indicates that its filter expression should be used + to select its members. + + + + + Occurs when the deselect features context menu is clicked. + + + + + LineFeatureTypeException + + + + + Creates a new instance of LineFeatureTypeException + + + + + Creates a new instance of LineFeatureTypeException + + The custom error message for this exception + + + + A layer with drawing characteristics for LineStrings + + + + + Constructor + + + Thrown if a non-line featureSet is supplied + + + + Constructor that also shows progress + + A featureset that contains lines + An IProgressHandler for receiving status messages + Thrown if a non-line featureSet is supplied + + + + Constructor that also shows progress. + + A featureset that contains lines. + An IContainer that the line layer should be created in. + An IProgressHandler for receiving status messages. + Thrown if a non-line featureSet is supplied. + + + + Draws some section of the extent to the specified graphics object. + + The graphics object to draw to. + The projection interface that specifies how to transform geographic coordinates to an image. + + + + Gets or sets the line symbolizer to use for the selection + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(LineSymbolizerEditor), typeof(UITypeEditor))] + + + + + Gets or sets the FeatureSymbolizerOld determining the shared properties. This is actually still the PointSymbolizerOld + and should not be used directly on Polygons or Lines. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(LineSymbolizerEditor), typeof(UITypeEditor))] + + Unable to assign a non-point symbolizer to a PointLayer + + + + Gets or sets the line scheme subdividing the layer into categories. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(LineSchemePropertyGridEditor), typeof(UITypeEditor))] + + + + + PointScheme + + + + + Creates a new instance of PointScheme with no categories added to the list yet. + + + + + Draws the regular symbolizer for the specified cateogry to the specified graphics + surface in the specified bounding rectangle. + + The integer index of the feature to draw. + The Graphics object to draw to + The rectangular bounds to draw in + + + + Reduces the index value of the specified category by 1 by + exchaning it with the category before it. If there is no + category before it, then this does nothing. + + The category to decrease the index of + + + + Re-orders the specified member by attempting to exchange it with the next higher + index category. If there is no higher index, this does nothing. + + The category to increase the index of + + + + Adds a new scheme, assuming that the new scheme is the correct type. + + The category to add + + + + Removes the specified category + + The category to insert + + + + Inserts the category at the specified index + + The integer index where the category should be inserted + The category to insert + + + + Suspends the category events + + + + + Resumes the category events + + + + + Clears the categories + + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + + + + If possible, use the template to control the colors. Otherwise, just use the default + settings for creating "unbounded" colors. + + The integer count. + The List of colors + + + + Calculates the unique colors as a scheme + + The featureset with the data Table definition + The unique field + + + + Returns the line scheme as a feature categories collection + + + + + + Creates the category using a random fill color + + The base color to use for creating the category + Creates the size + A new polygon category + + + + Handle the event un-wiring and scheme update for the old categories + + The category collection to update. + + + + Handle the event wiring and scheme update for the new categories. + + The category collection to update + + + + Gets or sets the symbolic categories as a valid IPointSchemeCategoryCollection. + + + [TypeConverter(typeof(CategoryCollectionConverter))] + + + + + Gets the number of categories in this scheme + + + + + LineSymbolizer + + + + + Creates a new instance of LineSymbolizer + + + + + Creates a new set of cartographic lines that together form a line with a border. Since a compound + pen is used, it is possible to use this to create a transparent line with just two border parts. + + The fill color for the line + The border color of the line + The width of the entire line + The dash pattern to use + The style of the start and end caps + + + + Creates a new set of cartographic lines that together form a line with a border. Since a compound + pen is used, it is possible to use this to create a transparent line with just two border parts. + + The fill color for the line + The border color of the line + The width of the entire line + The dash pattern to use + The style of the start cap + The style of the end cap + + + + Creates a new instance of a LineSymbolizer using the various strokes to form a + composit symbol. + + + + + + Creates a new instance of LineSymbolizer for handling selections. + + Boolean, true if this should be symbolized like a selected line. + + + + Creates a new LineSymbolizer with a single layer with the specified color and width. + + The color + The line width + + + + Creates a line symbolizer that has a width that is scaled in proportion to the specified envelope as 1/100th of the + width of the envelope. + + + + + + + Draws a line instead of a rectangle. + + The graphics device to draw to. + The rectangle that is used to calculate the lines position and size. + + + + Draws the line that is needed to show this lines legend symbol. + + The graphics device to draw to. + The rectangle that is used to calculate the lines position and size. + + + + Sequentially draws all of the strokes using the specified graphics path. + + The graphics device to draw to. + The graphics path that describes the pathway to draw + The double scale width that when multiplied by the width gives a measure in pixels + + + + Gets the color of the top-most stroke. + + + + + Sets the fill color fo the top-most stroke, and forces the top-most stroke + to be a type of stroke that can accept a fill color if necessary. + + + + + + Gets the Size that is needed to show this line in legend with max. 2 decorations. + + + + + This gets the largest width of all the strokes. + Setting this will change the width of all the strokes to the specified width, and is not recommended + if you are using thin lines drawn over thicker lines. + + + + + This keeps the ratio of the widths the same, but scales the width up for + all the strokes. + + + + + Sets the outline, assuming that the symbolizer either supports outlines, or + else by using a second symbol layer. + + The color of the outline + The width of the outline in pixels + + + + Gets or sets the list of strokes, which define how the drawing pen should behave. + + + [Editor(typeof(StrokesEditor), typeof(UITypeEditor))] + [TypeConverter(typeof(GeneralTypeConverter))] + + + + + LineSymbolizerEventArgs + + + + + Creates a new instance of LineSymbolizerEventArgs + + + + + Gets or sets the Symbolizer + + + + + SimpleStroke + + + + + Because we plan on making these XML serializable, the stroke allows us to open from + a serialized situation without having to know in advance what kind of stroke we + actually have. The main idea is to allow something like: + + Stroke myStroke = new Stroke(); + myStroke.FromXml(myStream); + Pen p = myStroke.ToPen(); + + This allows loading, saving and creating pens from the sub-types without ever + knowing exactly what they are. All the basic subtypes can be obtained simply + by casting this stroke into the appropriate interface. + + + + + IStroke + + + + + This is an optional expression that allows drawing to the specified GraphicsPath. + Overriding this allows for unconventional behavior to be included, such as + specifying marker decorations, rather than simply returning a pen. A pen + is also returned publicly for convenience. + + The Graphics device to draw to + the GraphicsPath to draw + This is 1 for symbolic drawing, but could be + any number for geographic drawing. + + + + Casts this stroke to the appropriate pen + + + + + + Gets a color to represent this line. If the stroke doesn't work as a color, + then this color will be gray. + + + + + + Sets the color of this stroke to the specified color if possible. + + The color to assign to this color. + + + + Gets the stroke style for this stroke + + + + + Gets a color to represent this line. If the stroke doesn't work as a color, + then this color will be gray. + + + + + + Sets the color of this stroke to the specified color if possible. + + The color to assign to this color. + + + + This is an optional expression that allows drawing to the specified GraphicsPath. + Overriding this allows for unconventional behavior to be included, such as + specifying marker decorations, rather than simply returning a pen. A pen + is also returned publicly for convenience. + + The Graphics device to draw to + the GraphicsPath to draw + This is 1 for symbolic drawing, but could be + any number for geographic drawing. + + + + Uses the properties specified in this class to generate a pen. + + + + + + Defines this stroke as a new kind of stroke. + + + + + + Gets the stroke style of the inner stroke + + + + + ISimpleStroke + + + + + Gets or sets the color for this drawing layer + + + + + Gets or sets the DashStyle for this stroke. (Custom is just solid for simple strokes) + + + + + gets or sets the opacity of the color. 1 is fully opaque while 0 is fully transparent. + + + + + Gets or sets the width of this line. In geographic ScaleMode, + this width is the actual geographic width of the line. In Symbolic scale mode + this is the width of the line in pixels. + + + + + Creates a new instance of SimpleStroke + + + + + Sets the width of the line as part of the constructor + + The double width of the line to set + + + + Creates a new simple stroke with the specified color + + The color to use for the stroke + + + + Creates a new simple stroke with the specified width and color + + + + + + + Gets a color to represent this line. If the stroke doesn't work as a color, + then this color will be gray. + + + + + + Sets the color of this stroke to the specified color if possible. + + The color to assign to this color. + + + + Creates a system drawing pen that has all of the symbolic information + necessary for this stroke. + + The base width. In symbolic drawing this is 1, but in + geographic drawing, this will be a number representing the result of a + transform from projToPixel width. + + + + + Handles randomization of simple stroke content + + The random generator to use for randomizing characteristics. + + + + Gets or sets the color for this drawing layer + + + + + Gets or sets the dash style + + + + + gets or sets the opacity of the color. 1 is fully opaque while 0 is fully transparent. + + + + + Gets or sets the width of this line relative to the + width passed in. + + + + + ICartographicStroke + + + + + Draws the line with max. 2 decorations. Otherwise the legend line might show only decorations. + + + + + + + + Gets the width and height that is needed to draw this stroke with max. 2 decorations. + + + + + Gets or sets the OGC line characteristic that controls how connected segments + are drawn where they come together. + + + + + Gets or sets an array of floating point values ranging from 0 to 1 that + indicate the start and end point for where the line should draw. + + + + + gets or sets the DashCap for both the start and end caps of the dashes + + + + + Gets or sets the DashPattern as an array of floating point values from 0 to 1 + + + + + Gets or sets the line decoration that describes symbols that should + be drawn along the line as decoration. + + + + + Gets or sets the line cap for both the start and end of the line + + + + + Gets or sets the line cap for both the start and end of the line + + + + + This is a cached version of the horizontal pattern that should appear in the custom dash control. + This is only used if DashStyle is set to custom, and only controls the pattern control, + and does not directly affect the drawing pen. + + + + + This is a cached version of the vertical pattern that should appear in the custom dash control. + This is only used if DashStyle is set to custom, and only controls the pattern control, + and does not directly affect the drawing pen. + + + + + Gets or sets the floating poing offset (in pixels) for the line to be drawn to the left of + the original line. (Internally, this will modify the width and compound array for the + actual pen being used, as Pens do not support an offset property). + + + + + Creates a new instance of CartographicStroke + + + + + Getnerates a cartographic stroke of the specified color + + + + + + Creates a pen for drawing the non-decorative portion of the line. + + The base width in pixels that is equivalent to a width of 1 + A new Pen + + + + Draws the line with max. 2 decorations. Otherwise the legend line might show only decorations. + + + + + + + + Draws the actual path, overriding the base behavior to include markers. + + + + + + + + Gets the width and height that is needed to draw this stroke with max. 2 decorations. + + + + + Handles the randomization of the cartographic properties of this stroke. + + The random class that generates the random numbers + + + + Gets or sets an array of floating point values ranging from 0 to 1 that + indicate the start and end point for where the line should draw. + + + + + gets or sets the DashCap for both the start and end caps of the dashes + + + + + Gets or sets the DashPattern as an array of floating point values from 0 to 1 + + + + + Gets or sets the line decoration that describes symbols that should + be drawn along the line as decoration. + + + + + Gets or sets the line cap for both the start and end of the line + + + + + Gets or sets the OGC line characteristic that controls how connected segments + are drawn where they come together. + + + + + Gets or sets the line cap for both the start and end of the line + + + + + This is a cached version of the horizontal pattern that should appear in the custom dash control. + This is only used if DashStyle is set to custom, and only controls the pattern control, + and does not directly affect the drawing pen. + + + + + This is a cached version of the vertical pattern that should appear in the custom dash control. + This is only used if DashStyle is set to custom, and only controls the pattern control, + and does not directly affect the drawing pen. + + + + + Gets or sets the floating poing offset (in pixels) for the line to be drawn to the left of + the original line. (Internally, this will modify the width and compound array for the + actual pen being used, as Pens do not support an offset property). + + + + + LineDecoration + + + + + Given the points on this line decoration, this will cycle through and handle + the drawing as dictated by this decoration. + + + + The double scale width for controling markers + + + + Gets the size that is needed to draw this decoration with max. 2 symbols. + + + + + Gets or sets the decorative symbol + + + + + Gets or sets a boolean that, if true, flips the first symbol in relation + to the direction of the line. + + + + + Gets or sets a boolean that, if true, reverses all of the symbols + + + + + Gets or sets a boolean that, if true, will cause the symbol to + be rotated according to the direction of the line. Arrows + at the ends, for instance, will point along the direction of + the line, regardless of the direction of the line. + + + + + Gets or sets the number of symbols that should be drawn on each + line. (not each segment). + + + + + Gets or sets the percentual position between line start and end at which the single decoration gets drawn. + + + + + Gets or sets the offset distance measured to the left of the line in pixels. + + + + + LineDecoration + + + + + Creates a new instance of LineDecoration + + + + + Given the points on this line decoration, this will cycle through and handle + the drawing as dictated by this decoration. + + + + The double scale width for controling markers + + + + Draws the given symbol at the position calculated from locationPoint and _offset. + + Graphics-object needed for drawing. + StartPoint of the line locationPoint belongs to. Needed for caluclating the angle and the offset of the symbol. + StopPoint of the line locationPoint belongs to. Needed for caluclating the angle and the offset of the symbol. + Position where the center of the image should be drawn. + Indicates whether the symbol should be flipped. + Image that gets drawn. + Matrix used for rotation. + + + + Flips the given angle by 180 degree. + + Angle, that should be flipped. + + + + Gets the angle of the line between StartPoint and EndPoint taking into account the direction of the line. + + StartPoint of the line. + EndPoint of the line. + Angle of the given line. + + + + Gets the size that is needed to draw this decoration with max. 2 symbols. + + + + + Gets the length of the line between startpoint and endpoint. + + Startpoint of the line. + Endpoint of the line. + Length of the line. + + + + Gets the length of all the lines between startpoint and endpoint. + + Points of the lines we want to measure. + Startpoint of measuring. + Endpoint of measuring. + Combined length of all lines between startpoint and endpoint. + + + + Calculates the offset needed to show the decoration spot of each line at the same position as it is shown for the horizontal line in the linesymbol editor window. + + Startpoint of the line the decoration spot belongs to. + Endpoint of the line the decoration spot belongs to. + Offset that must be added to the decoration spots locationPoint for it to be drawn with the given _offset. + + + + Get the decoration spots that result from the given line and segLength. The decoration spot needed for the endpoint is not included. + + Point-Array that contains the points of the line. + Distance between two decoration spots. + Index of the first point that belongs to the line. + Index of the last point that belongs to the line. + List of decoration spots that result from the given points and segLength. + + + + Handles the creation of random content for the LineDecoration. + + The Random class that generates random numbers + + + + Gets or sets the decorative symbol. + + + + + Gets or sets a boolean that, if true, flips the first symbol in relation + to the direction of the line. + + + + + Gets or sets a boolean that, if true, reverses all of the symbols. + + + + + Gets or sets a boolean that, if true, will cause the symbol to + be rotated according to the direction of the line. Arrows + at the ends, for instance, will point along the direction of + the line, regardless of the direction of the line. + + + + + Gets or sets the number of symbols that should be drawn on each + line. (not each segment). + + + + + Gets or sets the percentual position between line start and end at which the single decoration gets drawn. + + + + + Gets or sets the offset distance measured to the left of the line in pixels. + + + + + StrokeTypes + + + + + The most complex form, containing a linear pattern that can have a hash as well as decorations + + + + + This is not directly supported by DotSpatial, but is in fact, some new type that + will have to be returned. + + + + + Draws only the marker symbols where the line occurs, and uses the dash pattern to control placement. + + + + + The simplest line, offering the easiest interface to use + + + + + A hash line + + + + + Uses a picture to generate a texture + + + + + ModifySelectionModes + + + + + Appends the newly selected features to the existing selection + + + + + Subtracts the newly selected features from the existing features. + + + + + Clears the current selection and selects the new features + + + + + Selects the new features only from the existing selection + + + + + IPointSchemeCategory + + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + This is a specialized FeatureLayer that specifically handles point drawing + + + + + Gets or sets the FeatureSymbolizerOld determining the shared properties. This is actually still the PointSymbolizerOld + and should not be used directly on Polygons or Lines. + + Unable to assign a non-point symbolizer to a PointLayer + + + + Gets or sets the pointSymbolizer characteristics to use for the selected features. + + + + + Gets the currently applied scheme. Because setting the scheme requires a processor intensive + method, we use the ApplyScheme method for assigning a new scheme. This allows access + to editing the members of an existing scheme directly, however. + + + + + IPointScheme + + + + + Gets the list of scheme categories belonging to this scheme. + + + + + IPointSymbolizer + + + + + Draws the symbol to the specified graphics object. + + + + + + + Multiplies all the linear measurements, like width, height, and offset values by the specified value. + + The double precision value to multiply all of the values against. + + + + Gets the maximum size for all of the layers, modified by the offsets. This, in essence, represents the bounds + for the entire symbol. + + + + + This assumes that you wish to simply scale the various sizes. + It will adjust all of the sizes so that the maximum size is + the same as the specified size. + + The Size2D of the new maximum size + + + + Gets the color of the top-most symbol + + The color of the top-most symbol + + + + Sets the color of the top-most layer symbol + + The color to assign to the top-most layer. + + + + Gets or sets the list of symbols. + + + + + PointSchemeCategory + + + + + Creates a new instance of PointSchemeCategory + + + + + Creates a new instanec of a default point scheme category where the geographic symbol size has been + scaled to the specified extent. + + The geographic extent that is 100 times wider than the geographic size of the points. + + + + Creates a new category based on a symbolizer, and uses the same symbolizer, but with a fill and border color of light cyan + for the selection symbolizer + + The symbolizer to use in order to create a category + + + + Creates a simple point category where the symbolizer is based on the simple characteristics. + The selection symbolizer has the same shape and size, but will be colored cyan. + + The color of the regular symbolizer + The shape of the regular symbolizer + the size of the regular symbolizer + + + + Creates a new Point Category based on the specified character + + The character to use for the symbol + The font family name to use as the font + The color of the character + The size of the symbol + + + + Creates a category where the picture is used for the symbol, and a selected + symbol is created as the same symbol but with a cyan border. + + The image to use + The size of the symbol + + + + Creates a category from the single symbol specified. If the symbol is colorable, + the color of the selection symbol will be duplicated, but set to cyan. + + + + + + Creates a new Point Category from the list of symbols + + + + + + This gets a single color that attempts to represent the specified + category. For polygons, for example, this is the fill color (or central fill color) + of the top pattern. If an image is being used, the color will be gray. + + The System.Color that can be used as an approximation to represent this category. + + + + Sets the Color of the top symbol in the symbols. + + The color to set the point. + + + + Gets the legend symbol size of the symbolizer for this category + + + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + This is simply an alias to make things a tad (though not much) more understandable + + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender where features were selected. + The event args describing which expression was used. + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender where features were selected. + The event args describing which expression was used. + + + + Ensures that newly added categories can navigate to higher legend items. + + The newly added legend item. + + + + Ensures that items are disconnected from parent items when removed from the collection. + + + + + + Overrides the OnCopy method to remove the SelectFeatures handler on the copy + + + + + + Cycles through all the categories and resets the parent item. + + + + + Gets or sets the parent scheme. + + + + + Occurs when a category indicates that its filter expression should be used + to select its members. + + + + + Occurs when the deselect features context menu is clicked. + + + + + PointFeatureException + + + + + Creates a new instance of PointFeatureTypeException + + + + + Creates a new instance of PointFeatureTypeException, but with a custom error message + + The string error message to include in the exception + + + + This is a specialized FeatureLayer that specifically handles point drawing + + + + + This creates a new layer with an empty dataset configured to the point feature type. + + + + + Creates a new instance of a PointLayer without sending any status messages + + The IFeatureLayer of data values to turn into a graphical PointLayer + Thrown if the featureSet FeatureType is not point or multi-point + + + + Creates a new instance of a PointLayer for storing and drawing points + + Any implentation of an IFeatureLayer + A valid implementation of the IProgressHandler interface. + Thrown if the featureSet FeatureType is not point or multi-point + + + + Creates a new instance of a PointLayer for storing and drawing points. + + Any implementation of an IFeatureLayer. + An IContainer to contain this layer. + A valid implementation of the IProgressHandler interface. + Thrown if the featureSet FeatureType is + not point or multi-point. + + + + Attempts to create a new PointLayer using the specified file. If the filetype is not + does not generate a point layer, an exception will be thrown. + + A string fileName to create a point layer for. + Any valid implementation of IProgressHandler for receiving progress messages + A PointLayer created from the specified fileName. + + + + Attempts to create a new PointLayer using the specified file. If the filetype is not + does not generate a point layer, an exception will be thrown. + + A string fileName to create a point layer for. + A PointLayer created from the specified fileName. + + + + Gets or sets the pointSymbolizer characteristics to use for the selected features. + + + + + Gets or sets the symbolic characteristics for this layer. + + + + + Gets the currently applied scheme. Because setting the scheme requires a processor intensive + method, we use the ApplyScheme method for assigning a new scheme. This allows access + to editing the members of an existing scheme directly, however. + + + + + PointScheme + + + + + Creates a new instance of PointScheme with no categories added to the list yet. + + + + + creates a new instance of the PointScheme, but assigns the specified symbolizer + as the symbolizer to use on a single default category. + + The geographic point size for the default will be 1/100th the specified extent + + + + Draws the regular symbolizer for the specified cateogry to the specified graphics + surface in the specified bounding rectangle. + + The integer index of the feature to draw. + The Graphics object to draw to + The rectangular bounds to draw in + + + + Adds a new scheme, assuming that the new scheme is the correct type. + + The category to add + + + + Reduces the index value of the specified category by 1 by + exchaning it with the category before it. If there is no + category before it, then this does nothing. + + The category to decrease the index of + + + + Re-orders the specified member by attempting to exchange it with the next higher + index category. If there is no higher index, this does nothing. + + The category to increase the index of + + + + Removes the specified category + + The category to insert + + + + Inserts the category at the specified index + + The integer index where the category should be inserted + The category to insert + + + + Suspends the category events + + + + + Resumes the category events + + + + + Clears the categories + + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + + + + If possible, use the template to control the colors. Otherwise, just use the default + settings for creating "unbounded" colors. + + The integer count. + The List of colors + + + + Calculates the unique colors as a scheme + + The featureset with the data Table definition + The unique field + + + + Gets the point categories cast as FeatureCategories. This is enumerable, + but should be thought of as a copy of the original, not the original itself. + + + + + + Creates the category using a random fill color + + The base color to use for creating the category + The double size of the larger dimension of the point. + A new polygon category + + + + Handle the event un-wiring and scheme update for the old categories + + The category collection to update. + + + + Handle the event wiring and scheme update for the new categories. + + The category collection to update + + + + Gets or sets the symbolic categories as a valid IPointSchemeCategoryCollection. + + + [TypeConverter(typeof(CategoryCollectionConverter))] + [Editor(typeof(PointCategoryCollectionEditor), typeof(UITypeEditor))] + + + + + Gets the number of categories in this scheme + + + + + PointSchemeFactory + + + + + Creates a new instance of PointSchemeFactory where the data Table is specified. + + + + + This causes the creation of a PointScheme + + + + + + + + + Gets or sets the template symbol to use. If using a color gradient, the shape and size will remain the same. + If using a size gradient, the color and shape will remain the same. + + + + + Gets or sets the data Table that provides necessary information about the attributes for unique values to + be calculated + + + + + Gets or sets the string classification field to use + + + + + Gets or sets the string field to use for normalization. + + + + + Gets or sets the number of categories that will be used for classification schemes that don't + come pre-configured with a given number of categories. + + + + + PointSymbolizer + + + + + Creates a new instance of PointSymbolizer + + + + + Generates a new symbolizer with only one symbol. + + The symbol to use for creating this symbolizer + + + + Builds the new list of symbols from the symbols in the preset list or array of symbols. + + + + + + Creates a point symbolizer with one member, and that member is constructed + based on the values specified. + + + + + + + + Creates a point symbolizer with one memberw, and that member is constructed + from the specified image. + + The image to use as a point symbol + The desired output size of the larger dimension of the image. + + + + Creates a new point symbolizer that has a character symbol based on the specified characteristics. + + The character to draw + The font family to use for rendering the font + The font color + The size of the symbol + + + + Creates a new PointSymbolizer + + + + + + Sets the symbol type to geographic and generates a size that is 1/100 the width of the specified extents. + + + + + + + Sets the outline, assuming that the symbolizer either supports outlines, or + else by using a second symbol layer. + + The color of the outline + The width of the outline in pixels + + + + Returns the encapsulating size when considering all of the symbol layers that make up this symbolizer. + + A Size2D + + + + This assumes that you wish to simply scale the various sizes. + It will adjust all of the sizes so that the maximum size is + the same as the specified size. + + The Size2D of the new maximum size + + + + + + + Returns the color of the top-most layer symbol + + + + + + Sets the color of the top-most layer symbol + + The color to assign to the top-most layer. + + + + Draws the specified value + + The Graphics object to draw to + The Rectangle defining the bounds to draw in + + + + Draws the point symbol to the specified graphics object by cycling through each of the layers and + drawing the content. This assumes that the graphics object has been translated to the specified point. + + Graphics object that is used for drawing. + Scale size represents the constant to multiply to the geographic measures in order to turn them into pixel coordinates + + + + Multiplies all the linear measurements, like width, height, and offset values by the specified value. + + The double precision value to multiply all of the values against. + + + + This controls randomly creating a single random symbol from the symbol types, and randomizing it. + + + + + + Gets or sets the set of layered symbols. The symbol with the highest index is drawn on top. + + + + + PointSymbolizerEventArgs + + + + + Creates a new instance of PointSymbolizerEventArgs + + + + + Gets the symbolizer cast as an IPointSymbolizer + + + + + CharacterSubsets + + + + + Basic Latin + + + + + Latin-1 Supplement + + + + + Latin Extended-A + + + + + Latin Extended-B + + + + + IPA Extensions + + + + + Spacing Modifier Letters + + + + + Combining Diacritical Marks + + + + + Greek and Coptic + + + + + Cyrillic + + + + + Armenian + + + + + Hebrew + + + + + Arabic + + + + + Devanagari + + + + + Bengali + + + + + Gumukhi + + + + + Gujarati + + + + + Oriya + + + + + Tamil + + + + + Teluga + + + + + Kanada + + + + + Malayalam + + + + + Thai + + + + + Lao + + + + + Tibetan + + + + + Georgian + + + + + Hangul Jamo 4352 + + + + + Latin Extended Additional + + + + + Greek Extended + + + + + General Punctuation + + + + + Superscripts and Subscripts + + + + + Currency Symbols + + + + + Combining Diacritical Marks for Symbols + + + + + Letterlike Symbols + + + + + Number Forms + + + + + Arrows + + + + + Mathematical Operators + + + + + Miscellaneous Technical + + + + + Control Pictures + + + + + Optical Character Recognition + + + + + Enclosed Alphanumerics + + + + + Box Drawing + + + + + Block Elements + + + + + Geometric Shapes + + + + + Miscellaneous Symbols + + + + + Dingbats + + + + + CJK Symbols and Punctuation + + + + + Hiragana + + + + + Katakana + + + + + Bopomofo + + + + + Hangul Compatibility + + + + + Kanbun + + + + + Enclosed CJK Letters and Months + + + + + CJK Compatibility + + + + + CJK Unified Ideographs + + + + + Hangul Syllables + + + + + Private Use Area + + + + + CJK Compatibility Ideographs + + + + + Alphabetic Presentation Forms + + + + + Arabic Presentation Forms + + + + + Combining Half Marks + + + + + CJK Compatibility Forms + + + + + Small Form Variants + + + + + Arabic Presentation Forms-B + + + + + Halfwidth and fullwidth Forms + + + + + Specials + + + + + CharacterSymbol + + + + + A point symbolizer, is comprized of a set of symbols drawn one on top of the other. This represents the base class + for one of those symbols. The specialized type, like CharacterSymbol, SimpleSymbol, and PictureSymbol. + + + + + ISymbol + + + + + Only copies the shared placement aspects (Size, Offset, Angle) from the specified symbol. + + The symbol to copy values from. + + + + Takes into account the size, angle, and offset to calculate a rectangular bounding size that completely + contains the current symbol. + + A SizeD representing a size that contains the offset, rotated symbol. + + + + Draws this symbol to the graphics object given the symbolizer that specifies content + across the entire set of scales. + + The graphics object should be adjusted so that (0, 0) is the center of the symbol. + If this should draw in pixels, this should be 1. Otherwise, this should be + the constant that you multiply against so that drawing using geographic units will draw in pixel units. + + + + Multiplies all of the linear measurements found in this Symbol by the specified value. + This is especially useful for changing units. + + The double precision floating point value to scale by. + + + + Modifies this symbol in a way that is appropriate for indicating a selected symbol. + This could mean drawing a cyan outline, or changing the color to cyan. + + + + + Gets a color to represent this point. If the point is using an image, + then this color will be gray. + + + + + + Sets the primary color of this symbol to the specified color if possible + + The Color to assign + + + + Gets or sets the double precision floating point that controls the angle in degrees counter clockwise. + + + + + Gets or sets the 2D offset for this particular symbol + + + + + Gets or sets the size + + + + + Gets the symbol type for this symbol. + + + + + Creates a new instance of Symbol + + + + + This creates a wrapper class encapsulates one of the available subclasses for + symbol, enumerating the different options. + + The type to use for this symbol. + + + + Gets a color to represent this point. If the point is using an image, + then this color will be gray. + + + + + + Sets the primary color of this symbol to the specified color if possible + + The Color to assign + + + + Only copies the shared placement aspects (Size, Offset, Angle) from the specified symbol. + + The symbol to copy values from. + + + + Draws this symbol to the graphics object given the symbolizer that specifies content + across the entire set of scales. + + The graphics object should be adjusted so that (0, 0) is the center of the symbol. + If this should draw in pixels, this should be 1. Otherwise, this should be + the constant that you multiply against so that drawing using geographic units will draw in pixel units. + + + + Calculates a size that would be necessary to contain the entire symbol, taking rotation and + offset into account. + + + + + + Multiplies all of the linear measurements found in this Symbol by the specified value. + This is especially useful for changing units. + + The double precision floating point value to scale by. + + + + Modifies this symbol in a way that is appropriate for indicating a selected symbol. + This could mean drawing a cyan outline, or changing the color to cyan. + + + + + Occurs during drawing. The graphics object will already be rotated by the specified angle and + adjusted according to the specified offset. The mask will also be drawn before the point. + + + + + + + An overrideable implementation of randomizing the values for this class. + This can be useful for generating random symbols or else for unit testing. + + The random number generator to use. + + + + This occurs when the symbol is being instructed to scale. The linear measurements are all + multiplied by the specified value. This allows for additional behavior to be programmed, + or the original behavior to be overridden or replaced. + + The double precision value to scale by. + + + + Gets or sets the double precision floating point that controls the angle in degrees counter clockwise. + + + + + Gets or sets the 2D offset for this particular symbol + + + + + Gets or sets the size + + + + + Gets the symbol type for this symbol. + + + + + ICharacterSymbol + + + + + Gets or sets the Color + + + + + Gets or sets the opacity + + + + + Gets the string equivalent of the specified character code. + + A string version of the character + + + + Gets the unicode category for this character. + + + + + Gets or sets the character that this represents. + + + + + Unicode characters consist of 2 bytes. This represents the first byte, + which can be thought of as specifying a typeset. + + + + + Gets or sets the byte code for the lower 256 values. This represents the + specific character in a given "typeset" range. + + + [Editor(typeof(CharacterCodeEditor), typeof(UITypeEditor))] + + + + + Gets or sets the string font family name to use for this character set. + + [Editor(typeof(FontFamilyNameEditor), typeof(UITypeEditor))] + + + + Gets or sets the font style to use for this character layer. + + + + + Creates a new instance of CharacterSymbol + + + + + Creates a new instance of CharacterSymbol + + The character to use for the symbol + + + + Creates a new instance of CharacterSymbol + + The character to use for the symbol + The font family for the character + + + + Creates a new instance of CharacterSymbol + + The character to use for the symbol + The font family for the character + The color for the character + + + + Creates a new instance of CharacterSymbol + + The character to use for the symbol + The font family for the character + The color for the character + The size for the symbol + + + + Gets the font color of this symbol to represent the color of this symbol + + The color of this symbol as a font + + + + Sets the fill color of this symbol to the specified color + + The Color + + + + Modifies this symbol in a way that is appropriate for indicating a selected symbol. + This could mean drawing a cyan outline, or changing the color to cyan. + + + + + Gets the string equivalent of the specified character code. + + A string version of the character + + + + Because there is no easy range calculation supported in dot net + (as compared to GDI32) that I can find, I assume that the + unsupported values will come back as an open box, or at least + identical in glyph form to a known unsupported like Arial 1024. + (Not to be confused with Arial Unicode MS, which has basically + everything. + + + + + + Overrides the default behavior and attempts to draw the specified symbol + + + + + + + Extends the randomize code to include the character aspects, creating a random character. + However, since most fonts don't support full unicode values, a character from 0 to 255 is + chosen. + + The random class generator + + + + Supports serialization even though Colors can't be serialized + + + + + Gets the unicode category for this character. + + + + + Gets or sets the character that this represents. + + + + + Unicode characters consist of 2 bytes. This represents the first byte, + which can be thought of as specifying a typeset. + + + + + Gets or sets the byte code for the lower 256 values. This represents the + specific character in a given "typeset" range. + + + //Editor(typeof(CharacterCodeEditor), typeof(UITypeEditor)) + + + + + Gets or sets the color + + + + + Gets or sets the string font family name to use for this character set. + + + //Editor(typeof(FontFamilyNameEditor), typeof(UITypeEditor)), + + + + + Gets or sets the opacity as a floating point value ranging from 0 to 1, where + 0 is fully transparent and 1 is fully opaque. This actually adjusts the alpha of the color value. + + + + + Gets or sets the font style to use for this character layer. + + + + + IOutlined + + + + + Gets or sets the outline color that surrounds this specific symbol. + (this will have the same shape as the symbol, but be larger. + + + + + This redefines the Alpha channel of the color to a floating point opacity + that ranges from 0 to 1. + + + + + Gets or sets the size of the outline beyond the size of this symbol. + + + + + Gets or sets the boolean outline + + + + + IOutlinedSymbol + + + + + Copies only the use outline, outline width and outline color properties from the specified symbol. + + The symbol to copy from. + + + + IPictureSymbol + + + + + Gets or sets the image to use when the PictureMode is set to Image + + + + + Gets or sets the string fileName, if any, associated with the image file. + Setting this will automatically also load the Image. + + + + + Gets or sets the opacity for this image. Setting this will automatically change the image in memory. + + + + + ISimpleSymbol + + + + + Gets or sets the PointTypes enumeration that describes how to draw the simple symbol. + + + + + OutlinedSymbol + + + + + Creates a new instance of OutlinedSymbol + + + + + Copies only the use outline, outline width and outline color properties from the specified symbol. + + The symbol to copy from. + + + + Handles the drawing code, extending it to include some outline content. + + + + + + + Actually handles the rendering of the outline itself. + + + + + + + + Occurs during the randomize process and allows future overriding of the process for sub-classes + + + + + + Provided for XML serialization + + + + + Gets or sets the outline color that surrounds this specific symbol. + (this will have the same shape as the symbol, but be larger. + + + + + This redefines the Alpha channel of the color to a floating point opacity + that ranges from 0 to 1. + + + + + Gets or sets the size of the outline beyond the size of this symbol. + + + + + Gets or sets the boolean outline + + + + + ImageModes + + + + + The icon property should be used for storing image data + + + + + The image property should be used for storing image data + + + + + PictureSymbol + + + + + Creates a new instance of PictureSymbol + + + + + Creates a new instance of a PictureSymbol from the specified image + + The image to use when creating the symbol + + + + Creates a new instance of a PictureSymbol from the specified image. + The larger dimension from the image will be adjusted to fit the size, + while the smaller dimension will be kept proportional. + + The image to use for this symbol + The double size to use for the larger of the two dimensions of the image. + + + + Creates a new instance of a PictureSymbol from the specified icon + + The icon to use when creating this symbol + + + + Creates a new PictureSymbol given an existing imageData object. + + The imageData object to use. + + + + + + + Disposes the current images + + + + + This helps the copy process by preparing the internal variables AFTER memberwiseclone has created this + + + + + + + OnDraw + + Graphics object + The double scale Size + + + + We can randomize the opacity + + + + + + Overrideable functions for handling the basic disposal of image classes in this object. + + + + + This is set to true when the dispose method is called. + This will be set to false again if the image is set after that. + + + + + Gets or sets the image in 'base64' string format. + This can be used if the image file name is not set. + + + + + Gets or sets the image to use when the PictureMode is set to Image + + + + + Gets or sets the string image fileName to use + + + + + Gets or sets the opacity for this image. Setting this will automatically change the image in memory. + + + + + Allows the selection of several pre-defined shapes that have built + in drawing code. + + + + + Like a rectangle, but oriented with the points vertically + + + + + An rounded elipse. The Size parameter determines the size of the ellipse before rotation. + + + + + A hexagon drawn to fit the size specified. Only the smaller dimension is used. + + + + + A rectangle fit to the Size before any rotation occurs. + + + + + A pentagon drawn to fit the size specified. Only the smaller dimension is used. + + + + + A star drawn to fit the size. Only the smaller size dimension is used. + + + + + Triangle with the point facing upwards initially. + + + + + The default value. + + + + + SimpleSymbol + + + + + Creates a new instance of SimpleSymbol + + + + + Creates a point symbol with the specified color. + + The color of the symbol. + + + + Creates a point symbol with the specified color and shape. + + The color of the symbol. + The shape of the symbol. + + + + Creates a SimpleSymbol with the specified color, shape and size. The size is used for + both the horizontal and vertical directions. + + The color of the symbol. + The shape of the symbol. + The size of the symbol. + + + + Gets the font color of this symbol to represent the color of this symbol + + The color of this symbol as a font + + + + Sets the fill color of this symbol to the specified color. + + The Color. + + + + Handles the specific drawing for this symbol. + + The System.Drawing.Graphics surface to draw with. + A double controling the scaling of the symbol. + + + + Occurs during the randomizing process + + + + + + Draws a 5 pointed star with the points having twice the radius as the bends. + + The GraphicsPath to add the start to + The SizeF size to fit the Start to + + + + Draws a 5 pointed star with the points having twice the radius as the bends. + + The Graphics surface to draw on + The Pen to draw the border with + The Brush to use to fill the Star + The SizeF size to fit the Start to + + + + Draws an ellipse on the specified graphics surface. + + The GraphicsPath to add this shape to + The size to fit the ellipse into (the ellipse will be centered at 0, 0) + + + + Draws an ellipse on the specified graphics surface. + + The graphics surface to draw on + The Pen to use for the border, or null if no border should be drawn + The Brush to use for the fill, or null if no fill should be drawn + The size to fit the ellipse into (the ellipse will be centered at 0, 0) + + + + Draws a regular polygon with equal sides. The first point will be located all the way to the right on the X axis. + + Specifies the GraphicsPath surface to draw on + Specifies the SizeF to fit the polygon into + Specifies the integer number of sides that the polygon should have + + + + Draws a regular polygon with equal sides. The first point will be located all the way to the right on the X axis. + + Specifies the Graphics surface to draw on + Specifies the Pen to use for the border + Specifies the Brush to use for to fill the shape + Specifies the SizeF to fit the polygon into + Specifies the integer number of sides that the polygon should have + + + + Only provided because XML Serialization doesn't work for colors + + + + + Gets or sets the Color + + + + + Gets or sets the opacity as a floating point value ranging from 0 to 1, where + 0 is fully transparent and 1 is fully opaque. This actually adjusts the alpha of the color value. + + + + + Gets or sets the PointTypes enumeration that describes how to draw the simple symbol. + + + + + SymbolListEM + + + + + Calculates the bounding size for this entire symbol. + + + + + + + SymbolTypes + + + + + A symbol based on a character, including special purpose symbolic character sets. + + + + + An extended, custom symbol that is not part of the current design. + + + + + A symbol based on an image or icon. + + + + + A symbol described by a simple geometry, outline and color. + + + + + IPointSchemeCategory + + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + A layer with drawing characteristics for LineStrings + + + + + Gets or sets the symbolizer describing the selection on the default category. + + + + + Gets or sets the symbolizer describing the symbolizer on the default category. + + + + + Gets or sets the polygon scheme that symbolically breaks down the drawing into symbol categories. + + + + + IPointScheme + + + + + Gets the list of scheme categories belonging to this scheme. + + + + + IPolygonSymbolizer + + + + + Gets the color of the top-most pattern, if it is a simple pattern, + or return Color.Empty otherwise + + + + + Sets the color, forcing a simple pattern if necessary + + Gets the color of the top-most pattern + + + + This gets the largest width of all the strokes of the outlines of all the patterns. Setting this will + forceably adjust the width of all the strokes of the outlines of all the patterns. + + + + + Forces the specified width to be the width of every stroke outlining every pattern. + + The width to force as the outline width + + + + Gets or sets the method for drawing the lines that make up the borders of this polygon + + + + + gets or sets the list of patterns to use for filling polygons. + + + + + An interface for a symbolizer specific to polygons. + + + + + Gets or sets the border symbolizer + + + + + Gets or sets a boolean that determines whether or not the polygon border should be drawn. + + + + + GradientPattern + + + + + The pattern can act as both the base class for specific types of pattern as well as a wrapper class that allows + for an enumerated constructor that makes it easier to figure out what kinds of patterns can be created. + + + + + IPattern + + + + + Copies the properties defining the outline from the specified source onto this pattern. + + The source pattern to copy outline properties from. + + + + Fills the specified graphics path with the pattern specified by this object + + The Graphics device to draw to + The GraphicsPath that describes the closed shape to fill + + + + Draws the borders for this graphics path by sequentially drawing all + the strokes in the border symbolizer + + The Graphics device to draw to + The GraphicsPath that describes the outline to draw + The scaleWidth to use for scaling the line width + + + + Gets a color that can be used to represent this pattern. In some cases, a color is not + possible, in which case, this returns Gray. + + A single System.Color that can be used to represent this pattern. + + + + Sets the color that will attempt to be applied to the top pattern. If the pattern is + not colorable, this does nothing. + + + + + Gets or sets the rectangular bounds. This controls how the gradient is drawn, and + should be set to the envelope of the entire layer being drawn + + + + + Gets or sets the line symbolizer that is the outline for this pattern. + + + + + Gets the pattern type of this pattern. + + + + + Gets or sets a boolean indicating whether or not the pattern should use the outline symbolizer. + + + + + Creates a new instance of Pattern + + + + + Creates a new pattern with the specified type + + The subclass of pattern to use as the internal pattern + + + + Gets a color that can be used to represent this pattern. In some cases, a color is not + possible, in which case, this returns Gray. + + A single System.Color that can be used to represent this pattern. + + + + Sets the color that will attempt to be applied to the top pattern. If the pattern is + not colorable, this does nothing. + + + + + Copies the properties defining the outline from the specified source onto this pattern. + + The source pattern to copy outline properties from. + + + + Fills the specified graphics path with the pattern specified by this object + + The Graphics device to draw to + The GraphicsPath that describes the closed shape to fill + + + + Draws the borders for this graphics path by sequentially drawing all + the strokes in the border symbolizer + + The Graphics device to draw to + The GraphicsPath that describes the outline to draw + The scaleWidth to use for scaling the line width + + + + Occurs when the item is changed + + + + + This is not currently used, but technically should cause the list of patterns to remove this pattern. + + + + + Fires the item changed event + + + + + Not Used + + + + + Gets or sets the rectangular bounds. This controls how the gradient is drawn, and + should be set to the envelope of the entire layer being drawn + + + + + Gets or sets the ILineSymbolizer that describes the outline symbology for this pattern. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(LineSymbolizerEditor), typeof(UITypeEditor))] + + + + + Gets or sets the pattern type. Setting this + + + + + Gets or sets a boolean indicating whether or not the pattern should use the outline symbolizer. + + + + + IGradientPath + + + + + Gets or sets the angle for the gradient pattern. + + + + + Gets or sets an array of colors that match the corresponding positions. The length of + colors and positions should be the same length. + + + + + The positions as floating point values from 0 to 1 that represent the corresponding location + in the gradient brush pattern. + + + + + Gets or sets the gradient type + + + + + Creates a new instance of GradientPattern + + + + + Creates a new instance of a Gradient Pattern using the specified colors + + + + + + + Creates a new instance of a Gradient Pattern using the specified colors and angle + + The start color + The end color + The direction of the gradient, measured in degrees clockwise from the x-axis + + + + Creates a new instance of a Gradient Pattern using the specified colors and angle + + The start color + The end color + The direction of the gradient, measured in degrees clockwise from the x-axis + Controls how the gradient is drawn + + + + Gets a color that can be used to represent this pattern. In some cases, a color is not + possible, in which case, this returns Gray. + + A single System.Color that can be used to represent this pattern. + + + + Sets the fill color, keeping the approximate gradiant RGB changes the same, but adjusting + the mean color to the specifeid color. + + The mean color to apply. + + + + Handles the drawing code for linear gradient paths. + + + + + + + Gets or sets the angle for the gradient pattern. + + + + + Gets or sets the end color + + + + + Gets or sets the start color + + + + + Gets or sets the gradient type + + + + + GradientTypes + + + + + Draws the gradient with the start color for the center of the circle + and the end color for the surround color + + + + + Draws the gradient with the start color for the center of the circle + and the end color for the color at the contour. + + + + + Draws the gradient in a line with a specified direction + + + + + Draws the gradient in a rectangular path with the start color + at the center and the end color for the surround color + + + + + HatchPattern + + + + + IHatchPattern + + + + + Gets or sets the hatch style + + + + + Gets or sets the fore color of the hatch pattern + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + Gets or sets the background color of the hatch pattern + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + Creates a new instance of HatchPattern + + + + + Creates a new HatchPattern with the specified image + + The hatch style to use + the forecolor to use + the background color to use + + + + Instructs the drawing code to fill the specified path with the specified pattern + + The Graphics device to draw to + The GraphicsPath to fill + + + + Gets the forecolor + + + + + + Sets the foreColor to the specified color + + + + + + Gets or sets the hatch style + + + + + Gets or sets the fore color of the hatch pattern + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + Gets or sets the background color of the hatch pattern + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + IPicturePattern + + + + + Opens the specified image or icon file to a local copy. Icons are converted into bitmaps. + + The string fileName to open. + + + + Gets or sets the angle for the texture in degrees. + + + + + Gets the string dialog filter that represents the supported picture file formats. + + + + + Gets or sets the image to use as a repeating texture + + + + + Gets or sets the picture fileName. Setting this will load the picture. + + + + + Gets or sets a multiplier that should be multiplied against the width and height of the + picture before it is used as a texture in pixel coordinates. + + + + + Gets or sets the wrap mode. + + + + + ISimplePattern + + + + + Gets or sets solid Color used for filling this pattern. + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + PatternTypes + + + + + A pattern that gradually changes from one color to another + + + + + A pattern comprised of evenly spaced lines + + + + + A pattern comprised of point symbolizers + + + + + A pattern comprised of a tiled texture + + + + + A pattern comprised strictly of a fill color. + + + + + PicturePattern + + + + + Creates a new instance of PicturePattern + + + + + Creates a new PicturePattern with the specified image + + The picture to draw + The way to wrap the picture + The angle to rotate the image + + + + Opens the specified image or icon file to a local copy. Icons are converted into bitmaps. + + The string fileName to open. + + + + Disposes the image picture for this PicturePattern. + + + + + Instructs the drawing code to fill the specified path with the specified image. + + The Graphics device to draw to + The GraphicsPath to fill + + + + Gets or sets the angle for the texture in degrees. + + + + + Gets the string dialog filter that represents the supported picture file formats. + + + + + Gets or sets the image to use as a repeating texture + + + + + Gets or sets the picture fileName. Setting this will load the picture. + + + + + Gets or sets a multiplier that should be multiplied against the width and height of the + picture before it is used as a texture in pixel coordinates. + + + + + Gets or sets the wrap mode. + + + + + SimplePattern + + + + + Creates a new instance of SimplePattern + + + + + Creates a new SimplePattern with the specified fill color + + The fill color to use for this simple pattern + + + + Gets the fill color + + + + + + Sets the fill color + + + + + + Fills the path + + The Graphics device to draw to + The GraphicsPath to fill using this pattern + + + + Gets or sets solid Color used for filling this pattern. + + + + + Sets the opacity of this simple pattern by modifying the alpha channel of the fill color. + + + + + PointSchemeCategory + + + + + Creates a new instance of PointSchemeCategory + + + + + Specifies a category that is made up from a simple color. + + The color to fill the polygons with + The border color for the polygons + The width of the line drawn on the border + + + + Creates a new PolygonCategory with the specified image being tiled within the category. + The s + + The picture to draw + The way to wrap the picture + The angle to rotate the image + + + + Creates a new PolygonCategory with the specified image being tiled within the category. + The simple outline characteristics are also defined. + + The picture to draw + The way to wrap the picture + The angle to rotate the image + The color to use + The outline width + + + + Creates a new instance of a Gradient Pattern using the specified colors and angle + + The start color + The end color + The direction of the gradient + The type of gradient to use + The color to use for the border symbolizer + The width of the line to use for the border symbolizer + + + + Creates a new category based on a symbolizer, and uses the same symbolizer, but with a fill and border color of light cyan + for the selection symbolizer + + The symbolizer to use in order to create a category + + + + This gets a single color that attempts to represent the specified + category. For polygons, for example, this is the fill color (or central fill color) + of the top pattern. If an image is being used, the color will be gray. + + The System.Color that can be used as an approximation to represent this category. + + + + Sets the fill color of the top-most pattern to the specified color, if the pattern can specify a color. + + Sets the color of the top most pattern for the principal symbolizer. + + + + A string representation of this category. + + String + + + + Gets or sets the symbolizer for this category + + + + + Gets or sets the symbolizer to use to draw selected features from this category. + + + + + This is simply an alias to make things a tad (though not much) more understandable + + + + + Initializes a new PolygonCategoryCollection instance with the supplied scheme. + + + + + Initializes a new PolygonCategoryCollection instance with the supplied scheme. + + The scheme to use ofr this collection. + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender where features were selected. + The event args describing the expression used for selection. + + + + Instructs the parent layer to select features matching the specified expression. + + The object sender where features were selected. + The event args describing which expression was used. + + + + Ensures that newly added categories can navigate to higher legend items. + + The newly added legend item. + + + + Overrides the copy behavior to remove the now unnecessary SelecTFeatures event handler. + + + + + + Changes the parent item of the specified category + + + + + + Gets or sets the parent scheme for this collection + + + + + Occurs when a category indicates that its filter expression should be used + to select its members. + + + + + Occurs when the deselect features context menu is clicked. + + + + + PolygonFeatureTypeException + + + + + Creates a new instance of PolygonFeatureTypeException + + + + + Creates a new instance of PolygonFeatureTypeException + + The custom error message to use for this exception + + + + A layer with drawing characteristics for LineStrings + + + + + Constructor + + A featureset that contains polygons + Thrown if a non-polygon featureset is supplied. + + + + Constructor that also shows progress + + A featureset that contains polygons + An IProgressHandler to receive progress messages + Thrown if a non-polygon featureset is supplied. + + + + Initializes a new instance of the PolygonLayer class. + + A featureset that contains polygons. + A Container to store the newly created layer in. + An IProgressHandler to receive progress messages. + Thrown if a non-polygon featureset is supplied. + + + + Draws some section of the extent to the specified graphics object. + + The graphics object to draw to. + The projection interface that specifies how to transform geographic coordinates to an image. + + + + Gets or sets the symbolic characteristics for the members of this symbol class that have been selected. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(PolygonSymbolizerEditor), typeof(UITypeEditor))] + + + + + Gets or sets the default Polygon Symbolizer to use with all the lines on this layer. + Setting this will not clear the existing individually specified Symbolizers, + only the default symbolizer. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(PolygonSymbolizerEditor), typeof(UITypeEditor))] + + + + + Gets or sets the polygon scheme that symbolically breaks down the drawing into symbol categories. + + + [TypeConverter(typeof(GeneralTypeConverter))] + [Editor(typeof(PolygonSchemePropertyGridEditor), typeof(UITypeEditor))] + + + + + PointScheme + + + + + Creates a new instance of PointScheme with no categories added to the list yet. + + + + + Initializes a new instance of the PolygonScheme class. + + THe featureset with the data Table definition to use for symbolizing. + The string name of the field to use + when calculating separate color codes. Unique entries will be + assigned a random color. + + + + Calculates the unique colors as a scheme. + + The featureset with the data Table definition. + The unique field. + + + + Draws the regular symbolizer for the specified cateogry to the specified graphics + surface in the specified bounding rectangle. + + The integer index of the feature to draw. + The Graphics object to draw to + The rectangular bounds to draw in + + + + Adds a new scheme, assuming that the new scheme is the correct type. + + The category to add + + + + Reduces the index value of the specified category by 1 by + exchaning it with the category before it. If there is no + category before it, then this does nothing. + + The category to decrease the index of + + + + Re-orders the specified member by attempting to exchange it with the next higher + index category. If there is no higher index, this does nothing. + + The category to increase the index of + + + + Inserts the category at the specified index + + The integer index where the category should be inserted + The category to insert + + + + Removes the specified category + + The category to remove + + + + Suspends the category events + + + + + Resumes the category events + + + + + Clears the categories + + + + + If possible, use the template to control the colors. Otherwise, just use the default + settings for creating "unbounded" colors. + + The integer count. + The List of colors + + + + Gets teh categories as an IEnumerable of type IFeatureCategory + + + + + + Creates the category using a random fill color + + The base color to use for creating the category + This is ignored for polygons + A new polygon category + + + + Uses the settings on this scheme to create a random category. + + A new IFeatureCategory + + + + Handle the event un-wiring and scheme update for the old categories + + The category collection to update. + + + + Handle the event wiring and scheme update for the new categories. + + The category collection to update + + + + Gets or sets the symbolic categories as a valid IPointSchemeCategoryCollection. + + + + + Gets the number of categories in this scheme + + + + + PolygonSymbolizer + + + + + Creates a new instance of PolygonSymbolizer + + + + + Creates a new instance of a polygon symbolizer + + The fill color to use for the polygons + The border color to use for the polygons + + + + Creates a new instance of a solid colored polygon symbolizer + + The fill color to use for the polygons + The border color to use for the polygons + The width of the outline to use fo + + + + Creates a new instance of a Gradient Pattern using the specified colors and angle + + The start color + The end color + The direction of the gradient, measured in degrees clockwise from the x-axis + Controls how the gradient is drawn + + + + Creates a new instance of a Gradient Pattern using the specified colors and angle + + The start color + The end color + The direction of the gradient, measured in degrees clockwise from the x-axis + The type of gradient to use + The color to use for the border symbolizer + The width of the line to use for the border symbolizer + + + + Creates a new PicturePattern with the specified image + + The picture to draw + The way to wrap the picture + The angle to rotate the image + + + + Creates a new PicturePattern with the specified image + + The picture to draw + The way to wrap the picture + The angle to rotate the image + The color to use for the border symbolizer + The width of the line to use for the border symbolizer + + + + Creates a new symbolizer, using the patterns specified by the list or array of patterns. + + The patterns to add to this symbolizer. + + + + Specifies a polygon symbolizer with a specific fill color. + + The color to use as a fill color. + + + + Creates a new instance of PolygonSymbolizer + + Boolean, true if this should use selection symbology + + + + Sets the outline, assuming that the symbolizer either supports outlines, or + else by using a second symbol layer. + + The color of the outline + The width of the outline in pixels + + + + This gets the largest width of all the strokes of the outlines of all the patterns. Setting this will + forceably adjust the width of all the strokes of the outlines of all the patterns. + + + + + Forces the specified width to be the width of every stroke outlining every pattern. + + The width to force as the outline width + + + + Gets the fill color of the top-most pattern. + + + + + + Sets the fill color of the top-most pattern. + If the pattern is not a simple pattern, a simple pattern will be forced. + + The Color structure + + + + Draws the polygon symbology + + The graphics device to draw to + The target rectangle to draw symbology content to + + + + Occurs after the pattern list is set so that we can listen for when + the outline symbolizer gets updated. + + + + + Occurs before the pattern list is set so that we can stop listening + for messages from the old outline. + + + + + Gets or sets the Symbolizer for the borders of this polygon as they appear on the top-most pattern. + + + + + gets or sets the list of patterns to use for filling polygons. + + + + + PolygonSymbolizerEventArgs + + + + + Creates a new instance of PolygonSymbolizerEventArgs + + + + + Gets or sets the Symbolizer, casting it to an IPolygonSymbolizer + + + + + A class that specifically controls the drawing for Polygons + + + + + Constructor + + + + + Gets or sets the polygon symbolizer + + Boolean, true if this should use a standard selection symbology of light cyan coloring + + + + Creates a new polygon symbolizer based on the specified parameters. + + The IEnvelope representing the base geometric size of the layer. This helps to estimate a useful geographic line width + Boolean, true if this should use a standard selection symbology of light cyan coloring + + + + Replaces the drawing code so that the polygon characteristics are more evident. + + + + + + + Gets or sets the border symbolizer + + + + + Gets or sets a boolean that determines whether or not the polygon border should be drawn. + + + + + QuickSchemeTypes + + + + + Box-plot: Tukey 1977 + Basically it is like subdividing the data into 4 quartiles, + denoted like Q1, Q2, Q3, Q4. + ------- + Low Outlier (less than the Quartile - 3/2 Interquartile range) + Q1 (Q1 - 3/2 the Interquartile range to Q1 + Q2 (Quartile 1 to Median) + Q3 (Median to Quartile 3) + Q4 (Q3 to Q3 + 3/2 the Interquartile range + High Outlier (Greater than Q3 plus the interquartile range + + + + + The interval size is defined, rather than the number of subdivisions + + + + + Symbolize so that the total range of values for a specific field are subdivided into + a number of breaks where all the breaks cover the same difference in values. + + + + + Intervals are selected so that the number of observations in each successive interval + increases or decreases exponentially + + + + + The Jenks natural breaks algorithm strives for variance minimization within + a classification. + + + + + Percentile subdivides into the following six categories: + less than 1%, + 1% to just less than 10%, + 10% to just less than 50% + 50% to just less than 90% + 90% to just less than 99% + greater than or equal to 99% + + + + + The number of members found in each cateogry is the same, but the range might be + widely different for datasets that don't have equally distributed values. + + + + + The mean and standard deviation of the attribute values are calculated, and + values are classified according to their deviation from the mean (z-transform) + The transformed values are mapped, usually at intervales of 1.0 or .5 standard + deviations. This often results in no central class. + + + + + Symbolize so that each separate entry will have a separate category for that entry. + + + + + Creates a new instance of Selection + + + + + SelectionEM + + + + + Inverts the selection based on the current SelectionMode + + The ISelection to invert + The geographic region to reverse the selected state + + + + SelectionModes + + + + + The vertices of the feature are all inside (and not touching the boundary of) the region. + + + Use ContainsExtent for faster selections. + + + + + *Faster, the item to be selected must be completely contained by the extent + + + + + The entire region is inside the feature and not touching the border. + + + + + The feature is completely inside the region, but touching the edges is ok (unlike Contains). + + + + + For this to be true the feature must be a point or a curve and must cross + the specified + + + + + The interiors and boundaries don't intersect, touch, or overlap, so they are + completely separate. + + + + + *Faster, the item will be selected if any part of that item is visible in the extent + + + + + The most inclusive possible. If any element is touching or overlapping the region in any + way, then this will be true. + + + + + Like intersects, specifically requires that part of the feature is inside + and part of the feature is outside of the region. + + + + + The feature has borders or edges in common, but otherwise does not fall inside + the region. + + + + + The region is found completely inside the specified region to the extent + that no borders come in contact with the outside edge of the region. + + + + + Statistics + + + + + resets all statistics to 0. + + + + + Calculates the statistics for the specified values + + + + + + Calculates the statistics for the specified values + + + + + + + + Gets the integer count of the values + + + + + Gets the highest value + + + + + Gets the average value + + + + + Gets the middle value, or the average of the two middle values + + + + + Gets the minimum value + + + + + Gets the standard deviation + + + + + Gets the sum of the values. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/libcurl.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/de-DE/DotSpatial.Plugins.Measure.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/lti_dsdk.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/DotSpatial.Plugins.SpatiaLite.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/DotSpatial.Plugins.SpatiaLite.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/DotSpatial.Plugins.SpatiaLite.dll.config (revision 2866) @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.Forms.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/de-DE/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.dll.config (revision 2866) @@ -0,0 +1,22 @@ + + + + +
+ + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/WixUIVariables.wxl =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/WixUIVariables.wxl (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/WixUIVariables.wxl (revision 2866) @@ -0,0 +1,67 @@ + + + + + Installs the most common program features of [ProductName], including manual. Recommended for most users. + + en-US + + EulaDeltares.rtf + WindowLayout_normal.en-US.xml + setup_start.jpg + + + + 88 + 88 + + + 40 + + 220 + + Arial + 10 + 8 + + + + + + The Setup Wizard will install [ProductName] on your computer. Click Next to continue or Cancel to exit the Setup Wizard. + + + + The Setup Wizard will install [ProductName] on your computer. Click Next to continue or Cancel to exit the Setup Wizard. + + + {\WixUI_Font_Title}Please read the End-User License Agreement + + + To Remove or Repair the installation of [ProductName]. Click Next to continue or Cancel to exit the Setup Wizard. + + {\WixUI_Font_Banner_Description}Select the operation you wish to perform. + {\WixUI_Font_Banner_Description}Browse to the destination folder + {\WixUI_Font_Banner_Description}Select the way you want features to be installed. + {\WixUI_Font_Banner_Description}Select the way you want features to be installed. + + {\WixUI_Font_Banner_Description}The Setup Wizard will complete the installation of [ProductName] on your computer. Click Install to continue or Cancel to exit the Setup Wizard. + {\WixUI_Font_Title}Resuming the [ProductName] Setup Wizard + + + {\WixUI_Font_Banner_Description}The disk space required for the installation of the selected features. + {\WixUI_Font_Banner_Description}Disk space required for the installation exceeds available disk space. + {\WixUI_Font_Banner_Description}Disk space required for the installation exceeds available disk space. + {\WixUI_Font_Banner_Description}Choose the setup type that best suits your needs + {\WixUI_Font_Banner_Description}Please read the following license agreement carefully + + There is a problem. An old ds flex is detected. A new version must be installed before we can install [ProductName]. + + There is a problem. An old (or no) Common Files is detected. Version 19.1 or higher must be installed before we can install [ProductName]. + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_HDF5Image.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Ionic.Zip.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/osr_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.Forms.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_MrSID.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/ssleay32.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/libpq.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allows to manage Extensions. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.TableEditor/DotSpatial.Plugins.TableEditor.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Help/DotSpatial.Plugins.Help.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/gdalconst_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.dll.config (revision 2866) @@ -0,0 +1,22 @@ + + + + +
+ + + + + + + + + + + + + 10 + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/DotSpatial.Data.Rasters.GdalExtension.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/ApplicationGUIDs.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/ApplicationGUIDs.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/ApplicationGUIDs.wxi (revision 2866) @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/setup_start.jpg =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Help/DotSpatial.Plugins.Help.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ecw_cs.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ecw_cs.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ecw_cs.wkt (revision 2866) @@ -0,0 +1,1451 @@ +AB_10TM,PROJCS["AB_10TM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-114.9999999999725],PARAMETER["scale_factor",0.9992],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ACRESLC,PROJCS["ACRESLC",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-18.00000000235031],PARAMETER["standard_parallel_2",-35.99999999897103],PARAMETER["latitude_of_origin",-26.99999999779589],PARAMETER["central_meridian",131.999999998137],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +AEAFRICA,LOCAL_CS["AEAFRICA - (unsupported)"] +AERUSS,LOCAL_CS["AERUSS - (unsupported)"] +ALALASK2,PROJCS["ALALASK2",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",65],PARAMETER["standard_parallel_2",55],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-153],PARAMETER["false_easting",0],PARAMETER["false_northing",-4943910.68]] +ALALASK3,PROJCS["ALALASK3",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",65],PARAMETER["standard_parallel_2",55],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-153],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALALASKA,PROJCS["ALALASKA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",65],PARAMETER["standard_parallel_2",55],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-150],PARAMETER["false_easting",0],PARAMETER["false_northing",-4943910.68]] +ALAUS,PROJCS["ALAUS",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",-10],PARAMETER["standard_parallel_2",-39.99999999999994],PARAMETER["latitude_of_center",-29.99999999999995],PARAMETER["longitude_of_center",135],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALBC,PROJCS["ALBC",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",58.5],PARAMETER["standard_parallel_2",50],PARAMETER["latitude_of_center",45],PARAMETER["longitude_of_center",-126],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0]] +ALBERING,PROJCS["ALBERING",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",60],PARAMETER["standard_parallel_2",70],PARAMETER["latitude_of_center",60],PARAMETER["longitude_of_center",170],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALCAM,PROJCS["ALCAM",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",30],PARAMETER["standard_parallel_2",10],PARAMETER["latitude_of_center",20],PARAMETER["longitude_of_center",-69.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALCANADA,PROJCS["ALCANADA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",66],PARAMETER["standard_parallel_2",41],PARAMETER["latitude_of_center",55],PARAMETER["longitude_of_center",-89.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALCHI,PROJCS["ALCHI",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",45],PARAMETER["standard_parallel_2",20],PARAMETER["latitude_of_center",35],PARAMETER["longitude_of_center",110],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALCOLOMB,PROJCS["ALCOLOMB",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",1],PARAMETER["standard_parallel_2",5],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-72.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALDLGAL,PROJCS["ALDLGAL",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",55.00000000000679],PARAMETER["standard_parallel_2",64.99999999998198],PARAMETER["latitude_of_center",49.99999999999055],PARAMETER["longitude_of_center",-153.9999999999846],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALDLGHAW,PROJCS["ALDLGHAW",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",8.00000000002599],PARAMETER["standard_parallel_2",18.00000000000118],PARAMETER["latitude_of_center",3.000000000009746],PARAMETER["longitude_of_center",-156.9999999999944],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALDLGUSA,PROJCS["ALDLGUSA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",29.5],PARAMETER["standard_parallel_2",45.5],PARAMETER["latitude_of_center",23],PARAMETER["longitude_of_center",-95.99999999999996],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALEUR,PROJCS["ALEUR",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",70],PARAMETER["standard_parallel_2",35],PARAMETER["latitude_of_center",50],PARAMETER["longitude_of_center",12],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALEURO,PROJCS["ALEURO",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",40],PARAMETER["standard_parallel_2",60],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",12],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALFAR,PROJCS["ALFAR",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",30],PARAMETER["standard_parallel_2",10],PARAMETER["latitude_of_center",20],PARAMETER["longitude_of_center",80],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALFGDL,PROJCS["ALFGDL",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",24.00000000122388],PARAMETER["standard_parallel_2",31.50000000124825],PARAMETER["latitude_of_center",24.00000000122388],PARAMETER["longitude_of_center",-84.00000000141881],PARAMETER["false_easting",400000],PARAMETER["false_northing",0]] +ALFLA_GRS80,PROJCS["ALFLA_GRS80",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",24.00000000122388],PARAMETER["standard_parallel_2",31.50000000124825],PARAMETER["latitude_of_center",24.00000000122388],PARAMETER["longitude_of_center",-84.00000000141881],PARAMETER["false_easting",400000],PARAMETER["false_northing",0]] +ALFLA_N27,PROJCS["ALFLA_N27",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",24.00000000122388],PARAMETER["standard_parallel_2",31.50000000124825],PARAMETER["latitude_of_center",24.00000000122388],PARAMETER["longitude_of_center",-84.00000000141881],PARAMETER["false_easting",400000],PARAMETER["false_northing",0]] +ALGMEXIC,PROJCS["ALGMEXIC",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",28],PARAMETER["standard_parallel_2",22],PARAMETER["latitude_of_center",25],PARAMETER["longitude_of_center",-89.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALGULFFT,PROJCS["ALGULFFT",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",31],PARAMETER["standard_parallel_2",27],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-89.99999999999994],PARAMETER["false_easting",3500000],PARAMETER["false_northing",-7624216.25],UNIT["unnamed",0.3048006096]] +ALGULFMT,PROJCS["ALGULFMT",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",45.5],PARAMETER["standard_parallel_2",29.5],PARAMETER["latitude_of_center",23],PARAMETER["longitude_of_center",-89.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALMALIN,PROJCS["ALMALIN",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",30],PARAMETER["standard_parallel_2",0.008333299999997507],PARAMETER["latitude_of_center",15],PARAMETER["longitude_of_center",120],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALMEA2,PROJCS["ALMEA2",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",25.0000003],PARAMETER["standard_parallel_2",-24.99999999999997],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",20],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +ALMENA,PROJCS["ALMENA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",35],PARAMETER["standard_parallel_2",1],PARAMETER["latitude_of_center",18],PARAMETER["longitude_of_center",20],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALNEVADA,PROJCS["ALNEVADA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",36.00000000000237],PARAMETER["standard_parallel_2",41.0000000000186],PARAMETER["latitude_of_center",38.50000000001049],PARAMETER["longitude_of_center",-116.999999999979],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALNSEA,PROJCS["ALNSEA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",53],PARAMETER["standard_parallel_2",61],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",0],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0]] +ALRUSS,PROJCS["ALRUSS",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",38],PARAMETER["standard_parallel_2",62],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",96],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +ALSAF,PROJCS["ALSAF",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",-0.9999999999999829],PARAMETER["standard_parallel_2",-31],PARAMETER["latitude_of_center",-15.99999999999996],PARAMETER["longitude_of_center",20],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALSAM,PROJCS["ALSAM",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",-0.9999999999999829],PARAMETER["standard_parallel_2",-54.99999999999998],PARAMETER["latitude_of_center",-27.99999999999998],PARAMETER["longitude_of_center",-69.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALTEALE,PROJCS["ALTEALE",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",34],PARAMETER["standard_parallel_2",40.49999999999996],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-120],PARAMETER["false_easting",0],PARAMETER["false_northing",-4000000]] +ALTX_TCMS_AEA,PROJCS["ALTX_TCMS_AEA",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",27.49999999997475],PARAMETER["standard_parallel_2",34.99999999999911],PARAMETER["latitude_of_center",18.00000000000118],PARAMETER["longitude_of_center",-99.9999999999811],PARAMETER["false_easting",1500000],PARAMETER["false_northing",6000000]] +ALUSA_FT,PROJCS["ALUSA_FT",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",29.5],PARAMETER["standard_parallel_2",45.5],PARAMETER["latitude_of_center",23],PARAMETER["longitude_of_center",-95.99999999999996],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["unnamed",0.3048006096]] +ALVENEZ,PROJCS["ALVENEZ",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",10],PARAMETER["standard_parallel_2",4],PARAMETER["latitude_of_center",7],PARAMETER["longitude_of_center",-65.99999999999996],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +ALWAUST,PROJCS["ALWAUST",PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",-17.4752127514901],PARAMETER["standard_parallel_2",-31.51267873219527],PARAMETER["latitude_of_center",-29.99999999999995],PARAMETER["longitude_of_center",120.8940947726037],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +BCNAMER,LOCAL_CS["BCNAMER - (unsupported)"] +BCSAMER,LOCAL_CS["BCSAMER - (unsupported)"] +BCSPHERE,LOCAL_CS["BCSPHERE - (unsupported)"] +BONNEPOR,LOCAL_CS["BONNEPOR - (unsupported)"] +BORNEOMT,LOCAL_CS["BORNEOMT - (unsupported)"] +CAISRAEL,PROJCS["CAISRAEL",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",31.7340969],PARAMETER["central_meridian",35.2120806],PARAMETER["false_easting",170251.555],PARAMETER["false_northing",1126867.91]] +CAISRMOD,PROJCS["CAISRMOD",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",31.7340969],PARAMETER["central_meridian",35.2120806],PARAMETER["false_easting",1170251.55],PARAMETER["false_northing",1126867.91]] +CAPAL,PROJCS["CAPAL",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",31.7340969],PARAMETER["central_meridian",35.2120806],PARAMETER["false_easting",170251.555],PARAMETER["false_northing",126867.91]] +CAQATAR,PROJCS["CAQATAR",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",25.3823611],PARAMETER["central_meridian",50.7613889],PARAMETER["false_easting",100000],PARAMETER["false_northing",100000]] +CAQATMOD,PROJCS["CAQATMOD",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",25.3823611],PARAMETER["central_meridian",50.7613889],PARAMETER["false_easting",100000],PARAMETER["false_northing",1100000]] +CASNGPOR,PROJCS["CASNGPOR",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",1.2876466],PARAMETER["central_meridian",103.8530022],PARAMETER["false_easting",30000],PARAMETER["false_northing",30000]] +CATOBAGO,PROJCS["CATOBAGO",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",11.2521786],PARAMETER["central_meridian",-60.6860088],PARAMETER["false_easting",187500],PARAMETER["false_northing",180000],UNIT["unnamed",0.201166195]] +CATRINID,PROJCS["CATRINID",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",10.4416666],PARAMETER["central_meridian",-61.33333329999998],PARAMETER["false_easting",430000],PARAMETER["false_northing",325000],UNIT["unnamed",0.201166195]] +CAVANUA,PROJCS["CAVANUA",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",-16.24999999999996],PARAMETER["central_meridian",179.3333333],PARAMETER["false_easting",12513.32],PARAMETER["false_northing",16628.88],UNIT["unnamed",0.201166195]] +CAVITI,PROJCS["CAVITI",PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",-17.99999999999998],PARAMETER["central_meridian",178],PARAMETER["false_easting",5440],PARAMETER["false_northing",7040],UNIT["unnamed",0.201166195]] +CE42BUL,LOCAL_CS["CE42BUL - (unsupported)"] +CEAUST,LOCAL_CS["CEAUST - (unsupported)"] +CEBLACK,LOCAL_CS["CEBLACK - (unsupported)"] +CECARP1,LOCAL_CS["CECARP1 - (unsupported)"] +CECASP,LOCAL_CS["CECASP - (unsupported)"] +CECASPAN,LOCAL_CS["CECASPAN - (unsupported)"] +CECISWMC,LOCAL_CS["CECISWMC - (unsupported)"] +CEEUR1,LOCAL_CS["CEEUR1 - (unsupported)"] +CEEUROPE,LOCAL_CS["CEEUROPE - (unsupported)"] +CERUSS,LOCAL_CS["CERUSS - (unsupported)"] +CERUSS1,LOCAL_CS["CERUSS1 - (unsupported)"] +CERUSS2,LOCAL_CS["CERUSS2 - (unsupported)"] +CEYUGO,LOCAL_CS["CEYUGO - (unsupported)"] +DUTCHNEW,LOCAL_CS["DUTCHNEW - (unsupported)"] +DUTCHOLD,LOCAL_CS["DUTCHOLD - (unsupported)"] +EGSA87,PROJCS["EGSA87",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",23.99999882666041],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +FLSPHERE,LOCAL_CS["FLSPHERE - (unsupported)"] +GALCC,PROJCS["GALCC",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-18.00000000235031],PARAMETER["standard_parallel_2",-35.99999999897103],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",134.0000000015812],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +HGRS87,PROJCS["HGRS87",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",23.99999882666041],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +IDTM,PROJCS["IDTM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.99999999999996],PARAMETER["central_meridian",-114],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",100000]] +JAPAN19_01,PROJCS["JAPAN19_01",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",33],PARAMETER["central_meridian",129.5000000000002],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_02,PROJCS["JAPAN19_02",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",33],PARAMETER["central_meridian",131],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_03,PROJCS["JAPAN19_03",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",132.1666666666665],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_04,PROJCS["JAPAN19_04",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",33],PARAMETER["central_meridian",133.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_05,PROJCS["JAPAN19_05",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.99999999897103],PARAMETER["central_meridian",134.3333333329101],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_06,PROJCS["JAPAN19_06",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.99999999897103],PARAMETER["central_meridian",136],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_07,PROJCS["JAPAN19_07",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",137.1666666666667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_08,PROJCS["JAPAN19_08",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",138.5000000000002],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_09,PROJCS["JAPAN19_09",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.99999999897103],PARAMETER["central_meridian",139.8333333333004],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_10,PROJCS["JAPAN19_10",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",140.8333333333334],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_11,PROJCS["JAPAN19_11",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",44],PARAMETER["central_meridian",140.25],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_12,PROJCS["JAPAN19_12",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",44],PARAMETER["central_meridian",142.2499999999997],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_13,PROJCS["JAPAN19_13",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",44],PARAMETER["central_meridian",144.25],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_14,PROJCS["JAPAN19_14",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",142],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_15,PROJCS["JAPAN19_15",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",127.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_16,PROJCS["JAPAN19_16",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",124],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_17,PROJCS["JAPAN19_17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",131],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_18,PROJCS["JAPAN19_18",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",20],PARAMETER["central_meridian",136],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +JAPAN19_19,PROJCS["JAPAN19_19",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",154],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +KOREA_25,PROJCS["KOREA_25",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000000241528],PARAMETER["central_meridian",125.00289027778],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",500000]] +KOREA_27,PROJCS["KOREA_27",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000000241528],PARAMETER["central_meridian",127.0028902777799],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",500000]] +KOREA_29,PROJCS["KOREA_29",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000000241528],PARAMETER["central_meridian",129.00289027778],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",500000]] +KOREA_31,PROJCS["KOREA_31",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000000241528],PARAMETER["central_meridian",131.00289027778],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",500000]] +KOREA_JJ,PROJCS["KOREA_JJ",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000000241528],PARAMETER["central_meridian",127.0028902777799],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",550000]] +L2AFRICA,PROJCS["L2AFRICA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",20.00000000006498],PARAMETER["standard_parallel_2",-10.00000000003249],PARAMETER["latitude_of_origin",-25.00000000008122],PARAMETER["central_meridian",20.00000000006498],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2ALASKA,PROJCS["L2ALASKA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",60.00000000019492],PARAMETER["standard_parallel_2",70.00000000022742],PARAMETER["latitude_of_origin",65.00000000021116],PARAMETER["central_meridian",-150.0000000004873],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2ALS10F,PROJCS["L2ALS10F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.83333333617553],PARAMETER["standard_parallel_2",53.8333333338902],PARAMETER["latitude_of_origin",51.00000002766766],PARAMETER["central_meridian",-176.0000000280737],PARAMETER["false_easting",3000000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ALS10M,PROJCS["L2ALS10M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.83333333617553],PARAMETER["standard_parallel_2",53.8333333338902],PARAMETER["latitude_of_origin",51.00000002766766],PARAMETER["central_meridian",-176.0000000280737],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2ALSK10F83,PROJCS["L2ALSK10F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.82355506655649],PARAMETER["standard_parallel_2",53.82317782885884],PARAMETER["latitude_of_origin",50.9903789776676],PARAMETER["central_meridian",-175.9667980405784],PARAMETER["false_easting",3280833.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ANT1,PROJCS["L2ANT1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-82.50000000599761],PARAMETER["standard_parallel_2",-81.49999997849238],PARAMETER["latitude_of_origin",-83.49999997620704],PARAMETER["central_meridian",-105.0000000232594],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2ANTDRI,PROJCS["L2ANTDRI",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-79.33333486606217],PARAMETER["standard_parallel_2",-76.6666632368084],PARAMETER["latitude_of_origin",-79.99999990858666],PARAMETER["central_meridian",159.9999998171733],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2ARKNF83,PROJCS["L2ARKNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.23333329670535],PARAMETER["standard_parallel_2",34.93333331251476],PARAMETER["latitude_of_origin",34.33333328455248],PARAMETER["central_meridian",-92.00000000946621],PARAMETER["false_easting",1312333.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ARKSF83,PROJCS["L2ARKSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.76666670810897],PARAMETER["standard_parallel_2",33.30000000492102],PARAMETER["latitude_of_origin",32.66666672483252],PARAMETER["central_meridian",-92.00000000946621],PARAMETER["false_easting",1312333.333],PARAMETER["false_northing",1312333.333],UNIT["US Foot",0.30480061]] +L2AUST,PROJCS["L2AUST",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-30.00000000009746],PARAMETER["standard_parallel_2",-20.00000000006498],PARAMETER["latitude_of_origin",-25.00000000008122],PARAMETER["central_meridian",135.0000000004386],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2CAL1F83,PROJCS["L2CAL1F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.66666668590062],PARAMETER["standard_parallel_2",40.0000000115891],PARAMETER["latitude_of_origin",39.33333330748703],PARAMETER["central_meridian",-121.9999999751862],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL1M,PROJCS["L2CAL1M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.0000000115891],PARAMETER["standard_parallel_2",41.66666668590062],PARAMETER["latitude_of_origin",39.33333330748703],PARAMETER["central_meridian",-121.9999999751862],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2CAL2F83,PROJCS["L2CAL2F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.83333329259175],PARAMETER["standard_parallel_2",38.33333327998181],PARAMETER["latitude_of_origin",37.66666669047129],PARAMETER["central_meridian",-121.9999999751862],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL2M,PROJCS["L2CAL2M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.33333333727759],PARAMETER["standard_parallel_2",39.83333334988753],PARAMETER["latitude_of_origin",37.66666669047129],PARAMETER["central_meridian",-121.9999999751862],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2CAL3F83,PROJCS["L2CAL3F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.43333332283937],PARAMETER["standard_parallel_2",37.06666671980479],PARAMETER["latitude_of_origin",36.50000000126449],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL3M,PROJCS["L2CAL3M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.066666662509],PARAMETER["standard_parallel_2",38.43333332283937],PARAMETER["latitude_of_origin",36.50000000126449],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2CAL4F83,PROJCS["L2CAL4F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.24999997892158],PARAMETER["standard_parallel_2",36.00000001615977],PARAMETER["latitude_of_origin",35.3333333120577],PARAMETER["central_meridian",-119.0000000072621],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL4M,PROJCS["L2CAL4M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.00000001615977],PARAMETER["standard_parallel_2",37.24999997892158],PARAMETER["latitude_of_origin",35.3333333120577],PARAMETER["central_meridian",-119.0000000072621],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2CAL5F83,PROJCS["L2CAL5F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.46666672163305],PARAMETER["standard_parallel_2",34.03333332786711],PARAMETER["latitude_of_origin",33.49999997604461],PARAMETER["central_meridian",-117.9999999797569],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL5M,PROJCS["L2CAL5M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.46666672163305],PARAMETER["standard_parallel_2",34.03333332786711],PARAMETER["latitude_of_origin",33.49999997604461],PARAMETER["central_meridian",-117.9999999797569],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000]] +L2CAL6F83,PROJCS["L2CAL6F83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.88333332087654],PARAMETER["standard_parallel_2",32.78333330780953],PARAMETER["latitude_of_origin",32.16666668243202],PARAMETER["central_meridian",-116.2499999745946],PARAMETER["false_easting",6561666.665],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2CAL6M,PROJCS["L2CAL6M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.78333330780953],PARAMETER["standard_parallel_2",33.88333332087654],PARAMETER["latitude_of_origin",32.16666668243202],PARAMETER["central_meridian",-116.2499999745946],PARAMETER["false_easting",2000000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2CAMER,PROJCS["L2CAMER",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",10.00000000003249],PARAMETER["standard_parallel_2",30.00000000009746],PARAMETER["latitude_of_origin",20.00000000006498],PARAMETER["central_meridian",-90.00000000029239],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2CAN2K,PROJCS["L2CAN2K",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",76.99999999795831],PARAMETER["standard_parallel_2",49.0000000013051],PARAMETER["latitude_of_origin",63.00000000249651],PARAMETER["central_meridian",-91.99999999800704],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2CANADA,PROJCS["L2CANADA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",50.00000000016244],PARAMETER["standard_parallel_2",60.00000000019492],PARAMETER["latitude_of_origin",55.00000000017868],PARAMETER["central_meridian",-100.0000000003249],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2COLCF83,PROJCS["L2COLCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.45000000001032],PARAMETER["standard_parallel_2",39.75000000001454],PARAMETER["latitude_of_origin",37.83333333332256],PARAMETER["central_meridian",-105.499999999999],PARAMETER["false_easting",3000000],PARAMETER["false_northing",999999.9998],UNIT["US Foot",0.30480061]] +L2COLCM,PROJCS["L2COLCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.44999997755038],PARAMETER["standard_parallel_2",39.75000001903675],PARAMETER["latitude_of_origin",37.83333335217286],PARAMETER["central_meridian",-105.5000000083642],PARAMETER["false_easting",914401.8289],PARAMETER["false_northing",304800.6096],UNIT["unnamed",1]] +L2COLNF83,PROJCS["L2COLNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.71666666664291],PARAMETER["standard_parallel_2",40.78333333333213],PARAMETER["latitude_of_origin",39.33333333332743],PARAMETER["central_meridian",-105.499999999999],PARAMETER["false_easting",3000000],PARAMETER["false_northing",999999.9998],UNIT["US Foot",0.30480061]] +L2COLNM,PROJCS["L2COLNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.71666665231896],PARAMETER["standard_parallel_2",40.78333335596397],PARAMETER["latitude_of_origin",39.33333330748703],PARAMETER["central_meridian",-105.5000000083642],PARAMETER["false_easting",914401.8289],PARAMETER["false_northing",304800.6096],UNIT["unnamed",1]] +L2COLSF83,PROJCS["L2COLSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.43333332283937],PARAMETER["standard_parallel_2",37.23333332421058],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-105.5000000083642],PARAMETER["false_easting",3000000],PARAMETER["false_northing",999999.9998],UNIT["US Foot",0.30480061]] +L2COLSM,PROJCS["L2COLSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.23333332421058],PARAMETER["standard_parallel_2",38.43333332283937],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-105.5000000083642],PARAMETER["false_easting",914401.8289],PARAMETER["false_northing",304800.6096],UNIT["unnamed",1]] +L2CONNF83,PROJCS["L2CONNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.86666671431998],PARAMETER["standard_parallel_2",41.20000001021791],PARAMETER["latitude_of_origin",40.83333332009697],PARAMETER["central_meridian",-72.75000000997663],PARAMETER["false_easting",1000000.001],PARAMETER["false_northing",499999.9999],UNIT["US Foot",0.30480061]] +L2EUROPE,PROJCS["L2EUROPE",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.00000000012995],PARAMETER["standard_parallel_2",60.00000000019492],PARAMETER["latitude_of_origin",50.00000000016244],PARAMETER["central_meridian",20.00000000006498],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2FLANF83,PROJCS["L2FLANF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.75000000067286],PARAMETER["standard_parallel_2",29.58333331146606],PARAMETER["latitude_of_origin",28.99999999551055],PARAMETER["central_meridian",-84.50000000371226],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2FLANM,PROJCS["L2FLANM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",29.58333331146606],PARAMETER["standard_parallel_2",30.75000000067286],PARAMETER["latitude_of_origin",28.99999999551055],PARAMETER["central_meridian",-84.50000000371226],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2IOWNF83,LOCAL_CS["L2IOWNF83 - (unsupported)"] +L2IOWNM,PROJCS["L2IOWNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.06666668544356],PARAMETER["standard_parallel_2",43.26666668407236],PARAMETER["latitude_of_origin",41.50000002419905],PARAMETER["central_meridian",-93.50000002207615],PARAMETER["false_easting",1500000],PARAMETER["false_northing",1000000],UNIT["unnamed",1]] +L2IOWSF83,LOCAL_CS["L2IOWSF83 - (unsupported)"] +L2IOWSM,PROJCS["L2IOWSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.6166666942624],PARAMETER["standard_parallel_2",41.78333332617341],PARAMETER["latitude_of_origin",40.0000000115891],PARAMETER["central_meridian",-93.50000002207615],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2KANNF83,PROJCS["L2KANNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.78333332845875],PARAMETER["standard_parallel_2",38.71666668210951],PARAMETER["latitude_of_origin",38.3260985419027],PARAMETER["central_meridian",-98.4814182215737],PARAMETER["false_easting",1312333.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2KANSF27,PROJCS["L2KANSF27",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.26666669092835],PARAMETER["standard_parallel_2",38.56666667511895],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-98.49999998771493],PARAMETER["false_easting",2000000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2KANSF83,PROJCS["L2KANSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.25963976464153],PARAMETER["standard_parallel_2",38.55939452289581],PARAMETER["latitude_of_origin",36.65975295313957],PARAMETER["central_meridian",-98.4814182215737],PARAMETER["false_easting",1312333.333],PARAMETER["false_northing",1312333.333],UNIT["US Foot",0.30480061]] +L2KANSM,PROJCS["L2KANSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.26666669092835],PARAMETER["standard_parallel_2",38.56666667511895],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-98.49999998771493],PARAMETER["false_easting",400000],PARAMETER["false_northing",400000],UNIT["unnamed",1]] +L2KYF83,PROJCS["L2KYF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.6666666666395],PARAMETER["standard_parallel_2",37.08333333332012],PARAMETER["latitude_of_origin",36.33333333331768],PARAMETER["central_meridian",-85.7499999999921],PARAMETER["false_easting",4921250],PARAMETER["false_northing",3280833.333],UNIT["US Foot",0.30480061]] +L2KYNFT83,PROJCS["L2KYNFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.96666666669451],PARAMETER["standard_parallel_2",38.96666666664047],PARAMETER["latitude_of_origin",37.50000000000723],PARAMETER["central_meridian",-84.24999999998722],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2KYSFT83,PROJCS["L2KYSFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.73333333331897],PARAMETER["standard_parallel_2",37.93333333332288],PARAMETER["latitude_of_origin",36.33333333331768],PARAMETER["central_meridian",-85.7499999999921],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",1640416.666],UNIT["US Foot",0.30480061]] +L2KYSM,PROJCS["L2KYSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.73333333910585],PARAMETER["standard_parallel_2",37.93333333773465],PARAMETER["latitude_of_origin",36.33333333956292],PARAMETER["central_meridian",-85.75000002376986],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000],UNIT["unnamed",1]] +L2LANFT83,PROJCS["L2LANFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.66666672483252],PARAMETER["standard_parallel_2",31.16666671222257],PARAMETER["latitude_of_origin",30.49424625135023],PARAMETER["central_meridian",-92.49999999457094],PARAMETER["false_easting",3280833.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2LAOFT83,PROJCS["L2LAOFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",26.16666668928801],PARAMETER["standard_parallel_2",27.83333330630376],PARAMETER["latitude_of_origin",25.4951894888338],PARAMETER["central_meridian",-91.33333330536414],PARAMETER["false_easting",3280833.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2LASFT83,PROJCS["L2LASFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.69999997924407],PARAMETER["standard_parallel_2",29.30000000949169],PARAMETER["latitude_of_origin",28.49999999894667],PARAMETER["central_meridian",-91.33333330536414],PARAMETER["false_easting",3280833.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MARYF83,PROJCS["L2MARYF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.30000002785559],PARAMETER["standard_parallel_2",39.4500000050556],PARAMETER["latitude_of_origin",37.66666666669354],PARAMETER["central_meridian",-76.99999999795831],PARAMETER["false_easting",1312333.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MARYM,PROJCS["L2MARYM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.30000002785559],PARAMETER["standard_parallel_2",39.4500000050556],PARAMETER["latitude_of_origin",37.66666669047129],PARAMETER["central_meridian",-76.99999999795831],PARAMETER["false_easting",400000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2MASIF27,PROJCS["L2MASIF27",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.2833333],PARAMETER["standard_parallel_2",41.4833333],PARAMETER["latitude_of_origin",41],PARAMETER["central_meridian",-70.49999999999996],PARAMETER["false_easting",800000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MASIF83,PROJCS["L2MASIF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.48333331219226],PARAMETER["standard_parallel_2",41.28333328377291],PARAMETER["latitude_of_origin",40.99226545263474],PARAMETER["central_meridian",-70.5000000197096],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MASMF83,PROJCS["L2MASMF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.71666670732941],PARAMETER["standard_parallel_2",42.68333331082107],PARAMETER["latitude_of_origin",41.0000000000186],PARAMETER["central_meridian",-71.49999998991905],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",2460625],UNIT["US Foot",0.30480061]] +L2MASMM,PROJCS["L2MASMM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.71666665003362],PARAMETER["standard_parallel_2",42.68333331082107],PARAMETER["latitude_of_origin",40.99999998179855],PARAMETER["central_meridian",-71.49999998991905],PARAMETER["false_easting",200000],PARAMETER["false_northing",750000],UNIT["unnamed",1]] +L2MICCF83,PROJCS["L2MICCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.18333332343101],PARAMETER["standard_parallel_2",45.69999999075196],PARAMETER["latitude_of_origin",43.30849844728642],PARAMETER["central_meridian",-84.33333328471491],PARAMETER["false_easting",19685000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MICCM,PROJCS["L2MICCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.18333332343101],PARAMETER["standard_parallel_2",45.69999999075196],PARAMETER["latitude_of_origin",43.31666664820536],PARAMETER["central_meridian",-84.36666665143269],PARAMETER["false_easting",6000000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2MICNF83,PROJCS["L2MICNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.48333330762161],PARAMETER["standard_parallel_2",47.08333330579333],PARAMETER["latitude_of_origin",44.77488176554888],PARAMETER["central_meridian",-86.99999998653165],PARAMETER["false_easting",26246666.66],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MICNM,PROJCS["L2MICNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.48333330762161],PARAMETER["standard_parallel_2",47.08333330579333],PARAMETER["latitude_of_origin",44.7833333513933],PARAMETER["central_meridian",-86.99999998653165],PARAMETER["false_easting",8000000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2MICSF83,PROJCS["L2MICSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.09999999486556],PARAMETER["standard_parallel_2",43.66666668361529],PARAMETER["latitude_of_origin",41.49217112888638],PARAMETER["central_meridian",-84.33333328471491],PARAMETER["false_easting",13123333.33],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2MICSM,PROJCS["L2MICSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.09999999486556],PARAMETER["standard_parallel_2",43.66666668361529],PARAMETER["latitude_of_origin",41.50000002419905],PARAMETER["central_meridian",-84.36666665143269],PARAMETER["false_easting",4000000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2MINCF83,PROJCS["L2MINCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.61666671719695],PARAMETER["standard_parallel_2",47.04999999637133],PARAMETER["latitude_of_origin",44.99151086264789],PARAMETER["central_meridian",-94.24999999973323],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",328083.3333],UNIT["US Foot",0.30480061]] +L2MINCM,PROJCS["L2MINCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.61666665990117],PARAMETER["standard_parallel_2",47.04999999637133],PARAMETER["latitude_of_origin",44.99999997722788],PARAMETER["central_meridian",-94.24999999973323],PARAMETER["false_easting",800000],PARAMETER["false_northing",100000],UNIT["unnamed",1]] +L2MINNF83,PROJCS["L2MINNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.03333328436455],PARAMETER["standard_parallel_2",48.63333328253628],PARAMETER["latitude_of_origin",46.49122789140281],PARAMETER["central_meridian",-93.10000002253321],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",328083.3333],UNIT["US Foot",0.30480061]] +L2MINNM,PROJCS["L2MINNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.03333334166033],PARAMETER["standard_parallel_2",48.63333333983206],PARAMETER["latitude_of_origin",46.49999998983782],PARAMETER["central_meridian",-93.10000002253321],PARAMETER["false_easting",800000],PARAMETER["false_northing",100000],UNIT["unnamed",1]] +L2MINSF83,PROJCS["L2MINSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43.78333332388808],PARAMETER["standard_parallel_2",45.21666666666077],PARAMETER["latitude_of_origin",43.0000000000251],PARAMETER["central_meridian",-94.00000000718087],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",328083.3333],UNIT["US Foot",0.30480061]] +L2MINSM,PROJCS["L2MINSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43.78333332388808],PARAMETER["standard_parallel_2",45.21666666035824],PARAMETER["latitude_of_origin",42.99999997951321],PARAMETER["central_meridian",-94.00000000718087],PARAMETER["false_easting",800000],PARAMETER["false_northing",100000],UNIT["unnamed",1]] +L2MON2,PROJCS["L2MON2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.99999508186673],PARAMETER["standard_parallel_2",49.99999851047217],PARAMETER["latitude_of_origin",45.99999679616945],PARAMETER["central_meridian",104],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2MTF83,PROJCS["L2MTF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",48.99999997265721],PARAMETER["standard_parallel_2",44.99999997722788],PARAMETER["latitude_of_origin",44.24165234827042],PARAMETER["central_meridian",-109.5000000037935],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NCAFT83,PROJCS["L2NCAFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.33333328455248],PARAMETER["standard_parallel_2",36.16666667786134],PARAMETER["latitude_of_origin",33.7500051825129],PARAMETER["central_meridian",-78.99999999567299],PARAMETER["false_easting",2000000.002],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NCAM,PROJCS["L2NCAM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.33333334184825],PARAMETER["standard_parallel_2",36.16666667786134],PARAMETER["latitude_of_origin",33.75000002589275],PARAMETER["central_meridian",-78.99999999567299],PARAMETER["false_easting",609601.22],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2NDNFT83,PROJCS["L2NDNFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",48.73333332539385],PARAMETER["standard_parallel_2",47.43333328390748],PARAMETER["latitude_of_origin",47.00000719421077],PARAMETER["central_meridian",-100.4999999854296],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NDSFT83,PROJCS["L2NDSFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.18333332114568],PARAMETER["standard_parallel_2",47.48333330533627],PARAMETER["latitude_of_origin",45.66667699457027],PARAMETER["central_meridian",-100.4999999854296],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NDSM,PROJCS["L2NDSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.18333332114568],PARAMETER["standard_parallel_2",47.48333330533627],PARAMETER["latitude_of_origin",45.66666668132996],PARAMETER["central_meridian",-100.4999999854296],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2NEBF83,PROJCS["L2NEBF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.99999997951321],PARAMETER["standard_parallel_2",40.0000000115891],PARAMETER["latitude_of_origin",39.83000612667543],PARAMETER["central_meridian",-100.0000000003249],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NEWYF83,PROJCS["L2NEWYF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.66666671569118],PARAMETER["standard_parallel_2",41.03333329122055],PARAMETER["latitude_of_origin",40.16667618439008],PARAMETER["central_meridian",-73.99999997273844],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2NEWYLIF,PROJCS["L2NEWYLIF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.6666667],PARAMETER["standard_parallel_2",41.0333333],PARAMETER["latitude_of_origin",40.5],PARAMETER["central_meridian",-73.99999999999993],PARAMETER["false_easting",2000000],PARAMETER["false_northing",100000],UNIT["US Foot",0.30480061]] +L2NEWYM,PROJCS["L2NEWYM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.6666666583954],PARAMETER["standard_parallel_2",41.03333334851633],PARAMETER["latitude_of_origin",40.16666667329068],PARAMETER["central_meridian",-73.99999997273844],PARAMETER["false_easting",300000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2NOAMER,PROJCS["L2NOAMER",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.00000000011371],PARAMETER["standard_parallel_2",55.00000000017868],PARAMETER["latitude_of_origin",45.00000000014619],PARAMETER["central_meridian",-100.0000000003249],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2NSW1,PROJCS["L2NSW1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-30],PARAMETER["standard_parallel_2",-36],PARAMETER["latitude_of_origin",-36],PARAMETER["central_meridian",147],PARAMETER["false_easting",700000],PARAMETER["false_northing",8200000]] +L2NSW2,PROJCS["L2NSW2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-32.66666666666664],PARAMETER["standard_parallel_2",-35.33333333333334],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["false_easting",1000000],PARAMETER["false_northing",10000000]] +L2OHINF83,PROJCS["L2OHINF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.43333332055404],PARAMETER["standard_parallel_2",41.69999999532262],PARAMETER["latitude_of_origin",39.66667310531327],PARAMETER["central_meridian",-82.50000000599761],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2OHINM,PROJCS["L2OHINM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.43333332055404],PARAMETER["standard_parallel_2",41.69999999532262],PARAMETER["latitude_of_origin",39.66666668818596],PARAMETER["central_meridian",-82.50000000599761],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2OHISF83,PROJCS["L2OHISF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.73333327952474],PARAMETER["standard_parallel_2",40.03333332101111],PARAMETER["latitude_of_origin",38.00000585804395],PARAMETER["central_meridian",-82.50000000599761],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2OHISM,PROJCS["L2OHISM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.73333333682052],PARAMETER["standard_parallel_2",40.03333332101111],PARAMETER["latitude_of_origin",38.00000001387444],PARAMETER["central_meridian",-82.50000000599761],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2OKLNF83,PROJCS["L2OKLNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.76666670582364],PARAMETER["standard_parallel_2",35.56666670719483],PARAMETER["latitude_of_origin",35.00000537445783],PARAMETER["central_meridian",-98.00000000261021],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2OKLSF83,PROJCS["L2OKLSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.23333332649591],PARAMETER["standard_parallel_2",33.93333328500954],PARAMETER["latitude_of_origin",33.33333509051219],PARAMETER["central_meridian",-98.00000000261021],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ORENF83,PROJCS["L2ORENF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.33333327312581],PARAMETER["standard_parallel_2",46.0000000047331],PARAMETER["latitude_of_origin",43.66667671037671],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",8202083.332],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ORENM,PROJCS["L2ORENM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.33333333042158],PARAMETER["standard_parallel_2",46.0000000047331],PARAMETER["latitude_of_origin",43.66666668361529],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",2500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2ORESF83,PROJCS["L2ORESF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.33333327541114],PARAMETER["standard_parallel_2",44.00000000701844],PARAMETER["latitude_of_origin",41.66667636888736],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",4921249.999],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2ORESM,PROJCS["L2ORESM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.33333333270692],PARAMETER["standard_parallel_2",44.00000000701844],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2PANFT83,PROJCS["L2PANFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.88333328422998],PARAMETER["standard_parallel_2",41.94999998787499],PARAMETER["latitude_of_origin",40.16667280393909],PARAMETER["central_meridian",-77.74999997561541],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2PANM,PROJCS["L2PANM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.88333334152576],PARAMETER["standard_parallel_2",41.94999998787499],PARAMETER["latitude_of_origin",40.16666667329068],PARAMETER["central_meridian",-77.74999997561541],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2PASFT83,PROJCS["L2PASFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.93333327815354],PARAMETER["standard_parallel_2",40.80000001067497],PARAMETER["latitude_of_origin",39.33333938083966],PARAMETER["central_meridian",-77.74999997561541],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2PASM,PROJCS["L2PASM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.93333333544932],PARAMETER["standard_parallel_2",40.96666667237655],PARAMETER["latitude_of_origin",39.33333330748703],PARAMETER["central_meridian",-77.74999997561541],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2PRVF83,PROJCS["L2PRVF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",18.43333328839693],PARAMETER["standard_parallel_2",18.033333288854],PARAMETER["latitude_of_origin",17.83333572415316],PARAMETER["central_meridian",-66.4333332908447],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",656166.6665],UNIT["US Foot",0.30480061]] +L2PRVIM,PROJCS["L2PRVIM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",18.03333334614978],PARAMETER["standard_parallel_2",18.43333334569271],PARAMETER["latitude_of_origin",17.83333331773042],PARAMETER["central_meridian",-66.43333334814049],PARAMETER["false_easting",200000],PARAMETER["false_northing",200000],UNIT["unnamed",1]] +L2SAUST,PROJCS["L2SAUST",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-27.99999999999998],PARAMETER["standard_parallel_2",-36],PARAMETER["latitude_of_origin",-31.99999999999997],PARAMETER["central_meridian",134.9999999999997],PARAMETER["false_easting",1000000],PARAMETER["false_northing",2000000]] +L2SCFT83,PROJCS["L2SCFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.50000499056798],PARAMETER["standard_parallel_2",34.83333836898157],PARAMETER["latitude_of_origin",31.83333490601491],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["false_easting",1999996],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2SCM,PROJCS["L2SCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.50000000583516],PARAMETER["standard_parallel_2",34.83333332695297],PARAMETER["latitude_of_origin",31.83333335902886],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["false_easting",609600],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2SDNFT83,PROJCS["L2SDNFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.41666671856815],PARAMETER["standard_parallel_2",45.68333327874517],PARAMETER["latitude_of_origin",43.83334004892307],PARAMETER["central_meridian",-100.0000000003249],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2SDNM,PROJCS["L2SDNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.41666666127237],PARAMETER["standard_parallel_2",45.68333333604095],PARAMETER["latitude_of_origin",43.83333334531687],PARAMETER["central_meridian",-100.0000000003249],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2SDSFT83,PROJCS["L2SDSFT83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.83333331781164],PARAMETER["standard_parallel_2",44.40000000656137],PARAMETER["latitude_of_origin",42.33333952065111],PARAMETER["central_meridian",-100.333333323728],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2SDSM,PROJCS["L2SDSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.83333331781164],PARAMETER["standard_parallel_2",44.40000000656137],PARAMETER["latitude_of_origin",42.33333333270692],PARAMETER["central_meridian",-100.333333323728],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2SOAMER,PROJCS["L2SOAMER",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",0],PARAMETER["standard_parallel_2",-30.00000000009746],PARAMETER["latitude_of_origin",-15.00000000004873],PARAMETER["central_meridian",-60.00000000019492],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2TENNF27,PROJCS["L2TENNF27",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.24999998120691],PARAMETER["standard_parallel_2",36.41666672770949],PARAMETER["latitude_of_origin",34.66666666525141],PARAMETER["central_meridian",-86.00000001632222],PARAMETER["false_easting",2000000],PARAMETER["false_northing",100000],UNIT["US Foot",0.30480061]] +L2TENNF83,PROJCS["L2TENNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.24999998120691],PARAMETER["standard_parallel_2",36.41666672770949],PARAMETER["latitude_of_origin",34.33333826928529],PARAMETER["central_meridian",-86.00000001632222],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2TENNM,PROJCS["L2TENNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.24999998120691],PARAMETER["standard_parallel_2",36.41666667041371],PARAMETER["latitude_of_origin",34.33333334184825],PARAMETER["central_meridian",-86.00000001632222],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2TXCF83,PROJCS["L2TXCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.88333332316187],PARAMETER["standard_parallel_2",30.11666672058434],PARAMETER["latitude_of_origin",29.66666664231684],PARAMETER["central_meridian",-100.333333323728],PARAMETER["false_easting",2296583.333],PARAMETER["false_northing",9842499.998],UNIT["US Foot",0.30480061]] +L2TXNCF83,PROJCS["L2TXNCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.96666670902311],PARAMETER["standard_parallel_2",32.13333331571423],PARAMETER["latitude_of_origin",31.66666698380619],PARAMETER["central_meridian",-98.49999998771493],PARAMETER["false_easting",1968500],PARAMETER["false_northing",6561666.665],UNIT["US Foot",0.30480061]] +L2TXNF27,PROJCS["L2TXNF27",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.6500000105404],PARAMETER["standard_parallel_2",36.18333333257235],PARAMETER["latitude_of_origin",34.00000001844511],PARAMETER["central_meridian",-101.5000000129348],PARAMETER["false_easting",2000000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2TXNF83,PROJCS["L2TXNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.6500000105404],PARAMETER["standard_parallel_2",36.18333327527657],PARAMETER["latitude_of_origin",34.00000001844511],PARAMETER["central_meridian",-101.5000000129348],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",3280833.333],UNIT["US Foot",0.30480061]] +L2TXNM,PROJCS["L2TXNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.6500000105404],PARAMETER["standard_parallel_2",36.18333333257235],PARAMETER["latitude_of_origin",34.00000001844511],PARAMETER["central_meridian",-101.5000000129348],PARAMETER["false_easting",200000],PARAMETER["false_northing",1000000],UNIT["unnamed",1]] +L2TXSCF83,PROJCS["L2TXSCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.28333332499014],PARAMETER["standard_parallel_2",28.38333331283726],PARAMETER["latitude_of_origin",27.83333330630376],PARAMETER["central_meridian",-98.99999997281965],PARAMETER["false_easting",1968500],PARAMETER["false_northing",13123333.33],UNIT["US Foot",0.30480061]] +L2TXSF83,PROJCS["L2TXSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.83333330630376],PARAMETER["standard_parallel_2",26.16666668928801],PARAMETER["latitude_of_origin",25.66666670418329],PARAMETER["central_meridian",-98.49999998771493],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",16404166.66],UNIT["US Foot",0.30480061]] +L2TX_SHACK_FT,PROJCS["L2TX_SHACK_FT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.41600000001344],PARAMETER["standard_parallel_2",34.91599999998051],PARAMETER["latitude_of_origin",31.15999999997518],PARAMETER["central_meridian",-99.9999999999811],PARAMETER["false_easting",3000000],PARAMETER["false_northing",3000000],UNIT["US Foot",0.30480061]] +L2TX_TCMS_LC,PROJCS["L2TX_TCMS_LC",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.49999999997475],PARAMETER["standard_parallel_2",34.99999999999911],PARAMETER["latitude_of_origin",18.00000000000118],PARAMETER["central_meridian",-99.9999999999811],PARAMETER["false_easting",1500000],PARAMETER["false_northing",5000000]] +L2TX_TSMS,PROJCS["L2TX_TSMS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.41600000001344],PARAMETER["standard_parallel_2",34.91599999998051],PARAMETER["latitude_of_origin",31.15999999997518],PARAMETER["central_meridian",-99.9999999999811],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +L2USA48,PROJCS["L2USA48",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.00000000239903],PARAMETER["standard_parallel_2",45.00000000014619],PARAMETER["latitude_of_origin",23.00000000236655],PARAMETER["central_meridian",-95.99999999916595],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +L2UTHCF83,PROJCS["L2UTHCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.01666669609066],PARAMETER["standard_parallel_2",40.6500000036844],PARAMETER["latitude_of_origin",38.33333299350291],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",6561666.665],UNIT["US Foot",0.30480061]] +L2UTHCM,PROJCS["L2UTHCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.01666663879488],PARAMETER["standard_parallel_2",40.6500000036844],PARAMETER["latitude_of_origin",38.33333333727759],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",500000],PARAMETER["false_northing",2000000],UNIT["unnamed",1]] +L2UTHNF83,PROJCS["L2UTHNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.71666667982419],PARAMETER["standard_parallel_2",41.78333332617341],PARAMETER["latitude_of_origin",40.33333327769648],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",3280833.333],UNIT["US Foot",0.30480061]] +L2UTHNM,PROJCS["L2UTHNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.71666667982419],PARAMETER["standard_parallel_2",41.78333332617341],PARAMETER["latitude_of_origin",40.33333333499225],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",500000],PARAMETER["false_northing",1000000],UNIT["unnamed",1]] +L2UTHSF83,PROJCS["L2UTHSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.21666672679535],PARAMETER["standard_parallel_2",38.34999999198859],PARAMETER["latitude_of_origin",36.66666672026184],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",9842499.998],UNIT["US Foot",0.30480061]] +L2UTHSM,PROJCS["L2UTHSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.21666666949957],PARAMETER["standard_parallel_2",38.34999999198859],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-111.5000000015082],PARAMETER["false_easting",500000],PARAMETER["false_northing",3000000],UNIT["unnamed",1]] +L2VIRNF83,PROJCS["L2VIRNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.03333332329644],PARAMETER["standard_parallel_2",39.20000001250324],PARAMETER["latitude_of_origin",37.66666669047129],PARAMETER["central_meridian",-78.50000001056827],PARAMETER["false_easting",11482916.66],PARAMETER["false_northing",6561666.665],UNIT["US Foot",0.30480061]] +L2VIRNM,PROJCS["L2VIRNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.03333332329644],PARAMETER["standard_parallel_2",39.20000001250324],PARAMETER["latitude_of_origin",37.66666669047129],PARAMETER["central_meridian",-78.50000001056827],PARAMETER["false_easting",3500000],PARAMETER["false_northing",2000000],UNIT["unnamed",1]] +L2VIRSF83,PROJCS["L2VIRSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.76666670582364],PARAMETER["standard_parallel_2",37.96666670445244],PARAMETER["latitude_of_origin",36.33333328226714],PARAMETER["central_meridian",-78.50000001056827],PARAMETER["false_easting",11482916.66],PARAMETER["false_northing",3280833.333],UNIT["US Foot",0.30480061]] +L2VIRSM,PROJCS["L2VIRSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.76666664852786],PARAMETER["standard_parallel_2",37.96666664715666],PARAMETER["latitude_of_origin",36.33333333956292],PARAMETER["central_meridian",-78.50000001056827],PARAMETER["false_easting",3500000],PARAMETER["false_northing",1000000],UNIT["unnamed",1]] +L2WA_WGS84,PROJCS["L2WA_WGS84",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-83.49999997620704],PARAMETER["standard_parallel_2",-81.49999997849238],PARAMETER["latitude_of_origin",-82.50000000599761],PARAMETER["central_meridian",-105.0000000232594],PARAMETER["false_easting",343122.675],PARAMETER["false_northing",203866.49]] +L2WISCF83,PROJCS["L2WISCF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.2499999995708],PARAMETER["standard_parallel_2",45.50000001962838],PARAMETER["latitude_of_origin",43.83333328802108],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WISCM,PROJCS["L2WISCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.2499999995708],PARAMETER["standard_parallel_2",45.50000001962838],PARAMETER["latitude_of_origin",43.83333334531687],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WISNF83,PROJCS["L2WISNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.56666669576817],PARAMETER["standard_parallel_2",46.76666669439697],PARAMETER["latitude_of_origin",45.16666669622524],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WISNM,PROJCS["L2WISNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.56666663847238],PARAMETER["standard_parallel_2",46.76666669439697],PARAMETER["latitude_of_origin",45.16666663892946],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WISSF83,PROJCS["L2WISSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.73333327495407],PARAMETER["standard_parallel_2",44.06666668315822],PARAMETER["latitude_of_origin",42.00000000930377],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WISSM,PROJCS["L2WISSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.73333333224986],PARAMETER["standard_parallel_2",44.06666668315822],PARAMETER["latitude_of_origin",42.00000000930377],PARAMETER["central_meridian",-90.00000001175154],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WSHNF83,PROJCS["L2WSHNF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.50000001734305],PARAMETER["standard_parallel_2",48.73333332539385],PARAMETER["latitude_of_origin",46.99999997494255],PARAMETER["central_meridian",-120.8333332859794],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WSHNM,PROJCS["L2WSHNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.50000001734305],PARAMETER["standard_parallel_2",48.73333332539385],PARAMETER["latitude_of_origin",46.99999997494255],PARAMETER["central_meridian",-120.8333333432752],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WSHSF83,PROJCS["L2WSHSF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.83333328573575],PARAMETER["standard_parallel_2",47.33333329834569],PARAMETER["latitude_of_origin",45.33333301415213],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WSHSM,PROJCS["L2WSHSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.83333334303153],PARAMETER["standard_parallel_2",47.33333335564147],PARAMETER["latitude_of_origin",45.3333333579268],PARAMETER["central_meridian",-120.500000019872],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WVANF83,PROJCS["L2WVANF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.99999998408389],PARAMETER["standard_parallel_2",40.25000000414146],PARAMETER["latitude_of_origin",38.49999999897916],PARAMETER["central_meridian",-79.4999999807777],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WVANM,PROJCS["L2WVANM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.99999998408389],PARAMETER["standard_parallel_2",40.25000000414146],PARAMETER["latitude_of_origin",38.49999999897916],PARAMETER["central_meridian",-79.4999999807777],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2WVASF83,PROJCS["L2WVASF83",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.48333331676294],PARAMETER["standard_parallel_2",38.88333328651532],PARAMETER["latitude_of_origin",36.99999998636922],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +L2WVASM,PROJCS["L2WVASM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.48333331676294],PARAMETER["standard_parallel_2",38.8833333438111],PARAMETER["latitude_of_origin",36.99999998636922],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["false_easting",600000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +L2_MEX_INEGI,PROJCS["L2_MEX_INEGI",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",17.49999999999956],PARAMETER["standard_parallel_2",29.49999999998125],PARAMETER["latitude_of_origin",23.50000000001905],PARAMETER["central_meridian",-101.9999999999876],PARAMETER["false_easting",2500000],PARAMETER["false_northing",0]] +L2_PLSA,PROJCS["L2_PLSA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-27.99999999999998],PARAMETER["standard_parallel_2",-36],PARAMETER["latitude_of_origin",-31.99999999999997],PARAMETER["central_meridian",134.9999999999997],PARAMETER["false_easting",1000000],PARAMETER["false_northing",2000000]] +LABORDE,LOCAL_CS["LABORDE - (unsupported)"] +LAMCAN,PROJCS["LAMCAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",49],PARAMETER["standard_parallel_2",77],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-91.9999935923389],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +LAMSAFRI,PROJCS["LAMSAFRI",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-3.999999995429332],PARAMETER["standard_parallel_2",-31.00000010781677],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",24.99999982819388],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +LE00N16E,PROJCS["LE00N16E",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",16],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +LE13S127,PROJCS["LE13S127",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-12.99999999999995],PARAMETER["longitude_of_center",127],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LE20S60W,PROJCS["LE20S60W",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-19.99999999999994],PARAMETER["longitude_of_center",-59.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LE35S135,PROJCS["LE35S135",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-34.99999999999997],PARAMETER["longitude_of_center",135],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEAFRICA,PROJCS["LEAFRICA",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",20],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEAMERIC,PROJCS["LEAMERIC",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-89.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEFRAN,PROJCS["LEFRAN",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",47],PARAMETER["longitude_of_center",2],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LEGLOBE,PROJCS["LEGLOBE",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-39.5],PARAMETER["longitude_of_center",-55.99999999999996],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LELUSAK0,PROJCS["LELUSAK0",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",28.3333333],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LELUSAKA,PROJCS["LELUSAKA",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-15.43333329999995],PARAMETER["longitude_of_center",28.3333333],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEMONG,PROJCS["LEMONG",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",47],PARAMETER["longitude_of_center",105],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LENAFRIC,PROJCS["LENAFRIC",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",1.25],PARAMETER["longitude_of_center",20],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LENSEA,PROJCS["LENSEA",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",60],PARAMETER["longitude_of_center",1],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LERUSSIA,PROJCS["LERUSSIA",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",60.99999999905226],PARAMETER["longitude_of_center",124.0000000015487],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LESAMER,PROJCS["LESAMER",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-21.99999999999996],PARAMETER["longitude_of_center",-55.99999999999996],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LESEASIA,PROJCS["LESEASIA",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",20.00000000006498],PARAMETER["longitude_of_center",105.0000000003411],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LESOAMER,PROJCS["LESOAMER",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",0],PARAMETER["longitude_of_center",-60.00000000019492],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LESUR554,PROJCS["LESUR554",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",5],PARAMETER["longitude_of_center",-54],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEUSA0,PROJCS["LEUSA0",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",44.99999980534054],PARAMETER["longitude_of_center",-100.0000027505223],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LEWEURO,PROJCS["LEWEURO",PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",50],PARAMETER["longitude_of_center",2],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM1ADEN,PROJCS["LM1ADEN",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",15],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.999365678],PARAMETER["false_easting",1500000],PARAMETER["false_northing",1000000]] +LM1AFNDX,PROJCS["LM1AFNDX",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",10],PARAMETER["central_meridian",30],PARAMETER["scale_factor",0.99],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM1ALGND,PROJCS["LM1ALGND",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",2.7],PARAMETER["scale_factor",0.999625544],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1ALGSD,PROJCS["LM1ALGSD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",33.3],PARAMETER["central_meridian",2.7],PARAMETER["scale_factor",0.999625769],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1BANG,PROJCS["LM1BANG",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",90],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",2743185.69],PARAMETER["false_northing",914395.23]] +LM1BLSEA,PROJCS["LM1BLSEA",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",45],PARAMETER["central_meridian",35],PARAMETER["scale_factor",1],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM1BURMA,PROJCS["LM1BURMA",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",19],PARAMETER["central_meridian",100],PARAMETER["scale_factor",0.9987864],PARAMETER["false_easting",914398.8],PARAMETER["false_northing",2743196.4]] +LM1CARIB,PROJCS["LM1CARIB",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",22.35],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.999936],PARAMETER["false_easting",500000],PARAMETER["false_northing",280296]] +LM1CAUC,PROJCS["LM1CAUC",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",39.5],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.998461538],PARAMETER["false_easting",2155500],PARAMETER["false_northing",675000]] +LM1COLC,PROJCS["LM1COLC",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",7],PARAMETER["central_meridian",-73.49999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM1CORSE,PROJCS["LM1CORSE",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",42.165],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.99994471],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRA1D,PROJCS["LM1FRA1D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",1200000]] +LM1FRA1G,PROJCS["LM1FRA1G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",1200000]] +LM1FRA2D,PROJCS["LM1FRA2D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",46.8],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.99987742],PARAMETER["false_easting",600000],PARAMETER["false_northing",2200000]] +LM1FRA2G,PROJCS["LM1FRA2G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",46.8],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.99987742],PARAMETER["false_easting",600000],PARAMETER["false_northing",2200000]] +LM1FRA3D,PROJCS["LM1FRA3D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44.1],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.999877499],PARAMETER["false_easting",600000],PARAMETER["false_northing",3200000]] +LM1FRA3G,PROJCS["LM1FRA3G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44.1],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.999877499],PARAMETER["false_easting",600000],PARAMETER["false_northing",3200000]] +LM1FRA4D,PROJCS["LM1FRA4D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",42.165],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.99994471],PARAMETER["false_easting",234.36],PARAMETER["false_northing",4185861.37]] +LM1FRA4G,PROJCS["LM1FRA4G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",42.165],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.99994471],PARAMETER["false_easting",234.36],PARAMETER["false_northing",4185861.37]] +LM1FRAND,PROJCS["LM1FRAND",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",7.7372083],PARAMETER["scale_factor",0.99950908],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1FRE1D,PROJCS["LM1FRE1D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE1G,PROJCS["LM1FRE1G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE2D,PROJCS["LM1FRE2D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",46.8],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.99987742],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE2G,PROJCS["LM1FRE2G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",46.8],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.99987742],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE3D,PROJCS["LM1FRE3D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44.1],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.999877499],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE3G,PROJCS["LM1FRE3G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44.1],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.999877499],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000]] +LM1FRE4D,PROJCS["LM1FRE4D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",42.165],PARAMETER["central_meridian",2.337229166666664],PARAMETER["scale_factor",0.99994471],PARAMETER["false_easting",234.36],PARAMETER["false_northing",185861.37]] +LM1FRE4G,PROJCS["LM1FRE4G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",42.165],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.99994471],PARAMETER["false_easting",234.36],PARAMETER["false_northing",185861.37]] +LM1GREN1,PROJCS["LM1GREN1",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",67.5],PARAMETER["central_meridian",-51.99999999999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",250000]] +LM1GRNOR,PROJCS["LM1GRNOR",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",78.75],PARAMETER["central_meridian",-58.99999999999997],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM1GRSUD,PROJCS["LM1GRSUD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",66.5],PARAMETER["central_meridian",-58.99999999999997],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM1IND1,PROJCS["LM1IND1",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",68],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",2743196.4],PARAMETER["false_northing",914398.8]] +LM1IND4A,PROJCS["LM1IND4A",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",12],PARAMETER["central_meridian",80],PARAMETER["scale_factor",0.9987864],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000]] +LM1IRAN,PROJCS["LM1IRAN",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",1500000],PARAMETER["false_northing",1166200]] +LM1IRAQ,PROJCS["LM1IRAQ",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",1500000],PARAMETER["false_northing",1166200]] +LM1JAFT,PROJCS["LM1JAFT",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",18],PARAMETER["central_meridian",-76.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",550000],PARAMETER["false_northing",400000],UNIT["unnamed",0.304799472]] +LM1JAMTR,PROJCS["LM1JAMTR",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",18],PARAMETER["central_meridian",-76.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",250000],PARAMETER["false_northing",150000]] +LM1KANG,PROJCS["LM1KANG",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",110],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",3900000],PARAMETER["false_northing",900000]] +LM1LEVD,PROJCS["LM1LEVD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",34.65],PARAMETER["central_meridian",37.35],PARAMETER["scale_factor",0.9996256],PARAMETER["false_easting",300000],PARAMETER["false_northing",300000]] +LM1LEVG,PROJCS["LM1LEVG",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",34.65],PARAMETER["central_meridian",37.35],PARAMETER["scale_factor",0.9996256],PARAMETER["false_easting",300000],PARAMETER["false_northing",300000]] +LM1LIBS,PROJCS["LM1LIBS",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",23],PARAMETER["central_meridian",18],PARAMETER["scale_factor",0.99907],PARAMETER["false_easting",800000],PARAMETER["false_northing",600000]] +LM1LIBYA,PROJCS["LM1LIBYA",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",18],PARAMETER["scale_factor",0.99938949],PARAMETER["false_easting",1000000],PARAMETER["false_northing",550000]] +LM1MORND,PROJCS["LM1MORND",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",33.3],PARAMETER["central_meridian",-5.399999999999953],PARAMETER["scale_factor",0.999625769],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1MORSD,PROJCS["LM1MORSD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",29.7],PARAMETER["central_meridian",-5.399999999999953],PARAMETER["scale_factor",0.999615596],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1NEP1,PROJCS["LM1NEP1",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",68],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1NEP2A,PROJCS["LM1NEP2A",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",74],PARAMETER["scale_factor",1],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1NEP2B,PROJCS["LM1NEP2B",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",90],PARAMETER["scale_factor",1],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1NPG,PROJCS["LM1NPG",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",-7.999999999999978],PARAMETER["central_meridian",150],PARAMETER["scale_factor",0.9997],PARAMETER["false_easting",300000],PARAMETER["false_northing",100000]] +LM1PA2B,PROJCS["LM1PA2B",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",90],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",2743196.4],PARAMETER["false_northing",914398.8]] +LM1PA2BY,PROJCS["LM1PA2BY",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",90],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1PAK1,PROJCS["LM1PAK1",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",68],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",2743196.4],PARAMETER["false_northing",914398.8]] +LM1PAK1Y,PROJCS["LM1PAK1Y",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",32.5],PARAMETER["central_meridian",68],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1PAK2,PROJCS["LM1PAK2",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",74],PARAMETER["scale_factor",0.9987864077],PARAMETER["false_easting",2743196.4],PARAMETER["false_northing",914398.8]] +LM1PAK2Y,PROJCS["LM1PAK2Y",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",26],PARAMETER["central_meridian",74],PARAMETER["scale_factor",0.998786408],PARAMETER["false_easting",3000000],PARAMETER["false_northing",1000000],UNIT["unnamed",0.9143988]] +LM1PB1D,PROJCS["LM1PB1D",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",2.3372083],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",1200000]] +LM1PB1G,PROJCS["LM1PB1G",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",49.5],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.999877341],PARAMETER["false_easting",600000],PARAMETER["false_northing",1200000]] +LM1POL,PROJCS["LM1POL",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",52],PARAMETER["central_meridian",19],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +LM1ROM,PROJCS["LM1ROM",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44.7916667],PARAMETER["central_meridian",9.000000000000002],PARAMETER["scale_factor",1],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000]] +LM1SHAB,PROJCS["LM1SHAB",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",15.4],PARAMETER["central_meridian",47.0355556],PARAMETER["scale_factor",1],PARAMETER["false_easting",1704346.3],PARAMETER["false_northing",8718549.7]] +LM1SPAIN,PROJCS["LM1SPAIN",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",-3.687373899999992],PARAMETER["scale_factor",0.9988085293],PARAMETER["false_easting",600000],PARAMETER["false_northing",600000]] +LM1SPANM,PROJCS["LM1SPANM",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.998808529],PARAMETER["false_easting",600000],PARAMETER["false_northing",600000]] +LM1SYRSD,PROJCS["LM1SYRSD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",33.3],PARAMETER["central_meridian",36],PARAMETER["scale_factor",0.999625769],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1SYRSG,PROJCS["LM1SYRSG",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",33.3],PARAMETER["central_meridian",36],PARAMETER["scale_factor",0.999625769],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1TUNND,PROJCS["LM1TUNND",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",9.899999999999995],PARAMETER["scale_factor",0.999625544],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1TUNSD,PROJCS["LM1TUNSD",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",33.3],PARAMETER["central_meridian",9.899999999999995],PARAMETER["scale_factor",0.999625769],PARAMETER["false_easting",500000],PARAMETER["false_northing",300000]] +LM1TURK,PROJCS["LM1TURK",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",27.4],PARAMETER["scale_factor",1],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000]] +LM1USSR,PROJCS["LM1USSR",PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",44],PARAMETER["central_meridian",38],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2AF113,PROJCS["LM2AF113",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",9.000000000000002],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF114,PROJCS["LM2AF114",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",27],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF72,PROJCS["LM2AF72",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32],PARAMETER["standard_parallel_2",64],PARAMETER["latitude_of_origin",48.8942353],PARAMETER["central_meridian",-8.999999999999959],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF92,PROJCS["LM2AF92",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",-8.999999999999959],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF93,PROJCS["LM2AF93",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",9.000000000000002],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF94,PROJCS["LM2AF94",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",27],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AF95,PROJCS["LM2AF95",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.5482083],PARAMETER["central_meridian",45],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2AFE,PROJCS["LM2AFE",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40],PARAMETER["standard_parallel_2",-10],PARAMETER["latitude_of_origin",15.5397257],PARAMETER["central_meridian",100],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2AFSH,PROJCS["LM2AFSH",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-10],PARAMETER["standard_parallel_2",-29.99999999999995],PARAMETER["latitude_of_origin",-20.10980229999997],PARAMETER["central_meridian",30],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2ALG,PROJCS["LM2ALG",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",22],PARAMETER["standard_parallel_2",34],PARAMETER["latitude_of_origin",28.0571556],PARAMETER["central_meridian",0],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2ANT1,PROJCS["LM2ANT1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-82.50000000599761],PARAMETER["standard_parallel_2",-81.49999997849238],PARAMETER["latitude_of_origin",-83.49999997620704],PARAMETER["central_meridian",-105.0000000232594],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2ARAB,PROJCS["LM2ARAB",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33],PARAMETER["standard_parallel_2",17],PARAMETER["latitude_of_origin",25.0895279],PARAMETER["central_meridian",47],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2ARAB2,LOCAL_CS["LM2ARAB2 - (unsupported)"] +LM2AREA1,PROJCS["LM2AREA1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40],PARAMETER["standard_parallel_2",24],PARAMETER["latitude_of_origin",32.1197536],PARAMETER["central_meridian",117],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2AREA2,PROJCS["LM2AREA2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",24],PARAMETER["standard_parallel_2",4],PARAMETER["latitude_of_origin",14.0752451],PARAMETER["central_meridian",110],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2AREA3,PROJCS["LM2AREA3",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",-15.99999999999996],PARAMETER["latitude_of_origin",-6.031738599999985],PARAMETER["central_meridian",115],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2ARKNF,PROJCS["LM2ARKNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.2333333],PARAMETER["standard_parallel_2",34.9333333],PARAMETER["latitude_of_origin",35.5842285],PARAMETER["central_meridian",-91.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455289.01],UNIT["US Foot",0.30480061]] +LM2ARKNM,PROJCS["LM2ARKNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.2333333],PARAMETER["standard_parallel_2",34.9333333],PARAMETER["latitude_of_origin",35.5842283],PARAMETER["central_meridian",-91.99999999999997],PARAMETER["false_easting",400000],PARAMETER["false_northing",138776.13]] +LM2ARKSF,PROJCS["LM2ARKSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.7666667],PARAMETER["standard_parallel_2",33.3],PARAMETER["latitude_of_origin",34.0344096],PARAMETER["central_meridian",-91.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",497685.06],UNIT["US Foot",0.30480061]] +LM2ARKSM,PROJCS["LM2ARKSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.7666667],PARAMETER["standard_parallel_2",33.3],PARAMETER["latitude_of_origin",34.0344094],PARAMETER["central_meridian",-91.99999999999997],PARAMETER["false_easting",400000],PARAMETER["false_northing",551699.26]] +LM2ASEAN,PROJCS["LM2ASEAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",8],PARAMETER["standard_parallel_2",22],PARAMETER["latitude_of_origin",15.0393768],PARAMETER["central_meridian",110],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +LM2ASIA,PROJCS["LM2ASIA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",65],PARAMETER["standard_parallel_2",37],PARAMETER["latitude_of_origin",51.7530074],PARAMETER["central_meridian",100],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2AUST,PROJCS["LM2AUST",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-10],PARAMETER["standard_parallel_2",-39.99999999999994],PARAMETER["latitude_of_origin",-25.32172549999997],PARAMETER["central_meridian",140],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2AZERB,PROJCS["LM2AZERB",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39],PARAMETER["standard_parallel_2",41],PARAMETER["latitude_of_origin",40.0024798],PARAMETER["central_meridian",48],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +LM2BAREN,PROJCS["LM2BAREN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",70],PARAMETER["standard_parallel_2",80],PARAMETER["latitude_of_origin",75.2834933],PARAMETER["central_meridian",20],PARAMETER["false_easting",2000000],PARAMETER["false_northing",1000000]] +LM2BELG,PROJCS["LM2BELG",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.1666667],PARAMETER["standard_parallel_2",49.8333333],PARAMETER["latitude_of_origin",50.5015857],PARAMETER["central_meridian",4.3569397],PARAMETER["false_easting",150000],PARAMETER["false_northing",132159.2]] +LM2BELG72,PROJCS["LM2BELG72",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.16666723333334],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666665],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438]] +LM2BKSEA,PROJCS["LM2BKSEA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45],PARAMETER["standard_parallel_2",41],PARAMETER["latitude_of_origin",43.0110159],PARAMETER["central_meridian",35],PARAMETER["false_easting",2000000],PARAMETER["false_northing",1000000]] +LM2BLACK,PROJCS["LM2BLACK",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37],PARAMETER["standard_parallel_2",65],PARAMETER["latitude_of_origin",51.7530393],PARAMETER["central_meridian",39],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +LM2BLCKS,PROJCS["LM2BLCKS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",43.0027521],PARAMETER["central_meridian",36],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2BLKSE,PROJCS["LM2BLKSE",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.3333333],PARAMETER["standard_parallel_2",46.6666667],PARAMETER["latitude_of_origin",44.020285],PARAMETER["central_meridian",35],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2BNOR,PROJCS["LM2BNOR",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",69],PARAMETER["standard_parallel_2",60],PARAMETER["latitude_of_origin",64.6256029],PARAMETER["central_meridian",11.5],PARAMETER["false_easting",0],PARAMETER["false_northing",13960.37]] +LM2BOF,PROJCS["LM2BOF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36],PARAMETER["standard_parallel_2",52.8],PARAMETER["latitude_of_origin",44.6069094],PARAMETER["central_meridian",4.499999999999997],PARAMETER["false_easting",200000],PARAMETER["false_northing",0]] +LM2BURMA,PROJCS["LM2BURMA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",11.5],PARAMETER["standard_parallel_2",24],PARAMETER["latitude_of_origin",17.7874284],PARAMETER["central_meridian",96],PARAMETER["false_easting",2000000],PARAMETER["false_northing",3004117.66]] +LM2CAL1F,PROJCS["LM2CAL1F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.6666667],PARAMETER["standard_parallel_2",40],PARAMETER["latitude_of_origin",40.8351064],PARAMETER["central_meridian",-122],PARAMETER["false_easting",2000000],PARAMETER["false_northing",547077.92],UNIT["US Foot",0.30480061]] +LM2CAL2F,PROJCS["LM2CAL2F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.8333333],PARAMETER["standard_parallel_2",38.3333333],PARAMETER["latitude_of_origin",39.0846842],PARAMETER["central_meridian",-122],PARAMETER["false_easting",2000000],PARAMETER["false_northing",516417.19],UNIT["US Foot",0.30480061]] +LM2CAL3F,PROJCS["LM2CAL3F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.4333333],PARAMETER["standard_parallel_2",37.0666667],PARAMETER["latitude_of_origin",37.7510696],PARAMETER["central_meridian",-120.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455516.16],UNIT["US Foot",0.30480061]] +LM2CAL4F,PROJCS["LM2CAL4F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.25],PARAMETER["standard_parallel_2",36],PARAMETER["latitude_of_origin",36.6258595],PARAMETER["central_meridian",-119],PARAMETER["false_easting",2000000],PARAMETER["false_northing",470526.84],UNIT["US Foot",0.30480061]] +LM2CAL4M,PROJCS["LM2CAL4M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.25],PARAMETER["standard_parallel_2",36],PARAMETER["latitude_of_origin",36.6258593],PARAMETER["central_meridian",-119],PARAMETER["false_easting",2000000],PARAMETER["false_northing",643420.49]] +LM2CAL5F,PROJCS["LM2CAL5F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.4666667],PARAMETER["standard_parallel_2",34.0333333],PARAMETER["latitude_of_origin",34.7510555],PARAMETER["central_meridian",-118],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455278.16],UNIT["US Foot",0.30480061]] +LM2CAL5M,PROJCS["LM2CAL5M",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.4666667],PARAMETER["standard_parallel_2",34.0333333],PARAMETER["latitude_of_origin",34.7510553],PARAMETER["central_meridian",-118],PARAMETER["false_easting",2000000],PARAMETER["false_northing",638773.03]] +LM2CAL6F,PROJCS["LM2CAL6F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.8833333],PARAMETER["standard_parallel_2",32.7833333],PARAMETER["latitude_of_origin",33.3339231],PARAMETER["central_meridian",-116.25],PARAMETER["false_easting",2000000],PARAMETER["false_northing",424696.28],UNIT["US Foot",0.30480061]] +LM2CAL7F,PROJCS["LM2CAL7F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.4166667],PARAMETER["standard_parallel_2",33.8666667],PARAMETER["latitude_of_origin",34.1418186],PARAMETER["central_meridian",-118.3333333],PARAMETER["false_easting",4186692.58],PARAMETER["false_northing",4164014.63],UNIT["US Foot",0.30480061]] +LM2CAMER,PROJCS["LM2CAMER",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",25],PARAMETER["standard_parallel_2",5],PARAMETER["latitude_of_origin",15.0808559],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CAN,PROJCS["LM2CAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",77],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",64.2621819],PARAMETER["central_meridian",-99.99999999999996],PARAMETER["false_easting",2500000],PARAMETER["false_northing",2500000]] +LM2CAN60,PROJCS["LM2CAN60",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",77],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",64.2621819],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["false_easting",2500000],PARAMETER["false_northing",2500000]] +LM2CAN78,PROJCS["LM2CAN78",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",64.26218189999996],PARAMETER["standard_parallel_2",77],PARAMETER["latitude_of_origin",49.00000000000002],PARAMETER["central_meridian",-77.99999999999997],PARAMETER["false_easting",0],PARAMETER["false_northing",8250000]] +LM2CBRAZ,PROJCS["LM2CBRAZ",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-4.999999999999972],PARAMETER["standard_parallel_2",-18.99999999999996],PARAMETER["latitude_of_origin",-12.03125459999998],PARAMETER["central_meridian",-54.99999999999998],PARAMETER["false_easting",0],PARAMETER["false_northing",-3431.9]] +LM2CEGYP,PROJCS["LM2CEGYP",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",29.25],PARAMETER["standard_parallel_2",31.75],PARAMETER["latitude_of_origin",30.5027312],PARAMETER["central_meridian",29.5],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CFRAN,PROJCS["LM2CFRAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",47.012648],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",1405.23]] +LM2CHBON,PROJCS["LM2CHBON",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38],PARAMETER["standard_parallel_2",41],PARAMETER["latitude_of_origin",39.5054838],PARAMETER["central_meridian",121],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CHECS,PROJCS["LM2CHECS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27],PARAMETER["standard_parallel_2",31],PARAMETER["latitude_of_origin",29.0065858],PARAMETER["central_meridian",123.5],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CHEOF,PROJCS["LM2CHEOF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",25],PARAMETER["standard_parallel_2",37],PARAMETER["latitude_of_origin",31.0645115],PARAMETER["central_meridian",122.5],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CHIN,PROJCS["LM2CHIN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35],PARAMETER["standard_parallel_2",20],PARAMETER["latitude_of_origin",27.5876688],PARAMETER["central_meridian",105],PARAMETER["false_easting",2500000],PARAMETER["false_northing",2509632.22]] +LM2CHINA,PROJCS["LM2CHINA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35],PARAMETER["standard_parallel_2",-4.999999999999972],PARAMETER["latitude_of_origin",15.3356381],PARAMETER["central_meridian",125],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CHRUS,PROJCS["LM2CHRUS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",74],PARAMETER["standard_parallel_2",42],PARAMETER["latitude_of_origin",59.3395467],PARAMETER["central_meridian",130],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2CHYS,PROJCS["LM2CHYS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33],PARAMETER["standard_parallel_2",36],PARAMETER["latitude_of_origin",34.5045819],PARAMETER["central_meridian",122],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2CM693,PROJCS["LM2CM693",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",77],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",64.2621819],PARAMETER["central_meridian",-69.49999999220437],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2COLCF,PROJCS["LM2COLCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.75],PARAMETER["standard_parallel_2",38.45],PARAMETER["latitude_of_origin",39.1010152],PARAMETER["central_meridian",-105.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",461675.32],UNIT["US Foot",0.30480061]] +LM2COLNF,PROJCS["LM2COLNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.7166667],PARAMETER["standard_parallel_2",40.7833333],PARAMETER["latitude_of_origin",40.2507116],PARAMETER["central_meridian",-105.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",334169.85],UNIT["US Foot",0.30480061]] +LM2COLSF,PROJCS["LM2COLSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.4333333],PARAMETER["standard_parallel_2",37.2333333],PARAMETER["latitude_of_origin",37.8341604],PARAMETER["central_meridian",-105.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",425097.72],UNIT["US Foot",0.30480061]] +LM2COLUM,PROJCS["LM2COLUM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",6.6666667],PARAMETER["standard_parallel_2",1.3333333],PARAMETER["latitude_of_origin",4.001486399999998],PARAMETER["central_meridian",-72.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2COMAN,PROJCS["LM2COMAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",19],PARAMETER["standard_parallel_2",25],PARAMETER["latitude_of_origin",22.0108377],PARAMETER["central_meridian",56],PARAMETER["false_easting",0],PARAMETER["false_northing",1198.34]] +LM2CONNF,PROJCS["LM2CONNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.8666667],PARAMETER["standard_parallel_2",41.2],PARAMETER["latitude_of_origin",41.533624],PARAMETER["central_meridian",-72.74999999999994],PARAMETER["false_easting",600000],PARAMETER["false_northing",255156.68],UNIT["US Foot",0.30480061]] +LM2CONNM,PROJCS["LM2CONNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.8666667],PARAMETER["standard_parallel_2",41.2],PARAMETER["latitude_of_origin",41.5336239],PARAMETER["central_meridian",-72.74999999999994],PARAMETER["false_easting",304800.61],PARAMETER["false_northing",230173.41]] +LM2CSPN,PROJCS["LM2CSPN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38],PARAMETER["standard_parallel_2",42.5],PARAMETER["latitude_of_origin",40.2626746],PARAMETER["central_meridian",-2.999999999999949],PARAMETER["false_easting",0],PARAMETER["false_northing",29145.17]] +LM2EE,PROJCS["LM2EE",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36],PARAMETER["standard_parallel_2",43],PARAMETER["latitude_of_origin",39.5299114],PARAMETER["central_meridian",66],PARAMETER["false_easting",2000000],PARAMETER["false_northing",1502329.69]] +LM2EGYPT,PROJCS["LM2EGYPT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",23.6666667],PARAMETER["standard_parallel_2",30.6666667],PARAMETER["latitude_of_origin",27.1853739],PARAMETER["central_meridian",31],PARAMETER["false_easting",620681.47],PARAMETER["false_northing",559230.78]] +LM2EUNDX,PROJCS["LM2EUNDX",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",52],PARAMETER["standard_parallel_2",36],PARAMETER["latitude_of_origin",44.1848032],PARAMETER["central_meridian",12],PARAMETER["false_easting",3000000],PARAMETER["false_northing",2000000]] +LM2EURO,PROJCS["LM2EURO",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37],PARAMETER["standard_parallel_2",65],PARAMETER["latitude_of_origin",51.7530393],PARAMETER["central_meridian",28],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2FKLDS,PROJCS["LM2FKLDS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-34.99999999999997],PARAMETER["standard_parallel_2",-54.99999999999998],PARAMETER["latitude_of_origin",-45.30145409999996],PARAMETER["central_meridian",-49.99999999999994],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2FLANF,PROJCS["LM2FLANF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.75],PARAMETER["standard_parallel_2",29.5833333],PARAMETER["latitude_of_origin",30.1672537],PARAMETER["central_meridian",-84.49999999999996],PARAMETER["false_easting",2000000],PARAMETER["false_northing",424481.59],UNIT["US Foot",0.30480061]] +LM2FRANC,PROJCS["LM2FRANC",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.89891888888889],PARAMETER["standard_parallel_2",47.69601444444444],PARAMETER["latitude_of_origin",46.80000000000000],PARAMETER["central_meridian",2.337229169999754],PARAMETER["false_easting",600000],PARAMETER["false_northing",2200000]] +LM2GULF,PROJCS["LM2GULF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31],PARAMETER["standard_parallel_2",27],PARAMETER["latitude_of_origin",29.0065873],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",3500000],PARAMETER["false_northing",2551152.36],UNIT["US Foot",0.30480061]] +LM2H6,PROJCS["LM2H6",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",25.3333333],PARAMETER["standard_parallel_2",30.6666667],PARAMETER["latitude_of_origin",28.0112409],PARAMETER["central_meridian",47],PARAMETER["false_easting",0],PARAMETER["false_northing",1244.39]] +LM2IND76,PROJCS["LM2IND76",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32],PARAMETER["standard_parallel_2",64],PARAMETER["latitude_of_origin",48.8939963],PARAMETER["central_meridian",63],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2IND77,PROJCS["LM2IND77",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32],PARAMETER["standard_parallel_2",64],PARAMETER["latitude_of_origin",48.8939963],PARAMETER["central_meridian",81],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2IND78,PROJCS["LM2IND78",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32],PARAMETER["standard_parallel_2",64],PARAMETER["latitude_of_origin",48.8939963],PARAMETER["central_meridian",98.99999999999997],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2IND96,PROJCS["LM2IND96",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.548179],PARAMETER["central_meridian",63],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2IND97,PROJCS["LM2IND97",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.548179],PARAMETER["central_meridian",81],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2IND98,PROJCS["LM2IND98",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",4],PARAMETER["standard_parallel_2",21],PARAMETER["latitude_of_origin",12.548179],PARAMETER["central_meridian",98.99999999999997],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2INDIA,PROJCS["LM2INDIA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",25],PARAMETER["standard_parallel_2",1],PARAMETER["latitude_of_origin",13.1008489],PARAMETER["central_meridian",60],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2IOWNF,PROJCS["LM2IOWNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43.2666667],PARAMETER["standard_parallel_2",42.0666667],PARAMETER["latitude_of_origin",42.6676461],PARAMETER["central_meridian",-93.49999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",425511.73],UNIT["US Foot",0.30480061]] +LM2IOWSF,PROJCS["LM2IOWSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.7833333],PARAMETER["standard_parallel_2",40.6166667],PARAMETER["latitude_of_origin",41.2008799],PARAMETER["central_meridian",-93.49999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",437511.38],UNIT["US Foot",0.30480061]] +LM2IRAN,PROJCS["LM2IRAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",26],PARAMETER["standard_parallel_2",37],PARAMETER["latitude_of_origin",31.5552453],PARAMETER["central_meridian",54],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000]] +LM2JEBCO,PROJCS["LM2JEBCO",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",60],PARAMETER["standard_parallel_2",62.1666667],PARAMETER["latitude_of_origin",61.0895556],PARAMETER["central_meridian",97],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2JUNGB,PROJCS["LM2JUNGB",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44],PARAMETER["standard_parallel_2",48],PARAMETER["latitude_of_origin",46.0122162],PARAMETER["central_meridian",86.99999999999997],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2KALIM,PROJCS["LM2KALIM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",1.3333333],PARAMETER["standard_parallel_2",6.6666667],PARAMETER["latitude_of_origin",4.0014861],PARAMETER["central_meridian",117],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000164.14]] +LM2KANNF,PROJCS["LM2KANNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.7833333],PARAMETER["standard_parallel_2",38.7166667],PARAMETER["latitude_of_origin",39.2506871],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",334102.73],UNIT["US Foot",0.30480061]] +LM2KANNM,PROJCS["LM2KANNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.7833333],PARAMETER["standard_parallel_2",38.7166667],PARAMETER["latitude_of_origin",39.2506869],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",400000],PARAMETER["false_northing",101836.74]] +LM2KYNFT,PROJCS["LM2KYNFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.9666667],PARAMETER["standard_parallel_2",38.9666667],PARAMETER["latitude_of_origin",38.4672541],PARAMETER["central_meridian",-84.24999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",352230.83],UNIT["US Foot",0.30480061]] +LM2KYNM,PROJCS["LM2KYNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.9666667],PARAMETER["standard_parallel_2",37.9666667],PARAMETER["latitude_of_origin",38.467254],PARAMETER["central_meridian",-84.24999999999994],PARAMETER["false_easting",500000],PARAMETER["false_northing",107362.48]] +LM2KYSFT,PROJCS["LM2KYSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.7333333],PARAMETER["standard_parallel_2",37.9333333],PARAMETER["latitude_of_origin",37.3341458],PARAMETER["central_meridian",-85.74999999999996],PARAMETER["false_easting",2000000],PARAMETER["false_northing",364374.61],UNIT["US Foot",0.30480061]] +LM2LANDS,PROJCS["LM2LANDS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37],PARAMETER["standard_parallel_2",65],PARAMETER["latitude_of_origin",51.7530393],PARAMETER["central_meridian",30],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2LANFT,PROJCS["LM2LANFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.1666667],PARAMETER["standard_parallel_2",32.6666667],PARAMETER["latitude_of_origin",31.9177058],PARAMETER["central_meridian",-92.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455060.71],UNIT["US Foot",0.30480061]] +LM2LANM,PROJCS["LM2LANM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.6666667],PARAMETER["standard_parallel_2",31.1666667],PARAMETER["latitude_of_origin",31.9177056],PARAMETER["central_meridian",-92.49999999999994],PARAMETER["false_easting",1000000],PARAMETER["false_northing",157187.89]] +LM2LAOFT,PROJCS["LM2LAOFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",26.1666667],PARAMETER["standard_parallel_2",27.8333333],PARAMETER["latitude_of_origin",27.0010515],PARAMETER["central_meridian",-91.33333329999992],PARAMETER["false_easting",2000000],PARAMETER["false_northing",485012.86],UNIT["US Foot",0.30480061]] +LM2LASFT,PROJCS["LM2LASFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",29.3],PARAMETER["standard_parallel_2",30.7],PARAMETER["latitude_of_origin",30.0008397],PARAMETER["central_meridian",-91.33333329999992],PARAMETER["false_easting",2000000],PARAMETER["false_northing",485164],UNIT["US Foot",0.30480061]] +LM2LASM,PROJCS["LM2LASM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.7],PARAMETER["standard_parallel_2",29.3],PARAMETER["latitude_of_origin",30.0008395],PARAMETER["central_meridian",-91.33333329999992],PARAMETER["false_easting",1000000],PARAMETER["false_northing",166359.47]] +LM2MARYF,PROJCS["LM2MARYF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.3],PARAMETER["standard_parallel_2",39.45],PARAMETER["latitude_of_origin",38.8757881],PARAMETER["central_meridian",-76.99999999999994],PARAMETER["false_easting",800000],PARAMETER["false_northing",379638.15],UNIT["US Foot",0.30480061]] +LM2MASIM,PROJCS["LM2MASIM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.4833333],PARAMETER["standard_parallel_2",41.2833333],PARAMETER["latitude_of_origin",41.3833594],PARAMETER["central_meridian",-70.49999999999996],PARAMETER["false_easting",500000],PARAMETER["false_northing",42575.23]] +LM2MASMF,PROJCS["LM2MASMF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.7166667],PARAMETER["standard_parallel_2",42.6833333],PARAMETER["latitude_of_origin",42.2006254],PARAMETER["central_meridian",-71.49999999999996],PARAMETER["false_easting",600000],PARAMETER["false_northing",437502.72],UNIT["US Foot",0.30480061]] +LM2ME,PROJCS["LM2ME",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36],PARAMETER["standard_parallel_2",20],PARAMETER["latitude_of_origin",28.102018],PARAMETER["central_meridian",50],PARAMETER["false_easting",3000000],PARAMETER["false_northing",2011195.53]] +LM2ME1,PROJCS["LM2ME1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35],PARAMETER["standard_parallel_2",15],PARAMETER["latitude_of_origin",25.1405776],PARAMETER["central_meridian",50],PARAMETER["false_easting",3000000],PARAMETER["false_northing",2011195.53]] +LM2MEDIT,PROJCS["LM2MEDIT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.5],PARAMETER["standard_parallel_2",32.5],PARAMETER["latitude_of_origin",37.5569977],PARAMETER["central_meridian",15],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2MICCF,PROJCS["LM2MICCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.1833333],PARAMETER["standard_parallel_2",45.7],PARAMETER["latitude_of_origin",44.943359],PARAMETER["central_meridian",-84.33333329999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",593030.52],UNIT["US Foot",0.30480061]] +LM2MICNF,PROJCS["LM2MICNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.4833333],PARAMETER["standard_parallel_2",47.0833333],PARAMETER["latitude_of_origin",46.2853059],PARAMETER["central_meridian",-86.99999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",547682.99],UNIT["US Foot",0.30480061]] +LM2MICSF,PROJCS["LM2MICSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.1],PARAMETER["standard_parallel_2",43.6666667],PARAMETER["latitude_of_origin",42.8850154],PARAMETER["central_meridian",-84.33333329999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",504729.43],UNIT["US Foot",0.30480061]] +LM2MINCF,PROJCS["LM2MINCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.6166667],PARAMETER["standard_parallel_2",47.05],PARAMETER["latitude_of_origin",46.334919],PARAMETER["central_meridian",-94.24999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",486777.48],UNIT["US Foot",0.30480061]] +LM2MINNF,PROJCS["LM2MINNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.0333333],PARAMETER["standard_parallel_2",48.6333333],PARAMETER["latitude_of_origin",47.8354144],PARAMETER["central_meridian",-93.09999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",487078.53],UNIT["US Foot",0.30480061]] +LM2MINSF,PROJCS["LM2MINSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43.7833333],PARAMETER["standard_parallel_2",45.2166667],PARAMETER["latitude_of_origin",44.5014886],PARAMETER["central_meridian",-93.99999999999993],PARAMETER["false_easting",2000000],PARAMETER["false_northing",547343.48],UNIT["US Foot",0.30480061]] +LM2MOCFT,PROJCS["LM2MOCFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.45],PARAMETER["standard_parallel_2",47.8833333],PARAMETER["latitude_of_origin",47.1682986],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",486866.43],UNIT["US Foot",0.30480061]] +LM2MON,PROJCS["LM2MON",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",48],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",46.0122162],PARAMETER["central_meridian",104],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2MONFT,PROJCS["LM2MONFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.85],PARAMETER["standard_parallel_2",48.7166667],PARAMETER["latitude_of_origin",48.2839534],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",468377.04],UNIT["US Foot",0.30480061]] +LM2MOSFT,PROJCS["LM2MOSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.8666667],PARAMETER["standard_parallel_2",46.4],PARAMETER["latitude_of_origin",45.6351048],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",596169.89],UNIT["US Foot",0.30480061]] +LM2MTCFT,PROJCS["LM2MTCFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.8833333],PARAMETER["standard_parallel_2",46.45],PARAMETER["latitude_of_origin",47.1682986],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",486866.43],UNIT["US Foot",0.30480061]] +LM2MTM,PROJCS["LM2MTM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",49],PARAMETER["standard_parallel_2",45],PARAMETER["latitude_of_origin",47.0126454],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",600000],PARAMETER["false_northing",306982.36]] +LM2MTNFT,PROJCS["LM2MTNFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",48.7166667],PARAMETER["standard_parallel_2",47.85],PARAMETER["latitude_of_origin",48.2839534],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",468377.04],UNIT["US Foot",0.30480061]] +LM2MTSFT,PROJCS["LM2MTSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.4],PARAMETER["standard_parallel_2",44.8666667],PARAMETER["latitude_of_origin",45.6351048],PARAMETER["central_meridian",-109.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",596169.89],UNIT["US Foot",0.30480061]] +LM2NBRUN,PROJCS["LM2NBRUN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45],PARAMETER["standard_parallel_2",33],PARAMETER["latitude_of_origin",39.0867598],PARAMETER["central_meridian",-66.5],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2NBSEA,PROJCS["LM2NBSEA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.3333333],PARAMETER["standard_parallel_2",46.6666667],PARAMETER["latitude_of_origin",44.0202838],PARAMETER["central_meridian",38],PARAMETER["false_easting",5000000],PARAMETER["false_northing",5000000]] +LM2NCAFT,PROJCS["LM2NCAFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",34.3333333],PARAMETER["standard_parallel_2",36.1666667],PARAMETER["latitude_of_origin",35.2517589],PARAMETER["central_meridian",-78.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",546538.78],UNIT["US Foot",0.30480061]] +LM2NDNFT,PROJCS["LM2NDNFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.4333333],PARAMETER["standard_parallel_2",48.7333333],PARAMETER["latitude_of_origin",48.084719],PARAMETER["central_meridian",-100.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",395667.3],UNIT["US Foot",0.30480061]] +LM2NDNM,PROJCS["LM2NDNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",48.7333333],PARAMETER["standard_parallel_2",47.4333333],PARAMETER["latitude_of_origin",48.0847188],PARAMETER["central_meridian",-100.5],PARAMETER["false_easting",600000],PARAMETER["false_northing",120599.98]] +LM2NDSFT,PROJCS["LM2NDSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.1833333],PARAMETER["standard_parallel_2",47.4833333],PARAMETER["latitude_of_origin",46.8346604],PARAMETER["central_meridian",-100.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",425949.37],UNIT["US Foot",0.30480061]] +LM2NEBM,PROJCS["LM2NEBM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43],PARAMETER["standard_parallel_2",40],PARAMETER["latitude_of_origin",41.5058803],PARAMETER["central_meridian",-99.99999999999996],PARAMETER["false_easting",500000],PARAMETER["false_northing",185694.92]] +LM2NEBNF,PROJCS["LM2NEBNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",41.85],PARAMETER["standard_parallel_2",42.8166667],PARAMETER["latitude_of_origin",42.3339616],PARAMETER["central_meridian",-99.99999999999996],PARAMETER["false_easting",2000000],PARAMETER["false_northing",364631.59],UNIT["US Foot",0.30480061]] +LM2NEBSF,PROJCS["LM2NEBSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.2833333],PARAMETER["standard_parallel_2",41.7166667],PARAMETER["latitude_of_origin",41.001319],PARAMETER["central_meridian",-99.49999999999993],PARAMETER["false_easting",2000000],PARAMETER["false_northing",486220.86],UNIT["US Foot",0.30480061]] +LM2NEPAL,PROJCS["LM2NEPAL",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30],PARAMETER["standard_parallel_2",27],PARAMETER["latitude_of_origin",28.5036278],PARAMETER["central_meridian",84],PARAMETER["false_easting",2000000],PARAMETER["false_northing",10000000]] +LM2NFA,PROJCS["LM2NFA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",46.0275217],PARAMETER["central_meridian",-45.99999999999996],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +LM2NFB,PROJCS["LM2NFB",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",43],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",46.0275217],PARAMETER["central_meridian",-51],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +LM2NHEM,PROJCS["LM2NHEM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",60],PARAMETER["standard_parallel_2",30],PARAMETER["latitude_of_origin",45.6982614],PARAMETER["central_meridian",20],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2NSEA,PROJCS["LM2NSEA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",58.8333333],PARAMETER["standard_parallel_2",54.1666667],PARAMETER["latitude_of_origin",56.52417129999998],PARAMETER["central_meridian",0],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2NSW1,PROJCS["LM2NSW1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-30],PARAMETER["standard_parallel_2",-36],PARAMETER["latitude_of_origin",-36],PARAMETER["central_meridian",147],PARAMETER["false_easting",700000],PARAMETER["false_northing",8200000]] +LM2NSW2,PROJCS["LM2NSW2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-32.66666666666664],PARAMETER["standard_parallel_2",-35.33333333333334],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["false_easting",1000000],PARAMETER["false_northing",10000000]] +LM2NZN,PROJCS["LM2NZN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-33.33333329999995],PARAMETER["standard_parallel_2",-38.66666669999996],PARAMETER["latitude_of_origin",-36.01531539999996],PARAMETER["central_meridian",175],PARAMETER["false_easting",0],PARAMETER["false_northing",-1697.5]] +LM2NZS,PROJCS["LM2NZS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-41.3333333],PARAMETER["standard_parallel_2",-46.66666669999994],PARAMETER["latitude_of_origin",-44.02028839999996],PARAMETER["central_meridian",171],PARAMETER["false_easting",0],PARAMETER["false_northing",-2251.83]] +LM2OHINF,PROJCS["LM2OHINF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.4333333],PARAMETER["standard_parallel_2",41.7],PARAMETER["latitude_of_origin",41.0676991],PARAMETER["central_meridian",-82.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",510419.83],UNIT["US Foot",0.30480061]] +LM2OHISF,PROJCS["LM2OHISF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.7333333],PARAMETER["standard_parallel_2",40.0333333],PARAMETER["latitude_of_origin",39.3843587],PARAMETER["central_meridian",-82.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",504195.18],UNIT["US Foot",0.30480061]] +LM2OKLNF,PROJCS["LM2OKLNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.5666667],PARAMETER["standard_parallel_2",36.7666667],PARAMETER["latitude_of_origin",36.1674458],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",424960.05],UNIT["US Foot",0.30480061]] +LM2OKLNM,PROJCS["LM2OKLNM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.7666667],PARAMETER["standard_parallel_2",35.5666667],PARAMETER["latitude_of_origin",36.1674456],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",600000],PARAMETER["false_northing",129531.44]] +LM2OKLSF,PROJCS["LM2OKLSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.9333333],PARAMETER["standard_parallel_2",35.2333333],PARAMETER["latitude_of_origin",34.5841963],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455201.85],UNIT["US Foot",0.30480061]] +LM2OKLSM,PROJCS["LM2OKLSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",35.2333333],PARAMETER["standard_parallel_2",33.9333333],PARAMETER["latitude_of_origin",34.5841961],PARAMETER["central_meridian",-97.99999999999997],PARAMETER["false_easting",600000],PARAMETER["false_northing",138749.82]] +LM2ONH25,PROJCS["LM2ONH25",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",25.3333333],PARAMETER["standard_parallel_2",30.6666667],PARAMETER["latitude_of_origin",28.0112409],PARAMETER["central_meridian",-78.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2889214.55]] +LM2ORENF,PROJCS["LM2ORENF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.3333333],PARAMETER["standard_parallel_2",46],PARAMETER["latitude_of_origin",45.1687263],PARAMETER["central_meridian",-120.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",547601.51],UNIT["US Foot",0.30480061]] +LM2ORESF,PROJCS["LM2ORESF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.3333333],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",43.1685891],PARAMETER["central_meridian",-120.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",547357.21],UNIT["US Foot",0.30480061]] +LM2OSTER,PROJCS["LM2OSTER",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",47.5072345],PARAMETER["central_meridian",14],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2PAK,PROJCS["LM2PAK",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.49999998290061],PARAMETER["standard_parallel_2",26.00000002758644],PARAMETER["latitude_of_origin",28.99999999551055],PARAMETER["central_meridian",63.00000001395566],PARAMETER["false_easting",500000],PARAMETER["false_northing",1000000]] +LM2PANFT,PROJCS["LM2PANFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.8833333],PARAMETER["standard_parallel_2",41.95],PARAMETER["latitude_of_origin",41.4174077],PARAMETER["central_meridian",-77.74999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",455699.08],UNIT["US Foot",0.30480061]] +LM2PASFT,PROJCS["LM2PASFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.9333333],PARAMETER["standard_parallel_2",40.8],PARAMETER["latitude_of_origin",40.3671383],PARAMETER["central_meridian",-77.74999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",376593.83],UNIT["US Foot",0.30480061]] +LM2PRMB,PROJCS["LM2PRMB",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",24],PARAMETER["standard_parallel_2",18],PARAMETER["latitude_of_origin",21.0102961],PARAMETER["central_meridian",114],PARAMETER["false_easting",500000],PARAMETER["false_northing",501138.4]] +LM2PRV1F,PROJCS["LM2PRV1F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",18.4333333],PARAMETER["standard_parallel_2",18.0333333],PARAMETER["latitude_of_origin",18.2333726],PARAMETER["central_meridian",-66.43333329999994],PARAMETER["false_easting",500000],PARAMETER["false_northing",145256.89],UNIT["US Foot",0.30480061]] +LM2PRV2F,PROJCS["LM2PRV2F",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",18.4333333],PARAMETER["standard_parallel_2",18.0333333],PARAMETER["latitude_of_origin",18.2333726],PARAMETER["central_meridian",-66.43333329999994],PARAMETER["false_easting",500000],PARAMETER["false_northing",245256.89],UNIT["US Foot",0.30480061]] +LM2RUSS,PROJCS["LM2RUSS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",66],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",55.5285841],PARAMETER["central_meridian",96],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS1,PROJCS["LM2RUSS1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",54.6666667],PARAMETER["standard_parallel_2",49.3333333],PARAMETER["latitude_of_origin",52.0268006],PARAMETER["central_meridian",116],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS2,PROJCS["LM2RUSS2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",54.6666667],PARAMETER["standard_parallel_2",49.3333333],PARAMETER["latitude_of_origin",52.0268006],PARAMETER["central_meridian",96],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS3,PROJCS["LM2RUSS3",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.6666667],PARAMETER["standard_parallel_2",41.3333333],PARAMETER["latitude_of_origin",44.0202838],PARAMETER["central_meridian",107],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS4,PROJCS["LM2RUSS4",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.6666667],PARAMETER["standard_parallel_2",41.3333333],PARAMETER["latitude_of_origin",44.0202838],PARAMETER["central_meridian",123],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS5,PROJCS["LM2RUSS5",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",46.6666667],PARAMETER["standard_parallel_2",41.3333333],PARAMETER["latitude_of_origin",44.0202838],PARAMETER["central_meridian",91],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2RUSS6,PROJCS["LM2RUSS6",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",64],PARAMETER["standard_parallel_2",32],PARAMETER["latitude_of_origin",48.8940765],PARAMETER["central_meridian",56],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2SCHIN,PROJCS["LM2SCHIN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",18],PARAMETER["standard_parallel_2",24],PARAMETER["latitude_of_origin",21.0102961],PARAMETER["central_meridian",114],PARAMETER["false_easting",500000],PARAMETER["false_northing",501138.4]] +LM2SCHNS,PROJCS["LM2SCHNS",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",10],PARAMETER["standard_parallel_2",18],PARAMETER["latitude_of_origin",14.0119194],PARAMETER["central_meridian",115],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2SCNFT,PROJCS["LM2SCNFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.7666667],PARAMETER["standard_parallel_2",34.9666667],PARAMETER["latitude_of_origin",34.3673961],PARAMETER["central_meridian",-81],PARAMETER["false_easting",2000000],PARAMETER["false_northing",497599.34],UNIT["US Foot",0.30480061]] +LM2SCSFT,PROJCS["LM2SCSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.3333333],PARAMETER["standard_parallel_2",33.6666667],PARAMETER["latitude_of_origin",33.0008557],PARAMETER["central_meridian",-81],PARAMETER["false_easting",2000000],PARAMETER["false_northing",424761.1],UNIT["US Foot",0.30480061]] +LM2SDNFT,PROJCS["LM2SDNFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.4166667],PARAMETER["standard_parallel_2",45.6833333],PARAMETER["latitude_of_origin",45.0511848],PARAMETER["central_meridian",-99.99999999999996],PARAMETER["false_easting",2000000],PARAMETER["false_northing",443993.06],UNIT["US Foot",0.30480061]] +LM2SDSFT,PROJCS["LM2SDSFT",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.8333333],PARAMETER["standard_parallel_2",44.4],PARAMETER["latitude_of_origin",43.6183918],PARAMETER["central_meridian",-100.3333333],PARAMETER["false_easting",2000000],PARAMETER["false_northing",468361.68],UNIT["US Foot",0.30480061]] +LM2SEYCH,PROJCS["LM2SEYCH",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-1.999999999999966],PARAMETER["standard_parallel_2",-10.99999999999998],PARAMETER["latitude_of_origin",-6.50690739999996],PARAMETER["central_meridian",51],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +LM2SHAW,PROJCS["LM2SHAW",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",7],PARAMETER["standard_parallel_2",10],PARAMETER["latitude_of_origin",8.501003999999996],PARAMETER["central_meridian",106],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2SYRIA,PROJCS["LM2SYRIA",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",17],PARAMETER["standard_parallel_2",33],PARAMETER["latitude_of_origin",25.0895049],PARAMETER["central_meridian",48],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2TAIW,PROJCS["LM2TAIW",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",22.25],PARAMETER["standard_parallel_2",24.75],PARAMETER["latitude_of_origin",23.5020212],PARAMETER["central_meridian",120.5],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2TARIM,PROJCS["LM2TARIM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.5],PARAMETER["standard_parallel_2",41.6666667],PARAMETER["latitude_of_origin",39.0993748],PARAMETER["central_meridian",84],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2TIBET,PROJCS["LM2TIBET",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.99999999781213],PARAMETER["standard_parallel_2",24.99999982819388],PARAMETER["latitude_of_origin",45.00000000014619],PARAMETER["central_meridian",84.999999988817],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2TIMAN,PROJCS["LM2TIMAN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",65.6666667],PARAMETER["standard_parallel_2",68.3333333],PARAMETER["latitude_of_origin",67.0122484],PARAMETER["central_meridian",56.5],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2TURK,PROJCS["LM2TURK",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.6666667],PARAMETER["standard_parallel_2",43.3333333],PARAMETER["latitude_of_origin",42.0047273],PARAMETER["central_meridian",28.9809583],PARAMETER["false_easting",0],PARAMETER["false_northing",524.95]] +LM2TURKG,PROJCS["LM2TURKG",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40],PARAMETER["standard_parallel_2",38],PARAMETER["latitude_of_origin",39.0023944],PARAMETER["central_meridian",35],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0]] +LM2TURKY,PROJCS["LM2TURKY",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42],PARAMETER["standard_parallel_2",36],PARAMETER["latitude_of_origin",39.0215807],PARAMETER["central_meridian",35],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1003455.28]] +LM2TXCF,PROJCS["LM2TXCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.1166667],PARAMETER["standard_parallel_2",31.8833333],PARAMETER["latitude_of_origin",31.0013911],PARAMETER["central_meridian",-100.3333333],PARAMETER["false_easting",2000000],PARAMETER["false_northing",485417.56],UNIT["US Foot",0.30480061]] +LM2TXCM,PROJCS["LM2TXCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.8833333],PARAMETER["standard_parallel_2",30.1166667],PARAMETER["latitude_of_origin",31.0013908],PARAMETER["central_meridian",-100.3333333],PARAMETER["false_easting",700000],PARAMETER["false_northing",3147960.78]] +LM2TXNCF,PROJCS["LM2TXNCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",32.1333333],PARAMETER["standard_parallel_2",33.9666667],PARAMETER["latitude_of_origin",33.0516209],PARAMETER["central_meridian",-97.49999999999996],PARAMETER["false_easting",2000000],PARAMETER["false_northing",503845.05],UNIT["US Foot",0.30480061]] +LM2TXNCM,PROJCS["LM2TXNCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",33.9666667],PARAMETER["standard_parallel_2",32.1333333],PARAMETER["latitude_of_origin",33.0516206],PARAMETER["central_meridian",-98.49999999999994],PARAMETER["false_easting",600000],PARAMETER["false_northing",2153577.14]] +LM2TXSCF,PROJCS["LM2TXSCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",28.3833333],PARAMETER["standard_parallel_2",30.2833333],PARAMETER["latitude_of_origin",29.3348392],PARAMETER["central_meridian",-98.99999999999997],PARAMETER["false_easting",2000000],PARAMETER["false_northing",545930.94],UNIT["US Foot",0.30480061]] +LM2TXSCM,PROJCS["LM2TXSCM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",30.2833333],PARAMETER["standard_parallel_2",28.3833333],PARAMETER["latitude_of_origin",29.3348388],PARAMETER["central_meridian",-98.99999999999997],PARAMETER["false_easting",600000],PARAMETER["false_northing",4166406.43]] +LM2TXSF,PROJCS["LM2TXSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",26.1666667],PARAMETER["standard_parallel_2",27.8333333],PARAMETER["latitude_of_origin",27.0010515],PARAMETER["central_meridian",-98.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",485012.86],UNIT["US Foot",0.30480061]] +LM2TXSM,PROJCS["LM2TXSM",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",27.8333333],PARAMETER["standard_parallel_2",26.1666667],PARAMETER["latitude_of_origin",27.0010513],PARAMETER["central_meridian",-98.49999999999994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5147838.39]] +LM2UKN,PROJCS["LM2UKN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",52],PARAMETER["standard_parallel_2",57],PARAMETER["latitude_of_origin",54.5257722],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2USSR,PROJCS["LM2USSR",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",74],PARAMETER["standard_parallel_2",42],PARAMETER["latitude_of_origin",59.3395467],PARAMETER["central_meridian",105],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +LM2USSR1,PROJCS["LM2USSR1",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.5],PARAMETER["standard_parallel_2",51.5],PARAMETER["latitude_of_origin",48.5300074],PARAMETER["central_meridian",52],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +LM2USSR2,PROJCS["LM2USSR2",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",40.039788],PARAMETER["central_meridian",63],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000]] +LM2UTHCF,PROJCS["LM2UTHCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39.0166667],PARAMETER["standard_parallel_2",40.65],PARAMETER["latitude_of_origin",39.8349778],PARAMETER["central_meridian",-111.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",546937.88],UNIT["US Foot",0.30480061]] +LM2UTHNF,PROJCS["LM2UTHNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",40.7166667],PARAMETER["standard_parallel_2",41.7833333],PARAMETER["latitude_of_origin",41.2507368],PARAMETER["central_meridian",-111.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",334237.62],UNIT["US Foot",0.30480061]] +LM2UTHSF,PROJCS["LM2UTHSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.2166667],PARAMETER["standard_parallel_2",38.35],PARAMETER["latitude_of_origin",37.7840698],PARAMETER["central_meridian",-111.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",406857.45],UNIT["US Foot",0.30480061]] +LM2VEN,PROJCS["LM2VEN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",7],PARAMETER["standard_parallel_2",13],PARAMETER["latitude_of_origin",10.0047415],PARAMETER["central_meridian",-65.99999999999996],PARAMETER["false_easting",1111539.44],PARAMETER["false_northing",536590.41]] +LM2VENCN,PROJCS["LM2VENCN",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",3],PARAMETER["standard_parallel_2",9.000000000000002],PARAMETER["latitude_of_origin",6.002827699999997],PARAMETER["central_meridian",-65.99999999999996],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1664090.82]] +LM2VENPC,PROJCS["LM2VENPC",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",12],PARAMETER["standard_parallel_2",6],PARAMETER["latitude_of_origin",9.0042597],PARAMETER["central_meridian",-69.99999999999994],PARAMETER["false_easting",1444072.44],PARAMETER["false_northing",1440169.11]] +LM2VIET,PROJCS["LM2VIET",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",9.000000000000002],PARAMETER["standard_parallel_2",7],PARAMETER["latitude_of_origin",8.000419599999997],PARAMETER["central_meridian",108],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2VIRNF,PROJCS["LM2VIRNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",38.0333333],PARAMETER["standard_parallel_2",39.2],PARAMETER["latitude_of_origin",38.6174705],PARAMETER["central_meridian",-78.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",346244.54],UNIT["US Foot",0.30480061]] +LM2VIRSF,PROJCS["LM2VIRSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",36.7666667],PARAMETER["standard_parallel_2",37.9666667],PARAMETER["latitude_of_origin",37.3674801],PARAMETER["central_meridian",-78.49999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",376513.28],UNIT["US Foot",0.30480061]] +LM2WAUST,PROJCS["LM2WAUST",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-32.65859432245691],PARAMETER["standard_parallel_2",-35.35149595957179],PARAMETER["latitude_of_origin",-25.32172549999997],PARAMETER["central_meridian",120.8940947726037],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +LM2WISCF,PROJCS["LM2WISCF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44.25],PARAMETER["standard_parallel_2",45.5],PARAMETER["latitude_of_origin",44.8761469],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",380166.49],UNIT["US Foot",0.30480061]] +LM2WISNF,PROJCS["LM2WISNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.5666667],PARAMETER["standard_parallel_2",46.7666667],PARAMETER["latitude_of_origin",46.1677717],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",365046.6],UNIT["US Foot",0.30480061]] +LM2WISSF,PROJCS["LM2WISSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.7333333],PARAMETER["standard_parallel_2",44.0666667],PARAMETER["latitude_of_origin",43.4012402],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",510702.31],UNIT["US Foot",0.30480061]] +LM2WSHNF,PROJCS["LM2WSHNF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",47.5],PARAMETER["standard_parallel_2",48.7333333],PARAMETER["latitude_of_origin",48.1179153],PARAMETER["central_meridian",-120.8333333],PARAMETER["false_easting",2000000],PARAMETER["false_northing",407781.44],UNIT["US Foot",0.30480061]] +LM2WSHSF,PROJCS["LM2WSHSF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.8333333],PARAMETER["standard_parallel_2",47.3333333],PARAMETER["latitude_of_origin",46.585085],PARAMETER["central_meridian",-120.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",456465.91],UNIT["US Foot",0.30480061]] +LM2WVANF,PROJCS["LM2WVANF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",39],PARAMETER["standard_parallel_2",40.25],PARAMETER["latitude_of_origin",39.6259561],PARAMETER["central_meridian",-79.5],PARAMETER["false_easting",2000000],PARAMETER["false_northing",410097.76],UNIT["US Foot",0.30480061]] +LM2WVASF,PROJCS["LM2WVASF",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",37.4833333],PARAMETER["standard_parallel_2",38.8833333],PARAMETER["latitude_of_origin",38.1844732],PARAMETER["central_meridian",-81],PARAMETER["false_easting",2000000],PARAMETER["false_northing",431297.77],UNIT["US Foot",0.30480061]] +LM2_WA_WGS84,PROJCS["LM2_WA_WGS84",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",-83.49999997620704],PARAMETER["standard_parallel_2",-81.49999997849238],PARAMETER["latitude_of_origin",-82.50000000599761],PARAMETER["central_meridian",-105.0000000232594],PARAMETER["false_easting",343122.675],PARAMETER["false_northing",203866.49]] +LMFRAN93,PROJCS["LMFRAN93",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",44],PARAMETER["standard_parallel_2",49],PARAMETER["latitude_of_origin",46.5],PARAMETER["central_meridian",3],PARAMETER["false_easting",700000],PARAMETER["false_northing",6600000],UNIT["unnamed",1]] +LOCAL,LOCAL_CS["LOCAL - (unsupported)"] +LOE7330,PROJCS["LOE7330",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.99999999900352],PARAMETER["standard_parallel_2",48.99999999557553],PARAMETER["latitude_of_origin",47.50000000000002],PARAMETER["central_meridian",13],PARAMETER["false_easting",300000],PARAMETER["false_northing",200000]] +LOE7332,PROJCS["LOE7332",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.99999999900352],PARAMETER["standard_parallel_2",48.99999999557553],PARAMETER["latitude_of_origin",47.50000000000002],PARAMETER["central_meridian",13.33333333333331],PARAMETER["false_easting",400000],PARAMETER["false_northing",400000]] +LOE8032,PROJCS["LOE8032",PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",45.99999999900352],PARAMETER["standard_parallel_2",48.99999999557553],PARAMETER["latitude_of_origin",47.99999999999998],PARAMETER["central_meridian",13.33333333333331],PARAMETER["false_easting",400000],PARAMETER["false_northing",400000]] +MALAYA,LOCAL_CS["MALAYA - (unsupported)"] +MALRSOE,LOCAL_CS["MALRSOE - (unsupported)"] +MALRSOW,LOCAL_CS["MALRSOW - (unsupported)"] +MGA48,PROJCS["MGA48",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA49,PROJCS["MGA49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA50,PROJCS["MGA50",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA51,PROJCS["MGA51",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA52,PROJCS["MGA52",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA53,PROJCS["MGA53",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA54,PROJCS["MGA54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA55,PROJCS["MGA55",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA56,PROJCS["MGA56",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA57,PROJCS["MGA57",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MGA58,PROJCS["MGA58",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +MICH_GEOREF,LOCAL_CS["MICH_GEOREF - (unsupported)"] +MPCALIF,LOCAL_CS["MPCALIF - (unsupported)"] +MR1630N,PROJCS["MR1630N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",16.5],PARAMETER["central_meridian",39.6666667],PARAMETER["scale_factor",0.9590787188081463],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +MR21N,PROJCS["MR21N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",21],PARAMETER["central_meridian",40],PARAMETER["scale_factor",0.933982001373389],PARAMETER["false_easting",100000],PARAMETER["false_northing",800000]] +MR36N,PROJCS["MR36N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",36],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.8099581558643186],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MR38N,PROJCS["MR38N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",38],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.7890166629883195],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MR43N,PROJCS["MR43N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",43],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.7324998104788255],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MR65N,PROJCS["MR65N",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",65],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.4237899569845271],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MR7S,PROJCS["MR7S",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",-6.999999999999995],PARAMETER["central_meridian",115],PARAMETER["scale_factor",0.9925953501989099],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRAFRICA,PROJCS["MRAFRICA",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRANS,PROJCS["MRANS",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRBLACKS,PROJCS["MRBLACKS",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",34],PARAMETER["scale_factor",1],PARAMETER["false_easting",2000000],PARAMETER["false_northing",0]] +MRCAMER,PROJCS["MRCAMER",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRCARIB,PROJCS["MRCARIB",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",19],PARAMETER["central_meridian",-79.99999999999994],PARAMETER["scale_factor",0.9458579352767946],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRCONGO,PROJCS["MRCONGO",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",-4.999999999999972],PARAMETER["central_meridian",11],PARAMETER["scale_factor",0.9962204409159013],PARAMETER["false_easting",200000],PARAMETER["false_northing",1051440.8]] +MREV,PROJCS["MREV",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",90],PARAMETER["scale_factor",1],PARAMETER["false_easting",20000000],PARAMETER["false_northing",0]] +MRGOM,PROJCS["MRGOM",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",25],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["scale_factor",0.9068561129815975],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +MRINDO,PROJCS["MRINDO",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0.5386389000000007],PARAMETER["central_meridian",101.4418306],PARAMETER["scale_factor",0.9999561056335834],PARAMETER["false_easting",400000],PARAMETER["false_northing",100000]] +MRINDON,PROJCS["MRINDON",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0.539165300000001],PARAMETER["central_meridian",101.4417703],PARAMETER["scale_factor",0.9999560198000614],PARAMETER["false_easting",400000],PARAMETER["false_northing",100000]] +MRLCC,PROJCS["MRLCC",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",365392607.481532],PARAMETER["central_meridian",109.9999999888982],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",3900000],PARAMETER["false_northing",900000]] +MRMALAY,PROJCS["MRMALAY",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",4.85],PARAMETER["central_meridian",109],PARAMETER["scale_factor",0.9964432276572127],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +MRNAM,PROJCS["MRNAM",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",15],PARAMETER["central_meridian",108],PARAMETER["scale_factor",0.9661424762736215],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +MRNEIEZ,PROJCS["MRNEIEZ",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",110],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",3900000],PARAMETER["false_northing",900000]] +MRNEWFND,PROJCS["MRNEWFND",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",46],PARAMETER["central_meridian",-45.5],PARAMETER["scale_factor",0.6958780751155514],PARAMETER["false_easting",500000],PARAMETER["false_northing",1000000]] +MRNSEA,PROJCS["MRNSEA",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",57.8129472],PARAMETER["central_meridian",-1.999999999999966],PARAMETER["scale_factor",0.5339721600128644],PARAMETER["false_easting",2000000],PARAMETER["false_northing",0]] +MRNWL10D,PROJCS["MRNWL10D",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",20000000],PARAMETER["false_northing",10000000]] +MRVENZ,PROJCS["MRVENZ",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-64.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",3500000],PARAMETER["false_northing",0]] +MRVIET,PROJCS["MRVIET",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",18],PARAMETER["central_meridian",106],PARAMETER["scale_factor",0.9513606030407835],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +MRWORLD,PROJCS["MRWORLD",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",20000000],PARAMETER["false_northing",0]] +MRWORLD1,PROJCS["MRWORLD1",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",10000000],PARAMETER["false_northing",0]] +MRWORLD2,PROJCS["MRWORLD2",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +MRWSOUTH,PROJCS["MRWSOUTH",PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",20000000],PARAMETER["false_northing",20000000]] +MSAFRICA,LOCAL_CS["MSAFRICA - (unsupported)"] +MW180E,LOCAL_CS["MW180E - (unsupported)"] +MW90EAST,LOCAL_CS["MW90EAST - (unsupported)"] +MW90WEST,LOCAL_CS["MW90WEST - (unsupported)"] +MWSPHERE,LOCAL_CS["MWSPHERE - (unsupported)"] +NTM51,PROJCS["NTM51",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NTM52,PROJCS["NTM52",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NTM53,PROJCS["NTM53",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NTM54,PROJCS["NTM54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NTM55,PROJCS["NTM55",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NTM56,PROJCS["NTM56",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +NUTM01,PROJCS["NUTM01",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-177],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM01_FT,PROJCS["NUTM01_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-177.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM02,PROJCS["NUTM02",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-171],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM02_FT,PROJCS["NUTM02_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-171.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM03,PROJCS["NUTM03",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM03_FT,PROJCS["NUTM03_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-165.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM04,PROJCS["NUTM04",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM04_FT,PROJCS["NUTM04_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-159.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM05,PROJCS["NUTM05",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM05_FT,PROJCS["NUTM05_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-153.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM06,PROJCS["NUTM06",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM06_FT,PROJCS["NUTM06_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-147.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM07,PROJCS["NUTM07",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM07_FT,PROJCS["NUTM07_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-141.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM08,PROJCS["NUTM08",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM08_FT,PROJCS["NUTM08_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-135.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM09,PROJCS["NUTM09",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM09_FT,PROJCS["NUTM09_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-129.0000000000003],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM10,PROJCS["NUTM10",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM10_FT,PROJCS["NUTM10_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-123.0000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM11,PROJCS["NUTM11",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM11_FT,PROJCS["NUTM11_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-117.0000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM12,PROJCS["NUTM12",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM12_FT,PROJCS["NUTM12_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-111.0000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM13,PROJCS["NUTM13",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM13_FT,PROJCS["NUTM13_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-105.0000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM14,PROJCS["NUTM14",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-99],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM14_FT,PROJCS["NUTM14_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-99.0000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM15,PROJCS["NUTM15",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM15_FT,PROJCS["NUTM15_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-92.99999999999996],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM16,PROJCS["NUTM16",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-87],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM16_FT,PROJCS["NUTM16_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-86.99999999999994],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM17,PROJCS["NUTM17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM17_FT,PROJCS["NUTM17_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM18,PROJCS["NUTM18",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-75],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM18_FT,PROJCS["NUTM18_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-75.00000000000016],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM19,PROJCS["NUTM19",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-69],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM19_FT,PROJCS["NUTM19_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-69.00000000000013],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM20,PROJCS["NUTM20",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-63],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM20_FT,PROJCS["NUTM20_FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-63.00000000000013],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["unnamed",0.30480060966]] +NUTM21,PROJCS["NUTM21",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-57],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM22,PROJCS["NUTM22",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM23,PROJCS["NUTM23",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-45],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM24,PROJCS["NUTM24",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-39],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM25,PROJCS["NUTM25",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-33],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM26,PROJCS["NUTM26",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM27,PROJCS["NUTM27",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-21],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM28,PROJCS["NUTM28",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM29,PROJCS["NUTM29",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM30,PROJCS["NUTM30",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-3],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM31,PROJCS["NUTM31",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",3],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM32,PROJCS["NUTM32",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM33,PROJCS["NUTM33",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM34,PROJCS["NUTM34",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",21],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM35,PROJCS["NUTM35",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM36,PROJCS["NUTM36",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",33],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM37,PROJCS["NUTM37",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",39],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM38,PROJCS["NUTM38",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM39,PROJCS["NUTM39",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM40,PROJCS["NUTM40",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",57],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM41,PROJCS["NUTM41",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",63],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM42,PROJCS["NUTM42",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",69],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM43,PROJCS["NUTM43",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",75],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM44,PROJCS["NUTM44",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM45,PROJCS["NUTM45",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",87],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM46,PROJCS["NUTM46",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM47,PROJCS["NUTM47",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",99],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM48,PROJCS["NUTM48",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM49,PROJCS["NUTM49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM50,PROJCS["NUTM50",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM51,PROJCS["NUTM51",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM52,PROJCS["NUTM52",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM53,PROJCS["NUTM53",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM54,PROJCS["NUTM54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM55,PROJCS["NUTM55",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM56,PROJCS["NUTM56",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM57,PROJCS["NUTM57",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM58,PROJCS["NUTM58",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM59,PROJCS["NUTM59",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",171],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NUTM60,PROJCS["NUTM60",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",177],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] +NZAMUR49,PROJCS["NZAMUR49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.68911658055557],PARAMETER["central_meridian",173.0101333888891],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZBLUF49,PROJCS["NZBLUF49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-46.60000961111109],PARAMETER["central_meridian",168.342872],PARAMETER["scale_factor",1],PARAMETER["false_easting",300002.66],PARAMETER["false_northing",699999.58],UNIT["unnamed",1]] +NZBULL49,PROJCS["NZBULL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.81080286111109],PARAMETER["central_meridian",171.5812600611113],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZBYPL49,PROJCS["NZBYPL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-37.76124981111111],PARAMETER["central_meridian",176.4661972499998],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZCOLL49,PROJCS["NZCOLL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.7147590611111],PARAMETER["central_meridian",172.6720465],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZGAWL49,PROJCS["NZGAWL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.74871156111108],PARAMETER["central_meridian",171.3607484694444],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZGREY49,PROJCS["NZGREY49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.33369428055552],PARAMETER["central_meridian",171.5497713111112],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZHAWK49,PROJCS["NZHAWK49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.65092931111111],PARAMETER["central_meridian",176.6736805305557],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZHOKI49,PROJCS["NZHOKI49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.88632236111108],PARAMETER["central_meridian",170.9799934999998],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZJACK49,PROJCS["NZJACK49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.97780288888887],PARAMETER["central_meridian",168.606267],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZKARA49,PROJCS["NZKARA49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.28991153055556],PARAMETER["central_meridian",172.1090281888886],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZLIND49,PROJCS["NZLIND49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44.73526796944446],PARAMETER["central_meridian",169.4677550805554],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZMARL49,PROJCS["NZMARL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.54448666944445],PARAMETER["central_meridian",173.8020741111113],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZMG,LOCAL_CS["NZMG - (unsupported)"] +NZMTED49,PROJCS["NZMTED49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-36.87986528055556],PARAMETER["central_meridian",174.764339361111],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZMTNI49,PROJCS["NZMTNI49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.13290258055557],PARAMETER["central_meridian",168.3986411888889],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZMTPL49,PROJCS["NZMTPL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.59063758055553],PARAMETER["central_meridian",172.7271935805556],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZMTYO49,PROJCS["NZMTYO49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.56372616944442],PARAMETER["central_meridian",167.7388617805554],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZNELS49,PROJCS["NZNELS49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.27454471944445],PARAMETER["central_meridian",173.2993168111111],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZNTAI49,PROJCS["NZNTAI49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.8615133611111],PARAMETER["central_meridian",170.2825891111109],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZOBSE49,PROJCS["NZOBSE49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.81619661111111],PARAMETER["central_meridian",170.6285951694446],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZOKAR49,PROJCS["NZOKAR49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.11012813888885],PARAMETER["central_meridian",170.2609258305558],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZPOVE49,PROJCS["NZPOVE49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-38.62470278055553],PARAMETER["central_meridian",177.8856362805553],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZTARA49,PROJCS["NZTARA49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.13575831111109],PARAMETER["central_meridian",174.2280117500001],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZTIMA49,PROJCS["NZTIMA49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44.40222036111108],PARAMETER["central_meridian",171.0572508305555],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZTM,PROJCS["NZTM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",173],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1600000],PARAMETER["false_northing",10000000]] +NZTUHI49,PROJCS["NZTUHI49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.51247038888886],PARAMETER["central_meridian",175.6400368111111],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZWAIR49,PROJCS["NZWAIR49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.9255326388889],PARAMETER["central_meridian",175.6473496694445],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZWANG49,PROJCS["NZWANG49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.24194713888888],PARAMETER["central_meridian",175.4880996111111],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +NZWELL49,PROJCS["NZWELL49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.30131963888891],PARAMETER["central_meridian",174.7766231111108],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",700000],UNIT["unnamed",1]] +OG45N45E,LOCAL_CS["OG45N45E - (unsupported)"] +OG55N80E,LOCAL_CS["OG55N80E - (unsupported)"] +OGEQU90W,LOCAL_CS["OGEQU90W - (unsupported)"] +OGNPOLE,LOCAL_CS["OGNPOLE - (unsupported)"] +OMALSK1F,LOCAL_CS["OMALSK1F - (unsupported)"] +OMALSK1M,LOCAL_CS["OMALSK1M - (unsupported)"] +OSASIA,LOCAL_CS["OSASIA - (unsupported)"] +OSNAMER,LOCAL_CS["OSNAMER - (unsupported)"] +OSSYRIA,LOCAL_CS["OSSYRIA - (unsupported)"] +PCALASKA,LOCAL_CS["PCALASKA - (unsupported)"] +PCALBERT,LOCAL_CS["PCALBERT - (unsupported)"] +PCG94,PROJCS["PCG94",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",115.8166666666661],PARAMETER["scale_factor",0.99999906],PARAMETER["false_easting",50000],PARAMETER["false_northing",3800000]] +PCNSLOPE,LOCAL_CS["PCNSLOPE - (unsupported)"] +PCNWT,LOCAL_CS["PCNWT - (unsupported)"] +PCTRUSFT,LOCAL_CS["PCTRUSFT - (unsupported)"] +PCWORLD,LOCAL_CS["PCWORLD - (unsupported)"] +PSCANADA,LOCAL_CS["PSCANADA - (unsupported)"] +PSFALK,LOCAL_CS["PSFALK - (unsupported)"] +PSGREEN,LOCAL_CS["PSGREEN - (unsupported)"] +PSN150W,LOCAL_CS["PSN150W - (unsupported)"] +PSNORTH,LOCAL_CS["PSNORTH - (unsupported)"] +PSNORWAY,LOCAL_CS["PSNORWAY - (unsupported)"] +PSNTH000,LOCAL_CS["PSNTH000 - (unsupported)"] +PSNTH045,LOCAL_CS["PSNTH045 - (unsupported)"] +PSNTH180,LOCAL_CS["PSNTH180 - (unsupported)"] +PSSOUTH,LOCAL_CS["PSSOUTH - (unsupported)"] +PSSTH000,LOCAL_CS["PSSTH000 - (unsupported)"] +PS_WGS84,LOCAL_CS["PS_WGS84 - (unsupported)"] +PUW1992,PROJCS["PUW1992",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",19],PARAMETER["scale_factor",0.9993],PARAMETER["false_easting",500000],PARAMETER["false_northing",-5300000]] +PUWG1992,PROJCS["PUWG1992",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",19],PARAMETER["scale_factor",0.9993],PARAMETER["false_easting",500000],PARAMETER["false_northing",-5300000]] +QC_MTM05,PROJCS["QC_MTM05",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-64.49999999999996],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +QC_MTM06,PROJCS["QC_MTM06",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-67.49999999999996],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +QC_MTM07,PROJCS["QC_MTM07",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-70.49999999999996],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +QC_MTM08,PROJCS["QC_MTM08",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-73.49999999999997],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +QC_MTM09,PROJCS["QC_MTM09",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-76.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +QC_MTM10,PROJCS["QC_MTM10",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-79.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +RO90E,LOCAL_CS["RO90E - (unsupported)"] +RO90W,LOCAL_CS["RO90W - (unsupported)"] +ROBINSON,LOCAL_CS["ROBINSON - (unsupported)"] +ROS4270,LOCAL_CS["ROS4270 - (unsupported)"] +RPBRA,LOCAL_CS["RPBRA - (unsupported)"] +RPMON,LOCAL_CS["RPMON - (unsupported)"] +RPNAM,LOCAL_CS["RPNAM - (unsupported)"] +RPSIB,LOCAL_CS["RPSIB - (unsupported)"] +RPUSSR,LOCAL_CS["RPUSSR - (unsupported)"] +S34JFRX,LOCAL_CS["S34JFRX - (unsupported)"] +S34SRX,LOCAL_CS["S34SRX - (unsupported)"] +S45BRX,LOCAL_CS["S45BRX - (unsupported)"] +SNSPHERE,LOCAL_CS["SNSPHERE - (unsupported)"] +SNWORLD,LOCAL_CS["SNWORLD - (unsupported)"] +STME24,PROJCS["STME24",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",24],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000]] +STMLO11,LOCAL_CS["STMLO11 - (unsupported)"] +STMLO13,LOCAL_CS["STMLO13 - (unsupported)"] +STMLO15,LOCAL_CS["STMLO15 - (unsupported)"] +STMLO17,LOCAL_CS["STMLO17 - (unsupported)"] +STMLO19,LOCAL_CS["STMLO19 - (unsupported)"] +STMLO21,LOCAL_CS["STMLO21 - (unsupported)"] +STMLO23,LOCAL_CS["STMLO23 - (unsupported)"] +STMLO25,LOCAL_CS["STMLO25 - (unsupported)"] +STMLO25F,LOCAL_CS["STMLO25F - (unsupported)"] +STMLO27,LOCAL_CS["STMLO27 - (unsupported)"] +STMLO27F,LOCAL_CS["STMLO27F - (unsupported)"] +STMLO29,LOCAL_CS["STMLO29 - (unsupported)"] +STMLO31,LOCAL_CS["STMLO31 - (unsupported)"] +STMLO33,LOCAL_CS["STMLO33 - (unsupported)"] +STMLO35,LOCAL_CS["STMLO35 - (unsupported)"] +STMLO37,LOCAL_CS["STMLO37 - (unsupported)"] +STMLO39,LOCAL_CS["STMLO39 - (unsupported)"] +STMLO41,LOCAL_CS["STMLO41 - (unsupported)"] +STMLO43,LOCAL_CS["STMLO43 - (unsupported)"] +STMLO9,LOCAL_CS["STMLO9 - (unsupported)"] +SUTM01,PROJCS["SUTM01",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-177],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM02,PROJCS["SUTM02",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-171],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM03,PROJCS["SUTM03",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM04,PROJCS["SUTM04",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM05,PROJCS["SUTM05",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM06,PROJCS["SUTM06",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM07,PROJCS["SUTM07",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM08,PROJCS["SUTM08",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM09,PROJCS["SUTM09",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM10,PROJCS["SUTM10",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM11,PROJCS["SUTM11",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM12,PROJCS["SUTM12",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM13,PROJCS["SUTM13",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM14,PROJCS["SUTM14",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-99],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM15,PROJCS["SUTM15",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM16,PROJCS["SUTM16",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-87],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM17,PROJCS["SUTM17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM18,PROJCS["SUTM18",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-75],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM19,PROJCS["SUTM19",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-69],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM20,PROJCS["SUTM20",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-63],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM21,PROJCS["SUTM21",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-57],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM22,PROJCS["SUTM22",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM23,PROJCS["SUTM23",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-45],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM24,PROJCS["SUTM24",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-39],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM25,PROJCS["SUTM25",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-33],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM26,PROJCS["SUTM26",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM27,PROJCS["SUTM27",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-21],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM28,PROJCS["SUTM28",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM29,PROJCS["SUTM29",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM30,PROJCS["SUTM30",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-3],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM31,PROJCS["SUTM31",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",3],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM32,PROJCS["SUTM32",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM33,PROJCS["SUTM33",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM34,PROJCS["SUTM34",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",21],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM35,PROJCS["SUTM35",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM36,PROJCS["SUTM36",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",33],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM37,PROJCS["SUTM37",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",39],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM38,PROJCS["SUTM38",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",45],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM39,PROJCS["SUTM39",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM40,PROJCS["SUTM40",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",57],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM41,PROJCS["SUTM41",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",63],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM42,PROJCS["SUTM42",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",69],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM43,PROJCS["SUTM43",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",75],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM44,PROJCS["SUTM44",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM45,PROJCS["SUTM45",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",87],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM46,PROJCS["SUTM46",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",93],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM47,PROJCS["SUTM47",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",99],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM48,PROJCS["SUTM48",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM49,PROJCS["SUTM49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM50,PROJCS["SUTM50",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM51,PROJCS["SUTM51",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM52,PROJCS["SUTM52",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM53,PROJCS["SUTM53",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM54,PROJCS["SUTM54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM55,PROJCS["SUTM55",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM56,PROJCS["SUTM56",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM57,PROJCS["SUTM57",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM58,PROJCS["SUTM58",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM59,PROJCS["SUTM59",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",171],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SUTM60,PROJCS["SUTM60",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",177],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["Meter",1]] +SWISSNEW,LOCAL_CS["SWISSNEW - (unsupported)"] +SWISSOLD,LOCAL_CS["SWISSOLD - (unsupported)"] +TAIWAN,PROJCS["TAIWAN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",120.9995190069077],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",250000],PARAMETER["false_northing",0]] +TM103_30,PROJCS["TM103_30",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",103.5],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM16E,PROJCS["TM16E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",16],PARAMETER["scale_factor",0.95],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM36,PROJCS["TM36",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",36],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM36E,PROJCS["TM36E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",36],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM42E,PROJCS["TM42E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",42],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM54E,PROJCS["TM54E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",54],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM54WCM,PROJCS["TM54WCM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TM6W,PROJCS["TM6W",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-5.999999999999955],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMAFRICA,PROJCS["TMAFRICA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.99],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMAFT15,PROJCS["TMAFT15",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-92.99999999999996],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.5],PARAMETER["false_northing",0],UNIT["unnamed",0.304800641]] +TMAFT16,PROJCS["TMAFT16",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-86.99999999999994],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.5],PARAMETER["false_northing",0],UNIT["unnamed",0.304800641]] +TMAFT17,PROJCS["TMAFT17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.5],PARAMETER["false_northing",0],UNIT["unnamed",0.304800641]] +TMALABEF,PROJCS["TMALABEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.5],PARAMETER["central_meridian",-85.83333329999994],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALABEF83,PROJCS["TMALABEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.50000000812049],PARAMETER["central_meridian",-85.83333329732486],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALABEM,PROJCS["TMALABEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.50000000812049],PARAMETER["central_meridian",-85.83333335462063],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMALABWF,PROJCS["TMALABWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",-87.49999999999996],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALABWF83,PROJCS["TMALABWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.00000002301578],PARAMETER["central_meridian",-87.49999997163637],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALABWM,PROJCS["TMALABWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",-87.49999999999996],PARAMETER["scale_factor",0.9999333333],PARAMETER["false_easting",600000],PARAMETER["false_northing",0]] +TMALSK2F,PROJCS["TMALSK2F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-142],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK2F83,PROJCS["TMALSK2F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-142.0000000096286],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK2M,PROJCS["TMALSK2M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-142],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK3F,PROJCS["TMALSK3F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-146],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK3F83,PROJCS["TMALSK3F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-146.000000005058],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK3M,PROJCS["TMALSK3M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-146],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK4F,PROJCS["TMALSK4F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-150],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK4F83,PROJCS["TMALSK4F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-150.0000000004873],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK4M,PROJCS["TMALSK4M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-150],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK5F,PROJCS["TMALSK5F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-154],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK5F83,PROJCS["TMALSK5F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-153.9999999959166],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK5M,PROJCS["TMALSK5M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-154],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK6F,PROJCS["TMALSK6F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-158],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK6F83,PROJCS["TMALSK6F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-157.999999991346],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK6M,PROJCS["TMALSK6M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-158],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK7F,PROJCS["TMALSK7F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-162],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK7F83,PROJCS["TMALSK7F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-161.9999999867753],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK7M,PROJCS["TMALSK7M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-162],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK8F,PROJCS["TMALSK8F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-166],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK8F83,PROJCS["TMALSK8F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-165.9999999822046],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK8M,PROJCS["TMALSK8M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-166],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMALSK9F,PROJCS["TMALSK9F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-170],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK9F83,PROJCS["TMALSK9F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.99999999559177],PARAMETER["central_meridian",-169.999999977634],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMALSK9M,PROJCS["TMALSK9M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",54],PARAMETER["central_meridian",-170],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMAMG48,PROJCS["TMAMG48",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG49,PROJCS["TMAMG49",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG50,PROJCS["TMAMG50",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG51,PROJCS["TMAMG51",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG52,PROJCS["TMAMG52",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG53,PROJCS["TMAMG53",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG54,PROJCS["TMAMG54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG55,PROJCS["TMAMG55",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG56,PROJCS["TMAMG56",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG57,PROJCS["TMAMG57",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",159],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMAMG58,PROJCS["TMAMG58",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",165],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMARG1,PROJCS["TMARG1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-71.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0]] +TMARG2,PROJCS["TMARG2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-68.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",2500000],PARAMETER["false_northing",0]] +TMARG3,PROJCS["TMARG3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-65.99999999999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",3500000],PARAMETER["false_northing",0]] +TMARG4,PROJCS["TMARG4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-62.99999999999995],PARAMETER["scale_factor",1],PARAMETER["false_easting",4500000],PARAMETER["false_northing",0]] +TMARG5,PROJCS["TMARG5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",0]] +TMARG54,PROJCS["TMARG54",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-71.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",7500000],PARAMETER["false_northing",10002288.2999]] +TMARG57,PROJCS["TMARG57",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-68.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",6500000],PARAMETER["false_northing",10002288.2999]] +TMARG6,PROJCS["TMARG6",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-56.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",6500000],PARAMETER["false_northing",0]] +TMARG60,PROJCS["TMARG60",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-65.99999999999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",10002288.2999]] +TMARG63,PROJCS["TMARG63",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-62.99999999999995],PARAMETER["scale_factor",1],PARAMETER["false_easting",4500000],PARAMETER["false_northing",10002288.2999]] +TMARG66,PROJCS["TMARG66",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",3500000],PARAMETER["false_northing",10002288.2999]] +TMARG69,PROJCS["TMARG69",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-56.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",2500000],PARAMETER["false_northing",10002288.2999]] +TMARG7,PROJCS["TMARG7",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-89.99999999999994],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",1],PARAMETER["false_easting",7500000],PARAMETER["false_northing",0]] +TMARG72,PROJCS["TMARG72",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",1],PARAMETER["false_easting",1500000],PARAMETER["false_northing",10002288.2999]] +TMARG8,PROJCS["TMARG8",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-68.99999999999997],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",2500000],PARAMETER["false_northing",10000000]] +TMARG9,PROJCS["TMARG9",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-56.99999999999994],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",2500000],PARAMETER["false_northing",10000000]] +TMARIZCF,PROJCS["TMARIZCF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-111.9166667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARIZCF83,PROJCS["TMARIZCF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-111.9166667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",700000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARIZEF,PROJCS["TMARIZEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-110.1666667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARIZEF83,PROJCS["TMARIZEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-110.1666667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",700000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARIZWF,PROJCS["TMARIZWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-113.75],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARIZWF83,PROJCS["TMARIZWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-113.75],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",700000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMARUBA,PROJCS["TMARUBA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",12.5200894],PARAMETER["central_meridian",-69.99294669999993],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",10000],PARAMETER["false_northing",15000]] +TMAUSC,PROJCS["TMAUSC",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",13.3333333],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMAUSE,PROJCS["TMAUSE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",16.3333333],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMAUSW,PROJCS["TMAUSW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",10.3333333],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMAUSYD1,PROJCS["TMAUSYD1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",116],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD2,PROJCS["TMAUSYD2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",121],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD3,PROJCS["TMAUSYD3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",126],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD4,PROJCS["TMAUSYD4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",131],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD5,PROJCS["TMAUSYD5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",136],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD6,PROJCS["TMAUSYD6",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",141],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD7,PROJCS["TMAUSYD7",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",146],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMAUSYD8,PROJCS["TMAUSYD8",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-34],PARAMETER["central_meridian",151],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",0.914391796]] +TMBAHR,PROJCS["TMBAHR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMBOAG1R,PROJCS["TMBOAG1R",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-3.452333299999991],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0]] +TMBOAG2R,PROJCS["TMBOAG2R",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",2.547666699999998],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",2520000],PARAMETER["false_northing",0]] +TMBOAGA1,PROJCS["TMBOAGA1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9.000000000000002],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0]] +TMBOAGA2,PROJCS["TMBOAGA2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",2520000],PARAMETER["false_northing",0]] +TMBOGEQ,PROJCS["TMBOGEQ",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-74.08091659999998],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMBOH,PROJCS["TMBOH",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",1],PARAMETER["false_easting",20500000],PARAMETER["false_northing",0]] +TMBOL1,PROJCS["TMBOL1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-65.99999999999996],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMBONAIR,PROJCS["TMBONAIR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",12.1797141],PARAMETER["central_meridian",-68.25184439999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",23000],PARAMETER["false_northing",20980.49]] +TMBUCHAN,PROJCS["TMBUCHAN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",3],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMBURMA,PROJCS["TMBURMA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",96],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMCM116,PROJCS["TMCM116",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",116],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMCM126,PROJCS["TMCM126",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",126],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMCM133E,PROJCS["TMCM133E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",133],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMCM157E,PROJCS["TMCM157E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",157],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMCOLB,PROJCS["TMCOLB",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.5990472],PARAMETER["central_meridian",-74.08091669999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +TMCOLE,PROJCS["TMCOLE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.5990472],PARAMETER["central_meridian",-68.08091669999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +TMCOLEC,PROJCS["TMCOLEC",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.5990472],PARAMETER["central_meridian",-71.08091669999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +TMCOLW,PROJCS["TMCOLW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.5990472],PARAMETER["central_meridian",-77.08091669999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",1000000],PARAMETER["false_northing",1000000]] +TMCONGO,PROJCS["TMCONGO",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",11],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMCORONA,PROJCS["TMCORONA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",33.76446202777643],PARAMETER["central_meridian",-117.4745428888658],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMDELWRF,PROJCS["TMDELWRF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38],PARAMETER["central_meridian",-75.41666669999995],PARAMETER["scale_factor",0.999995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMDELWRF83,PROJCS["TMDELWRF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000001387444],PARAMETER["central_meridian",-75.41666671179337],PARAMETER["scale_factor",0.999995],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMDELWRM,PROJCS["TMDELWRM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.00000001387444],PARAMETER["central_meridian",-75.41666665449759],PARAMETER["scale_factor",0.999995],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMEG24P,PROJCS["TMEG24P",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",34.5],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",0]] +TMEGEPTU,PROJCS["TMEGEPTU",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",11],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMEGMFBP,PROJCS["TMEGMFBP",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",34.5],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",0]] +TMEGSA87,PROJCS["TMEGSA87",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",23.99999882666041],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMEGYPTB,PROJCS["TMEGYPTB",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",35],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",1100000]] +TMEGYPTG,PROJCS["TMEGYPTG",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",35],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",1100000]] +TMEGYPTP,PROJCS["TMEGYPTP",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",27],PARAMETER["scale_factor",1],PARAMETER["false_easting",700000],PARAMETER["false_northing",200000]] +TMEGYPTR,PROJCS["TMEGYPTR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",31],PARAMETER["scale_factor",1],PARAMETER["false_easting",615000],PARAMETER["false_northing",810000]] +TMEGYPTS,PROJCS["TMEGYPTS",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",27],PARAMETER["scale_factor",1],PARAMETER["false_easting",700000],PARAMETER["false_northing",1200000]] +TMEGYPTW,PROJCS["TMEGYPTW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",28],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMETHIOP,PROJCS["TMETHIOP",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",40],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMFIN0,PROJCS["TMFIN0",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",17.99999625520633],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFIN1,PROJCS["TMFIN1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",20.99999754093336],PARAMETER["scale_factor",1],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFIN2,PROJCS["TMFIN2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",23.99999882666041],PARAMETER["scale_factor",1],PARAMETER["false_easting",2500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFIN3,PROJCS["TMFIN3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27.00000011238744],PARAMETER["scale_factor",1],PARAMETER["false_easting",3500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFIN4,PROJCS["TMFIN4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",29.99999566853653],PARAMETER["scale_factor",1],PARAMETER["false_easting",4500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFIN5,PROJCS["TMFIN5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",32.99999695426357],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFLRAEF,PROJCS["TMFLRAEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.3333333],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMFLRAEF83,PROJCS["TMFLRAEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.33333329597914],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMFLRAEM,PROJCS["TMFLRAEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.33333335327492],PARAMETER["central_meridian",-80.99999999338766],PARAMETER["scale_factor",0.99994118],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMFLRAWF,PROJCS["TMFLRAWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.3333333],PARAMETER["central_meridian",-81.99999999999997],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMFLRAWF83,PROJCS["TMFLRAWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.3333333],PARAMETER["central_meridian",-82.00000002089288],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMFLRAWM,PROJCS["TMFLRAWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.33333335327492],PARAMETER["central_meridian",-82.00000002089288],PARAMETER["scale_factor",0.99994118],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMGCWEG2,PROJCS["TMGCWEG2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-90.64999999999993],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",1640416.67],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMGEOREF,PROJCS["TMGEOREF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",-82.16666669999994],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMGEOREF83,PROJCS["TMGEOREF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.00000002301578],PARAMETER["central_meridian",-82.16666668259445],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMGEOREM,PROJCS["TMGEOREM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.00000002301578],PARAMETER["central_meridian",-82.16666668259445],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMGEORWF,PROJCS["TMGEORWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30],PARAMETER["central_meridian",-84.16666669999995],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMGEORWF83,PROJCS["TMGEORWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.00000002301578],PARAMETER["central_meridian",-84.16666668030912],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",2296583.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMGEORWM,PROJCS["TMGEORWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.00000002301578],PARAMETER["central_meridian",-84.16666668030912],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",700000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMGER1,PROJCS["TMGER1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",3],PARAMETER["scale_factor",1],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0]] +TMGER2,PROJCS["TMGER2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",6],PARAMETER["scale_factor",1],PARAMETER["false_easting",2500000],PARAMETER["false_northing",0]] +TMGER3,PROJCS["TMGER3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9.000000000000002],PARAMETER["scale_factor",1],PARAMETER["false_easting",3500000],PARAMETER["false_northing",0]] +TMGER4,PROJCS["TMGER4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",12],PARAMETER["scale_factor",1],PARAMETER["false_easting",4500000],PARAMETER["false_northing",0]] +TMGER5,PROJCS["TMGER5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",0]] +TMGHANA,PROJCS["TMGHANA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.666666599999998],PARAMETER["central_meridian",-0.9999999999999829],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",274319.51],PARAMETER["false_northing",0]] +TMGHANAF,PROJCS["TMGHANAF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.6666667],PARAMETER["central_meridian",-0.9999999999999829],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",900000],PARAMETER["false_northing",0],UNIT["unnamed",0.304799472]] +TMGHANAY,PROJCS["TMGHANAY",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4.6666667],PARAMETER["central_meridian",-0.9999999999999829],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",300000],PARAMETER["false_northing",0],UNIT["unnamed",0.91439841462]] +TMGK20E,PROJCS["TMGK20E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",120],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN05,PROJCS["TMGKN05",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN06,PROJCS["TMGKN06",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",33],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN07,PROJCS["TMGKN07",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",39],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN10,PROJCS["TMGKN10",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",57],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN11,PROJCS["TMGKN11",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",63],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN12,PROJCS["TMGKN12",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",69],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN13,PROJCS["TMGKN13",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",75],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN14,PROJCS["TMGKN14",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",81],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN15,PROJCS["TMGKN15",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",86.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN16,PROJCS["TMGKN16",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",93],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN17,PROJCS["TMGKN17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",98.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN18,PROJCS["TMGKN18",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN19,PROJCS["TMGKN19",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN20,PROJCS["TMGKN20",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN20W,PROJCS["TMGKN20W",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN21,PROJCS["TMGKN21",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN21W,PROJCS["TMGKN21W",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN22,PROJCS["TMGKN22",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",129],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN23,PROJCS["TMGKN23",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",135],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN8,PROJCS["TMGKN8",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",45],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMGKN9,PROJCS["TMGKN9",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",51],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMHAWI1F,PROJCS["TMHAWI1F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",18.8333333],PARAMETER["central_meridian",-155.5],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI1F83,PROJCS["TMHAWI1F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",18.83333328793987],PARAMETER["central_meridian",-155.5000000085266],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI1M,PROJCS["TMHAWI1M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",18.83333334523564],PARAMETER["central_meridian",-155.5000000085266],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMHAWI2F,PROJCS["TMHAWI2F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",20.3333333],PARAMETER["central_meridian",-156.6666666],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI2F83,PROJCS["TMHAWI2F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",20.33333330054981],PARAMETER["central_meridian",-156.6666665831418],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI2M,PROJCS["TMHAWI2M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",20.33333335784559],PARAMETER["central_meridian",-156.6666666404376],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMHAWI3F,PROJCS["TMHAWI3F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.1666666],PARAMETER["central_meridian",-158],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI3F83,PROJCS["TMHAWI3F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.16666660905768],PARAMETER["central_meridian",-157.999999991346],PARAMETER["scale_factor",1],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI3M,PROJCS["TMHAWI3M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.16666666635346],PARAMETER["central_meridian",-157.999999991346],PARAMETER["scale_factor",0.99999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMHAWI4F,PROJCS["TMHAWI4F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.8333333],PARAMETER["central_meridian",-159.5],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI4F83,PROJCS["TMHAWI4F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.83333331315976],PARAMETER["central_meridian",-159.5000000039559],PARAMETER["scale_factor",1],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI4M,PROJCS["TMHAWI4M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.83333331315976],PARAMETER["central_meridian",-159.5000000039559],PARAMETER["scale_factor",0.99999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMHAWI5F,PROJCS["TMHAWI5F",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.6666667],PARAMETER["central_meridian",-160.1666667],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI5F83,PROJCS["TMHAWI5F83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.66666670875396],PARAMETER["central_meridian",-160.166666708058],PARAMETER["scale_factor",1],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMHAWI5M,PROJCS["TMHAWI5M",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",21.66666665145818],PARAMETER["central_meridian",-160.1666666507622],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMHK80,PROJCS["TMHK80",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",22.31213277122482],PARAMETER["central_meridian",114.1785550046161],PARAMETER["scale_factor",1],PARAMETER["false_easting",836694.05],PARAMETER["false_northing",819069.8]] +TMHNT170,PROJCS["TMHNT170",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44],PARAMETER["central_meridian",170],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000],UNIT["unnamed",0.914398415]] +TMI,PROJCS["TMI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31.68438845381803],PARAMETER["central_meridian",35.20449790765302],PARAMETER["scale_factor",1.0000067],PARAMETER["false_easting",219529.584],PARAMETER["false_northing",626907.39]] +TMIDACFT,PROJCS["TMIDACFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.6666667],PARAMETER["central_meridian",-114],PARAMETER["scale_factor",0.999947368],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDACFT83,PROJCS["TMIDACFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-113.9999999843275],PARAMETER["scale_factor",0.999947368],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDACM,PROJCS["TMIDACM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-113.9999999843275],PARAMETER["scale_factor",0.99994737],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMIDAEFT,PROJCS["TMIDAEFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.6666667],PARAMETER["central_meridian",-112.1666667],PARAMETER["scale_factor",0.999947368],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDAEFT83,PROJCS["TMIDAEFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-112.1666667056102],PARAMETER["scale_factor",0.999947368],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDAEM,PROJCS["TMIDAEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-112.1666666483144],PARAMETER["scale_factor",0.99994737],PARAMETER["false_easting",200000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMIDAWFT,PROJCS["TMIDAWFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.6666667],PARAMETER["central_meridian",-115.75],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDAWFT83,PROJCS["TMIDAWFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-115.7499999894899],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMIDAWM,PROJCS["TMIDAWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.66666668590062],PARAMETER["central_meridian",-115.7499999894899],PARAMETER["scale_factor",0.99993333],PARAMETER["false_easting",800000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMILLEFT,PROJCS["TMILLEFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.6666667],PARAMETER["central_meridian",-88.3333333],PARAMETER["scale_factor",0.999975],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMILLEFT83,PROJCS["TMILLEFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.66666672026184],PARAMETER["central_meridian",-88.33333328014425],PARAMETER["scale_factor",0.999975],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMILLEM,PROJCS["TMILLEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-88.33333333744002],PARAMETER["scale_factor",0.999975],PARAMETER["false_easting",300000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMILLWFT,PROJCS["TMILLWFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.6666667],PARAMETER["central_meridian",-90.16666669999996],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMILLWFT83,PROJCS["TMILLWFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.66666672026184],PARAMETER["central_meridian",-90.16666667345312],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",2296583.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMILLWM,PROJCS["TMILLWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.66666666296607],PARAMETER["central_meridian",-90.16666667345312],PARAMETER["scale_factor",0.99994118],PARAMETER["false_easting",700000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMIND114,PROJCS["TMIND114",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",114],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMINDEFT,PROJCS["TMINDEFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.5],PARAMETER["central_meridian",-85.66666669999996],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMINDEFT83,PROJCS["TMINDEFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.49999997147393],PARAMETER["central_meridian",-85.66666669291907],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",820208.3332],PARAMETER["false_northing",328083.3333],UNIT["US Foot",0.30480061]] +TMINDEM,PROJCS["TMINDEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.49999997147393],PARAMETER["central_meridian",-85.66666669291907],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",100000],PARAMETER["false_northing",250000],UNIT["unnamed",1]] +TMINDWFT,PROJCS["TMINDWFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.5],PARAMETER["central_meridian",-87.08333329999992],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMINDWFT83,PROJCS["TMINDWFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.49999997147393],PARAMETER["central_meridian",-87.08333331738244],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",820208.3332],PARAMETER["false_northing",2952749.999],UNIT["US Foot",0.30480061]] +TMINDWM,PROJCS["TMINDWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",37.49999997147393],PARAMETER["central_meridian",-87.08333331738244],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",900000],PARAMETER["false_northing",250000],UNIT["unnamed",1]] +TMIRAQ,PROJCS["TMIRAQ",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.0262683],PARAMETER["central_meridian",46.5],PARAMETER["scale_factor",0.9994],PARAMETER["false_easting",800000],PARAMETER["false_northing",0]] +TMIRAQC,PROJCS["TMIRAQC",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",43],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMISG541,PROJCS["TMISG541",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",139],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG542,PROJCS["TMISG542",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",141],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG543,PROJCS["TMISG543",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",143],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG551,PROJCS["TMISG551",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",145],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG552,PROJCS["TMISG552",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG553,PROJCS["TMISG553",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",149],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG561,PROJCS["TMISG561",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",151],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG562,PROJCS["TMISG562",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISG563,PROJCS["TMISG563",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",155],PARAMETER["scale_factor",0.99994],PARAMETER["false_easting",300000],PARAMETER["false_northing",5000000]] +TMISRAEL,PROJCS["TMISRAEL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.20451694444443],PARAMETER["central_meridian",57.29616339480504],PARAMETER["scale_factor",529.584],PARAMETER["false_easting",219],PARAMETER["false_northing",626907.39]] +TMJORDAN,PROJCS["TMJORDAN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31.7340969],PARAMETER["central_meridian",35.2120806],PARAMETER["scale_factor",1],PARAMETER["false_easting",170251.56],PARAMETER["false_northing",126867.91]] +TMKOREA,PROJCS["TMKOREA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",127],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMMAINEF,PROJCS["TMMAINEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",43.8333333],PARAMETER["central_meridian",-68.49999999999994],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMAINEF83,PROJCS["TMMAINEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",43.66988819611419],PARAMETER["central_meridian",-68.50000002199494],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMAINEM,PROJCS["TMMAINEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",43.66666666666665],PARAMETER["central_meridian",-68.49999999999994],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",300000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMMAINWF,PROJCS["TMMAINWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.8333333],PARAMETER["central_meridian",-70.16666669999996],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMAINWF83,PROJCS["TMMAINWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.83333331781164],PARAMETER["central_meridian",-70.16666669630645],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",2952749.999],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMAINWM,PROJCS["TMMAINWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.83333331781164],PARAMETER["central_meridian",-70.16666663901067],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",900000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMMCBO4,PROJCS["TMMCBO4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",10.6449092],PARAMETER["central_meridian",-71.60515809999998],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMMICHCF,PROJCS["TMMICHCF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.5],PARAMETER["central_meridian",-85.74999999999996],PARAMETER["scale_factor",0.999909091],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",0.304788967]] +TMMICHEF,PROJCS["TMMICHEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.5],PARAMETER["central_meridian",-83.66666669999994],PARAMETER["scale_factor",0.999942857],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",0.304788967]] +TMMICHWF,PROJCS["TMMICHWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.5],PARAMETER["central_meridian",-88.74999999999996],PARAMETER["scale_factor",0.999909091],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",0.304788967]] +TMMISOCF,PROJCS["TMMISOCF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.8333333],PARAMETER["central_meridian",-92.49999999999994],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOCF83,PROJCS["TMMISOCF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.83333329716242],PARAMETER["central_meridian",-92.49999999457094],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOCM,PROJCS["TMMISOCM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.8333333544582],PARAMETER["central_meridian",-92.49999999457094],PARAMETER["scale_factor",0.99993333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMMISOEF,PROJCS["TMMISOEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.8333333],PARAMETER["central_meridian",-90.5],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOEF83,PROJCS["TMMISOEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.83333329716242],PARAMETER["central_meridian",-90.49999999685626],PARAMETER["scale_factor",0.999933333],PARAMETER["false_easting",820208.3332],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOEM,PROJCS["TMMISOEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",35.8333333544582],PARAMETER["central_meridian",-90.49999999685626],PARAMETER["scale_factor",0.99993333],PARAMETER["false_easting",250000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMMISOWF,PROJCS["TMMISOWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.1666667],PARAMETER["central_meridian",-94.49999999999996],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOWF83,PROJCS["TMMISOWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.16666667786134],PARAMETER["central_meridian",-94.49999999228559],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",2788708.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISOWM,PROJCS["TMMISOWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",36.16666667786134],PARAMETER["central_meridian",-94.49999999228559],PARAMETER["scale_factor",0.99994118],PARAMETER["false_easting",850000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMMISSEF,PROJCS["TMMISSEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.6666667],PARAMETER["central_meridian",-88.83333329999995],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISSEF83,PROJCS["TMMISSEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.49999998061527],PARAMETER["central_meridian",-88.83333332254475],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISSEM,PROJCS["TMMISSEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.5],PARAMETER["central_meridian",-88.83333329999995],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",300000],PARAMETER["false_northing",0]] +TMMISSWF,PROJCS["TMMISSWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.5],PARAMETER["central_meridian",-90.33333329999995],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISSWF83,PROJCS["TMMISSWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.49999998061527],PARAMETER["central_meridian",-90.33333327785891],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",2296583.333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMMISSWM,PROJCS["TMMISSWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",29.5],PARAMETER["central_meridian",-90.33333329999995],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",700000],PARAMETER["false_northing",0]] +TMMON087,PROJCS["TMMON087",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",86.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",15500000],PARAMETER["false_northing",0]] +TMMON093,PROJCS["TMMON093",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",93],PARAMETER["scale_factor",1],PARAMETER["false_easting",16500000],PARAMETER["false_northing",0]] +TMMON099,PROJCS["TMMON099",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",98.99999999999997],PARAMETER["scale_factor",1],PARAMETER["false_easting",17500000],PARAMETER["false_northing",0]] +TMMON105,PROJCS["TMMON105",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",105],PARAMETER["scale_factor",1],PARAMETER["false_easting",18500000],PARAMETER["false_northing",0]] +TMMON111,PROJCS["TMMON111",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",111],PARAMETER["scale_factor",1],PARAMETER["false_easting",19500000],PARAMETER["false_northing",0]] +TMMON117,PROJCS["TMMON117",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",1],PARAMETER["false_easting",20500000],PARAMETER["false_northing",0]] +TMMRD,PROJCS["TMMRD",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMNAMIBIAM13,PROJCS["TMNAMIBIAM13",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-21.99999997486133],PARAMETER["central_meridian",12.99999995649744],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMNAMIBIAM17,PROJCS["TMNAMIBIAM17",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-21.99999997486133],PARAMETER["central_meridian",16.99999995192677],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMNAMIBIAM19,PROJCS["TMNAMIBIAM19",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-21.99999997486133],PARAMETER["central_meridian",18.99999994964144],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMNEVACF,PROJCS["TMNEVACF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-116.6666667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEVACF83,PROJCS["TMNEVACF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.74999999610218],PARAMETER["central_meridian",-116.6666666861443],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",19685000],UNIT["US Foot",0.30480061]] +TMNEVACM,PROJCS["TMNEVACM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-116.6666667],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",6000000]] +TMNEVAEF,PROJCS["TMNEVAEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-115.5833333],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEVAEF83,PROJCS["TMNEVAEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.74999999610218],PARAMETER["central_meridian",-115.5833333277883],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",656166.6665],PARAMETER["false_northing",26246666.66],UNIT["US Foot",0.30480061]] +TMNEVAEM,PROJCS["TMNEVAEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-115.5833333],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",200000],PARAMETER["false_northing",8000000]] +TMNEVAWF,PROJCS["TMNEVAWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-118.5833333],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEVAWF83,PROJCS["TMNEVAWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.74999999610218],PARAMETER["central_meridian",-118.5833332957124],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",13123333.33],UNIT["US Foot",0.30480061]] +TMNEVAWM,PROJCS["TMNEVAWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",34.75],PARAMETER["central_meridian",-118.5833333],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",800000],PARAMETER["false_northing",4000000]] +TMNEWHFT,PROJCS["TMNEWHFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.5],PARAMETER["central_meridian",-71.66666669999998],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWHFT83,PROJCS["TMNEWHFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.4999999944085],PARAMETER["central_meridian",-71.6666667089164],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",984249.9998],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWHM,PROJCS["TMNEWHM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.4999999944085],PARAMETER["central_meridian",-71.66666665162062],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",300000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWJFT,PROJCS["TMNEWJFT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.8333333],PARAMETER["central_meridian",-74.66666669999998],PARAMETER["scale_factor",0.999975],PARAMETER["false_easting",2000000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWJFT83,PROJCS["TMNEWJFT83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.83333332238231],PARAMETER["central_meridian",-74.49999999999996],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",492124.9999],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWJM,PROJCS["TMNEWJM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.83333332238231],PARAMETER["central_meridian",-74.50000001513894],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",150000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWMCF,PROJCS["TMNEWMCF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-106.25],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMCF83,PROJCS["TMNEWMCF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.99999999322522],PARAMETER["central_meridian",-106.2499999860212],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMCM,PROJCS["TMNEWMCM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.99999999322522],PARAMETER["central_meridian",-106.2499999860212],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWMEF,PROJCS["TMNEWMEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-104.3333333],PARAMETER["scale_factor",0.999909091],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMEF83,PROJCS["TMNEWMEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.99999999322522],PARAMETER["central_meridian",-104.3333333191573],PARAMETER["scale_factor",0.999909091],PARAMETER["false_easting",541337.4999],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMEM,PROJCS["TMNEWMEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-104.3333333],PARAMETER["scale_factor",0.999909091],PARAMETER["false_easting",165000],PARAMETER["false_northing",0]] +TMNEWMWF,PROJCS["TMNEWMWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PARAMETER["central_meridian",-107.8333333],PARAMETER["scale_factor",0.999916667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMWF83,PROJCS["TMNEWMWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.99999999322522],PARAMETER["central_meridian",-107.8333332721862],PARAMETER["scale_factor",0.999916667],PARAMETER["false_easting",2723091.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWMWM,PROJCS["TMNEWMWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",30.99999999322522],PARAMETER["central_meridian",-107.833333329482],PARAMETER["scale_factor",0.999916667],PARAMETER["false_easting",830000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWYCF,PROJCS["TMNEWYCF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",-76.58333329999996],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYCF83,PROJCS["TMNEWYCF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.0000000115891],PARAMETER["central_meridian",-76.5833332864086],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",820208.3332],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYCM,PROJCS["TMNEWYCM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.0000000115891],PARAMETER["central_meridian",-76.5833333437044],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",250000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWYEF,PROJCS["TMNEWYEF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",-74.33333329999998],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYEF83,PROJCS["TMNEWYEF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.83333332238231],PARAMETER["central_meridian",-74.4999999979502],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",492124.9999],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYEM,PROJCS["TMNEWYEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",38.83333332238231],PARAMETER["central_meridian",-74.50000001513894],PARAMETER["scale_factor",0.999966667],PARAMETER["false_easting",150000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNEWYWF,PROJCS["TMNEWYWF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40],PARAMETER["central_meridian",-78.58333329999994],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYWF83,PROJCS["TMNEWYWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.0000000115891],PARAMETER["central_meridian",-78.58333328412327],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",1148291.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMNEWYWM,PROJCS["TMNEWYWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.0000000115891],PARAMETER["central_meridian",-78.58333334141905],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",350000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMNIGE,PROJCS["TMNIGE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4],PARAMETER["central_meridian",12.5],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",1110369.7],PARAMETER["false_northing",0]] +TMNIGM,PROJCS["TMNIGM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4],PARAMETER["central_meridian",8.499999999999998],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",670553.98],PARAMETER["false_northing",0]] +TMNIGW,PROJCS["TMNIGW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",4],PARAMETER["central_meridian",4.499999999999997],PARAMETER["scale_factor",0.99975],PARAMETER["false_easting",230738.26],PARAMETER["false_northing",0]] +TMNORAND,PROJCS["TMNORAND",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-79.5],PARAMETER["scale_factor",0.999861],PARAMETER["false_easting",304800],PARAMETER["false_northing",0]] +TMNSEA,PROJCS["TMNSEA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMNYEMEN,PROJCS["TMNYEMEN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",42],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMNZAMUR,PROJCS["TMNZAMUR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.68888888888888],PARAMETER["central_meridian",173.01],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZBLUF,PROJCS["TMNZBLUF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-46.60000000000002],PARAMETER["central_meridian",168.342777777778],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZBULL,PROJCS["TMNZBULL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.81055555555552],PARAMETER["central_meridian",171.5811111111108],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZBYPL,PROJCS["TMNZBYPL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-37.76111111111108],PARAMETER["central_meridian",176.4661111111112],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZCOLL,PROJCS["TMNZCOLL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.71472222222221],PARAMETER["central_meridian",172.6719444444446],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZGAWL,PROJCS["TMNZGAWL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.74861111111112],PARAMETER["central_meridian",171.3605555555558],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZGREY,PROJCS["TMNZGREY",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.33361111111111],PARAMETER["central_meridian",171.5497222222221],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZHAWK,PROJCS["TMNZHAWK",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.65083333333333],PARAMETER["central_meridian",176.6736111111113],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZHOKI,PROJCS["TMNZHOKI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-42.88611111111113],PARAMETER["central_meridian",170.979722222222],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZJACK,PROJCS["TMNZJACK",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.97777777777775],PARAMETER["central_meridian",168.6061111111109],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZKARA,PROJCS["TMNZKARA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.28972222222218],PARAMETER["central_meridian",172.1088888888891],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZLIND,PROJCS["TMNZLIND",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44.73499999999998],PARAMETER["central_meridian",169.4675],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZMARL,PROJCS["TMNZMARL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.54444444444444],PARAMETER["central_meridian",173.8019444444443],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZMTED,PROJCS["TMNZMTED",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-36.87972222222223],PARAMETER["central_meridian",174.7641666666668],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZMTNI,PROJCS["TMNZMTNI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.13277777777778],PARAMETER["central_meridian",168.3986111111113],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZMTPL,PROJCS["TMNZMTPL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.59055555555558],PARAMETER["central_meridian",172.7269444444442],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZMTYO,PROJCS["TMNZMTYO",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.56361111111111],PARAMETER["central_meridian",167.7386111111109],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZNELS,PROJCS["TMNZNELS",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.27444444444441],PARAMETER["central_meridian",173.2991666666666],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZNI,PROJCS["TMNZNI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-38.99999999999996],PARAMETER["central_meridian",175.5],PARAMETER["scale_factor",1],PARAMETER["false_easting",300000],PARAMETER["false_northing",400000],UNIT["unnamed",0.914398415]] +TMNZNTAI,PROJCS["TMNZNTAI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.86138888888888],PARAMETER["central_meridian",170.2824999999997],PARAMETER["scale_factor",0.99996],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZOBSE,PROJCS["TMNZOBSE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-45.81611111111108],PARAMETER["central_meridian",170.6283333333334],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZOKAR,PROJCS["TMNZOKAR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-43.11000000000002],PARAMETER["central_meridian",170.2608333333334],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZPOVE,PROJCS["TMNZPOVE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-38.62444444444446],PARAMETER["central_meridian",177.8855555555558],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZSI,PROJCS["TMNZSI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44],PARAMETER["central_meridian",171.5],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000],UNIT["unnamed",0.914398415]] +TMNZTARA,PROJCS["TMNZTARA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.13555555555555],PARAMETER["central_meridian",174.2277777777776],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZTIMA,PROJCS["TMNZTIMA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-44.40194444444444],PARAMETER["central_meridian",171.0572222222222],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZTUHI,PROJCS["TMNZTUHI",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-39.51222222222219],PARAMETER["central_meridian",175.64],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZWAIR,PROJCS["TMNZWAIR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.92527777777774],PARAMETER["central_meridian",175.6472222222223],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZWANG,PROJCS["TMNZWANG",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-40.24194444444444],PARAMETER["central_meridian",175.4880555555555],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMNZWELL,PROJCS["TMNZWELL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-41.30111111111108],PARAMETER["central_meridian",174.7763888888886],PARAMETER["scale_factor",1],PARAMETER["false_easting",400000],PARAMETER["false_northing",800000],UNIT["unnamed",1]] +TMOGADEN,PROJCS["TMOGADEN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",43],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMOMAN,PROJCS["TMOMAN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",54],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMOSGB,PROJCS["TMOSGB",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",49],PARAMETER["central_meridian",-1.999999999999966],PARAMETER["scale_factor",0.999601272],PARAMETER["false_easting",400000],PARAMETER["false_northing",-100000]] +TMOSIRL,PROJCS["TMOSIRL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",53.5],PARAMETER["central_meridian",-7.999999999999978],PARAMETER["scale_factor",1.000035],PARAMETER["false_easting",200000],PARAMETER["false_northing",250000]] +TMPARAG1,PROJCS["TMPARAG1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-62.99999999999995],PARAMETER["scale_factor",1],PARAMETER["false_easting",4500000],PARAMETER["false_northing",10002288.3]] +TMPARAG2,PROJCS["TMPARAG2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",10002288.3]] +TMPARAG3,PROJCS["TMPARAG3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-56.99999999999994],PARAMETER["scale_factor",1],PARAMETER["false_easting",6500000],PARAMETER["false_northing",10002288.3]] +TMPARAG4,PROJCS["TMPARAG4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",1],PARAMETER["false_easting",7500000],PARAMETER["false_northing",10002288.3]] +TMPERUBE,PROJCS["TMPERUBE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-4.670833299999996],PARAMETER["central_meridian",-81.33497219999994],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMPERUC,PROJCS["TMPERUC",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-9.49999999999998],PARAMETER["central_meridian",-75.99999999999996],PARAMETER["scale_factor",0.99933],PARAMETER["false_easting",720000],PARAMETER["false_northing",1039979.16]] +TMPERUE,PROJCS["TMPERUE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-9.49999999999998],PARAMETER["central_meridian",-70.49999999999996],PARAMETER["scale_factor",0.9995299],PARAMETER["false_easting",1324000],PARAMETER["false_northing",1040084.56]] +TMPERUW,PROJCS["TMPERUW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-5.999999999999955],PARAMETER["central_meridian",-80.49999999999996],PARAMETER["scale_factor",0.9998301],PARAMETER["false_easting",222000],PARAMETER["false_northing",1426834.74]] +TMPHIL1,PROJCS["TMPHIL1",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",117],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPHIL2,PROJCS["TMPHIL2",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",119],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPHIL3,PROJCS["TMPHIL3",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",121],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPHIL4,PROJCS["TMPHIL4",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",123],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPHIL5,PROJCS["TMPHIL5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",125],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPHIL6,PROJCS["TMPHIL6",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",127],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMPNG55S,PROJCS["TMPNG55S",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",147],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMPOLAND,PROJCS["TMPOLAND",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",18],PARAMETER["scale_factor",0.999923],PARAMETER["false_easting",6500000],PARAMETER["false_northing",0]] +TMPORT,PROJCS["TMPORT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",39.66666666666666],PARAMETER["central_meridian",-8.13190611111111],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",300000]] +TMPORTL,PROJCS["TMPORTL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",39.66666666666666],PARAMETER["central_meridian",1],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",300000]] +TMPORT_SHG73,PROJCS["TMPORT_SHG73",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",39.66666666666666],PARAMETER["central_meridian",-8.13190611111111],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMQATAR,PROJCS["TMQATAR",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",24.45],PARAMETER["central_meridian",51.2166666],PARAMETER["scale_factor",1],PARAMETER["false_easting",200000],PARAMETER["false_northing",300000]] +TMRHODIF,PROJCS["TMRHODIF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.0833333],PARAMETER["central_meridian",-71.49999999999996],PARAMETER["scale_factor",0.9999938],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMRHODIF83,PROJCS["TMRHODIF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.08333331264934],PARAMETER["central_meridian",-71.49999998991905],PARAMETER["scale_factor",0.99999375],PARAMETER["false_easting",328083.3333],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMRHODIM,PROJCS["TMRHODIM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",41.0833333],PARAMETER["central_meridian",-71.49999999999996],PARAMETER["scale_factor",0.99999375],PARAMETER["false_easting",100000],PARAMETER["false_northing",0]] +TMRT90,PROJCS["TMRT90",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15.80827799022624],PARAMETER["scale_factor",1],PARAMETER["false_easting",1500000],PARAMETER["false_northing",0]] +TMS114E,PROJCS["TMS114E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",114],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMS116E,PROJCS["TMS116E",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",116],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMSAM19S,PROJCS["TMSAM19S",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-69.00000000709966],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMSAM20S,PROJCS["TMSAM20S",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",-19.99999998860582],PARAMETER["central_meridian",-59.99999998873577],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMSAMER,PROJCS["TMSAMER",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["scale_factor",0.99],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMSAMERA,PROJCS["TMSAMERA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +TMSHABWA,PROJCS["TMSHABWA",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",45],PARAMETER["scale_factor",1],PARAMETER["false_easting",8500000],PARAMETER["false_northing",0]] +TMSHK167,PROJCS["TMSHK167",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",167],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMSHLCNS,PROJCS["TMSHLCNS",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSHLHOL,PROJCS["TMSHLHOL",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",5],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSHLYEM,PROJCS["TMSHLYEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",42],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSLO,PROJCS["TMSLO",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",500000],PARAMETER["false_northing",-5000000]] +TMSUDAN,PROJCS["TMSUDAN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",30],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSURNAM,PROJCS["TMSURNAM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSVIET,PROJCS["TMSVIET",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",106],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMSVNM,PROJCS["TMSVNM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",106],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMTIBU,PROJCS["TMTIBU",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",8.3847502],PARAMETER["central_meridian",-72.42263859999996],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",500000]] +TMTRUCST,PROJCS["TMTRUCST",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",55],PARAMETER["scale_factor",1],PARAMETER["false_easting",1200000],PARAMETER["false_northing",0]] +TMTUNIS,PROJCS["TMTUNIS",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",11],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMTURK,PROJCS["TMTURK",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",33],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMTYRRE,PROJCS["TMTYRRE",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",14],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMTYRRW,PROJCS["TMTYRRW",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",11],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMUNZ170,PROJCS["TMUNZ170",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",170],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMVERMTF,PROJCS["TMVERMTF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.5],PARAMETER["central_meridian",-72.5],PARAMETER["scale_factor",0.999964286],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMVERMTF83,PROJCS["TMVERMTF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.4999999944085],PARAMETER["central_meridian",-72.50000001742427],PARAMETER["scale_factor",0.999964286],PARAMETER["false_easting",1640416.666],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMVERMTM,PROJCS["TMVERMTM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",42.4999999944085],PARAMETER["central_meridian",-72.50000001742427],PARAMETER["scale_factor",0.999964286],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["unnamed",1]] +TMVICMAP,PROJCS["TMVICMAP",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",145],PARAMETER["scale_factor",1],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000]] +TMVIETS,PROJCS["TMVIETS",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",106],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMWTOECF83,LOCAL_CS["TMWTOECF83 - (unsupported)"] +TMWYO1FT,PROJCS["TMWYO1FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.6666667],PARAMETER["central_meridian",-105.1666667],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMWYO2FT,PROJCS["TMWYO2FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.6666667],PARAMETER["central_meridian",-107.3333333],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMWYO3FT,PROJCS["TMWYO3FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.6666667],PARAMETER["central_meridian",-108.75],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMWYO4FT,PROJCS["TMWYO4FT",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.6666667],PARAMETER["central_meridian",-110.0833333],PARAMETER["scale_factor",0.999941177],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMWYOE83,LOCAL_CS["TMWYOE83 - (unsupported)"] +TMWYOECM,PROJCS["TMWYOECM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.5],PARAMETER["central_meridian",-107.3333333],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",400000],PARAMETER["false_northing",100000]] +TMWYOEM,PROJCS["TMWYOEM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.5],PARAMETER["central_meridian",-105.1666667],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",200000],PARAMETER["false_northing",0]] +TMWYOWCF83,PROJCS["TMWYOWCF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.49999999669383],PARAMETER["central_meridian",-108.7500000261364],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",1968500],PARAMETER["false_northing",0],UNIT["US Foot",0.30480061]] +TMWYOWCM,PROJCS["TMWYOWCM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.5],PARAMETER["central_meridian",-108.75],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",600000],PARAMETER["false_northing",0]] +TMWYOWF83,PROJCS["TMWYOWF83",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.49999999669383],PARAMETER["central_meridian",-110.083333319749],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",2624666.666],PARAMETER["false_northing",328083.3333],UNIT["US Foot",0.30480061]] +TMWYOWM,PROJCS["TMWYOWM",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",40.49999999669383],PARAMETER["central_meridian",-110.083333319749],PARAMETER["scale_factor",0.9999375],PARAMETER["false_easting",800000],PARAMETER["false_northing",100000],UNIT["unnamed",1]] +TMYEMEN,PROJCS["TMYEMEN",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",42],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0]] +TMYUG5,PROJCS["TMYUG5",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",1],PARAMETER["false_easting",5500000],PARAMETER["false_northing",0]] +TMYUG5SF,PROJCS["TMYUG5SF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",5500000],PARAMETER["false_northing",0]] +TMYUG6,PROJCS["TMYUG6",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",18],PARAMETER["scale_factor",1],PARAMETER["false_easting",6500000],PARAMETER["false_northing",0]] +TMYUG6SF,PROJCS["TMYUG6SF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",18],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",6500000],PARAMETER["false_northing",0]] +TMYUG7,PROJCS["TMYUG7",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",21],PARAMETER["scale_factor",1],PARAMETER["false_easting",7500000],PARAMETER["false_northing",0]] +TMYUG7SF,PROJCS["TMYUG7SF",PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",21],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",7500000],PARAMETER["false_northing",0]] +VG120E,PROJCS["VG120E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",120],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG120W,PROJCS["VG120W",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-120],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG150E,PROJCS["VG150E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",150],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG150W,PROJCS["VG150W",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-150],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG180E,PROJCS["VG180E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",180],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG30E,PROJCS["VG30E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",30],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG30W,PROJCS["VG30W",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-29.99999999999995],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG60E,PROJCS["VG60E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",60],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG60W,PROJCS["VG60W",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-59.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG90E,PROJCS["VG90E",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",90],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG90EAST,PROJCS["VG90EAST",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",90],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG90W,PROJCS["VG90W",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VG90WEST,PROJCS["VG90WEST",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",-89.99999999999994],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VGSPHERE,PROJCS["VGSPHERE",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0]] +VGWORLD,PROJCS["VGWORLD",PROJECTION["VanDerGrinten"],PARAMETER["central_meridian",0],PARAMETER["false_easting",20000000],PARAMETER["false_northing",20000000]] +W3SPHERE,LOCAL_CS["W3SPHERE - (unsupported)"] +ACCRA,GEOGCS["ACCRA",DATUM["ACCRA",SPHEROID["WAROFFFT",20926201,296]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ADINDAN,GEOGCS["ADINDAN",DATUM["ADINDAN",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +AGD66,GEOGCS["AUSTRALIAN GEODETIC",DATUM["AGD66",SPHEROID["ANS",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +AGD66NTV,GEOGCS["AUSTRALIAN GEODETIC",DATUM["AGD66NTV",SPHEROID["ANS",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +AGD84,GEOGCS["AUSTRALIAN GEODETIC",DATUM["AGD84",SPHEROID["ANS",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +AINABD70,GEOGCS["AIN EL ABD (1970)",DATUM["AINABD70",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ARATU,GEOGCS["ARATU",DATUM["ARATU",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ARC1950,GEOGCS["NEW ARC 1950",DATUM["ARC1950",SPHEROID["CLA80RSA",6378249.145,293.4663077]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ARC1960,GEOGCS["NEW ARC 1960",DATUM["ARC1960",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BAHRAIN,GEOGCS["BAHRAIN (AIN EL ABD)",DATUM["BAHRAIN",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BATAVIA,GEOGCS["BATAVIA(JAKARTA)",DATUM["BATAVIA",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BEDUARAM,GEOGCS["BEDUARAM",DATUM["BEDUARAM",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BEIJING,GEOGCS["BEIJING 1954",DATUM["BEIJING",SPHEROID["KRAS1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BELG50,GEOGCS["BELGIUM 1950",DATUM["BELG50",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BERNNEW,GEOGCS["BERN",DATUM["BERNNEW",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +BOGOTA,GEOGCS["BOGOTA",DATUM["BOGOTA",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CAMACUPA,GEOGCS["CAMACUPA",DATUM["CAMACUPA",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CAPE,GEOGCS["CAPE DATUM",DATUM["CAPE",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CARTHAGE,GEOGCS["CARTHAGE",DATUM["CARTHAGE",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CHUA,GEOGCS["CHUA ASTRONOMIC",DATUM["CHUA",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CLRK1866,GEOGCS["NORTH AMERICAN 1927",DATUM["CLRK1866",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CMPOINCH,GEOGCS["CAMPO INCHAUSPE",DATUM["CMPOINCH",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +CORRALEG,GEOGCS["CORREGO ALEGRE",DATUM["CORRALEG",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +DEIR,GEOGCS["DEIR EZ ZOR",DATUM["DEIR",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ED50,GEOGCS["EUROPEAN DATUM 1950",DATUM["ED50",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ED50EGYT,GEOGCS["EUROPEAN DATUM 1950",DATUM["ED50EGYT",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ED50SVAL,GEOGCS["ED50 (SVALBARD)",DATUM["ED50SVAL",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +EDMCE75,GEOGCS["EUROPEAN [ED(MCE)75]",DATUM["EDMCE75",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +EGSA87,GEOGCS["GREEK DATUM (1989)",DATUM["EGSA87",SPHEROID["GRS80",6378137,298.2572236]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +EGYPT07,GEOGCS["EGYPT 1907",DATUM["EGYPT07",SPHEROID["HELM1906",6378200,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +EGYPT24,GEOGCS["NEW EGYPT 1930",DATUM["EGYPT24",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +EVVIETNM,GEOGCS["EVEREST-VIETNAM",DATUM["EVVIETNM",SPHEROID["EV37ADJ",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +FAHUD,GEOGCS["FAHUD",DATUM["FAHUD",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +FINKKJ,GEOGCS["FINKKJ (Finland)",DATUM["FINKKJ",SPHEROID["HAYF1910",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +GDA94,GEOGCS["GEOCENTRIC DATUM of AUSTRALIA",DATUM["GDA94",SPHEROID["GRS80",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +GEM6,GEOGCS["GEM6",DATUM["GEM6",SPHEROID[,6378144,298.257]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +HGRS87,GEOGCS["GREEK DATUM (1989)",DATUM["HGRS87",SPHEROID["GRS80",6378137,298.2572236]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +HK80,GEOGCS["HONG KONG 1980",DATUM["HK80",SPHEROID["HAYF1910",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +IND74,GEOGCS["INDONESIAN 1974",DATUM["IND74",SPHEROID["INDNAT",6378160,298.247]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +INDIAN54,GEOGCS["INDIAN 1954",DATUM["INDIAN54",SPHEROID["EV37ADJ",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +INDIAN60,GEOGCS["INDIAN 1960",DATUM["INDIAN60",SPHEROID["EVERST1830",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +INDIAN75,GEOGCS["INDIAN 1975",DATUM["INDIAN75",SPHEROID["EV37ADJ",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +ISRLURIM,GEOGCS["ISRAEL URIM",DATUM["ISRLURIM",SPHEROID["CLA80BEN",6378300.79,293.4663696]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +JA1875,GEOGCS["JAMAICA 1875",DATUM["JA1875",SPHEROID["CLA80IFT",20926202,293.4663077]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +JAD69,GEOGCS["JAMAICA 1969",DATUM["JAD69",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KKJ,GEOGCS["KKJ (Finland)",DATUM["KKJ",SPHEROID["HAYF1910",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KALIANPR,GEOGCS["KALIANPUR",DATUM["KALIANPR",SPHEROID["EVINDMTR",6377301.243,300.8017255]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KARBALA,GEOGCS["KARBALA",DATUM["KARBALA",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KERTAU,GEOGCS["KERTAU",DATUM["KERTAU",SPHEROID["EVMODMAL",6377304.063,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KOC,GEOGCS["KUWAIT OIL COMPANY",DATUM["KOC",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +KOREA,GEOGCS["KOREA TM",DATUM["KOREA",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LACANOA,GEOGCS["LA CANOA",DATUM["LACANOA",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LEIGON,GEOGCS["LEIGON",DATUM["LEIGON",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LISBOA,GEOGCS["LISBOA (LISBON)",DATUM["LISBOA",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LISBON,GEOGCS["LISBON (LISBOA)",DATUM["LISBON",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LISBONBESSEL,GEOGCS["LISBON (LISBOA)BESSEL",DATUM["LISBONBESSEL",SPHEROID["BESSELPORT",6377397.155,297.15281285]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +LUZON11,GEOGCS["LUZON 1911",DATUM["LUZON11",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MAHE71,GEOGCS["MAHE 1971",DATUM["MAHE71",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MAKASSAR,GEOGCS["MAKASSAR",DATUM["MAKASSAR",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MALONG79,GEOGCS["MALONGO 1979",DATUM["MALONG79",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MALONG90,GEOGCS["MALONGO 1990",DATUM["MALONG90",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MANOKA,GEOGCS["MANOKA",DATUM["MANOKA",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MELRICA,GEOGCS["MELRICA (PORTUGAL)",DATUM["MELRICA",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MGIBESS,GEOGCS["MGIBESS",DATUM["MGIBESS",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MINAA,GEOGCS["MINAA",DATUM["MINAA",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MONTEMAR,GEOGCS["MONTE MARIO",DATUM["MONTEMAR",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MONTROME,GEOGCS["MONTE MARIO",DATUM["MONTROME",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +MPORO,GEOGCS["M'PORALOKO",DATUM["MPORO",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD27,GEOGCS["NAD27",DATUM["North_American_Datum_1927",SPHEROID["Clarke 1866",6378206.4,294.978698213898,AUTHORITY["EPSG","7008"]],TOWGS84[-3,142,183,0,0,0,0],AUTHORITY["EPSG","6267"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AXIS["Lat",NORTH],AXIS["Long",EAST],AUTHORITY["EPSG","4267"]] +NAD27A74,GEOGCS["NORTH AMERICAN 1927 (Adjusted 1974)",DATUM["NAD27A74",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD27A76,GEOGCS["NORTH AMERICAN 1927 (Adjusted 1976)",DATUM["NAD27A76",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD27AFT,GEOGCS["NORTH AMERICAN 1927",DATUM["NAD27AFT",SPHEROID["CLA66AFT",20925832.16,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD27MOD,GEOGCS["NORTH AMERICAN 1927",DATUM["NAD27MOD",SPHEROID["CLA66MOD",20926631.53,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD27MTR,GEOGCS["NORTH AMERICAN 1927",DATUM["NAD27MTR",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAD83,GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AXIS["Lat",NORTH],AXIS["Long",EAST],AUTHORITY["EPSG","4269"]] +NAHRWAN,GEOGCS["NAHRWAN 1967",DATUM["NAHRWAN",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NAMIBIA,GEOGCS["NAMIBIA",DATUM["NAMIBIA",SPHEROID["BESS1841",6377483.865,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NTF,GEOGCS["N.T.F.",DATUM["NTF",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NTFPARG,GEOGCS["N.T.F",DATUM["NTFPARG",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NTFPARIS,GEOGCS["N.T.F",DATUM["NTFPARIS",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NWL9D,GEOGCS["NWL-9D",DATUM["NWL9D",SPHEROID["NWL9D",6378145,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NZGD49,GEOGCS["NEW ZEALAND 1949",DATUM["NZGD49",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +NZGD2000,GEOGCS["NEW ZEALAND 2000",DATUM["NZGD2000",SPHEROID["GRS80",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +OSGB36,GEOGCS["ORDNANCE SURVEY 1936",DATUM["OSGB36",SPHEROID["AIRY",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +OSGB70,GEOGCS["OSGB 1970 (SN)",DATUM["OSGB70",SPHEROID["AIRY",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +OSSN80,GEOGCS["OS (SN) 1980",DATUM["OSSN80",SPHEROID["AIRY",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PADANG,GEOGCS["PADANG 1884",DATUM["PADANG",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PALEST23,GEOGCS["PALESTINE 1923",DATUM["PALEST23",SPHEROID["CLA80BEN",6378300.79,293.4663696]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PLESSIS,GEOGCS["FRANCE 1822",DATUM["PLESSIS",SPHEROID["PLES1822",6376523,308.64]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +POTSDAM,GEOGCS["POTSDAM",DATUM["POTSDAM",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PRS92,GEOGCS["PHILIPPINES REFERENCE SYSTEM 1992",DATUM["PRS92",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PSAD56,GEOGCS["PSAD 1956",DATUM["PSAD56",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PTNOIRE,GEOGCS["POINT NOIRE (ASTRO)",DATUM["PTNOIRE",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PULKOVO,GEOGCS["PULKOVO 1942",DATUM["PULKOVO",SPHEROID["KRAS1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +QATAR,GEOGCS["QATAR",DATUM["QATAR",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +QATAR51,GEOGCS["QATAR GRID 1948",DATUM["QATAR51",SPHEROID["HELM1906",6378200,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +QORNOQ,GEOGCS["QORNOQ",DATUM["QORNOQ",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +RD,GEOGCS["RIJKDRIEHOEKSMETING",DATUM["RD",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +RGF93,GEOGCS["RESEAU GEODESIQUE FRANCAIS 1993",DATUM["RESEAU GEODESIQUE FRANCAIS 1993",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG024"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGF93G"]] +SAD69,GEOGCS["SOUTH AMERICAN 1969",DATUM["SAD69",SPHEROID["INT67",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +SECLV,GEOGCS["QASCO",DATUM["SECLV",SPHEROID["ANS",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +SLOVENIA,GEOGCS["SLOVENIAN DATUM",DATUM["SLOVENIA",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +SPHERE,GEOGCS["NOT SPECIFIED",DATUM["SPHERE",SPHEROID["SPHERE",6371000,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +SPHERE2,GEOGCS["NOT SPECIFIED",DATUM["SPHERE2",SPHEROID["SPHERE",6370997,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +SUDAN,GEOGCS["SUDAN DATUM",DATUM["SUDAN",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TANANAR,GEOGCS["TANANARIVE 1925",DATUM["TANANAR",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TANANPAR,GEOGCS["TANANARIVE 1925",DATUM["TANANPAR",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TIMBALAI,GEOGCS["TIMBALAI",DATUM["TIMBALAI",SPHEROID["EVERST67",6377298.556,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TIMBALFT,GEOGCS["TIMBALAI",DATUM["TIMBALFT",SPHEROID["EVIMPFT",20922931.8,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TM65,GEOGCS["TM65",DATUM["TM65",SPHEROID["AIRYMOD",6377340.189,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TM75,GEOGCS["TM75",DATUM["TM75",SPHEROID["AIRYMOD",6377340.189,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TOKYO,GEOGCS["TOKYO",DATUM["TOKYO",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +TRUCIAL,GEOGCS["TRUCIAL COAST 1948",DATUM["TRUCIAL",SPHEROID["HELM1906",6378200,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USAIRMOD,GEOGCS["NOT SPECIFIED",DATUM["USAIRMOD",SPHEROID["AIRYMOD",6377340.189,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USAIRY,GEOGCS["NOT SPECIFIED",DATUM["USAIRY",SPHEROID["AIRY",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USANS,GEOGCS["NOT SPECIFIED",DATUM["USANS",SPHEROID["ANS",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USBESMOD,GEOGCS["NOT SPECIFIED",DATUM["USBESMOD",SPHEROID["BESSMOD",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USBESS,GEOGCS["NOT SPECIFIED",DATUM["USBESS",SPHEROID["BESS1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC58MTR,GEOGCS["NOT SPECIFIED",DATUM["USC58MTR",SPHEROID["CLA58MTR",6378293.645,294.2606764]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC66AFT,GEOGCS["NOT SPECIFIED",DATUM["USC66AFT",SPHEROID["CLA66AFT",20925832.16,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC66MTR,GEOGCS["NOT SPECIFIED",DATUM["USC66MTR",SPHEROID["CLA66MTR",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC80IGN,GEOGCS["NOT SPECIFIED",DATUM["USC80IGN",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC80MOD,GEOGCS["NOT SPECIFIED",DATUM["USC80MOD",SPHEROID["CLA80MOD",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USC80RSA,GEOGCS["NOT SPECIFIED",DATUM["USC80RSA",SPHEROID["CLA80RSA",6378249.145,293.4663077]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USEV37AD,GEOGCS["NOT SPECIFIED",DATUM["USEV37AD",SPHEROID["EV37ADJ",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USEV67,GEOGCS["NOT SPECIFIED",DATUM["USEV67",SPHEROID["EVERST67",6377298.556,300.8017]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USGRS67,GEOGCS["NOT SPECIFIED",DATUM["USGRS67",SPHEROID["GRS67",6378160,298.2471674]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USGRS80,GEOGCS["NOT SPECIFIED",DATUM["USGRS80",SPHEROID["GRS80",6378137,298.2572221]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USHAYF10,GEOGCS["NOT SPECIFIED",DATUM["USHAYF10",SPHEROID["HAYF1910",6378388,296.9592625]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USHELM,GEOGCS["NOT SPECIFIED",DATUM["USHELM",SPHEROID["HELM1906",6378200,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USINT24,GEOGCS["NOT SPECIFIED",DATUM["USINT24",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USINT67,GEOGCS["NOT SPECIFIED",DATUM["USINT67",SPHEROID["INT67",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USKRAS40,GEOGCS["NOT SPECIFIED",DATUM["USKRAS40",SPHEROID["KRAS1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USNWL10D,GEOGCS["NOT SPECIFIED",DATUM["USNWL10D",SPHEROID["NWL10D",6378135,298.26]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USNWL9D,GEOGCS["NOT SPECIFIED",DATUM["USNWL9D",SPHEROID["NWL9D",6378145,298.25]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +USSPHERE,GEOGCS["NOT SPECIFIED",DATUM["USSPHERE",SPHEROID["SPHERE",6371000,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +WGS72BE,GEOGCS["BROADCAST EPHEMERIS",DATUM["WGS72BE",SPHEROID["NWL10D",6378135,298.26]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +WGS72DOD,GEOGCS["WGS 72 (DoD)",DATUM["WGS72DOD",SPHEROID["NWL10D",6378135,298.26]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +WGS84,GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AXIS["Lat",NORTH],AXIS["Long",EAST],AUTHORITY["EPSG","4326"]] +XIAN80,GEOGCS["XIAN 1980",DATUM["XIAN80",SPHEROID["GRS80",6378137,298.2572221]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +YEMHSL,GEOGCS["YEMEN HSL (LOCAL)",DATUM["YEMHSL",SPHEROID["INT24",6378388,297]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +YOFF2000,GEOGCS["YOFF2000",DATUM["YOFF2000",SPHEROID["CLA80IGN",6378249.2,293.4660213]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +VENUS,GEOGCS["VENUS MGN",DATUM["VENUS",SPHEROID["VENUS",6051920,1]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]] +PLESSIS,GEOGCS["ANCIENNE TRIANGULATION DES INGENIEURS",DATUM["ANCIENNE TRIANGULATION DES INGENIEURS GEOGRAPHES",SPHEROID["PLESSIS 1817",6376523.0000,308.6400000000000,AUTHORITY["IGNF","ELG017"]],TOWGS84[1127.0000,22.0000,57.0000,0,0,0,0],AUTHORITY["IGNF","REG008"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","ATIGEO"]] +CSG67,GEOGCS["GUYANE CSG67",DATUM["CSG 1967",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[-193.0660,236.9930,105.4470,0.4814,-0.8074,0.1276,1.564900],AUTHORITY["IGNF","REG407"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","CSG67GEO"]] +ED50FRA,GEOGCS["ED50 FRANCE",DATUM["ED50 FRANCE",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[-84.0000,-97.0000,-117.0000,0,0,0,0],AUTHORITY["IGNF","REG101"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","ED50G"]] +GUAD48,GEOGCS["GUADELOUPE STE ANNE",DATUM["GUADELOUPE STE ANNE",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[-472.2900,-5.6300,-304.1200,0.4362,-0.8374,0.2563,1.898400],AUTHORITY["IGNF","REG425"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","GUAD48GEO"]] +STMART,GEOGCS["GUADELOUPE FORT MARIGOT",DATUM["GUADELOUPE FORT MARIGOT",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[136.5960,248.1480,-429.7890,0,0,0,0],AUTHORITY["IGNF","REG426"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","GUADFM49GEO"]] +IGN72,GEOGCS["IGN 1972 GRANDE-TERRE / ILE DES PINS",DATUM["IGN72 GRANDE-TERRE / ILE DES PINS",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[-11.6400,-348.6000,291.6800,0,0,0,0],AUTHORITY["IGNF","REG548"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","IGN72GEO"]] +MART38,GEOGCS["MARTINIQUE FORT-DESAIX",DATUM["MARTINIQUE FOT-DESAIX",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[126.9260,547.9390,130.4090,-2.7867,5.1612,-0.8584,13.822650],AUTHORITY["IGNF","REG424"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","MART38GEO"]] +MCBN50,GEOGCS["MAYOTTE COMBANI",DATUM["Combani",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[-599.9280,-275.5520,-195.6650,-0.0835,-0.4715,0.0602,49.281400],AUTHORITY["IGNF","REG318"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","MAYO50GEO"]] +REUN47,GEOGCS["REUNION 1947",DATUM["REUNION-PITON-DES-NEIGES",SPHEROID["International-Hayford 1909",6378388.0000,297.0000000000000,AUTHORITY["IGNF","ELG001"]],TOWGS84[789.5240,-626.4860,-89.9040,0.6006,76.7946,-10.5788,-32.324100],AUTHORITY["IGNF","REG317"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","REUN47GEO"]] +RGFG95,GEOGCS["RESEAU GEODESIQUE FRANCAIS DE GUYANE 1995",DATUM["RESEAU GEODESIQUE FRANCAIS DE GUYANE 1995",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG486"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGFG95GEO"]] +RGM04,GEOGCS["RGM04 (RESEAU GEODESIQUE DE MAYOTTE 2004)",DATUM["RGM04 (RESEAU GEODESIQUE DE MAYOTTE 2004)",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG702"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGM04GEO"]] +RGNC,GEOGCS["RESEAU GEODESIQUE DE NOUVELLE-CALEDONIE",DATUM["RESEAU GEODESIQUE DE NOUVELLE-CALEDONIE (RGNC 1991)",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG547"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGNCGEO"]] +RGPF,GEOGCS["RGPF (RESEAU GEODESIQUE DE POLYNESIE FRANCAISE)",DATUM["RGPF (RESEAU GEODESIQUE DE POLYNESIE FRANCAISE)",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG032"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGPFGEO"]] +RGR92,GEOGCS["RESEAU GEODESIQUE DE LA REUNION 1992",DATUM["RESEAU GEODESIQUE DE LA REUNION 1992 (RGR92)",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG700"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGR92GEO"]] +RGSPM06,GEOGCS["SAINT-PIERRE-ET-MIQUELON (2006)",DATUM["ST PIERRE ET MIQUELON 2006",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG706"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGSPM06GEO"]] +RGTAAF07,GEOGCS["RESEAU GEODESIQUE DES TAAF (2007)",DATUM["RESEAU GEODESIQUE DES TERRES AUSTRALES ET ANTARCTIQUES FRANCAISES 2007",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG036"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","RGTAAF07"]]',' +RRAF,GEOGCS["RESEAU DE REFERENCE DES ANTILLES FRANCAISES (1988-1991)",DATUM["RESEAU DE REFERENCE DES ANTILLES FRANCAISES (1988-1991)",SPHEROID["IAG GRS 1980",6378137.0000,298.2572221010000,AUTHORITY["IGNF","ELG037"]],TOWGS84[0.0000,0.0000,0.0000,0,0,0,0],AUTHORITY["IGNF","REG495"]],PRIMEM["Greenwich",0.000000000,AUTHORITY["IGNF","LGO01"]],UNIT["degree",0.01745329251994330],AXIS["Longitude",EAST],AXIS["Latitude",NORTH],AUTHORITY["IGNF","WGS84RRAFGEO"]] +GEOPORTALANF,PROJCS["GEOPORTAIL - ANTILLES FRANCAISES",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9002"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",15.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALANF"]] +GEOPORTALASP,PROJCS["GEOPORTAIL - AMSTERDAM ET SAINT-PAUL",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9012"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-38.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALASP"]] +GEOPORTALCRZ,PROJCS["GEOPORTAIL - CROZET",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9011"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-46.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALCRZ"]] +GEOPORTALFXX,PROJCS["GEOPORTAIL - FRANCE METROPOLITAINE",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9001"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",46.500000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALFXX"]] +GEOPORTALGUF,PROJCS["GEOPORTAIL - GUYANE",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9003"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",4.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALGUF"]] +GEOPORTALKER,PROJCS["GEOPORTAIL - KERGUELEN",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9010"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-49.500000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALKER"]] +GEOPORTALMYT,PROJCS["GEOPORTAIL - MAYOTTE",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9005"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-12.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALMYT"]] +GEOPORTALNCL,PROJCS["GEOPORTAIL - NOUVELLE-CALEDONIE",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9007"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-22.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALNCL"]] +GEOPORTALPYF,PROJCS["GEOPORTAIL - POLYNESIE FRANCAISE",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9009"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-15.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALPYF"]] +GEOPORTALREU,PROJCS["GEOPORTAIL - REUNION ET DEPENDANCES",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9004"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-21.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALREU"]] +GEOPORTALSPM,PROJCS["GEOPORTAIL - SAINT-PIERRE ET MIQUELON",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9006"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",47.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALSPM"]] +GEOPORTALWLF,PROJCS["GEOPORTAIL - WALLIS ET FUTUNA",PROJECTION["Equirectangular",AUTHORITY["IGNF","PRC9008"]],PARAMETER["latitude_of_origin",0.000000000],PARAMETER["central_meridian",0.000000000],PARAMETER["standard_parallel_1",-14.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","GEOPORTALWLF"]] +MILLER,PROJCS["GEOPORTAIL - MONDE",PROJECTION["Miller_Cylindrical",AUTHORITY["IGNF","PRC9901"]],PARAMETER["central_meridian",0.000000000],PARAMETER["false_easting",0.000],PARAMETER["false_northing",0.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","MILLER"]] +GLABREUN,PROJCS["REUNION GAUSS LABORDE",PROJECTION["Gauss_Schreiber_Transverse_Mercator",AUTHORITY["IGNF","PRC0508"]],PARAMETER["latitude_of_origin",-21.116666667],PARAMETER["central_meridian",55.533333333],PARAMETER["scale_factor",1.00000000],PARAMETER["false_easting",160000.000],PARAMETER["false_northing",50000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","REUN47GAUSSL"]] +LAMBERTNC,PROJCS["LAMBERT NOUVELLE CALEDONIE",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC0149"]],PARAMETER["latitude_of_origin",-21.500000000],PARAMETER["central_meridian",166.000000000],PARAMETER["standard_parallel_1",-20.666666667],PARAMETER["standard_parallel_2",-22.333333333],PARAMETER["false_easting",400000.000],PARAMETER["false_northing",300000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGNCLAM"]] +LMCC42Z1,PROJCS["Projection conique conforme Zone 1",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8142"]],PARAMETER["latitude_of_origin",42.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",41.250000000],PARAMETER["standard_parallel_2",42.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",1200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC42"]] +LMCC43Z2,PROJCS["Projection conique conforme Zone 2",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8143"]],PARAMETER["latitude_of_origin",43.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",42.250000000],PARAMETER["standard_parallel_2",43.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",2200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC43"]] +LMCC44Z3,PROJCS["Projection conique conforme Zone 3",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8144"]],PARAMETER["latitude_of_origin",44.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",43.250000000],PARAMETER["standard_parallel_2",44.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",3200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC44"]] +LMCC45Z4,PROJCS["Projection conique conforme Zone 4",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8145"]],PARAMETER["latitude_of_origin",45.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",44.250000000],PARAMETER["standard_parallel_2",45.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",4200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC45"]] +LMCC46Z5,PROJCS["Projection conique conforme Zone 5",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8146"]],PARAMETER["latitude_of_origin",46.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",45.250000000],PARAMETER["standard_parallel_2",46.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",5200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC46"]] +LMCC47Z6,PROJCS["Projection conique conforme Zone 6",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8147"]],PARAMETER["latitude_of_origin",47.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",46.250000000],PARAMETER["standard_parallel_2",47.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",6200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC47"]] +LMCC48Z7,PROJCS["Projection conique conforme Zone 7",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8148"]],PARAMETER["latitude_of_origin",48.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",47.250000000],PARAMETER["standard_parallel_2",48.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",7200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC48"]] +LMCC49Z8,PROJCS["Projection conique conforme Zone 8",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8149"]],PARAMETER["latitude_of_origin",49.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",48.250000000],PARAMETER["standard_parallel_2",49.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",8200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC49"]] +LMCC50Z9,PROJCS["Projection conique conforme Zone 9",PROJECTION["Lambert_Conformal_Conic_2SP",AUTHORITY["IGNF","PRC8150"]],PARAMETER["latitude_of_origin",50.000000000],PARAMETER["central_meridian",3.000000000],PARAMETER["standard_parallel_1",49.250000000],PARAMETER["standard_parallel_2",50.750000000],PARAMETER["false_easting",1700000.000],PARAMETER["false_northing",9200000.000],UNIT["metre",1],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["IGNF","RGF93CC50"]] Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/th/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DemoMap.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/ManualShortcuts.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/ManualShortcuts.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/ManualShortcuts.wxi (revision 2866) @@ -0,0 +1,5 @@ + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_Wisconsin_extra.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_Wisconsin_extra.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_Wisconsin_extra.wkt (revision 2866) @@ -0,0 +1,144 @@ +103300,PROJCS["NAD_1983_HARN_WISCRS_Adams_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",147218.6942],PARAMETER["False_Northing",0.0037],PARAMETER["Central_Meridian",-90.0],PARAMETER["Scale_Factor",1.0000365285],PARAMETER["Latitude_Of_Origin",43.36666666666667],UNIT["Meter",1.0]] +103301,PROJCS["NAD_1983_HARN_WISCRS_Ashland_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",172821.9461],PARAMETER["False_Northing",0.0017],PARAMETER["Central_Meridian",-90.62222222222222],PARAMETER["Scale_Factor",1.0000495683],PARAMETER["Latitude_Of_Origin",45.70611111111111],UNIT["Meter",1.0]] +103302,PROJCS["NAD_1983_HARN_WISCRS_Barron_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",93150.0],PARAMETER["False_Northing",0.0029],PARAMETER["Central_Meridian",-91.85],PARAMETER["Scale_Factor",1.0000486665],PARAMETER["Latitude_Of_Origin",45.13333333333333],UNIT["Meter",1.0]] +103303,PROJCS["NAD_1983_HARN_WISCRS_Bayfield_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",228600.4575],PARAMETER["False_Northing",148551.4837],PARAMETER["Central_Meridian",-91.15277777777779],PARAMETER["Standard_Parallel_1",46.66964837722222],PARAMETER["Scale_Factor",1.0000331195],PARAMETER["Latitude_Of_Origin",46.66964837722222],UNIT["Meter",1.0]] +103304,PROJCS["NAD_1983_HARN_WISCRS_Brown_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",31600.0],PARAMETER["False_Northing",4600.0],PARAMETER["Central_Meridian",-88.0],PARAMETER["Scale_Factor",1.00002],PARAMETER["Latitude_Of_Origin",43.0],UNIT["Meter",1.0]] +103305,PROJCS["NAD_1983_HARN_WISCRS_Buffalo_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",175260.3502],PARAMETER["False_Northing",0.0048],PARAMETER["Central_Meridian",-91.79722222222222],PARAMETER["Scale_Factor",1.0000382778],PARAMETER["Latitude_Of_Origin",43.48138888888889],UNIT["Meter",1.0]] +103306,PROJCS["NAD_1983_HARN_WISCRS_Burnett_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",64008.1276],PARAMETER["False_Northing",59445.9043],PARAMETER["Central_Meridian",-92.45777777777778],PARAMETER["Standard_Parallel_1",45.89871486583333],PARAMETER["Scale_Factor",1.0000383841],PARAMETER["Latitude_Of_Origin",45.89871486583333],UNIT["Meter",1.0]] +103307,PROJCS["NAD_1983_HARN_WISCRS_Calumet_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",244754.8893],PARAMETER["False_Northing",0.0049],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Meter",1.0]] +103308,PROJCS["NAD_1983_HARN_WISCRS_Chippewa_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",60045.72],PARAMETER["False_Northing",44091.4346],PARAMETER["Central_Meridian",-91.29444444444444],PARAMETER["Standard_Parallel_1",44.97785689861112],PARAMETER["Scale_Factor",1.0000391127],PARAMETER["Latitude_Of_Origin",44.97785689861112],UNIT["Meter",1.0]] +103309,PROJCS["NAD_1983_HARN_WISCRS_Clark_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",199949.1989],PARAMETER["False_Northing",0.0086],PARAMETER["Central_Meridian",-90.70833333333334],PARAMETER["Scale_Factor",1.0000463003],PARAMETER["Latitude_Of_Origin",43.6],UNIT["Meter",1.0]] +103310,PROJCS["NAD_1983_HARN_WISCRS_Columbia_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",169164.3381],PARAMETER["False_Northing",111569.6134],PARAMETER["Central_Meridian",-89.39444444444445],PARAMETER["Standard_Parallel_1",43.46254664583333],PARAMETER["Scale_Factor",1.00003498],PARAMETER["Latitude_Of_Origin",43.46254664583333],UNIT["Meter",1.0]] +103311,PROJCS["NAD_1983_HARN_WISCRS_Crawford_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",113690.6274],PARAMETER["False_Northing",53703.1201],PARAMETER["Central_Meridian",-90.9388888888889],PARAMETER["Standard_Parallel_1",43.200055605],PARAMETER["Scale_Factor",1.0000349151],PARAMETER["Latitude_Of_Origin",43.200055605],UNIT["Meter",1.0]] +103312,PROJCS["NAD_1983_HARN_WISCRS_Dane_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",247193.2944],PARAMETER["False_Northing",146591.9896],PARAMETER["Central_Meridian",-89.42222222222223],PARAMETER["Standard_Parallel_1",43.0695160375],PARAMETER["Scale_Factor",1.0000384786],PARAMETER["Latitude_Of_Origin",43.0695160375],UNIT["Meter",1.0]] +103313,PROJCS["NAD_1983_HARN_WISCRS_Dodge_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",263347.7263],PARAMETER["False_Northing",0.0076],PARAMETER["Central_Meridian",-88.775],PARAMETER["Scale_Factor",1.0000346418],PARAMETER["Latitude_Of_Origin",41.47222222222222],UNIT["Meter",1.0]] +103314,PROJCS["NAD_1983_HARN_WISCRS_Door_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",158801.1176],PARAMETER["False_Northing",0.0023],PARAMETER["Central_Meridian",-87.27222222222223],PARAMETER["Scale_Factor",1.0000187521],PARAMETER["Latitude_Of_Origin",44.4],UNIT["Meter",1.0]] +103315,PROJCS["NAD_1983_HARN_WISCRS_Douglas_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",59131.3183],PARAMETER["False_Northing",0.0041],PARAMETER["Central_Meridian",-91.91666666666667],PARAMETER["Scale_Factor",1.0000385418],PARAMETER["Latitude_Of_Origin",45.88333333333333],UNIT["Meter",1.0]] +103316,PROJCS["NAD_1983_HARN_WISCRS_Dunn_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",51816.104],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-91.89444444444445],PARAMETER["Scale_Factor",1.0000410324],PARAMETER["Latitude_Of_Origin",44.40833333333333],UNIT["Meter",1.0]] +103317,PROJCS["NAD_1983_HARN_WISCRS_EauClaire_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",120091.4402],PARAMETER["False_Northing",91687.9239],PARAMETER["Central_Meridian",-91.28888888888889],PARAMETER["Standard_Parallel_1",45.87228112638889],PARAMETER["Scale_Factor",1.000035079],PARAMETER["Latitude_Of_Origin",45.87228112638889],UNIT["Meter",1.0]] +103318,PROJCS["NAD_1983_HARN_WISCRS_Florence_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",133502.6683],PARAMETER["False_Northing",0.0063],PARAMETER["Central_Meridian",-88.14166666666668],PARAMETER["Scale_Factor",1.0000552095],PARAMETER["Latitude_Of_Origin",45.43888888888888],UNIT["Meter",1.0]] +103319,PROJCS["NAD_1983_HARN_WISCRS_Fond_du_Lac_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",244754.8893],PARAMETER["False_Northing",0.0049],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Meter",1.0]] +103320,PROJCS["NAD_1983_HARN_WISCRS_Forest_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",275844.5533],PARAMETER["False_Northing",0.0157],PARAMETER["Central_Meridian",-88.63333333333334],PARAMETER["Scale_Factor",1.0000673004],PARAMETER["Latitude_Of_Origin",44.00555555555555],UNIT["Meter",1.0]] +103321,PROJCS["NAD_1983_HARN_WISCRS_Grant_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",242316.4841],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-90.8],PARAMETER["Scale_Factor",1.0000349452],PARAMETER["Latitude_Of_Origin",41.41111111111111],UNIT["Meter",1.0]] +103322,PROJCS["NAD_1983_HARN_WISCRS_Green_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",170078.7403],PARAMETER["False_Northing",45830.2947],PARAMETER["Central_Meridian",-89.83888888888889],PARAMETER["Standard_Parallel_1",42.63756227694444],PARAMETER["Scale_Factor",1.0000390487],PARAMETER["Latitude_Of_Origin",42.63756227694444],UNIT["Meter",1.0]] +103323,PROJCS["NAD_1983_HARN_WISCRS_GreenLake_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",150876.3018],PARAMETER["False_Northing",79170.7795],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",43.80700011777778],PARAMETER["Scale_Factor",1.0000344057],PARAMETER["Latitude_Of_Origin",43.80700011777778],UNIT["Meter",1.0]] +103324,PROJCS["NAD_1983_HARN_WISCRS_Iowa_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",113081.0261],PARAMETER["False_Northing",0.0045],PARAMETER["Central_Meridian",-90.16111111111111],PARAMETER["Scale_Factor",1.0000394961],PARAMETER["Latitude_Of_Origin",42.53888888888888],UNIT["Meter",1.0]] +103325,PROJCS["NAD_1983_HARN_WISCRS_Iron_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",220980.4419],PARAMETER["False_Northing",0.0085],PARAMETER["Central_Meridian",-90.25555555555556],PARAMETER["Scale_Factor",1.0000677153],PARAMETER["Latitude_Of_Origin",45.43333333333333],UNIT["Meter",1.0]] +103326,PROJCS["NAD_1983_HARN_WISCRS_Jackson_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",27000.0],PARAMETER["False_Northing",25000.0],PARAMETER["Central_Meridian",-90.84429651944444],PARAMETER["Scale_Factor",1.0000353],PARAMETER["Latitude_Of_Origin",44.25333512777778],UNIT["Meter",1.0]] +103327,PROJCS["NAD_1983_HARN_WISCRS_Jefferson_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",263347.7263],PARAMETER["False_Northing",0.0076],PARAMETER["Central_Meridian",-88.775],PARAMETER["Scale_Factor",1.0000346418],PARAMETER["Latitude_Of_Origin",41.47222222222222],UNIT["Meter",1.0]] +103328,PROJCS["NAD_1983_HARN_WISCRS_Juneau_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",147218.6942],PARAMETER["False_Northing",0.0037],PARAMETER["Central_Meridian",-90.0],PARAMETER["Scale_Factor",1.0000365285],PARAMETER["Latitude_Of_Origin",43.36666666666667],UNIT["Meter",1.0]] +103329,PROJCS["NAD_1983_HARN_WISCRS_Kenosha_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185928.3728],PARAMETER["False_Northing",0.0009],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Meter",1.0]] +103330,PROJCS["NAD_1983_HARN_WISCRS_Kewaunee_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",79857.7614],PARAMETER["False_Northing",0.0012],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Meter",1.0]] +103331,PROJCS["NAD_1983_HARN_WISCRS_LaCrosse_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",130454.6598],PARAMETER["False_Northing",0.0033],PARAMETER["Central_Meridian",-91.31666666666666],PARAMETER["Scale_Factor",1.0000319985],PARAMETER["Latitude_Of_Origin",43.45111111111111],UNIT["Meter",1.0]] +103332,PROJCS["NAD_1983_HARN_WISCRS_Lafayette_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",170078.7403],PARAMETER["False_Northing",45830.2947],PARAMETER["Central_Meridian",-89.83888888888889],PARAMETER["Standard_Parallel_1",42.63756227694444],PARAMETER["Scale_Factor",1.0000390487],PARAMETER["Latitude_Of_Origin",42.63756227694444],UNIT["Meter",1.0]] +103333,PROJCS["NAD_1983_HARN_WISCRS_Langlade_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",198425.197],PARAMETER["False_Northing",105279.7829],PARAMETER["Central_Meridian",-89.03333333333333],PARAMETER["Standard_Parallel_1",45.15423710527778],PARAMETER["Scale_Factor",1.0000627024],PARAMETER["Latitude_Of_Origin",45.15423710527778],UNIT["Meter",1.0]] +103334,PROJCS["NAD_1983_HARN_WISCRS_Lincoln_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",116129.0323],PARAMETER["False_Northing",0.0058],PARAMETER["Central_Meridian",-89.73333333333333],PARAMETER["Scale_Factor",1.0000599003],PARAMETER["Latitude_Of_Origin",44.84444444444445],UNIT["Meter",1.0]] +103335,PROJCS["NAD_1983_HARN_WISCRS_Manitowoc_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",79857.7614],PARAMETER["False_Northing",0.0012],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Meter",1.0]] +103336,PROJCS["NAD_1983_HARN_WISCRS_Marathon_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",74676.1493],PARAMETER["False_Northing",55049.2669],PARAMETER["Central_Meridian",-89.77],PARAMETER["Standard_Parallel_1",44.90090442361111],PARAMETER["Scale_Factor",1.000053289],PARAMETER["Latitude_Of_Origin",44.90090442361111],UNIT["Meter",1.0]] +103337,PROJCS["NAD_1983_HARN_WISCRS_Marinette_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",238658.8794],PARAMETER["False_Northing",0.0032],PARAMETER["Central_Meridian",-87.71111111111111],PARAMETER["Scale_Factor",1.0000234982],PARAMETER["Latitude_Of_Origin",44.69166666666666],UNIT["Meter",1.0]] +103338,PROJCS["NAD_1983_HARN_WISCRS_Marquette_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",150876.3018],PARAMETER["False_Northing",79170.7795],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",43.80700011777778],PARAMETER["Scale_Factor",1.0000344057],PARAMETER["Latitude_Of_Origin",43.80700011777778],UNIT["Meter",1.0]] +103339,PROJCS["NAD_1983_HARN_WISCRS_Menominee_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",105461.0121],PARAMETER["False_Northing",0.0029],PARAMETER["Central_Meridian",-88.41666666666667],PARAMETER["Scale_Factor",1.0000362499],PARAMETER["Latitude_Of_Origin",44.71666666666667],UNIT["Meter",1.0]] +103340,PROJCS["NAD_1983_HARN_WISCRS_Milwaukee_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185928.3728],PARAMETER["False_Northing",0.0009],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Meter",1.0]] +103341,PROJCS["NAD_1983_HARN_WISCRS_Monroe_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",204521.209],PARAMETER["False_Northing",121923.9861],PARAMETER["Central_Meridian",-90.64166666666668],PARAMETER["Standard_Parallel_1",44.00007392861111],PARAMETER["Scale_Factor",1.0000434122],PARAMETER["Latitude_Of_Origin",44.00007392861111],UNIT["Meter",1.0]] +103342,PROJCS["NAD_1983_HARN_WISCRS_Oconto_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",182880.3676],PARAMETER["False_Northing",0.0033],PARAMETER["Central_Meridian",-87.90833333333335],PARAMETER["Scale_Factor",1.0000236869],PARAMETER["Latitude_Of_Origin",44.39722222222222],UNIT["Meter",1.0]] +103343,PROJCS["NAD_1983_HARN_WISCRS_Oneida_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",70104.1401],PARAMETER["False_Northing",57588.0346],PARAMETER["Central_Meridian",-89.54444444444444],PARAMETER["Standard_Parallel_1",45.70422377027778],PARAMETER["Scale_Factor",1.0000686968],PARAMETER["Latitude_Of_Origin",45.70422377027778],UNIT["Meter",1.0]] +103344,PROJCS["NAD_1983_HARN_WISCRS_Outagamie_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",244754.8893],PARAMETER["False_Northing",0.0049],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Meter",1.0]] +103345,PROJCS["NAD_1983_HARN_WISCRS_Ozaukee_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185928.3728],PARAMETER["False_Northing",0.0009],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Meter",1.0]] +103346,PROJCS["NAD_1983_HARN_WISCRS_Pepin_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",167640.3354],PARAMETER["False_Northing",86033.0876],PARAMETER["Central_Meridian",-92.22777777777777],PARAMETER["Standard_Parallel_1",44.63614887194444],PARAMETER["Scale_Factor",1.0000362977],PARAMETER["Latitude_Of_Origin",44.63614887194444],UNIT["Meter",1.0]] +103347,PROJCS["NAD_1983_HARN_WISCRS_Pierce_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",167640.3354],PARAMETER["False_Northing",86033.0876],PARAMETER["Central_Meridian",-92.22777777777777],PARAMETER["Standard_Parallel_1",44.63614887194444],PARAMETER["Scale_Factor",1.0000362977],PARAMETER["Latitude_Of_Origin",44.63614887194444],UNIT["Meter",1.0]] +103348,PROJCS["NAD_1983_HARN_WISCRS_Polk_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",141732.2823],PARAMETER["False_Northing",0.0059],PARAMETER["Central_Meridian",-92.63333333333334],PARAMETER["Scale_Factor",1.0000433849],PARAMETER["Latitude_Of_Origin",44.66111111111111],UNIT["Meter",1.0]] +103349,PROJCS["NAD_1983_HARN_WISCRS_Portage_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",56388.1128],PARAMETER["False_Northing",50022.1874],PARAMETER["Central_Meridian",-89.5],PARAMETER["Standard_Parallel_1",44.41682397527777],PARAMETER["Scale_Factor",1.000039936],PARAMETER["Latitude_Of_Origin",44.41682397527777],UNIT["Meter",1.0]] +103350,PROJCS["NAD_1983_HARN_WISCRS_Price_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",227990.8546],PARAMETER["False_Northing",0.0109],PARAMETER["Central_Meridian",-90.48888888888889],PARAMETER["Scale_Factor",1.0000649554],PARAMETER["Latitude_Of_Origin",44.55555555555555],UNIT["Meter",1.0]] +103351,PROJCS["NAD_1983_HARN_WISCRS_Racine_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185928.3728],PARAMETER["False_Northing",0.0009],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Meter",1.0]] +103352,PROJCS["NAD_1983_HARN_WISCRS_Richland_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",202387.6048],PARAMETER["False_Northing",134255.4253],PARAMETER["Central_Meridian",-90.43055555555556],PARAMETER["Standard_Parallel_1",43.3223129275],PARAMETER["Scale_Factor",1.0000375653],PARAMETER["Latitude_Of_Origin",43.3223129275],UNIT["Meter",1.0]] +103353,PROJCS["NAD_1983_HARN_WISCRS_Rock_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",146304.2926],PARAMETER["False_Northing",0.0068],PARAMETER["Central_Meridian",-89.07222222222222],PARAMETER["Scale_Factor",1.0000337311],PARAMETER["Latitude_Of_Origin",41.94444444444444],UNIT["Meter",1.0]] +103354,PROJCS["NAD_1983_HARN_WISCRS_Rusk_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250546.1013],PARAMETER["False_Northing",0.0234],PARAMETER["Central_Meridian",-91.06666666666666],PARAMETER["Scale_Factor",1.0000495976],PARAMETER["Latitude_Of_Origin",43.91944444444444],UNIT["Meter",1.0]] +103355,PROJCS["NAD_1983_HARN_WISCRS_Sauk_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185623.5716],PARAMETER["False_Northing",0.0051],PARAMETER["Central_Meridian",-89.9],PARAMETER["Scale_Factor",1.0000373868],PARAMETER["Latitude_Of_Origin",42.81944444444445],UNIT["Meter",1.0]] +103356,PROJCS["NAD_1983_HARN_WISCRS_Sawyer_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",216713.2336],PARAMETER["False_Northing",120734.1631],PARAMETER["Central_Meridian",-91.11666666666666],PARAMETER["Standard_Parallel_1",45.90009913138888],PARAMETER["Scale_Factor",1.0000573461],PARAMETER["Latitude_Of_Origin",45.90009913138888],UNIT["Meter",1.0]] +103357,PROJCS["NAD_1983_HARN_WISCRS_Shawano_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",262433.3253],PARAMETER["False_Northing",0.0096],PARAMETER["Central_Meridian",-88.60555555555555],PARAMETER["Scale_Factor",1.000032144],PARAMETER["Latitude_Of_Origin",44.03611111111111],UNIT["Meter",1.0]] +103358,PROJCS["NAD_1983_HARN_WISCRS_Sheboygan_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",79857.7614],PARAMETER["False_Northing",0.0012],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Meter",1.0]] +103359,PROJCS["NAD_1983_HARN_WISCRS_St_Croix_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",165506.7302],PARAMETER["False_Northing",0.0103],PARAMETER["Central_Meridian",-92.63333333333334],PARAMETER["Scale_Factor",1.0000381803],PARAMETER["Latitude_Of_Origin",44.03611111111111],UNIT["Meter",1.0]] +103360,PROJCS["NAD_1983_HARN_WISCRS_Taylor_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",187147.5744],PARAMETER["False_Northing",107746.7522],PARAMETER["Central_Meridian",-90.48333333333333],PARAMETER["Standard_Parallel_1",45.17782208583333],PARAMETER["Scale_Factor",1.0000597566],PARAMETER["Latitude_Of_Origin",45.17782208583333],UNIT["Meter",1.0]] +103361,PROJCS["NAD_1983_HARN_WISCRS_Trempealeau_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",256946.9138],PARAMETER["False_Northing",0.0041],PARAMETER["Central_Meridian",-91.36666666666666],PARAMETER["Scale_Factor",1.0000361538],PARAMETER["Latitude_Of_Origin",43.16111111111111],UNIT["Meter",1.0]] +103362,PROJCS["NAD_1983_HARN_WISCRS_Vernon_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",222504.4451],PARAMETER["False_Northing",47532.0602],PARAMETER["Central_Meridian",-90.78333333333333],PARAMETER["Standard_Parallel_1",43.57503293972223],PARAMETER["Scale_Factor",1.0000408158],PARAMETER["Latitude_Of_Origin",43.57503293972223],UNIT["Meter",1.0]] +103363,PROJCS["NAD_1983_HARN_WISCRS_Vilas_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",134417.0689],PARAMETER["False_Northing",50337.1092],PARAMETER["Central_Meridian",-89.48888888888889],PARAMETER["Standard_Parallel_1",46.07784409055556],PARAMETER["Scale_Factor",1.0000730142],PARAMETER["Latitude_Of_Origin",46.07784409055556],UNIT["Meter",1.0]] +103364,PROJCS["NAD_1983_HARN_WISCRS_Walworth_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",232562.8651],PARAMETER["False_Northing",111088.2224],PARAMETER["Central_Meridian",-88.54166666666667],PARAMETER["Standard_Parallel_1",42.66946209694444],PARAMETER["Scale_Factor",1.0000367192],PARAMETER["Latitude_Of_Origin",42.66946209694444],UNIT["Meter",1.0]] +103365,PROJCS["NAD_1983_HARN_WISCRS_Washburn_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",234086.8682],PARAMETER["False_Northing",188358.6058],PARAMETER["Central_Meridian",-91.78333333333333],PARAMETER["Standard_Parallel_1",45.96121983333334],PARAMETER["Scale_Factor",1.0000475376],PARAMETER["Latitude_Of_Origin",45.96121983333334],UNIT["Meter",1.0]] +103366,PROJCS["NAD_1983_HARN_WISCRS_Washington_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",120091.4415],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-88.06388888888888],PARAMETER["Scale_Factor",1.00003738],PARAMETER["Latitude_Of_Origin",42.91805555555555],UNIT["Meter",1.0]] +103367,PROJCS["NAD_1983_HARN_WISCRS_Waukesha_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",208788.418],PARAMETER["False_Northing",0.0034],PARAMETER["Central_Meridian",-88.225],PARAMETER["Scale_Factor",1.0000346179],PARAMETER["Latitude_Of_Origin",42.56944444444445],UNIT["Meter",1.0]] +103368,PROJCS["NAD_1983_HARN_WISCRS_Waupaca_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",185013.9709],PARAMETER["False_Northing",0.007],PARAMETER["Central_Meridian",-88.81666666666666],PARAMETER["Scale_Factor",1.0000333645],PARAMETER["Latitude_Of_Origin",43.42027777777778],UNIT["Meter",1.0]] +103369,PROJCS["NAD_1983_HARN_WISCRS_Waushara_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",120091.4402],PARAMETER["False_Northing",45069.7587],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",44.11394404583334],PARAMETER["Scale_Factor",1.0000392096],PARAMETER["Latitude_Of_Origin",44.11394404583334],UNIT["Meter",1.0]] +103370,PROJCS["NAD_1983_HARN_WISCRS_Winnebago_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",244754.8893],PARAMETER["False_Northing",0.0049],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Meter",1.0]] +103371,PROJCS["NAD_1983_HARN_WISCRS_Wood_County_Meters",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",208483.6173],PARAMETER["False_Northing",134589.754],PARAMETER["Central_Meridian",-90.0],PARAMETER["Standard_Parallel_1",44.36259546944444],PARAMETER["Scale_Factor",1.0000421209],PARAMETER["Latitude_Of_Origin",44.36259546944444],UNIT["Meter",1.0]] +103400,PROJCS["NAD_1983_HARN_WISCRS_Adams_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",482999.999],PARAMETER["False_Northing",0.012],PARAMETER["Central_Meridian",-90.0],PARAMETER["Scale_Factor",1.0000365285],PARAMETER["Latitude_Of_Origin",43.36666666666667],UNIT["Foot_US",0.3048006096012192]] +103401,PROJCS["NAD_1983_HARN_WISCRS_Ashland_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",567000.001],PARAMETER["False_Northing",0.006],PARAMETER["Central_Meridian",-90.62222222222222],PARAMETER["Scale_Factor",1.0000495683],PARAMETER["Latitude_Of_Origin",45.70611111111111],UNIT["Foot_US",0.3048006096012192]] +103402,PROJCS["NAD_1983_HARN_WISCRS_Barron_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",305609.625],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-91.85],PARAMETER["Scale_Factor",1.0000486665],PARAMETER["Latitude_Of_Origin",45.13333333333333],UNIT["Foot_US",0.3048006096012192]] +103403,PROJCS["NAD_1983_HARN_WISCRS_Bayfield_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",750000.001],PARAMETER["False_Northing",487372.659],PARAMETER["Central_Meridian",-91.15277777777779],PARAMETER["Standard_Parallel_1",46.66964837722222],PARAMETER["Scale_Factor",1.0000331195],PARAMETER["Latitude_Of_Origin",46.66964837722222],UNIT["Foot_US",0.3048006096012192]] +103404,PROJCS["NAD_1983_HARN_WISCRS_Brown_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",103674.333],PARAMETER["False_Northing",15091.833],PARAMETER["Central_Meridian",-88.0],PARAMETER["Scale_Factor",1.00002],PARAMETER["Latitude_Of_Origin",43.0],UNIT["Foot_US",0.3048006096012192]] +103405,PROJCS["NAD_1983_HARN_WISCRS_Buffalo_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",574999.999],PARAMETER["False_Northing",0.016],PARAMETER["Central_Meridian",-91.79722222222222],PARAMETER["Scale_Factor",1.0000382778],PARAMETER["Latitude_Of_Origin",43.48138888888889],UNIT["Foot_US",0.3048006096012192]] +103406,PROJCS["NAD_1983_HARN_WISCRS_Burnett_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",209999.999],PARAMETER["False_Northing",195032.104],PARAMETER["Central_Meridian",-92.45777777777778],PARAMETER["Standard_Parallel_1",45.89871486583333],PARAMETER["Scale_Factor",1.0000383841],PARAMETER["Latitude_Of_Origin",45.89871486583333],UNIT["Foot_US",0.3048006096012192]] +103407,PROJCS["NAD_1983_HARN_WISCRS_Calumet_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",802999.999],PARAMETER["False_Northing",0.016],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Foot_US",0.3048006096012192]] +103408,PROJCS["NAD_1983_HARN_WISCRS_Chippewa_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",197000.0],PARAMETER["False_Northing",144656.648],PARAMETER["Central_Meridian",-91.29444444444444],PARAMETER["Standard_Parallel_1",44.97785689861112],PARAMETER["Scale_Factor",1.0000391127],PARAMETER["Latitude_Of_Origin",44.97785689861112],UNIT["Foot_US",0.3048006096012192]] +103409,PROJCS["NAD_1983_HARN_WISCRS_Clark_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",655999.997],PARAMETER["False_Northing",0.028],PARAMETER["Central_Meridian",-90.70833333333334],PARAMETER["Scale_Factor",1.0000463003],PARAMETER["Latitude_Of_Origin",43.6],UNIT["Foot_US",0.3048006096012192]] +103410,PROJCS["NAD_1983_HARN_WISCRS_Columbia_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",554999.999],PARAMETER["False_Northing",366041.307],PARAMETER["Central_Meridian",-89.39444444444445],PARAMETER["Standard_Parallel_1",43.46254664583333],PARAMETER["Scale_Factor",1.00003498],PARAMETER["Latitude_Of_Origin",43.46254664583333],UNIT["Foot_US",0.3048006096012192]] +103411,PROJCS["NAD_1983_HARN_WISCRS_Crawford_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",373000.0],PARAMETER["False_Northing",176190.987],PARAMETER["Central_Meridian",-90.9388888888889],PARAMETER["Standard_Parallel_1",43.200055605],PARAMETER["Scale_Factor",1.0000349151],PARAMETER["Latitude_Of_Origin",43.200055605],UNIT["Foot_US",0.3048006096012192]] +103412,PROJCS["NAD_1983_HARN_WISCRS_Dane_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",811000.0],PARAMETER["False_Northing",480943.886],PARAMETER["Central_Meridian",-89.42222222222223],PARAMETER["Standard_Parallel_1",43.0695160375],PARAMETER["Scale_Factor",1.0000384786],PARAMETER["Latitude_Of_Origin",43.0695160375],UNIT["Foot_US",0.3048006096012192]] +103413,PROJCS["NAD_1983_HARN_WISCRS_Dodge_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",863999.999],PARAMETER["False_Northing",0.025],PARAMETER["Central_Meridian",-88.775],PARAMETER["Scale_Factor",1.0000346418],PARAMETER["Latitude_Of_Origin",41.47222222222222],UNIT["Foot_US",0.3048006096012192]] +103414,PROJCS["NAD_1983_HARN_WISCRS_Door_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",521000.0],PARAMETER["False_Northing",0.008],PARAMETER["Central_Meridian",-87.27222222222223],PARAMETER["Scale_Factor",1.0000187521],PARAMETER["Latitude_Of_Origin",44.4],UNIT["Foot_US",0.3048006096012192]] +103415,PROJCS["NAD_1983_HARN_WISCRS_Douglas_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",194000.0],PARAMETER["False_Northing",0.013],PARAMETER["Central_Meridian",-91.91666666666667],PARAMETER["Scale_Factor",1.0000385418],PARAMETER["Latitude_Of_Origin",45.88333333333333],UNIT["Foot_US",0.3048006096012192]] +103416,PROJCS["NAD_1983_HARN_WISCRS_Dunn_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",170000.001],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-91.89444444444445],PARAMETER["Scale_Factor",1.0000410324],PARAMETER["Latitude_Of_Origin",44.40833333333333],UNIT["Foot_US",0.3048006096012192]] +103417,PROJCS["NAD_1983_HARN_WISCRS_EauClaire_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",394000.0],PARAMETER["False_Northing",300812.797],PARAMETER["Central_Meridian",-91.28888888888889],PARAMETER["Standard_Parallel_1",45.87228112638889],PARAMETER["Scale_Factor",1.000035079],PARAMETER["Latitude_Of_Origin",45.87228112638889],UNIT["Foot_US",0.3048006096012192]] +103418,PROJCS["NAD_1983_HARN_WISCRS_Florence_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",438000.004],PARAMETER["False_Northing",0.021],PARAMETER["Central_Meridian",-88.14166666666668],PARAMETER["Scale_Factor",1.0000552095],PARAMETER["Latitude_Of_Origin",45.43888888888888],UNIT["Foot_US",0.3048006096012192]] +103419,PROJCS["NAD_1983_HARN_WISCRS_Fond_du_Lac_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",802999.999],PARAMETER["False_Northing",0.016],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Foot_US",0.3048006096012192]] +103420,PROJCS["NAD_1983_HARN_WISCRS_Forest_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",905000.005],PARAMETER["False_Northing",0.052],PARAMETER["Central_Meridian",-88.63333333333334],PARAMETER["Scale_Factor",1.0000673004],PARAMETER["Latitude_Of_Origin",44.00555555555555],UNIT["Foot_US",0.3048006096012192]] +103421,PROJCS["NAD_1983_HARN_WISCRS_Grant_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",794999.998],PARAMETER["False_Northing",0.033],PARAMETER["Central_Meridian",-90.8],PARAMETER["Scale_Factor",1.0000349452],PARAMETER["Latitude_Of_Origin",41.41111111111111],UNIT["Foot_US",0.3048006096012192]] +103422,PROJCS["NAD_1983_HARN_WISCRS_Green_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",558000.0],PARAMETER["False_Northing",150361.559],PARAMETER["Central_Meridian",-89.83888888888889],PARAMETER["Standard_Parallel_1",42.63756227694444],PARAMETER["Scale_Factor",1.0000390487],PARAMETER["Latitude_Of_Origin",42.63756227694444],UNIT["Foot_US",0.3048006096012192]] +103423,PROJCS["NAD_1983_HARN_WISCRS_GreenLake_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",495000.0],PARAMETER["False_Northing",259746.132],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",43.80700011777778],PARAMETER["Scale_Factor",1.0000344057],PARAMETER["Latitude_Of_Origin",43.80700011777778],UNIT["Foot_US",0.3048006096012192]] +103424,PROJCS["NAD_1983_HARN_WISCRS_Iowa_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",371000.0],PARAMETER["False_Northing",0.015],PARAMETER["Central_Meridian",-90.16111111111111],PARAMETER["Scale_Factor",1.0000394961],PARAMETER["Latitude_Of_Origin",42.53888888888888],UNIT["Foot_US",0.3048006096012192]] +103425,PROJCS["NAD_1983_HARN_WISCRS_Iron_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",725000.0],PARAMETER["False_Northing",0.028],PARAMETER["Central_Meridian",-90.25555555555556],PARAMETER["Scale_Factor",1.0000677153],PARAMETER["Latitude_Of_Origin",45.43333333333333],UNIT["Foot_US",0.3048006096012192]] +103426,PROJCS["NAD_1983_HARN_WISCRS_Jackson_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",88582.5],PARAMETER["False_Northing",82020.833],PARAMETER["Central_Meridian",-90.84429651944444],PARAMETER["Scale_Factor",1.0000353],PARAMETER["Latitude_Of_Origin",44.25333512777778],UNIT["Foot_US",0.3048006096012192]] +103427,PROJCS["NAD_1983_HARN_WISCRS_Jefferson_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",863999.999],PARAMETER["False_Northing",0.025],PARAMETER["Central_Meridian",-88.775],PARAMETER["Scale_Factor",1.0000346418],PARAMETER["Latitude_Of_Origin",41.47222222222222],UNIT["Foot_US",0.3048006096012192]] +103428,PROJCS["NAD_1983_HARN_WISCRS_Juneau_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",482999.999],PARAMETER["False_Northing",0.012],PARAMETER["Central_Meridian",-90.0],PARAMETER["Scale_Factor",1.0000365285],PARAMETER["Latitude_Of_Origin",43.36666666666667],UNIT["Foot_US",0.3048006096012192]] +103429,PROJCS["NAD_1983_HARN_WISCRS_Kenosha_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",610000.003],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Foot_US",0.3048006096012192]] +103430,PROJCS["NAD_1983_HARN_WISCRS_Kewaunee_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",262000.006],PARAMETER["False_Northing",0.004],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Foot_US",0.3048006096012192]] +103431,PROJCS["NAD_1983_HARN_WISCRS_LaCrosse_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",427999.996],PARAMETER["False_Northing",0.011],PARAMETER["Central_Meridian",-91.31666666666666],PARAMETER["Scale_Factor",1.0000319985],PARAMETER["Latitude_Of_Origin",43.45111111111111],UNIT["Foot_US",0.3048006096012192]] +103432,PROJCS["NAD_1983_HARN_WISCRS_Lafayette_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",558000.0],PARAMETER["False_Northing",150361.559],PARAMETER["Central_Meridian",-89.83888888888889],PARAMETER["Standard_Parallel_1",42.63756227694444],PARAMETER["Scale_Factor",1.0000390487],PARAMETER["Latitude_Of_Origin",42.63756227694444],UNIT["Foot_US",0.3048006096012192]] +103433,PROJCS["NAD_1983_HARN_WISCRS_Langlade_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",651000.0],PARAMETER["False_Northing",345405.421],PARAMETER["Central_Meridian",-89.03333333333333],PARAMETER["Standard_Parallel_1",45.15423710527778],PARAMETER["Scale_Factor",1.0000627024],PARAMETER["Latitude_Of_Origin",45.15423710527778],UNIT["Foot_US",0.3048006096012192]] +103434,PROJCS["NAD_1983_HARN_WISCRS_Lincoln_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",381000.0],PARAMETER["False_Northing",0.019],PARAMETER["Central_Meridian",-89.73333333333333],PARAMETER["Scale_Factor",1.0000599003],PARAMETER["Latitude_Of_Origin",44.84444444444445],UNIT["Foot_US",0.3048006096012192]] +103435,PROJCS["NAD_1983_HARN_WISCRS_Manitowoc_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",262000.006],PARAMETER["False_Northing",0.004],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Foot_US",0.3048006096012192]] +103436,PROJCS["NAD_1983_HARN_WISCRS_Marathon_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",245000.0],PARAMETER["False_Northing",180607.47],PARAMETER["Central_Meridian",-89.77],PARAMETER["Standard_Parallel_1",44.90090442361111],PARAMETER["Scale_Factor",1.000053289],PARAMETER["Latitude_Of_Origin",44.90090442361111],UNIT["Foot_US",0.3048006096012192]] +103437,PROJCS["NAD_1983_HARN_WISCRS_Marinette_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",783000.007],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-87.71111111111111],PARAMETER["Scale_Factor",1.0000234982],PARAMETER["Latitude_Of_Origin",44.69166666666666],UNIT["Foot_US",0.3048006096012192]] +103438,PROJCS["NAD_1983_HARN_WISCRS_Marquette_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",495000.0],PARAMETER["False_Northing",259746.132],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",43.80700011777778],PARAMETER["Scale_Factor",1.0000344057],PARAMETER["Latitude_Of_Origin",43.80700011777778],UNIT["Foot_US",0.3048006096012192]] +103439,PROJCS["NAD_1983_HARN_WISCRS_Menominee_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",346000.004],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-88.41666666666667],PARAMETER["Scale_Factor",1.0000362499],PARAMETER["Latitude_Of_Origin",44.71666666666667],UNIT["Foot_US",0.3048006096012192]] +103440,PROJCS["NAD_1983_HARN_WISCRS_Milwaukee_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",610000.003],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Foot_US",0.3048006096012192]] +103441,PROJCS["NAD_1983_HARN_WISCRS_Monroe_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",671000.0],PARAMETER["False_Northing",400012.278],PARAMETER["Central_Meridian",-90.64166666666668],PARAMETER["Standard_Parallel_1",44.00007392861111],PARAMETER["Scale_Factor",1.0000434122],PARAMETER["Latitude_Of_Origin",44.00007392861111],UNIT["Foot_US",0.3048006096012192]] +103442,PROJCS["NAD_1983_HARN_WISCRS_Oconto_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000.006],PARAMETER["False_Northing",0.011],PARAMETER["Central_Meridian",-87.90833333333335],PARAMETER["Scale_Factor",1.0000236869],PARAMETER["Latitude_Of_Origin",44.39722222222222],UNIT["Foot_US",0.3048006096012192]] +103443,PROJCS["NAD_1983_HARN_WISCRS_Oneida_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",230000.0],PARAMETER["False_Northing",188936.744],PARAMETER["Central_Meridian",-89.54444444444444],PARAMETER["Standard_Parallel_1",45.70422377027778],PARAMETER["Scale_Factor",1.0000686968],PARAMETER["Latitude_Of_Origin",45.70422377027778],UNIT["Foot_US",0.3048006096012192]] +103444,PROJCS["NAD_1983_HARN_WISCRS_Outagamie_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",802999.999],PARAMETER["False_Northing",0.016],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Foot_US",0.3048006096012192]] +103445,PROJCS["NAD_1983_HARN_WISCRS_Ozaukee_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",610000.003],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Foot_US",0.3048006096012192]] +103446,PROJCS["NAD_1983_HARN_WISCRS_Pepin_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",550000.0],PARAMETER["False_Northing",282260.222],PARAMETER["Central_Meridian",-92.22777777777777],PARAMETER["Standard_Parallel_1",44.63614887194444],PARAMETER["Scale_Factor",1.0000362977],PARAMETER["Latitude_Of_Origin",44.63614887194444],UNIT["Foot_US",0.3048006096012192]] +103447,PROJCS["NAD_1983_HARN_WISCRS_Pierce_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",550000.0],PARAMETER["False_Northing",282260.222],PARAMETER["Central_Meridian",-92.22777777777777],PARAMETER["Standard_Parallel_1",44.63614887194444],PARAMETER["Scale_Factor",1.0000362977],PARAMETER["Latitude_Of_Origin",44.63614887194444],UNIT["Foot_US",0.3048006096012192]] +103448,PROJCS["NAD_1983_HARN_WISCRS_Polk_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",464999.996],PARAMETER["False_Northing",0.019],PARAMETER["Central_Meridian",-92.63333333333334],PARAMETER["Scale_Factor",1.0000433849],PARAMETER["Latitude_Of_Origin",44.66111111111111],UNIT["Foot_US",0.3048006096012192]] +103449,PROJCS["NAD_1983_HARN_WISCRS_Portage_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",185000.0],PARAMETER["False_Northing",164114.46],PARAMETER["Central_Meridian",-89.5],PARAMETER["Standard_Parallel_1",44.41682397527777],PARAMETER["Scale_Factor",1.000039936],PARAMETER["Latitude_Of_Origin",44.41682397527777],UNIT["Foot_US",0.3048006096012192]] +103450,PROJCS["NAD_1983_HARN_WISCRS_Price_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",747999.995],PARAMETER["False_Northing",0.036],PARAMETER["Central_Meridian",-90.48888888888889],PARAMETER["Scale_Factor",1.0000649554],PARAMETER["Latitude_Of_Origin",44.55555555555555],UNIT["Foot_US",0.3048006096012192]] +103451,PROJCS["NAD_1983_HARN_WISCRS_Racine_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",610000.003],PARAMETER["False_Northing",0.003],PARAMETER["Central_Meridian",-87.89444444444445],PARAMETER["Scale_Factor",1.0000260649],PARAMETER["Latitude_Of_Origin",42.21666666666667],UNIT["Foot_US",0.3048006096012192]] +103452,PROJCS["NAD_1983_HARN_WISCRS_Richland_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",664000.0],PARAMETER["False_Northing",440469.675],PARAMETER["Central_Meridian",-90.43055555555556],PARAMETER["Standard_Parallel_1",43.3223129275],PARAMETER["Scale_Factor",1.0000375653],PARAMETER["Latitude_Of_Origin",43.3223129275],UNIT["Foot_US",0.3048006096012192]] +103453,PROJCS["NAD_1983_HARN_WISCRS_Rock_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",480000.0],PARAMETER["False_Northing",0.022],PARAMETER["Central_Meridian",-89.07222222222222],PARAMETER["Scale_Factor",1.0000337311],PARAMETER["Latitude_Of_Origin",41.94444444444444],UNIT["Foot_US",0.3048006096012192]] +103454,PROJCS["NAD_1983_HARN_WISCRS_Rusk_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",822000.001],PARAMETER["False_Northing",0.077],PARAMETER["Central_Meridian",-91.06666666666666],PARAMETER["Scale_Factor",1.0000495976],PARAMETER["Latitude_Of_Origin",43.91944444444444],UNIT["Foot_US",0.3048006096012192]] +103455,PROJCS["NAD_1983_HARN_WISCRS_Sauk_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",609000.001],PARAMETER["False_Northing",0.017],PARAMETER["Central_Meridian",-89.9],PARAMETER["Scale_Factor",1.0000373868],PARAMETER["Latitude_Of_Origin",42.81944444444445],UNIT["Foot_US",0.3048006096012192]] +103456,PROJCS["NAD_1983_HARN_WISCRS_Sawyer_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",711000.001],PARAMETER["False_Northing",396108.667],PARAMETER["Central_Meridian",-91.11666666666666],PARAMETER["Standard_Parallel_1",45.90009913138888],PARAMETER["Scale_Factor",1.0000573461],PARAMETER["Latitude_Of_Origin",45.90009913138888],UNIT["Foot_US",0.3048006096012192]] +103457,PROJCS["NAD_1983_HARN_WISCRS_Shawano_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",861000.001],PARAMETER["False_Northing",0.031],PARAMETER["Central_Meridian",-88.60555555555555],PARAMETER["Scale_Factor",1.000032144],PARAMETER["Latitude_Of_Origin",44.03611111111111],UNIT["Foot_US",0.3048006096012192]] +103458,PROJCS["NAD_1983_HARN_WISCRS_Sheboygan_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",262000.006],PARAMETER["False_Northing",0.004],PARAMETER["Central_Meridian",-87.55],PARAMETER["Scale_Factor",1.0000233704],PARAMETER["Latitude_Of_Origin",43.26666666666667],UNIT["Foot_US",0.3048006096012192]] +103459,PROJCS["NAD_1983_HARN_WISCRS_St_Croix_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",542999.997],PARAMETER["False_Northing",0.034],PARAMETER["Central_Meridian",-92.63333333333334],PARAMETER["Scale_Factor",1.0000381803],PARAMETER["Latitude_Of_Origin",44.03611111111111],UNIT["Foot_US",0.3048006096012192]] +103460,PROJCS["NAD_1983_HARN_WISCRS_Taylor_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",614000.0],PARAMETER["False_Northing",353499.136],PARAMETER["Central_Meridian",-90.48333333333333],PARAMETER["Standard_Parallel_1",45.17782208583333],PARAMETER["Scale_Factor",1.0000597566],PARAMETER["Latitude_Of_Origin",45.17782208583333],UNIT["Foot_US",0.3048006096012192]] +103461,PROJCS["NAD_1983_HARN_WISCRS_Trempealeau_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",843000.0],PARAMETER["False_Northing",0.013],PARAMETER["Central_Meridian",-91.36666666666666],PARAMETER["Scale_Factor",1.0000361538],PARAMETER["Latitude_Of_Origin",43.16111111111111],UNIT["Foot_US",0.3048006096012192]] +103462,PROJCS["NAD_1983_HARN_WISCRS_Vernon_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",730000.0],PARAMETER["False_Northing",155944.768],PARAMETER["Central_Meridian",-90.78333333333333],PARAMETER["Standard_Parallel_1",43.57503293972223],PARAMETER["Scale_Factor",1.0000408158],PARAMETER["Latitude_Of_Origin",43.57503293972223],UNIT["Foot_US",0.3048006096012192]] +103463,PROJCS["NAD_1983_HARN_WISCRS_Vilas_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",441000.0],PARAMETER["False_Northing",165147.666],PARAMETER["Central_Meridian",-89.48888888888889],PARAMETER["Standard_Parallel_1",46.07784409055556],PARAMETER["Scale_Factor",1.0000730142],PARAMETER["Latitude_Of_Origin",46.07784409055556],UNIT["Foot_US",0.3048006096012192]] +103464,PROJCS["NAD_1983_HARN_WISCRS_Walworth_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",763000.0],PARAMETER["False_Northing",364461.943],PARAMETER["Central_Meridian",-88.54166666666667],PARAMETER["Standard_Parallel_1",42.66946209694444],PARAMETER["Scale_Factor",1.0000367192],PARAMETER["Latitude_Of_Origin",42.66946209694444],UNIT["Foot_US",0.3048006096012192]] +103465,PROJCS["NAD_1983_HARN_WISCRS_Washburn_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",768000.0],PARAMETER["False_Northing",617973.193],PARAMETER["Central_Meridian",-91.78333333333333],PARAMETER["Standard_Parallel_1",45.96121983333334],PARAMETER["Scale_Factor",1.0000475376],PARAMETER["Latitude_Of_Origin",45.96121983333334],UNIT["Foot_US",0.3048006096012192]] +103466,PROJCS["NAD_1983_HARN_WISCRS_Washington_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",394000.004],PARAMETER["False_Northing",0.01],PARAMETER["Central_Meridian",-88.06388888888888],PARAMETER["Scale_Factor",1.00003738],PARAMETER["Latitude_Of_Origin",42.91805555555555],UNIT["Foot_US",0.3048006096012192]] +103467,PROJCS["NAD_1983_HARN_WISCRS_Waukesha_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",685000.001],PARAMETER["False_Northing",0.011],PARAMETER["Central_Meridian",-88.225],PARAMETER["Scale_Factor",1.0000346179],PARAMETER["Latitude_Of_Origin",42.56944444444445],UNIT["Foot_US",0.3048006096012192]] +103468,PROJCS["NAD_1983_HARN_WISCRS_Waupaca_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",607000.003],PARAMETER["False_Northing",0.023],PARAMETER["Central_Meridian",-88.81666666666666],PARAMETER["Scale_Factor",1.0000333645],PARAMETER["Latitude_Of_Origin",43.42027777777778],UNIT["Foot_US",0.3048006096012192]] +103469,PROJCS["NAD_1983_HARN_WISCRS_Waushara_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",394000.0],PARAMETER["False_Northing",147866.367],PARAMETER["Central_Meridian",-89.24166666666667],PARAMETER["Standard_Parallel_1",44.11394404583334],PARAMETER["Scale_Factor",1.0000392096],PARAMETER["Latitude_Of_Origin",44.11394404583334],UNIT["Foot_US",0.3048006096012192]] +103470,PROJCS["NAD_1983_HARN_WISCRS_Winnebago_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",802999.999],PARAMETER["False_Northing",0.016],PARAMETER["Central_Meridian",-88.5],PARAMETER["Scale_Factor",1.0000286569],PARAMETER["Latitude_Of_Origin",42.71944444444445],UNIT["Foot_US",0.3048006096012192]] +103471,PROJCS["NAD_1983_HARN_WISCRS_Wood_County_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",684000.001],PARAMETER["False_Northing",441566.551],PARAMETER["Central_Meridian",-90.0],PARAMETER["Standard_Parallel_1",44.36259546944444],PARAMETER["Scale_Factor",1.0000421209],PARAMETER["Latitude_Of_Origin",44.36259546944444],UNIT["Foot_US",0.3048006096012192]] Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/ja-JP/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Ionic.Zip.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Ionic.Zip.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Ionic.Zip.xml (revision 2866) @@ -0,0 +1,18132 @@ + + + + Ionic.Zip + + + + + An enum that specifies the source of the ZipEntry. + + + + + Default value. Invalid on a bonafide ZipEntry. + + + + + The entry was instantiated by calling AddFile() or another method that + added an entry from the filesystem. + + + + + The entry was instantiated via or + . + + + + + The ZipEntry was instantiated by reading a zipfile. + + + + + The content for the ZipEntry will be or was provided by the WriteDelegate. + + + + + The content for the ZipEntry will be obtained from the stream dispensed by the OpenDelegate. + The entry was instantiated via . + + + + + The content for the ZipEntry will be or was obtained from a ZipOutputStream. + + + + + Provides a stream metaphor for generating zip files. + + + + + This class writes zip files, as defined in the specification + for zip files described by PKWare. The compression for this + implementation is provided by a managed-code version of Zlib, included with + DotNetZip in the classes in the Ionic.Zlib namespace. + + + + This class provides an alternative programming model to the one enabled by the + class. Use this when creating zip files, as an + alternative to the class, when you would like to use a + Stream type to write the zip file. + + + + Both the ZipOutputStream class and the ZipFile class can be used + to create zip files. Both of them support many of the common zip features, + including Unicode, different compression levels, and ZIP64. They provide + very similar performance when creating zip files. + + + + The ZipFile class is generally easier to use than + ZipOutputStream and should be considered a higher-level interface. For + example, when creating a zip file via calls to the PutNextEntry() and + Write() methods on the ZipOutputStream class, the caller is + responsible for opening the file, reading the bytes from the file, writing + those bytes into the ZipOutputStream, setting the attributes on the + ZipEntry, and setting the created, last modified, and last accessed + timestamps on the zip entry. All of these things are done automatically by a + call to ZipFile.AddFile(). + For this reason, the ZipOutputStream is generally recommended for use + only when your application emits arbitrary data, not necessarily data from a + filesystem file, directly into a zip file, and does so using a Stream + metaphor. + + + + Aside from the differences in programming model, there are other + differences in capability between the two classes. + + + + + ZipFile can be used to read and extract zip files, in addition to + creating zip files. ZipOutputStream cannot read zip files. If you want + to use a stream to read zip files, check out the class. + + + + ZipOutputStream does not support the creation of segmented or spanned + zip files. + + + + ZipOutputStream cannot produce a self-extracting archive. + + + + + Be aware that the ZipOutputStream class implements the interface. In order for + ZipOutputStream to produce a valid zip file, you use use it within + a using clause (Using in VB), or call the Dispose() method + explicitly. See the examples for how to employ a using clause. + + + + Also, a note regarding compression performance: On the desktop .NET + Framework, DotNetZip can use a multi-threaded compression implementation + that provides significant speed increases on large files, over 300k or so, + at the cost of increased memory use at runtime. (The output of the + compression is almost exactly the same size). But, the multi-threaded + approach incurs a performance hit on smaller files. There's no way for the + ZipOutputStream to know whether parallel compression will be beneficial, + because the ZipOutputStream does not know how much data you will write + through the stream. You may wish to set the property to zero, if you are compressing + large files through ZipOutputStream. This will cause parallel + compression to be used, always. + + + + + + Create a ZipOutputStream, wrapping an existing stream. + + + + + The class is generally easier to use when creating + zip files. The ZipOutputStream offers a different metaphor for creating a + zip file, based on the class. + + + + + + The stream to wrap. It must be writable. This stream will be closed at + the time the ZipOutputStream is closed. + + + + + This example shows how to create a zip file, using the + ZipOutputStream class. + + + private void Zipup() + { + if (filesToZip.Count == 0) + { + System.Console.WriteLine("Nothing to do."); + return; + } + + using (var raw = File.Open(_outputFileName, FileMode.Create, FileAccess.ReadWrite )) + { + using (var output= new ZipOutputStream(raw)) + { + output.Password = "VerySecret!"; + output.Encryption = EncryptionAlgorithm.WinZipAes256; + + foreach (string inputFileName in filesToZip) + { + System.Console.WriteLine("file: {0}", inputFileName); + + output.PutNextEntry(inputFileName); + using (var input = File.Open(inputFileName, FileMode.Open, FileAccess.Read, FileShare.Read | FileShare.Write )) + { + byte[] buffer= new byte[2048]; + int n; + while ((n= input.Read(buffer,0,buffer.Length)) > 0) + { + output.Write(buffer,0,n); + } + } + } + } + } + } + + + + Private Sub Zipup() + Dim outputFileName As String = "XmlData.zip" + Dim filesToZip As String() = Directory.GetFiles(".", "*.xml") + If (filesToZip.Length = 0) Then + Console.WriteLine("Nothing to do.") + Else + Using raw As FileStream = File.Open(outputFileName, FileMode.Create, FileAccess.ReadWrite) + Using output As ZipOutputStream = New ZipOutputStream(raw) + output.Password = "VerySecret!" + output.Encryption = EncryptionAlgorithm.WinZipAes256 + Dim inputFileName As String + For Each inputFileName In filesToZip + Console.WriteLine("file: {0}", inputFileName) + output.PutNextEntry(inputFileName) + Using input As FileStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite) + Dim n As Integer + Dim buffer As Byte() = New Byte(2048) {} + Do While (n = input.Read(buffer, 0, buffer.Length) > 0) + output.Write(buffer, 0, n) + Loop + End Using + Next + End Using + End Using + End If + End Sub + + + + + + Create a ZipOutputStream that writes to a filesystem file. + + + + The class is generally easier to use when creating + zip files. The ZipOutputStream offers a different metaphor for creating a + zip file, based on the class. + + + + The name of the zip file to create. + + + + + This example shows how to create a zip file, using the + ZipOutputStream class. + + + private void Zipup() + { + if (filesToZip.Count == 0) + { + System.Console.WriteLine("Nothing to do."); + return; + } + + using (var output= new ZipOutputStream(outputFileName)) + { + output.Password = "VerySecret!"; + output.Encryption = EncryptionAlgorithm.WinZipAes256; + + foreach (string inputFileName in filesToZip) + { + System.Console.WriteLine("file: {0}", inputFileName); + + output.PutNextEntry(inputFileName); + using (var input = File.Open(inputFileName, FileMode.Open, FileAccess.Read, + FileShare.Read | FileShare.Write )) + { + byte[] buffer= new byte[2048]; + int n; + while ((n= input.Read(buffer,0,buffer.Length)) > 0) + { + output.Write(buffer,0,n); + } + } + } + } + } + + + + Private Sub Zipup() + Dim outputFileName As String = "XmlData.zip" + Dim filesToZip As String() = Directory.GetFiles(".", "*.xml") + If (filesToZip.Length = 0) Then + Console.WriteLine("Nothing to do.") + Else + Using output As ZipOutputStream = New ZipOutputStream(outputFileName) + output.Password = "VerySecret!" + output.Encryption = EncryptionAlgorithm.WinZipAes256 + Dim inputFileName As String + For Each inputFileName In filesToZip + Console.WriteLine("file: {0}", inputFileName) + output.PutNextEntry(inputFileName) + Using input As FileStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite) + Dim n As Integer + Dim buffer As Byte() = New Byte(2048) {} + Do While (n = input.Read(buffer, 0, buffer.Length) > 0) + output.Write(buffer, 0, n) + Loop + End Using + Next + End Using + End If + End Sub + + + + + + Create a ZipOutputStream. + + + + See the documentation for the ZipOutputStream(Stream) + constructor for an example. + + + + The stream to wrap. It must be writable. + + + + true if the application would like the stream + to remain open after the ZipOutputStream has been closed. + + + + Provides a string representation of the instance. + + + This can be useful for debugging purposes. + + + a string representation of the instance. + + + + Returns true if an entry by the given name has already been written + to the ZipOutputStream. + + + + The name of the entry to scan for. + + + + true if an entry by the given name has already been written. + + + + + Write the data from the buffer to the stream. + + + + As the application writes data into this stream, the data may be + compressed and encrypted before being written out to the underlying + stream, depending on the settings of the + and the properties. + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Specify the name of the next entry that will be written to the zip file. + + + + + Call this method just before calling , to + specify the name of the entry that the next set of bytes written to + the ZipOutputStream belongs to. All subsequent calls to Write, + until the next call to PutNextEntry, + will be inserted into the named entry in the zip file. + + + + If the used in PutNextEntry() ends in + a slash, then the entry added is marked as a directory. Because directory + entries do not contain data, a call to Write(), before an + intervening additional call to PutNextEntry(), will throw an + exception. + + + + If you don't call Write() between two calls to + PutNextEntry(), the first entry is inserted into the zip file as a + file of zero size. This may be what you want. + + + + Because PutNextEntry() closes out the prior entry, if any, this + method may throw if there is a problem with the prior entry. + + + + This method returns the ZipEntry. You can modify public properties + on the ZipEntry, such as , , and so on, until the first call to + ZipOutputStream.Write(), or until the next call to + PutNextEntry(). If you modify the ZipEntry after + having called Write(), you may get a runtime exception, or you may + silently get an invalid zip archive. + + + + + + + This example shows how to create a zip file, using the + ZipOutputStream class. + + + private void Zipup() + { + using (FileStream fs raw = File.Open(_outputFileName, FileMode.Create, FileAccess.ReadWrite )) + { + using (var output= new ZipOutputStream(fs)) + { + output.Password = "VerySecret!"; + output.Encryption = EncryptionAlgorithm.WinZipAes256; + output.PutNextEntry("entry1.txt"); + byte[] buffer= System.Text.Encoding.ASCII.GetBytes("This is the content for entry #1."); + output.Write(buffer,0,buffer.Length); + output.PutNextEntry("entry2.txt"); // this will be zero length + output.PutNextEntry("entry3.txt"); + buffer= System.Text.Encoding.ASCII.GetBytes("This is the content for entry #3."); + output.Write(buffer,0,buffer.Length); + } + } + } + + + + + The name of the entry to be added, including any path to be used + within the zip file. + + + + The ZipEntry created. + + + + + + Dispose the stream + + + + + This method writes the Zip Central directory, then closes the stream. The + application must call Dispose() (or Close) in order to produce a valid zip file. + + + + Typically the application will call Dispose() implicitly, via a using + statement in C#, or a Using statement in VB. + + + + + set this to true, always. + + + + This is a no-op. + + + + + This method always throws a NotSupportedException. + + ignored + ignored + ignored + nothing + + + + This method always throws a NotSupportedException. + + ignored + ignored + nothing + + + + This method always throws a NotSupportedException. + + ignored + + + + Sets the password to be used on the ZipOutputStream instance. + + + + + + When writing a zip archive, this password is applied to the entries, not + to the zip archive itself. It applies to any ZipEntry subsequently + written to the ZipOutputStream. + + + + Using a password does not encrypt or protect the "directory" of the + archive - the list of entries contained in the archive. If you set the + Password property, the password actually applies to individual + entries that are added to the archive, subsequent to the setting of this + property. The list of filenames in the archive that is eventually created + will appear in clear text, but the contents of the individual files are + encrypted. This is how Zip encryption works. + + + + If you set this property, and then add a set of entries to the archive via + calls to PutNextEntry, then each entry is encrypted with that + password. You may also want to change the password between adding + different entries. If you set the password, add an entry, then set the + password to null (Nothing in VB), and add another entry, the + first entry is encrypted and the second is not. + + + + When setting the Password, you may also want to explicitly set the property, to specify how to encrypt the entries added + to the ZipFile. If you set the Password to a non-null value and do not + set , then PKZip 2.0 ("Weak") encryption is used. + This encryption is relatively weak but is very interoperable. If + you set the password to a null value (Nothing in VB), + Encryption is reset to None. + + + + Special case: if you wrap a ZipOutputStream around a non-seekable stream, + and use encryption, and emit an entry of zero bytes, the Close() or + PutNextEntry() following the entry will throw an exception. + + + + + + + The Encryption to use for entries added to the ZipOutputStream. + + + + + The specified Encryption is applied to the entries subsequently + written to the ZipOutputStream instance. + + + + If you set this to something other than + EncryptionAlgorithm.None, you will also need to set the + to a non-null, non-empty value in + order to actually get encryption on the entry. + + + + + ZipOutputStream.Password + ZipEntry.Encryption + + + + Size of the work buffer to use for the ZLIB codec during compression. + + + + Setting this may affect performance. For larger files, setting this to a + larger size may improve performance, but I'm not sure. Sorry, I don't + currently have good recommendations on how to set it. You can test it if + you like. + + + + + The compression strategy to use for all entries. + + + + Set the Strategy used by the ZLIB-compatible compressor, when compressing + data for the entries in the zip archive. Different compression strategies + work better on different sorts of data. The strategy parameter can affect + the compression ratio and the speed of compression but not the correctness + of the compresssion. For more information see . + + + + + The type of timestamp attached to the ZipEntry. + + + + Set this in order to specify the kind of timestamp that should be emitted + into the zip file for each entry. + + + + + Sets the compression level to be used for entries subsequently added to + the zip archive. + + + + + Varying the compression level used on entries can affect the + size-vs-speed tradeoff when compression and decompressing data streams + or files. + + + + As with some other properties on the ZipOutputStream class, like , and , + setting this property on a ZipOutputStream + instance will cause the specified CompressionLevel to be used on all + items that are subsequently added to the + ZipOutputStream instance. + + + + If you do not set this property, the default compression level is used, + which normally gives a good balance of compression efficiency and + compression speed. In some tests, using BestCompression can + double the time it takes to compress, while delivering just a small + increase in compression efficiency. This behavior will vary with the + type of data you compress. If you are in doubt, just leave this setting + alone, and accept the default. + + + + + + The compression method used on each entry added to the ZipOutputStream. + + + + + A comment attached to the zip archive. + + + + + + The application sets this property to specify a comment to be embedded + into the generated zip archive. + + + + According to PKWARE's + zip specification, the comment is not encrypted, even if there is a + password set on the zip file. + + + + The specification does not describe how to indicate the encoding used + on a comment string. Many "compliant" zip tools and libraries use + IBM437 as the code page for comments; DotNetZip, too, follows that + practice. On the other hand, there are situations where you want a + Comment to be encoded with something else, for example using code page + 950 "Big-5 Chinese". To fill that need, DotNetZip will encode the + comment following the same procedure it follows for encoding + filenames: (a) if is + Never, it uses the default encoding (IBM437). (b) if is Always, it always uses the + alternate encoding (). (c) if is AsNecessary, it uses the + alternate encoding only if the default encoding is not sufficient for + encoding the comment - in other words if decoding the result does not + produce the original string. This decision is taken at the time of + the call to ZipFile.Save(). + + + + + + + Specify whether to use ZIP64 extensions when saving a zip archive. + + + + + The default value for the property is . is + safest, in the sense that you will not get an Exception if a + pre-ZIP64 limit is exceeded. + + + + You must set this property before calling Write(). + + + + + + + Indicates whether ZIP64 extensions were used when saving the zip archive. + + + + The value is defined only after the ZipOutputStream has been closed. + + + + + Whether the ZipOutputStream should use case-insensitive comparisons when + checking for uniqueness of zip entries. + + + + + Though the zip specification doesn't prohibit zipfiles with duplicate + entries, Sane zip files have no duplicates, and the DotNetZip library + cannot create zip files with duplicate entries. If an application attempts + to call with a name that duplicates one + already used within the archive, the library will throw an Exception. + + + This property allows the application to specify whether the + ZipOutputStream instance considers ordinal case when checking for + uniqueness of zip entries. + + + + + + Indicates whether to encode entry filenames and entry comments using + Unicode (UTF-8). + + + + + The + PKWare zip specification provides for encoding file names and file + comments in either the IBM437 code page, or in UTF-8. This flag selects + the encoding according to that specification. By default, this flag is + false, and filenames and comments are encoded into the zip file in the + IBM437 codepage. Setting this flag to true will specify that filenames + and comments that cannot be encoded with IBM437 will be encoded with + UTF-8. + + + + Zip files created with strict adherence to the PKWare specification with + respect to UTF-8 encoding can contain entries with filenames containing + any combination of Unicode characters, including the full range of + characters from Chinese, Latin, Hebrew, Greek, Cyrillic, and many other + alphabets. However, because at this time, the UTF-8 portion of the PKWare + specification is not broadly supported by other zip libraries and + utilities, such zip files may not be readable by your favorite zip tool or + archiver. In other words, interoperability will decrease if you set this + flag to true. + + + + In particular, Zip files created with strict adherence to the PKWare + specification with respect to UTF-8 encoding will not work well with + Explorer in Windows XP or Windows Vista, because Windows compressed + folders, as far as I know, do not support UTF-8 in zip files. Vista can + read the zip files, but shows the filenames incorrectly. Unpacking from + Windows Vista Explorer will result in filenames that have rubbish + characters in place of the high-order UTF-8 bytes. + + + + Also, zip files that use UTF-8 encoding will not work well with Java + applications that use the java.util.zip classes, as of v5.0 of the Java + runtime. The Java runtime does not correctly implement the PKWare + specification in this regard. + + + + As a result, we have the unfortunate situation that "correct" behavior by + the DotNetZip library with regard to Unicode encoding of filenames during + zip creation will result in zip files that are readable by strictly + compliant and current tools (for example the most recent release of the + commercial WinZip tool); but these zip files will not be readable by + various other tools or libraries, including Windows Explorer. + + + + The DotNetZip library can read and write zip files with UTF8-encoded + entries, according to the PKware spec. If you use DotNetZip for both + creating and reading the zip file, and you use UTF-8, there will be no + loss of information in the filenames. For example, using a self-extractor + created by this library will allow you to unpack files correctly with no + loss of information in the filenames. + + + + If you do not set this flag, it will remain false. If this flag is false, + the ZipOutputStream will encode all filenames and comments using + the IBM437 codepage. This can cause "loss of information" on some + filenames, but the resulting zipfile will be more interoperable with other + utilities. As an example of the loss of information, diacritics can be + lost. The o-tilde character will be down-coded to plain o. The c with a + cedilla (Unicode 0xE7) used in Portugese will be downcoded to a c. + Likewise, the O-stroke character (Unicode 248), used in Danish and + Norwegian, will be down-coded to plain o. Chinese characters cannot be + represented in codepage IBM437; when using the default encoding, Chinese + characters in filenames will be represented as ?. These are all examples + of "information loss". + + + + The loss of information associated to the use of the IBM437 encoding is + inconvenient, and can also lead to runtime errors. For example, using + IBM437, any sequence of 4 Chinese characters will be encoded as ????. If + your application creates a ZipOutputStream, does not set the + encoding, then adds two files, each with names of four Chinese characters + each, this will result in a duplicate filename exception. In the case + where you add a single file with a name containing four Chinese + characters, the zipfile will save properly, but extracting that file + later, with any zip tool, will result in an error, because the question + mark is not legal for use within filenames on Windows. These are just a + few examples of the problems associated to loss of information. + + + + This flag is independent of the encoding of the content within the entries + in the zip file. Think of the zip file as a container - it supports an + encoding. Within the container are other "containers" - the file entries + themselves. The encoding within those entries is independent of the + encoding of the zip archive container for those entries. + + + + Rather than specify the encoding in a binary fashion using this flag, an + application can specify an arbitrary encoding via the property. Setting the encoding + explicitly when creating zip archives will result in non-compliant zip + files that, curiously, are fairly interoperable. The challenge is, the + PKWare specification does not provide for a way to specify that an entry + in a zip archive uses a code page that is neither IBM437 nor UTF-8. + Therefore if you set the encoding explicitly when creating a zip archive, + you must take care upon reading the zip archive to use the same code page. + If you get it wrong, the behavior is undefined and may result in incorrect + filenames, exceptions, stomach upset, hair loss, and acne. + + + + + + + The text encoding to use when emitting entries into the zip archive, for + those entries whose filenames or comments cannot be encoded with the + default (IBM437) encoding. + + + + + In its + zip specification, PKWare describes two options for encoding + filenames and comments: using IBM437 or UTF-8. But, some archiving tools + or libraries do not follow the specification, and instead encode + characters using the system default code page. For example, WinRAR when + run on a machine in Shanghai may encode filenames with the Big-5 Chinese + (950) code page. This behavior is contrary to the Zip specification, but + it occurs anyway. + + + + When using DotNetZip to write zip archives that will be read by one of + these other archivers, set this property to specify the code page to use + when encoding the and for each ZipEntry in the zip file, for + values that cannot be encoded with the default codepage for zip files, + IBM437. This is why this property is "provisional". In all cases, IBM437 + is used where possible, in other words, where no loss of data would + result. It is possible, therefore, to have a given entry with a + Comment encoded in IBM437 and a FileName encoded with the + specified "provisional" codepage. + + + + Be aware that a zip file created after you've explicitly set the + ProvisionalAlternateEncoding property to a value other than + IBM437 may not be compliant to the PKWare specification, and may not be + readable by compliant archivers. On the other hand, many (most?) + archivers are non-compliant and can read zip files created in arbitrary + code pages. The trick is to use or specify the proper codepage when + reading the zip. + + + + When creating a zip archive using this library, it is possible to change + the value of ProvisionalAlternateEncoding between each entry you + add, and between adding entries and the call to Close(). Don't do + this. It will likely result in a zipfile that is not readable. For best + interoperability, either leave ProvisionalAlternateEncoding + alone, or specify it only once, before adding any entries to the + ZipOutputStream instance. There is one exception to this + recommendation, described later. + + + + When using an arbitrary, non-UTF8 code page for encoding, there is no + standard way for the creator application - whether DotNetZip, WinZip, + WinRar, or something else - to formally specify in the zip file which + codepage has been used for the entries. As a result, readers of zip files + are not able to inspect the zip file and determine the codepage that was + used for the entries contained within it. It is left to the application + or user to determine the necessary codepage when reading zip files encoded + this way. If you use an incorrect codepage when reading a zipfile, you + will get entries with filenames that are incorrect, and the incorrect + filenames may even contain characters that are not legal for use within + filenames in Windows. Extracting entries with illegal characters in the + filenames will lead to exceptions. It's too bad, but this is just the way + things are with code pages in zip files. Caveat Emptor. + + + + One possible approach for specifying the code page for a given zip file is + to describe the code page in a human-readable form in the Zip comment. For + example, the comment may read "Entries in this archive are encoded in the + Big5 code page". For maximum interoperability, the zip comment in this + case should be encoded in the default, IBM437 code page. In this case, + the zip comment is encoded using a different page than the filenames. To + do this, Specify ProvisionalAlternateEncoding to your desired + region-specific code page, once before adding any entries, and then set + the property and reset + ProvisionalAlternateEncoding to IBM437 before calling Close(). + + + + + + A Text Encoding to use when encoding the filenames and comments for + all the ZipEntry items, during a ZipFile.Save() operation. + + + + Whether the encoding specified here is used during the save depends + on . + + + + + + A flag that tells if and when this instance should apply + AlternateEncoding to encode the filenames and comments associated to + of ZipEntry objects contained within this instance. + + + + + The default text encoding used in zip archives. It is numeric 437, also + known as IBM437. + + + + + + The size threshold for an entry, above which a parallel deflate is used. + + + + + + DotNetZip will use multiple threads to compress any ZipEntry, when + the CompressionMethod is Deflate, and if the entry is + larger than the given size. Zero means "always use parallel + deflate", while -1 means "never use parallel deflate". + + + + If the entry size cannot be known before compression, as with any entry + added via a ZipOutputStream, then Parallel deflate will never be + performed, unless the value of this property is zero. + + + + A parallel deflate operations will speed up the compression of + large files, on computers with multiple CPUs or multiple CPU + cores. For files above 1mb, on a dual core or dual-cpu (2p) + machine, the time required to compress the file can be 70% of the + single-threaded deflate. For very large files on 4p machines the + compression can be done in 30% of the normal time. The downside + is that parallel deflate consumes extra memory during the deflate, + and the deflation is slightly less effective. + + + + Parallel deflate tends to not be as effective as single-threaded deflate + because the original data stream is split into multiple independent + buffers, each of which is compressed in parallel. But because they are + treated independently, there is no opportunity to share compression + dictionaries, and additional framing bytes must be added to the output + stream. For that reason, a deflated stream may be slightly larger when + compressed using parallel deflate, as compared to a traditional + single-threaded deflate. For files of about 512k, the increase over the + normal deflate is as much as 5% of the total compressed size. For larger + files, the difference can be as small as 0.1%. + + + + Multi-threaded compression does not give as much an advantage when using + Encryption. This is primarily because encryption tends to slow down + the entire pipeline. Also, multi-threaded compression gives less of an + advantage when using lower compression levels, for example . You may have to perform + some tests to determine the best approach for your situation. + + + + The default value for this property is -1, which means parallel + compression will not be performed unless you set it to zero. + + + + + + + The maximum number of buffer pairs to use when performing + parallel compression. + + + + + This property sets an upper limit on the number of memory + buffer pairs to create when performing parallel + compression. The implementation of the parallel + compression stream allocates multiple buffers to + facilitate parallel compression. As each buffer fills up, + the stream uses + ThreadPool.QueueUserWorkItem() to compress those + buffers in a background threadpool thread. After a buffer + is compressed, it is re-ordered and written to the output + stream. + + + + A higher number of buffer pairs enables a higher degree of + parallelism, which tends to increase the speed of compression on + multi-cpu computers. On the other hand, a higher number of buffer + pairs also implies a larger memory consumption, more active worker + threads, and a higher cpu utilization for any compression. This + property enables the application to limit its memory consumption and + CPU utilization behavior depending on requirements. + + + + For each compression "task" that occurs in parallel, there are 2 + buffers allocated: one for input and one for output. This property + sets a limit for the number of pairs. The total amount of storage + space allocated for buffering will then be (N*S*2), where N is the + number of buffer pairs, S is the size of each buffer (). By default, DotNetZip allocates 4 buffer + pairs per CPU core, so if your machine has 4 cores, and you retain + the default buffer size of 128k, then the + ParallelDeflateOutputStream will use 4 * 4 * 2 * 128kb of buffer + memory in total, or 4mb, in blocks of 128kb. If you then set this + property to 8, then the number will be 8 * 2 * 128kb of buffer + memory, or 2mb. + + + + CPU utilization will also go up with additional buffers, because a + larger number of buffer pairs allows a larger number of background + threads to compress in parallel. If you find that parallel + compression is consuming too much memory or CPU, you can adjust this + value downward. + + + + The default value is 16. Different values may deliver better or + worse results, depending on your priorities and the dynamic + performance characteristics of your storage and compute resources. + + + + This property is not the number of buffer pairs to use; it is an + upper limit. An illustration: Suppose you have an application that + uses the default value of this property (which is 16), and it runs + on a machine with 2 CPU cores. In that case, DotNetZip will allocate + 4 buffer pairs per CPU core, for a total of 8 pairs. The upper + limit specified by this property has no effect. + + + + The application can set this value at any time, but it is + effective only if set before calling + ZipOutputStream.Write() for the first time. + + + + + + + + + Always returns false. + + + + + Always returns false. + + + + + Always returns true. + + + + + Always returns a NotSupportedException. + + + + + Setting this property always returns a NotSupportedException. Getting it + returns the value of the Position on the underlying stream. + + + + + Provides a stream metaphor for reading zip files. + + + + + This class provides an alternative programming model for reading zip files to + the one enabled by the class. Use this when reading zip + files, as an alternative to the class, when you would + like to use a Stream class to read the file. + + + + Some application designs require a readable stream for input. This stream can + be used to read a zip file, and extract entries. + + + + Both the ZipInputStream class and the ZipFile class can be used + to read and extract zip files. Both of them support many of the common zip + features, including Unicode, different compression levels, and ZIP64. The + programming models differ. For example, when extracting entries via calls to + the GetNextEntry() and Read() methods on the + ZipInputStream class, the caller is responsible for creating the file, + writing the bytes into the file, setting the attributes on the file, and + setting the created, last modified, and last accessed timestamps on the + file. All of these things are done automatically by a call to ZipEntry.Extract(). For this reason, the + ZipInputStream is generally recommended for when your application wants + to extract the data, without storing that data into a file. + + + + Aside from the obvious differences in programming model, there are some + differences in capability between the ZipFile class and the + ZipInputStream class. + + + + + ZipFile can be used to create or update zip files, or read and + extract zip files. ZipInputStream can be used only to read and + extract zip files. If you want to use a stream to create zip files, check + out the . + + + + ZipInputStream cannot read segmented or spanned + zip files. + + + + ZipInputStream will not read Zip file comments. + + + + When reading larger files, ZipInputStream will always underperform + ZipFile. This is because the ZipInputStream does a full scan on the + zip file, while the ZipFile class reads the central directory of the + zip file. + + + + + + + + + Create a ZipInputStream, wrapping it around an existing stream. + + + + + + While the class is generally easier + to use, this class provides an alternative to those + applications that want to read from a zipfile directly, + using a . + + + + Both the ZipInputStream class and the ZipFile class can be used + to read and extract zip files. Both of them support many of the common zip + features, including Unicode, different compression levels, and ZIP64. The + programming models differ. For example, when extracting entries via calls to + the GetNextEntry() and Read() methods on the + ZipInputStream class, the caller is responsible for creating the file, + writing the bytes into the file, setting the attributes on the file, and + setting the created, last modified, and last accessed timestamps on the + file. All of these things are done automatically by a call to ZipEntry.Extract(). For this reason, the + ZipInputStream is generally recommended for when your application wants + to extract the data, without storing that data into a file. + + + + Aside from the obvious differences in programming model, there are some + differences in capability between the ZipFile class and the + ZipInputStream class. + + + + + ZipFile can be used to create or update zip files, or read and extract + zip files. ZipInputStream can be used only to read and extract zip + files. If you want to use a stream to create zip files, check out the . + + + + ZipInputStream cannot read segmented or spanned + zip files. + + + + ZipInputStream will not read Zip file comments. + + + + When reading larger files, ZipInputStream will always underperform + ZipFile. This is because the ZipInputStream does a full scan on the + zip file, while the ZipFile class reads the central directory of the + zip file. + + + + + + + + The stream to read. It must be readable. This stream will be closed at + the time the ZipInputStream is closed. + + + + + This example shows how to read a zip file, and extract entries, using the + ZipInputStream class. + + + private void Unzip() + { + byte[] buffer= new byte[2048]; + int n; + using (var raw = File.Open(inputFileName, FileMode.Open, FileAccess.Read)) + { + using (var input= new ZipInputStream(raw)) + { + ZipEntry e; + while (( e = input.GetNextEntry()) != null) + { + if (e.IsDirectory) continue; + string outputPath = Path.Combine(extractDir, e.FileName); + using (var output = File.Open(outputPath, FileMode.Create, FileAccess.ReadWrite)) + { + while ((n= input.Read(buffer, 0, buffer.Length)) > 0) + { + output.Write(buffer,0,n); + } + } + } + } + } + } + + + + Private Sub UnZip() + Dim inputFileName As String = "MyArchive.zip" + Dim extractDir As String = "extract" + Dim buffer As Byte() = New Byte(2048) {} + Using raw As FileStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read) + Using input As ZipInputStream = New ZipInputStream(raw) + Dim e As ZipEntry + Do While (Not e = input.GetNextEntry Is Nothing) + If Not e.IsDirectory Then + Using output As FileStream = File.Open(Path.Combine(extractDir, e.FileName), _ + FileMode.Create, FileAccess.ReadWrite) + Dim n As Integer + Do While (n = input.Read(buffer, 0, buffer.Length) > 0) + output.Write(buffer, 0, n) + Loop + End Using + End If + Loop + End Using + End Using + End Sub + + + + + + Create a ZipInputStream, given the name of an existing zip file. + + + + + + This constructor opens a FileStream for the given zipfile, and + wraps a ZipInputStream around that. See the documentation for the + constructor for full details. + + + + While the class is generally easier + to use, this class provides an alternative to those + applications that want to read from a zipfile directly, + using a . + + + + + + The name of the filesystem file to read. + + + + + This example shows how to read a zip file, and extract entries, using the + ZipInputStream class. + + + private void Unzip() + { + byte[] buffer= new byte[2048]; + int n; + using (var input= new ZipInputStream(inputFileName)) + { + ZipEntry e; + while (( e = input.GetNextEntry()) != null) + { + if (e.IsDirectory) continue; + string outputPath = Path.Combine(extractDir, e.FileName); + using (var output = File.Open(outputPath, FileMode.Create, FileAccess.ReadWrite)) + { + while ((n= input.Read(buffer, 0, buffer.Length)) > 0) + { + output.Write(buffer,0,n); + } + } + } + } + } + + + + Private Sub UnZip() + Dim inputFileName As String = "MyArchive.zip" + Dim extractDir As String = "extract" + Dim buffer As Byte() = New Byte(2048) {} + Using input As ZipInputStream = New ZipInputStream(inputFileName) + Dim e As ZipEntry + Do While (Not e = input.GetNextEntry Is Nothing) + If Not e.IsDirectory Then + Using output As FileStream = File.Open(Path.Combine(extractDir, e.FileName), _ + FileMode.Create, FileAccess.ReadWrite) + Dim n As Integer + Do While (n = input.Read(buffer, 0, buffer.Length) > 0) + output.Write(buffer, 0, n) + Loop + End Using + End If + Loop + End Using + End Sub + + + + + + Create a ZipInputStream, explicitly specifying whether to + keep the underlying stream open. + + + + See the documentation for the ZipInputStream(Stream) + constructor for a discussion of the class, and an example of how to use the class. + + + + The stream to read from. It must be readable. + + + + true if the application would like the stream + to remain open after the ZipInputStream has been closed. + + + + Provides a string representation of the instance. + + + This can be useful for debugging purposes. + + + a string representation of the instance. + + + + Read the data from the stream into the buffer. + + + + + The data for the zipentry will be decrypted and uncompressed, as + necessary, before being copied into the buffer. + + + + You must set the property before calling + Read() the first time for an encrypted entry. To determine if an + entry is encrypted and requires a password, check the ZipEntry.Encryption property. + + + + The buffer to hold the data read from the stream. + the offset within the buffer to copy the first byte read. + the number of bytes to read. + the number of bytes read, after decryption and decompression. + + + + Read the next entry from the zip file. + + + + + Call this method just before calling , + to position the pointer in the zip file to the next entry that can be + read. Subsequent calls to Read(), will decrypt and decompress the + data in the zip file, until Read() returns 0. + + + + Each time you call GetNextEntry(), the pointer in the wrapped + stream is moved to the next entry in the zip file. If you call , and thus re-position the pointer within + the file, you will need to call GetNextEntry() again, to insure + that the file pointer is positioned at the beginning of a zip entry. + + + + This method returns the ZipEntry. Using a stream approach, you will + read the raw bytes for an entry in a zip file via calls to Read(). + Alternatively, you can extract an entry into a file, or a stream, by + calling , or one of its siblings. + + + + + + The ZipEntry read. Returns null (or Nothing in VB) if there are no more + entries in the zip file. + + + + + + Dispose the stream. + + + + + This method disposes the ZipInputStream. It may also close the + underlying stream, depending on which constructor was used. + + + + Typically the application will call Dispose() implicitly, via + a using statement in C#, or a Using statement in VB. + + + + Application code won't call this code directly. This method may + be invoked in two distinct scenarios. If disposing == true, the + method has been called directly or indirectly by a user's code, + for example via the public Dispose() method. In this case, both + managed and unmanaged resources can be referenced and disposed. + If disposing == false, the method has been called by the runtime + from inside the object finalizer and this method should not + reference other objects; in that case only unmanaged resources + must be referenced or disposed. + + + + + true if the Dispose method was invoked by user code. + + + + + This is a no-op. + + + + + This method always throws a NotSupportedException. + + ignored + ignored + ignored + + + + This method seeks in the underlying stream. + + + + + Call this method if you want to seek around within the zip file for random access. + + + + Applications can intermix calls to Seek() with calls to . After a call to Seek(), + GetNextEntry() will get the next ZipEntry that falls after + the current position in the input stream. You're on your own for finding + out just where to seek in the stream, to get to the various entries. + + + + + the offset point to seek to + the reference point from which to seek + The new position + + + + This method always throws a NotSupportedException. + + ignored + + + + The text encoding to use when reading entries into the zip archive, for + those entries whose filenames or comments cannot be encoded with the + default (IBM437) encoding. + + + + + In its + zip specification, PKWare describes two options for encoding + filenames and comments: using IBM437 or UTF-8. But, some archiving tools + or libraries do not follow the specification, and instead encode + characters using the system default code page. For example, WinRAR when + run on a machine in Shanghai may encode filenames with the Big-5 Chinese + (950) code page. This behavior is contrary to the Zip specification, but + it occurs anyway. + + + + When using DotNetZip to read zip archives that use something other than + UTF-8 or IBM437, set this property to specify the code page to use when + reading encoded filenames and comments for each ZipEntry in the zip + file. + + + + This property is "provisional". When the entry in the zip archive is not + explicitly marked as using UTF-8, then IBM437 is used to decode filenames + and comments. If a loss of data would result from using IBM436 - + specifically when encoding and decoding is not reflexive - the codepage + specified here is used. It is possible, therefore, to have a given entry + with a Comment encoded in IBM437 and a FileName encoded with + the specified "provisional" codepage. + + + + When a zip file uses an arbitrary, non-UTF8 code page for encoding, there + is no standard way for the reader application - whether DotNetZip, WinZip, + WinRar, or something else - to know which codepage has been used for the + entries. Readers of zip files are not able to inspect the zip file and + determine the codepage that was used for the entries contained within it. + It is left to the application or user to determine the necessary codepage + when reading zip files encoded this way. If you use an incorrect codepage + when reading a zipfile, you will get entries with filenames that are + incorrect, and the incorrect filenames may even contain characters that + are not legal for use within filenames in Windows. Extracting entries with + illegal characters in the filenames will lead to exceptions. It's too bad, + but this is just the way things are with code pages in zip files. Caveat + Emptor. + + + + + + + Size of the work buffer to use for the ZLIB codec during decompression. + + + + Setting this affects the performance and memory efficiency of compression + and decompression. For larger files, setting this to a larger size may + improve performance, but the exact numbers vary depending on available + memory, and a bunch of other variables. I don't have good firm + recommendations on how to set it. You'll have to test it yourself. Or + just leave it alone and accept the default. + + + + + Sets the password to be used on the ZipInputStream instance. + + + + + + When reading a zip archive, this password is used to read and decrypt the + entries that are encrypted within the zip file. When entries within a zip + file use different passwords, set the appropriate password for the entry + before the first call to Read() for each entry. + + + + When reading an entry that is not encrypted, the value of this property is + ignored. + + + + + + + This example uses the ZipInputStream to read and extract entries from a + zip file, using a potentially different password for each entry. + + + byte[] buffer= new byte[2048]; + int n; + using (var raw = File.Open(_inputFileName, FileMode.Open, FileAccess.Read )) + { + using (var input= new ZipInputStream(raw)) + { + ZipEntry e; + while (( e = input.GetNextEntry()) != null) + { + input.Password = PasswordForEntry(e.FileName); + if (e.IsDirectory) continue; + string outputPath = Path.Combine(_extractDir, e.FileName); + using (var output = File.Open(outputPath, FileMode.Create, FileAccess.ReadWrite)) + { + while ((n= input.Read(buffer,0,buffer.Length)) > 0) + { + output.Write(buffer,0,n); + } + } + } + } + } + + + + + + + Always returns true. + + + + + Returns the value of CanSeek for the underlying (wrapped) stream. + + + + + Always returns false. + + + + + Returns the length of the underlying stream. + + + + + Gets or sets the position of the underlying stream. + + + Setting the position is equivalent to calling Seek(value, SeekOrigin.Begin). + + + + + Sort-of like a factory method, ForUpdate is used only when + the application needs to update the zip entry metadata for + a segmented zip file, when the starting segment is earlier + than the ending segment, for a particular entry. + + + + The update is always contiguous, never rolls over. As a + result, this method doesn't need to return a ZSS; it can + simply return a FileStream. That's why it's "sort of" + like a Factory method. + + + Caller must Close/Dispose the stream object returned by + this method. + + + + + + Read from the stream + + the buffer to read + the offset at which to start + the number of bytes to read + the number of bytes actually read + + + + Write to the stream. + + the buffer from which to write + the offset at which to start writing + the number of bytes to write + + + + Name of the filesystem file corresponding to the current segment. + + + + The name is not always the name currently being used in the + filesystem. When rwMode is RwMode.Write, the filesystem file has a + temporary name until the stream is closed or until the next segment is + started. + + + + + + This class exposes a set of COM-accessible wrappers for static + methods available on the ZipFile class. You don't need this + class unless you are using DotNetZip from a COM environment. + + + + + A wrapper for ZipFile.IsZipFile(string) + + The filename to of the zip file to check. + true if the file contains a valid zip file. + + + + A wrapper for ZipFile.IsZipFile(string, bool) + + + We cannot use "overloaded" Method names in COM interop. + So, here, we use a unique name. + + The filename to of the zip file to check. + true if the file contains a valid zip file. + + + + A wrapper for ZipFile.CheckZip(string) + + The filename to of the zip file to check. + + true if the named zip file checks OK. Otherwise, false. + + + + A COM-friendly wrapper for the static method . + + + The filename to of the zip file to check. + + The password to check. + + true if the named zip file checks OK. Otherwise, false. + + + + A wrapper for ZipFile.FixZipDirectory(string) + + The filename to of the zip file to fix. + + + + A wrapper for ZipFile.LibraryVersion + + + the version number on the DotNetZip assembly, formatted as a string. + + + + + An enum providing the options when an error occurs during opening or reading + of a file or directory that is being saved to a zip file. + + + + + This enum describes the actions that the library can take when an error occurs + opening or reading a file, as it is being saved into a Zip archive. + + + + In some cases an error will occur when DotNetZip tries to open a file to be + added to the zip archive. In other cases, an error might occur after the + file has been successfully opened, while DotNetZip is reading the file. + + + + The first problem might occur when calling AddDirectory() on a directory + that contains a Clipper .dbf file; the file is locked by Clipper and + cannot be opened by another process. An example of the second problem is + the ERROR_LOCK_VIOLATION that results when a file is opened by another + process, but not locked, and a range lock has been taken on the file. + Microsoft Outlook takes range locks on .PST files. + + + + + + Throw an exception when an error occurs while zipping. This is the default + behavior. (For COM clients, this is a 0 (zero).) + + + + + When an error occurs during zipping, for example a file cannot be opened, + skip the file causing the error, and continue zipping. (For COM clients, + this is a 1.) + + + + + When an error occurs during zipping, for example a file cannot be opened, + retry the operation that caused the error. Be careful with this option. If + the error is not temporary, the library will retry forever. (For COM + clients, this is a 2.) + + + + + When an error occurs, invoke the zipError event. The event type used is + . A typical use of this option: + a GUI application may wish to pop up a dialog to allow the user to view the + error that occurred, and choose an appropriate action. After your + processing in the error event, if you want to skip the file, set on the + ZipProgressEventArgs.CurrentEntry to Skip. If you want the + exception to be thrown, set ZipErrorAction on the CurrentEntry + to Throw. If you want to cancel the zip, set + ZipProgressEventArgs.Cancel to true. Cancelling differs from using + Skip in that a cancel will not save any further entries, if there are any. + (For COM clients, the value of this enum is a 3.) + + + + + An enum that provides the various encryption algorithms supported by this + library. + + + + + + PkzipWeak implies the use of Zip 2.0 encryption, which is known to be + weak and subvertible. + + + + A note on interoperability: Values of PkzipWeak and None are + specified in PKWARE's zip + specification, and are considered to be "standard". Zip archives + produced using these options will be interoperable with many other zip tools + and libraries, including Windows Explorer. + + + + Values of WinZipAes128 and WinZipAes256 are not part of the Zip + specification, but rather imply the use of a vendor-specific extension from + WinZip. If you want to produce interoperable Zip archives, do not use these + values. For example, if you produce a zip archive using WinZipAes256, you + will be able to open it in Windows Explorer on Windows XP and Vista, but you + will not be able to extract entries; trying this will lead to an "unspecified + error". For this reason, some people have said that a zip archive that uses + WinZip's AES encryption is not actually a zip archive at all. A zip archive + produced this way will be readable with the WinZip tool (Version 11 and + beyond). + + + + There are other third-party tools and libraries, both commercial and + otherwise, that support WinZip's AES encryption. These will be able to read + AES-encrypted zip archives produced by DotNetZip, and conversely applications + that use DotNetZip to read zip archives will be able to read AES-encrypted + archives produced by those tools or libraries. Consult the documentation for + those other tools and libraries to find out if WinZip's AES encryption is + supported. + + + + In case you care: According to the WinZip specification, the + actual AES key used is derived from the via an + algorithm that complies with RFC 2898, using an iteration + count of 1000. The algorithm is sometimes referred to as PBKDF2, which stands + for "Password Based Key Derivation Function #2". + + + + A word about password strength and length: The AES encryption technology is + very good, but any system is only as secure as the weakest link. If you want + to secure your data, be sure to use a password that is hard to guess. To make + it harder to guess (increase its "entropy"), you should make it longer. If + you use normal characters from an ASCII keyboard, a password of length 20 will + be strong enough that it will be impossible to guess. For more information on + that, I'd encourage you to read this + article. + + + + The WinZip AES algorithms are not supported with the version of DotNetZip that + runs on the .NET Compact Framework. This is because .NET CF lacks the + HMACSHA1 class that is required for producing the archive. + + + + + + No encryption at all. + + + + + Traditional or Classic pkzip encryption. + + + + + WinZip AES encryption (128 key bits). + + + + + WinZip AES encryption (256 key bits). + + + + + An encryption algorithm that is not supported by DotNetZip. + + + + + An enum for the options when extracting an entry would overwrite an existing file. + + + + + This enum describes the actions that the library can take when an + Extract() or ExtractWithPassword() method is called to extract an + entry to a filesystem, and the extraction would overwrite an existing filesystem + file. + + + + + + + Throw an exception when extraction would overwrite an existing file. (For + COM clients, this is a 0 (zero).) + + + + + When extraction would overwrite an existing file, overwrite the file silently. + The overwrite will happen even if the target file is marked as read-only. + (For COM clients, this is a 1.) + + + + + When extraction would overwrite an existing file, don't overwrite the file, silently. + (For COM clients, this is a 2.) + + + + + When extraction would overwrite an existing file, invoke the ExtractProgress + event, using an event type of . In + this way, the application can decide, just-in-time, whether to overwrite the + file. For example, a GUI application may wish to pop up a dialog to allow + the user to choose. You may want to examine the property before making + the decision. If, after your processing in the Extract progress event, you + want to NOT extract the file, set + on the ZipProgressEventArgs.CurrentEntry to DoNotOverwrite. + If you do want to extract the file, set ZipEntry.ExtractExistingFile + to OverwriteSilently. If you want to cancel the Extraction, set + ZipProgressEventArgs.Cancel to true. Cancelling differs from using + DoNotOverwrite in that a cancel will not extract any further entries, if + there are any. (For COM clients, the value of this enum is a 3.) + + + + + Enumerates the options for a logical conjunction. This enum is intended for use + internally by the FileSelector class. + + + + + FileSelector encapsulates logic that selects files from a source - a zip file + or the filesystem - based on a set of criteria. This class is used internally + by the DotNetZip library, in particular for the AddSelectedFiles() methods. + This class can also be used independently of the zip capability in DotNetZip. + + + + + + The FileSelector class is used internally by the ZipFile class for selecting + files for inclusion into the ZipFile, when the method, or one of + its overloads, is called. It's also used for the methods. Typically, an + application that creates or manipulates Zip archives will not directly + interact with the FileSelector class. + + + + Some applications may wish to use the FileSelector class directly, to + select files from disk volumes based on a set of criteria, without creating or + querying Zip archives. The file selection criteria include: a pattern to + match the filename; the last modified, created, or last accessed time of the + file; the size of the file; and the attributes of the file. + + + + Consult the documentation for + for more information on specifying the selection criteria. + + + + + + + Constructor that allows the caller to specify file selection criteria. + + + + + This constructor allows the caller to specify a set of criteria for + selection of files. + + + + See for a description of + the syntax of the selectionCriteria string. + + + + By default the FileSelector will traverse NTFS Reparse Points. To + change this, use FileSelector(String, bool). + + + + The criteria for file selection. + + + + Constructor that allows the caller to specify file selection criteria. + + + + + This constructor allows the caller to specify a set of criteria for + selection of files. + + + + See for a description of + the syntax of the selectionCriteria string. + + + + The criteria for file selection. + + whether to traverse NTFS reparse points (junctions). + + + + + Returns a string representation of the FileSelector object. + + The string representation of the boolean logic statement of the file + selection criteria for this instance. + + + + Returns the names of the files in the specified directory + that fit the selection criteria specified in the FileSelector. + + + + This is equivalent to calling + with recurseDirectories = false. + + + + The name of the directory over which to apply the FileSelector + criteria. + + + + A collection of strings containing fully-qualified pathnames of files + that match the criteria specified in the FileSelector instance. + + + + + Returns the names of the files in the specified directory that fit the + selection criteria specified in the FileSelector, optionally recursing + through subdirectories. + + + + This method applies the file selection criteria contained in the + FileSelector to the files contained in the given directory, and + returns the names of files that conform to the criteria. + + + + The name of the directory over which to apply the FileSelector + criteria. + + + + Whether to recurse through subdirectories when applying the file + selection criteria. + + + + A collection of strings containing fully-qualified pathnames of files + that match the criteria specified in the FileSelector instance. + + + + + Retrieve the ZipEntry items in the ZipFile that conform to the specified criteria. + + + + + This method applies the criteria set in the FileSelector instance (as described in + the ) to the specified ZipFile. Using this + method, for example, you can retrieve all entries from the given ZipFile that + have filenames ending in .txt. + + + + Normally, applications would not call this method directly. This method is used + by the ZipFile class. + + + + Using the appropriate SelectionCriteria, you can retrieve entries based on size, + time, and attributes. See for a + description of the syntax of the SelectionCriteria string. + + + + + The ZipFile from which to retrieve entries. + + a collection of ZipEntry objects that conform to the criteria. + + + + Retrieve the ZipEntry items in the ZipFile that conform to the specified criteria. + + + + + This method applies the criteria set in the FileSelector instance (as described in + the ) to the specified ZipFile. Using this + method, for example, you can retrieve all entries from the given ZipFile that + have filenames ending in .txt. + + + + Normally, applications would not call this method directly. This method is used + by the ZipFile class. + + + + This overload allows the selection of ZipEntry instances from the ZipFile to be restricted + to entries contained within a particular directory in the ZipFile. + + + + Using the appropriate SelectionCriteria, you can retrieve entries based on size, + time, and attributes. See for a + description of the syntax of the SelectionCriteria string. + + + + + The ZipFile from which to retrieve entries. + + + the directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + + a collection of ZipEntry objects that conform to the criteria. + + + + The string specifying which files to include when retrieving. + + + + + Specify the criteria in statements of 3 elements: a noun, an operator, + and a value. Consider the string "name != *.doc" . The noun is + "name". The operator is "!=", implying "Not Equal". The value is + "*.doc". That criterion, in English, says "all files with a name that + does not end in the .doc extension." + + + + Supported nouns include "name" (or "filename") for the filename; + "atime", "mtime", and "ctime" for last access time, last modfied time, + and created time of the file, respectively; "attributes" (or "attrs") + for the file attributes; "size" (or "length") for the file length + (uncompressed); and "type" for the type of object, either a file or a + directory. The "attributes", "type", and "name" nouns all support = + and != as operators. The "size", "atime", "mtime", and "ctime" nouns + support = and !=, and >, >=, <, <= as well. The times are + taken to be expressed in local time. + + + + Specify values for the file attributes as a string with one or more of + the characters H,R,S,A,I,L in any order, implying file attributes of + Hidden, ReadOnly, System, Archive, NotContextIndexed, and ReparsePoint + (symbolic link) respectively. + + + + To specify a time, use YYYY-MM-DD-HH:mm:ss or YYYY/MM/DD-HH:mm:ss as + the format. If you omit the HH:mm:ss portion, it is assumed to be + 00:00:00 (midnight). + + + + The value for a size criterion is expressed in integer quantities of + bytes, kilobytes (use k or kb after the number), megabytes (m or mb), + or gigabytes (g or gb). + + + + The value for a name is a pattern to match against the filename, + potentially including wildcards. The pattern follows CMD.exe glob + rules: * implies one or more of any character, while ? implies one + character. If the name pattern contains any slashes, it is matched to + the entire filename, including the path; otherwise, it is matched + against only the filename without the path. This means a pattern of + "*\*.*" matches all files one directory level deep, while a pattern of + "*.*" matches all files in all directories. + + + + To specify a name pattern that includes spaces, use single quotes + around the pattern. A pattern of "'* *.*'" will match all files that + have spaces in the filename. The full criteria string for that would + be "name = '* *.*'" . + + + + The value for a type criterion is either F (implying a file) or D + (implying a directory). + + + + Some examples: + + + + + criteria + Files retrieved + + + + name != *.xls + any file with an extension that is not .xls + + + + + name = *.mp3 + any file with a .mp3 extension. + + + + + *.mp3 + (same as above) any file with a .mp3 extension. + + + + + attributes = A + all files whose attributes include the Archive bit. + + + + + attributes != H + all files whose attributes do not include the Hidden bit. + + + + + mtime > 2009-01-01 + all files with a last modified time after January 1st, 2009. + + + + + ctime > 2009/01/01-03:00:00 + all files with a created time after 3am (local time), + on January 1st, 2009. + + + + + size > 2gb + all files whose uncompressed size is greater than 2gb. + + + + + type = D + all directories in the filesystem. + + + + + + You can combine criteria with the conjunctions AND, OR, and XOR. Using + a string like "name = *.txt AND size >= 100k" for the + selectionCriteria retrieves entries whose names end in .txt, and whose + uncompressed size is greater than or equal to 100 kilobytes. + + + + For more complex combinations of criteria, you can use parenthesis to + group clauses in the boolean logic. Absent parenthesis, the + precedence of the criterion atoms is determined by order of + appearance. Unlike the C# language, the AND conjunction does not take + precendence over the logical OR. This is important only in strings + that contain 3 or more criterion atoms. In other words, "name = *.txt + and size > 1000 or attributes = H" implies "((name = *.txt AND size + > 1000) OR attributes = H)" while "attributes = H OR name = *.txt + and size > 1000" evaluates to "((attributes = H OR name = *.txt) + AND size > 1000)". When in doubt, use parenthesis. + + + + Using time properties requires some extra care. If you want to + retrieve all entries that were last updated on 2009 February 14, + specify "mtime >= 2009-02-14 AND mtime < 2009-02-15". Read this + to say: all files updated after 12:00am on February 14th, until + 12:00am on February 15th. You can use the same bracketing approach to + specify any time period - a year, a month, a week, and so on. + + + + The syntax allows one special case: if you provide a string with no + spaces, it is treated as a pattern to match for the filename. + Therefore a string like "*.xls" will be equivalent to specifying "name + = *.xls". This "shorthand" notation does not work with compound + criteria. + + + + There is no logic in this class that insures that the inclusion + criteria are internally consistent. For example, it's possible to + specify criteria that says the file must have a size of less than 100 + bytes, as well as a size that is greater than 1000 bytes. Obviously + no file will ever satisfy such criteria, but this class does not check + for or detect such inconsistencies. + + + + + + Thrown in the setter if the value has an invalid syntax. + + + + + Indicates whether searches will traverse NTFS reparse points, like Junctions. + + + + + Summary description for EnumUtil. + + + + + Returns the value of the DescriptionAttribute if the specified Enum + value has one. If not, returns the ToString() representation of the + Enum value. + + The Enum to get the description for + + + + + Converts the string representation of the name or numeric value of one + or more enumerated constants to an equivalent enumerated object. + Note: use the DescriptionAttribute on enum values to enable this. + + The System.Type of the enumeration. + + A string containing the name or value to convert. + + + + + + Converts the string representation of the name or numeric value of one + or more enumerated constants to an equivalent enumerated object. A + parameter specified whether the operation is case-sensitive. Note: + use the DescriptionAttribute on enum values to enable this. + + The System.Type of the enumeration. + + A string containing the name or value to convert. + + + Whether the operation is case-sensitive or not. + + + + + This is a helper class supporting WinZip AES encryption. + This class is intended for use only by the DotNetZip library. + + + + Most uses of the DotNetZip library will not involve direct calls into + the WinZipAesCrypto class. Instead, the WinZipAesCrypto class is + instantiated and used by the ZipEntry() class when WinZip AES + encryption or decryption on an entry is employed. + + + + + A stream that encrypts as it writes, or decrypts as it reads. The + Crypto is AES in CTR (counter) mode, which is compatible with the AES + encryption employed by WinZip 12.0. + + + + The AES/CTR encryption protocol used by WinZip works like this: + + - start with a counter, initialized to zero. + + - to encrypt, take the data by 16-byte blocks. For each block: + - apply the transform to the counter + - increement the counter + - XOR the result of the transform with the plaintext to + get the ciphertext. + - compute the mac on the encrypted bytes + - when finished with all blocks, store the computed MAC. + + - to decrypt, take the data by 16-byte blocks. For each block: + - compute the mac on the encrypted bytes, + - apply the transform to the counter + - increement the counter + - XOR the result of the transform with the ciphertext to + get the plaintext. + - when finished with all blocks, compare the computed MAC against + the stored MAC + + + + + + + The constructor. + + The underlying stream + To either encrypt or decrypt. + The pre-initialized WinZipAesCrypto object. + The maximum number of bytes to read from the stream. + + + + Close the stream. + + + + + Flush the content in the stream. + + + + + This method throws a NotImplementedException. + + + + + This method throws a NotImplementedException. + + + + + Returns the final HMAC-SHA1-80 for the data that was encrypted. + + + + + Returns true if the stream can be read. + + + + + Always returns false. + + + + + Returns true if the CryptoMode is Encrypt. + + + + + Getting this property throws a NotImplementedException. + + + + + Getting or Setting this property throws a NotImplementedException. + + + + + Issued when an ZipEntry.ExtractWithPassword() method is invoked + with an incorrect password. + + + + + Base class for all exceptions defined by and throw by the Zip library. + + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + The innerException for this exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + The innerException for this exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Indicates that a read was attempted on a stream, and bad or incomplete data was + received. + + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + The innerException for this exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Issued when an CRC check fails upon extracting an entry from a zip archive. + + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Issued when errors occur saving a self-extracting archive. + + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Indicates that an operation was attempted on a ZipFile which was not possible + given the state of the instance. For example, if you call Save() on a ZipFile + which has no filename set, you can get this exception. + + + + + Default ctor. + + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The message in the exception. + The innerException for this exception. + + + + Come on, you know how exceptions work. Why are you looking at this documentation? + + The serialization info for the exception. + The streaming context from which to deserialize. + + + + Collects general purpose utility methods. + + + + private null constructor + + + + Utility routine for transforming path names from filesystem format (on Windows that means backslashes) to + a format suitable for use within zipfiles. This means trimming the volume letter and colon (if any) And + swapping backslashes for forward slashes. + + source path. + transformed path + + + + Finds a signature in the zip stream. This is useful for finding + the end of a zip entry, for example, or the beginning of the next ZipEntry. + + + + + Scans through 64k at a time. + + + + If the method fails to find the requested signature, the stream Position + after completion of this method is unchanged. If the method succeeds in + finding the requested signature, the stream position after completion is + direct AFTER the signature found in the stream. + + + + The stream to search + The 4-byte signature to find + The number of bytes read + + + + Create a pseudo-random filename, suitable for use as a temporary + file, and open it. + + + + The System.IO.Path.GetRandomFileName() method is not available on + the Compact Framework, so this library provides its own substitute + on NETCF. + + + This method produces a filename of the form + DotNetZip-xxxxxxxx.tmp, where xxxxxxxx is replaced by randomly + chosen characters, and creates that file. + + + + + + Workitem 7889: handle ERROR_LOCK_VIOLATION during read + + + This could be gracefully handled with an extension attribute, but + This assembly is built for .NET 2.0, so I cannot use them. + + + + + A decorator stream. It wraps another stream, and performs bookkeeping + to keep track of the stream Position. + + + + In some cases, it is not possible to get the Position of a stream, let's + say, on a write-only output stream like ASP.NET's + Response.OutputStream, or on a different write-only stream + provided as the destination for the zip by the application. In this + case, programmers can use this counting stream to count the bytes read + or written. + + + Consider the scenario of an application that saves a self-extracting + archive (SFX), that uses a custom SFX stub. + + + Saving to a filesystem file, the application would open the + filesystem file (getting a FileStream), save the custom sfx stub + into it, and then call ZipFile.Save(), specifying the same + FileStream. ZipFile.Save() does the right thing for the zipentry + offsets, by inquiring the Position of the FileStream before writing + any data, and then adding that initial offset into any ZipEntry + offsets in the zip directory. Everything works fine. + + + Now suppose the application is an ASPNET application and it saves + directly to Response.OutputStream. It's not possible for DotNetZip to + inquire the Position, so the offsets for the SFX will be wrong. + + + The workaround is for the application to use this class to wrap + HttpResponse.OutputStream, then write the SFX stub and the ZipFile + into that wrapper stream. Because ZipFile.Save() can inquire the + Position, it will then do the right thing with the offsets. + + + + + + The constructor. + + The underlying stream + + + + Adjust the byte count on the stream. + + + + the number of bytes to subtract from the count. + + + + + Subtract delta from the count of bytes written to the stream. + This is necessary when seeking back, and writing additional data, + as happens in some cases when saving Zip files. + + + + + + The read method. + + The buffer to hold the data read from the stream. + the offset within the buffer to copy the first byte read. + the number of bytes to read. + the number of bytes read, after decryption and decompression. + + + + Write data into the stream. + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Flushes the underlying stream. + + + + + Seek in the stream. + + the offset point to seek to + the reference point from which to seek + The new position + + + + Set the length of the underlying stream. Be careful with this! + + + the length to set on the underlying stream. + + + + Gets the wrapped stream. + + + + + The count of bytes written out to the stream. + + + + + the count of bytes that have been read from the stream. + + + + + Whether the stream can be read. + + + + + Whether it is possible to call Seek() on the stream. + + + + + Whether it is possible to call Write() on the stream. + + + + + The length of the underlying stream. + + + + + Returns the sum of number of bytes written, plus the initial + offset before writing. + + + + + The Position of the stream. + + + + + This class implements the "traditional" or "classic" PKZip encryption, + which today is considered to be weak. On the other hand it is + ubiquitous. This class is intended for use only by the DotNetZip + library. + + + + Most uses of the DotNetZip library will not involve direct calls into + the ZipCrypto class. Instead, the ZipCrypto class is instantiated and + used by the ZipEntry() class when encryption or decryption on an entry + is employed. If for some reason you really wanted to use a weak + encryption algorithm in some other application, you might use this + library. But you would be much better off using one of the built-in + strong encryption libraries in the .NET Framework, like the AES + algorithm or SHA. + + + + + The default constructor for ZipCrypto. + + + + This class is intended for internal use by the library only. It's + probably not useful to you. Seriously. Stop reading this + documentation. It's a waste of your time. Go do something else. + Check the football scores. Go get an ice cream with a friend. + Seriously. + + + + + + Call this method on a cipher text to render the plaintext. You must + first initialize the cipher with a call to InitCipher. + + + + + var cipher = new ZipCrypto(); + cipher.InitCipher(Password); + // Decrypt the header. This has a side effect of "further initializing the + // encryption keys" in the traditional zip encryption. + byte[] DecryptedMessage = cipher.DecryptMessage(EncryptedMessage); + + + + The encrypted buffer. + + The number of bytes to encrypt. + Should be less than or equal to CipherText.Length. + + + The plaintext. + + + + This is the converse of DecryptMessage. It encrypts the plaintext + and produces a ciphertext. + + + The plain text buffer. + + + The number of bytes to encrypt. + Should be less than or equal to plainText.Length. + + + The ciphertext. + + + + This initializes the cipher with the given password. + See AppNote.txt for details. + + + + The passphrase for encrypting or decrypting with this cipher. + + + + + Step 1 - Initializing the encryption keys + ----------------------------------------- + Start with these keys: + Key(0) := 305419896 (0x12345678) + Key(1) := 591751049 (0x23456789) + Key(2) := 878082192 (0x34567890) + + Then, initialize the keys with a password: + + loop for i from 0 to length(password)-1 + update_keys(password(i)) + end loop + + Where update_keys() is defined as: + + update_keys(char): + Key(0) := crc32(key(0),char) + Key(1) := Key(1) + (Key(0) bitwiseAND 000000ffH) + Key(1) := Key(1) * 134775813 + 1 + Key(2) := crc32(key(2),key(1) rightshift 24) + end update_keys + + Where crc32(old_crc,char) is a routine that given a CRC value and a + character, returns an updated CRC value after applying the CRC-32 + algorithm described elsewhere in this document. + + + + + After the keys are initialized, then you can use the cipher to + encrypt the plaintext. + + + + Essentially we encrypt the password with the keys, then discard the + ciphertext for the password. This initializes the keys for later use. + + + + + + + From AppNote.txt: + unsigned char decrypt_byte() + local unsigned short temp + temp :=- Key(2) | 2 + decrypt_byte := (temp * (temp ^ 1)) bitshift-right 8 + end decrypt_byte + + + + + A Stream for reading and concurrently decrypting data from a zip file, + or for writing and concurrently encrypting data to a zip file. + + + + The constructor. + The underlying stream + To either encrypt or decrypt. + The pre-initialized ZipCrypto object. + + + + Delegate in which the application writes the ZipEntry content for the named entry. + + + The name of the entry that must be written. + The stream to which the entry data should be written. + + + When you add an entry and specify a WriteDelegate, via , the application + code provides the logic that writes the entry data directly into the zip file. + + + + + This example shows how to define a WriteDelegate that obtains a DataSet, and then + writes the XML for the DataSet into the zip archive. There's no need to + save the XML to a disk file first. + + + private void WriteEntry (String filename, Stream output) + { + DataSet ds1 = ObtainDataSet(); + ds1.WriteXml(output); + } + + private void Run() + { + using (var zip = new ZipFile()) + { + zip.AddEntry(zipEntryName, WriteEntry); + zip.Save(zipFileName); + } + } + + + + Private Sub WriteEntry (ByVal filename As String, ByVal output As Stream) + DataSet ds1 = ObtainDataSet() + ds1.WriteXml(stream) + End Sub + + Public Sub Run() + Using zip = New ZipFile + zip.AddEntry(zipEntryName, New WriteDelegate(AddressOf WriteEntry)) + zip.Save(zipFileName) + End Using + End Sub + + + + + + + Delegate in which the application opens the stream, just-in-time, for the named entry. + + + + The name of the ZipEntry that the application should open the stream for. + + + + When you add an entry via , the application code provides the logic that + opens and closes the stream for the given ZipEntry. + + + + + + + Delegate in which the application closes the stream, just-in-time, for the named entry. + + + + The name of the ZipEntry that the application should close the stream for. + + + The stream to be closed. + + + When you add an entry via , the application code provides the logic that + opens and closes the stream for the given ZipEntry. + + + + + + + Delegate for the callback by which the application tells the + library the CompressionLevel to use for a file. + + + + + Using this callback, the application can, for example, specify that + previously-compressed files (.mp3, .png, .docx, etc) should use a + CompressionLevel of None, or can set the compression level based + on any other factor. + + + + + + + In an EventArgs type, indicates which sort of progress event is being + reported. + + + There are events for reading, events for saving, and events for + extracting. This enumeration allows a single EventArgs type to be sued to + describe one of multiple subevents. For example, a SaveProgress event is + invoked before, after, and during the saving of a single entry. The value + of an enum with this type, specifies which event is being triggered. The + same applies to Extraction, Reading and Adding events. + + + + + Indicates that a Add() operation has started. + + + + + Indicates that an individual entry in the archive has been added. + + + + + Indicates that a Add() operation has completed. + + + + + Indicates that a Read() operation has started. + + + + + Indicates that an individual entry in the archive is about to be read. + + + + + Indicates that an individual entry in the archive has just been read. + + + + + Indicates that a Read() operation has completed. + + + + + The given event reports the number of bytes read so far + during a Read() operation. + + + + + Indicates that a Save() operation has started. + + + + + Indicates that an individual entry in the archive is about to be written. + + + + + Indicates that an individual entry in the archive has just been saved. + + + + + Indicates that a Save() operation has completed. + + + + + Indicates that the zip archive has been created in a + temporary location during a Save() operation. + + + + + Indicates that the temporary file is about to be renamed to the final archive + name during a Save() operation. + + + + + Indicates that the temporary file is has just been renamed to the final archive + name during a Save() operation. + + + + + Indicates that the self-extracting archive has been compiled + during a Save() operation. + + + + + The given event is reporting the number of source bytes that have run through the compressor so far + during a Save() operation. + + + + + Indicates that an entry is about to be extracted. + + + + + Indicates that an entry has just been extracted. + + + + + Indicates that extraction of an entry would overwrite an existing + filesystem file. You must use + + ExtractExistingFileAction.InvokeExtractProgressEvent in the call + to ZipEntry.Extract() in order to receive this event. + + + + + The given event is reporting the number of bytes written so far for + the current entry during an Extract() operation. + + + + + Indicates that an ExtractAll operation is about to begin. + + + + + Indicates that an ExtractAll operation has completed. + + + + + Indicates that an error has occurred while saving a zip file. + This generally means the file cannot be opened, because it has been + removed, or because it is locked by another process. It can also + mean that the file cannot be Read, because of a range lock conflict. + + + + + Provides information about the progress of a save, read, or extract operation. + This is a base class; you will probably use one of the classes derived from this one. + + + + + The total number of entries to be saved or extracted. + + + + + The name of the last entry saved or extracted. + + + + + In an event handler, set this to cancel the save or extract + operation that is in progress. + + + + + The type of event being reported. + + + + + Returns the archive name associated to this event. + + + + + The number of bytes read or written so far for this entry. + + + + + Total number of bytes that will be read or written for this entry. + This number will be -1 if the value cannot be determined. + + + + + Provides information about the progress of a Read operation. + + + + + Provides information about the progress of a Add operation. + + + + + Provides information about the progress of a save operation. + + + + + Constructor for the SaveProgressEventArgs. + + the name of the zip archive. + whether this is before saving the entry, or after + The total number of entries in the zip archive. + Number of entries that have been saved. + The entry involved in the event. + + + + Number of entries saved so far. + + + + + Provides information about the progress of the extract operation. + + + + + Constructor for the ExtractProgressEventArgs. + + the name of the zip archive. + whether this is before saving the entry, or after + The total number of entries in the zip archive. + Number of entries that have been extracted. + The entry involved in the event. + The location to which entries are extracted. + + + + Number of entries extracted so far. This is set only if the + EventType is Extracting_BeforeExtractEntry or Extracting_AfterExtractEntry, and + the Extract() is occurring witin the scope of a call to ExtractAll(). + + + + + Returns the extraction target location, a filesystem path. + + + + + Provides information about the an error that occurred while zipping. + + + + + Returns the exception that occurred, if any. + + + + + Returns the name of the file that caused the exception, if any. + + + + + Represents a single entry in a ZipFile. Typically, applications get a ZipEntry + by enumerating the entries within a ZipFile, or by adding an entry to a ZipFile. + + + + + Reads one entry from the zip directory structure in the zip file. + + + + The zipfile for which a directory entry will be read. From this param, the + method gets the ReadStream and the expected text encoding + (ProvisionalAlternateEncoding) which is used if the entry is not marked + UTF-8. + + + + a list of previously seen entry names; used to prevent duplicates. + + + the entry read from the archive. + + + + Returns true if the passed-in value is a valid signature for a ZipDirEntry. + + the candidate 4-byte signature value. + true, if the signature is valid according to the PKWare spec. + + + + Default constructor. + + + Applications should never need to call this directly. It is exposed to + support COM Automation environments. + + + + + Sets the NTFS Creation, Access, and Modified times for the given entry. + + + + + When adding an entry from a file or directory, the Creation, Access, and + Modified times for the given entry are automatically set from the + filesystem values. When adding an entry from a stream or string, the + values are implicitly set to DateTime.Now. The application may wish to + set these values to some arbitrary value, before saving the archive, and + can do so using the various setters. If you want to set all of the times, + this method is more efficient. + + + + The values you set here will be retrievable with the , and properties. + + + + When this method is called, if both and are false, then the + EmitTimesInWindowsFormatWhenSaving flag is automatically set. + + + + DateTime values provided here without a DateTimeKind are assumed to be Local Time. + + + + the creation time of the entry. + the last access time of the entry. + the last modified time of the entry. + + + + + + + + + Provides a string representation of the instance. + a string representation of the instance. + + + + Extract the entry to the filesystem, starting at the current + working directory. + + + + This method has a bunch of overloads! One of them is sure to + be the right one for you... If you don't like these, check + out the ExtractWithPassword() methods. + + + + + + + + + This method extracts an entry from a zip file into the current + working directory. The path of the entry as extracted is the full + path as specified in the zip archive, relative to the current + working directory. After the file is extracted successfully, the + file attributes and timestamps are set. + + + + The action taken when extraction an entry would overwrite an + existing file is determined by the property. + + + + Within the call to Extract(), the content for the entry is + written into a filesystem file, and then the last modified time of the + file is set according to the property on + the entry. See the remarks the property for + some details about the last modified time. + + + + + + + Extract the entry to a file in the filesystem, using the specified + behavior when extraction would overwrite an existing file. + + + + + See the remarks on the property, for some + details about how the last modified time of the file is set after + extraction. + + + + + The action to take if extraction would overwrite an existing file. + + + + + Extracts the entry to the specified stream. + + + + + The caller can specify any write-able stream, for example a , a , or ASP.NET's + Response.OutputStream. The content will be decrypted and + decompressed as necessary. If the entry is encrypted and no password + is provided, this method will throw. + + + The position on the stream is not reset by this method before it extracts. + You may want to call stream.Seek() before calling ZipEntry.Extract(). + + + + + the stream to which the entry should be extracted. + + + + + + Extract the entry to the filesystem, starting at the specified base + directory. + + + the pathname of the base directory + + + + + + This example extracts only the entries in a zip file that are .txt files, + into a directory called "textfiles". + + using (ZipFile zip = ZipFile.Read("PackedDocuments.zip")) + { + foreach (string s1 in zip.EntryFilenames) + { + if (s1.EndsWith(".txt")) + { + zip[s1].Extract("textfiles"); + } + } + } + + + Using zip As ZipFile = ZipFile.Read("PackedDocuments.zip") + Dim s1 As String + For Each s1 In zip.EntryFilenames + If s1.EndsWith(".txt") Then + zip(s1).Extract("textfiles") + End If + Next + End Using + + + + + + + Using this method, existing entries in the filesystem will not be + overwritten. If you would like to force the overwrite of existing + files, see the property, or call + . + + + + See the remarks on the property, for some + details about how the last modified time of the created file is set. + + + + + + Extract the entry to the filesystem, starting at the specified base + directory, and using the specified behavior when extraction would + overwrite an existing file. + + + + + See the remarks on the property, for some + details about how the last modified time of the created file is set. + + + + + + String sZipPath = "Airborne.zip"; + String sFilePath = "Readme.txt"; + String sRootFolder = "Digado"; + using (ZipFile zip = ZipFile.Read(sZipPath)) + { + if (zip.EntryFileNames.Contains(sFilePath)) + { + // use the string indexer on the zip file + zip[sFileName].Extract(sRootFolder, + ExtractExistingFileAction.OverwriteSilently); + } + } + + + + Dim sZipPath as String = "Airborne.zip" + Dim sFilePath As String = "Readme.txt" + Dim sRootFolder As String = "Digado" + Using zip As ZipFile = ZipFile.Read(sZipPath) + If zip.EntryFileNames.Contains(sFilePath) + ' use the string indexer on the zip file + zip(sFilePath).Extract(sRootFolder, _ + ExtractExistingFileAction.OverwriteSilently) + End If + End Using + + + + the pathname of the base directory + + The action to take if extraction would overwrite an existing file. + + + + + Extract the entry to the filesystem, using the current working directory + and the specified password. + + + + This method has a bunch of overloads! One of them is sure to be + the right one for you... + + + + + + + + + Existing entries in the filesystem will not be overwritten. If you + would like to force the overwrite of existing files, see the property, or call + . + + + + See the remarks on the property for some + details about how the "last modified" time of the created file is + set. + + + + + In this example, entries that use encryption are extracted using a + particular password. + + using (var zip = ZipFile.Read(FilePath)) + { + foreach (ZipEntry e in zip) + { + if (e.UsesEncryption) + e.ExtractWithPassword("Secret!"); + else + e.Extract(); + } + } + + + Using zip As ZipFile = ZipFile.Read(FilePath) + Dim e As ZipEntry + For Each e In zip + If (e.UsesEncryption) + e.ExtractWithPassword("Secret!") + Else + e.Extract + End If + Next + End Using + + + The Password to use for decrypting the entry. + + + + Extract the entry to the filesystem, starting at the specified base + directory, and using the specified password. + + + + + + + + Existing entries in the filesystem will not be overwritten. If you + would like to force the overwrite of existing files, see the property, or call + . + + + + See the remarks on the property, for some + details about how the last modified time of the created file is set. + + + + The pathname of the base directory. + The Password to use for decrypting the entry. + + + + Extract the entry to a file in the filesystem, relative to the + current directory, using the specified behavior when extraction + would overwrite an existing file. + + + + + See the remarks on the property, for some + details about how the last modified time of the created file is set. + + + + The Password to use for decrypting the entry. + + + The action to take if extraction would overwrite an existing file. + + + + + Extract the entry to the filesystem, starting at the specified base + directory, and using the specified behavior when extraction would + overwrite an existing file. + + + + See the remarks on the property, for some + details about how the last modified time of the created file is set. + + + the pathname of the base directory + + The action to take if extraction would + overwrite an existing file. + + The Password to use for decrypting the entry. + + + + Extracts the entry to the specified stream, using the specified + Password. For example, the caller could extract to Console.Out, or + to a MemoryStream. + + + + + The caller can specify any write-able stream, for example a , a , or ASP.NET's + Response.OutputStream. The content will be decrypted and + decompressed as necessary. If the entry is encrypted and no password + is provided, this method will throw. + + + The position on the stream is not reset by this method before it extracts. + You may want to call stream.Seek() before calling ZipEntry.Extract(). + + + + + + the stream to which the entry should be extracted. + + + The password to use for decrypting the entry. + + + + + Opens a readable stream corresponding to the zip entry in the + archive. The stream decompresses and decrypts as necessary, as it + is read. + + + + + + DotNetZip offers a variety of ways to extract entries from a zip + file. This method allows an application to extract an entry by + reading a . + + + + The return value is of type . Use it as you would any + stream for reading. When an application calls on that stream, it will + receive data from the zip entry that is decrypted and decompressed + as necessary. + + + + CrcCalculatorStream adds one additional feature: it keeps a + CRC32 checksum on the bytes of the stream as it is read. The CRC + value is available in the property on the + CrcCalculatorStream. When the read is complete, your + application + should check this CRC against the + property on the ZipEntry to validate the content of the + ZipEntry. You don't have to validate the entry using the CRC, but + you should, to verify integrity. Check the example for how to do + this. + + + + If the entry is protected with a password, then you need to provide + a password prior to calling , either by + setting the property on the entry, or the + property on the ZipFile + itself. Or, you can use , the + overload of OpenReader that accepts a password parameter. + + + + If you want to extract entry data into a write-able stream that is + already opened, like a , do not + use this method. Instead, use . + + + + Your application may use only one stream created by OpenReader() at + a time, and you should not call other Extract methods before + completing your reads on a stream obtained from OpenReader(). This + is because there is really only one source stream for the compressed + content. A call to OpenReader() seeks in the source stream, to the + beginning of the compressed content. A subsequent call to + OpenReader() on a different entry will seek to a different position + in the source stream, as will a call to Extract() or one of its + overloads. This will corrupt the state for the decompressing stream + from the original call to OpenReader(). + + + + The OpenReader() method works only when the ZipEntry is + obtained from an instance of ZipFile. This method will throw + an exception if the ZipEntry is obtained from a . + + + + + This example shows how to open a zip archive, then read in a named + entry via a stream. After the read loop is complete, the code + compares the calculated during the read loop with the expected CRC + on the ZipEntry, to verify the extraction. + + using (ZipFile zip = new ZipFile(ZipFileToRead)) + { + ZipEntry e1= zip["Elevation.mp3"]; + using (Ionic.Zlib.CrcCalculatorStream s = e1.OpenReader()) + { + byte[] buffer = new byte[4096]; + int n, totalBytesRead= 0; + do { + n = s.Read(buffer,0, buffer.Length); + totalBytesRead+=n; + } while (n>0); + if (s.Crc32 != e1.Crc32) + throw new Exception(string.Format("The Zip Entry failed the CRC Check. (0x{0:X8}!=0x{1:X8})", s.Crc32, e1.Crc32)); + if (totalBytesRead != e1.UncompressedSize) + throw new Exception(string.Format("We read an unexpected number of bytes. ({0}!={1})", totalBytesRead, e1.UncompressedSize)); + } + } + + + Using zip As New ZipFile(ZipFileToRead) + Dim e1 As ZipEntry = zip.Item("Elevation.mp3") + Using s As Ionic.Zlib.CrcCalculatorStream = e1.OpenReader + Dim n As Integer + Dim buffer As Byte() = New Byte(4096) {} + Dim totalBytesRead As Integer = 0 + Do + n = s.Read(buffer, 0, buffer.Length) + totalBytesRead = (totalBytesRead + n) + Loop While (n > 0) + If (s.Crc32 <> e1.Crc32) Then + Throw New Exception(String.Format("The Zip Entry failed the CRC Check. (0x{0:X8}!=0x{1:X8})", s.Crc32, e1.Crc32)) + End If + If (totalBytesRead <> e1.UncompressedSize) Then + Throw New Exception(String.Format("We read an unexpected number of bytes. ({0}!={1})", totalBytesRead, e1.UncompressedSize)) + End If + End Using + End Using + + + + The Stream for reading. + + + + Opens a readable stream for an encrypted zip entry in the archive. + The stream decompresses and decrypts as necessary, as it is read. + + + + + See the documentation on the method for + full details. This overload allows the application to specify a + password for the ZipEntry to be read. + + + + The password to use for decrypting the entry. + The Stream for reading. + + + + Validates that the args are consistent. + + + Only one of {baseDir, outStream} can be non-null. + If baseDir is non-null, then the outputFile is created. + + + + + Reads one ZipEntry from the given stream. The content for + the entry does not get decompressed or decrypted. This method + basically reads metadata, and seeks. + + the ZipContainer this entry belongs to. + + true of this is the first entry being read from the stream. + + the ZipEntry read from the stream. + + + + Finds a particular segment in the given extra field. + This is used when modifying a previously-generated + extra field, in particular when removing the AES crypto + segment in the extra field. + + + + + At current cursor position in the stream, read the extra + field, and set the properties on the ZipEntry instance + appropriately. This can be called when processing the + Extra field in the Central Directory, or in the local + header. + + + + + generate and return a byte array that encodes the filename + for the entry. + + + + side effects: generate and store into _CommentBytes the + byte array for any comment attached to the entry. Also + sets _actualEncoding to indicate the actual encoding + used. The same encoding is used for both filename and + comment. + + + + + + Stores the position of the entry source stream, or, if the position is + already stored, seeks to that position. + + + + + This method is called in prep for reading the source stream. If PKZIP + encryption is used, then we need to calc the CRC32 before doing the + encryption, because the CRC is used in the 12th byte of the PKZIP + encryption header. So, we need to be able to seek backward in the source + when saving the ZipEntry. This method is called from the place that + calculates the CRC, and also from the method that does the encryption of + the file data. + + + + The first time through, this method sets the _sourceStreamOriginalPosition + field. Subsequent calls to this method seek to that position. + + + + + + Copy metadata that may have been changed by the app. We do this when + resetting the zipFile instance. If the app calls Save() on a ZipFile, then + tries to party on that file some more, we may need to Reset() it , which + means re-reading the entries and then copying the metadata. I think. + + + + + Set the input stream and get its length, if possible. The length is + used for progress updates, AND, to allow an optimization in case of + a stream/file of zero length. In that case we skip the Encrypt and + compression Stream. (like DeflateStream or BZip2OutputStream) + + + + + Prepare the given stream for output - wrap it in a CountingStream, and + then in a CRC stream, and an encryptor and deflator as appropriate. + + + + Previously this was used in ZipEntry.Write(), but in an effort to + introduce some efficiencies in that method I've refactored to put the + code inline. This method still gets called by ZipOutputStream. + + + + + + True if the referenced entry is a directory. + + + + + Provides a human-readable string with information about the ZipEntry. + + + + + The time and date at which the file indicated by the ZipEntry was + last modified. + + + + + The DotNetZip library sets the LastModified value for an entry, equal to + the Last Modified time of the file in the filesystem. If an entry is + added from a stream, the library uses System.DateTime.Now for this + value, for the given entry. + + + + This property allows the application to retrieve and possibly set the + LastModified value on an entry, to an arbitrary value. values with a + setting of DateTimeKind.Unspecified are taken to be expressed as + DateTimeKind.Local. + + + + Be aware that because of the way PKWare's + Zip specification describes how times are stored in the zip file, + the full precision of the System.DateTime datatype is not stored + for the last modified time when saving zip files. For more information on + how times are formatted, see the PKZip specification. + + + + The actual last modified time of a file can be stored in multiple ways in + the zip file, and they are not mutually exclusive: + + + + + In the so-called "DOS" format, which has a 2-second precision. Values + are rounded to the nearest even second. For example, if the time on the + file is 12:34:43, then it will be stored as 12:34:44. This first value + is accessible via the LastModified property. This value is always + present in the metadata for each zip entry. In some cases the value is + invalid, or zero. + + + + In the so-called "Windows" or "NTFS" format, as an 8-byte integer + quantity expressed as the number of 1/10 milliseconds (in other words + the number of 100 nanosecond units) since January 1, 1601 (UTC). This + format is how Windows represents file times. This time is accessible + via the ModifiedTime property. + + + + In the "Unix" format, a 4-byte quantity specifying the number of seconds since + January 1, 1970 UTC. + + + + In an older format, now deprecated but still used by some current + tools. This format is also a 4-byte quantity specifying the number of + seconds since January 1, 1970 UTC. + + + + + + Zip tools and libraries will always at least handle (read or write) the + DOS time, and may also handle the other time formats. Keep in mind that + while the names refer to particular operating systems, there is nothing in + the time formats themselves that prevents their use on other operating + systems. + + + + When reading ZIP files, the DotNetZip library reads the Windows-formatted + time, if it is stored in the entry, and sets both LastModified and + ModifiedTime to that value. When writing ZIP files, the DotNetZip + library by default will write both time quantities. It can also emit the + Unix-formatted time if desired (See .) + + + + The last modified time of the file created upon a call to + ZipEntry.Extract() may be adjusted during extraction to compensate + for differences in how the .NET Base Class Library deals with daylight + saving time (DST) versus how the Windows filesystem deals with daylight + saving time. Raymond Chen provides + some good context. + + + + In a nutshell: Daylight savings time rules change regularly. In 2007, for + example, the inception week of DST changed. In 1977, DST was in place all + year round. In 1945, likewise. And so on. Win32 does not attempt to + guess which time zone rules were in effect at the time in question. It + will render a time as "standard time" and allow the app to change to DST + as necessary. .NET makes a different choice. + + + + Compare the output of FileInfo.LastWriteTime.ToString("f") with what you + see in the Windows Explorer property sheet for a file that was last + written to on the other side of the DST transition. For example, suppose + the file was last modified on October 17, 2003, during DST but DST is not + currently in effect. Explorer's file properties reports Thursday, October + 17, 2003, 8:45:38 AM, but .NETs FileInfo reports Thursday, October 17, + 2003, 9:45 AM. + + + + Win32 says, "Thursday, October 17, 2002 8:45:38 AM PST". Note: Pacific + STANDARD Time. Even though October 17 of that year occurred during Pacific + Daylight Time, Win32 displays the time as standard time because that's + what time it is NOW. + + + + .NET BCL assumes that the current DST rules were in place at the time in + question. So, .NET says, "Well, if the rules in effect now were also in + effect on October 17, 2003, then that would be daylight time" so it + displays "Thursday, October 17, 2003, 9:45 AM PDT" - daylight time. + + + + So .NET gives a value which is more intuitively correct, but is also + potentially incorrect, and which is not invertible. Win32 gives a value + which is intuitively incorrect, but is strictly correct. + + + + Because of this funkiness, this library adds one hour to the LastModified + time on the extracted file, if necessary. That is to say, if the time in + question had occurred in what the .NET Base Class Library assumed to be + DST. This assumption may be wrong given the constantly changing DST rules, + but it is the best we can do. + + + + + + + + Last Modified time for the file represented by the entry. + + + + + + This value corresponds to the "last modified" time in the NTFS file times + as described in the Zip + specification. When getting this property, the value may be + different from . When setting the property, + the property also gets set, but with a lower + precision. + + + + Let me explain. It's going to take a while, so get + comfortable. Originally, waaaaay back in 1989 when the ZIP specification + was originally described by the esteemed Mr. Phil Katz, the dominant + operating system of the time was MS-DOS. MSDOS stored file times with a + 2-second precision, because, c'mon, who is ever going to need better + resolution than THAT? And so ZIP files, regardless of the platform on + which the zip file was created, store file times in exactly the same format that DOS used + in 1989. + + + + Since then, the ZIP spec has evolved, but the internal format for file + timestamps remains the same. Despite the fact that the way times are + stored in a zip file is rooted in DOS heritage, any program on any + operating system can format a time in this way, and most zip tools and + libraries DO - they round file times to the nearest even second and store + it just like DOS did 25+ years ago. + + + + PKWare extended the ZIP specification to allow a zip file to store what + are called "NTFS Times" and "Unix(tm) times" for a file. These are the + last write, last access, and file creation + times of a particular file. These metadata are not actually specific + to NTFS or Unix. They are tracked for each file by NTFS and by various + Unix filesystems, but they are also tracked by other filesystems, too. + The key point is that the times are formatted in the zip file + in the same way that NTFS formats the time (ticks since win32 epoch), + or in the same way that Unix formats the time (seconds since Unix + epoch). As with the DOS time, any tool or library running on any + operating system is capable of formatting a time in one of these ways + and embedding it into the zip file. + + + + These extended times are higher precision quantities than the DOS time. + As described above, the (DOS) LastModified has a precision of 2 seconds. + The Unix time is stored with a precision of 1 second. The NTFS time is + stored with a precision of 0.0000001 seconds. The quantities are easily + convertible, except for the loss of precision you may incur. + + + + A zip archive can store the {C,A,M} times in NTFS format, in Unix format, + or not at all. Often a tool running on Unix or Mac will embed the times + in Unix format (1 second precision), while WinZip running on Windows might + embed the times in NTFS format (precision of of 0.0000001 seconds). When + reading a zip file with these "extended" times, in either format, + DotNetZip represents the values with the + ModifiedTime, AccessedTime and CreationTime + properties on the ZipEntry. + + + + While any zip application or library, regardless of the platform it + runs on, could use any of the time formats allowed by the ZIP + specification, not all zip tools or libraries do support all these + formats. Storing the higher-precision times for each entry is + optional for zip files, and many tools and libraries don't use the + higher precision quantities at all. The old DOS time, represented by + , is guaranteed to be present, though it + sometimes unset. + + + + Ok, getting back to the question about how the LastModified + property relates to this ModifiedTime + property... LastModified is always set, while + ModifiedTime is not. (The other times stored in the NTFS + times extension, CreationTime and AccessedTime also + may not be set on an entry that is read from an existing zip file.) + When reading a zip file, then LastModified takes the DOS time + that is stored with the file. If the DOS time has been stored as zero + in the zipfile, then this library will use DateTime.Now for the + LastModified value. If the ZIP file was created by an evolved + tool, then there will also be higher precision NTFS or Unix times in + the zip file. In that case, this library will read those times, and + set LastModified and ModifiedTime to the same value, the + one corresponding to the last write time of the file. If there are no + higher precision times stored for the entry, then ModifiedTime + remains unset (likewise AccessedTime and CreationTime), + and LastModified keeps its DOS time. + + + + When creating zip files with this library, by default the extended time + properties (ModifiedTime, AccessedTime, and + CreationTime) are set on the ZipEntry instance, and these data are + stored in the zip archive for each entry, in NTFS format. If you add an + entry from an actual filesystem file, then the entry gets the actual file + times for that file, to NTFS-level precision. If you add an entry from a + stream, or a string, then the times get the value DateTime.Now. In + this case LastModified and ModifiedTime will be identical, + to 2 seconds of precision. You can explicitly set the + CreationTime, AccessedTime, and ModifiedTime of an + entry using the property setters. If you want to set all of those + quantities, it's more efficient to use the method. Those + changes are not made permanent in the zip file until you call or one of its cousins. + + + + When creating a zip file, you can override the default behavior of + this library for formatting times in the zip file, disabling the + embedding of file times in NTFS format or enabling the storage of file + times in Unix format, or both. You may want to do this, for example, + when creating a zip file on Windows, that will be consumed on a Mac, + by an application that is not hip to the "NTFS times" format. To do + this, use the and + properties. A valid zip + file may store the file times in both formats. But, there are no + guarantees that a program running on Mac or Linux will gracefully + handle the NTFS-formatted times when Unix times are present, or that a + non-DotNetZip-powered application running on Windows will be able to + handle file times in Unix format. DotNetZip will always do something + reasonable; other libraries or tools may not. When in doubt, test. + + + + I'll bet you didn't think one person could type so much about time, eh? + And reading it was so enjoyable, too! Well, in appreciation, maybe you + should donate? + + + + + + + + + + + Last Access time for the file represented by the entry. + + + This value may or may not be meaningful. If the ZipEntry was read from an existing + Zip archive, this information may not be available. For an explanation of why, see + . + + + + + + + + The file creation time for the file represented by the entry. + + + + This value may or may not be meaningful. If the ZipEntry was read + from an existing zip archive, and the creation time was not set on the entry + when the zip file was created, then this property may be meaningless. For an + explanation of why, see . + + + + + + + + Specifies whether the Creation, Access, and Modified times for the given + entry will be emitted in "Windows format" when the zip archive is saved. + + + + + An application creating a zip archive can use this flag to explicitly + specify that the file times for the entry should or should not be stored + in the zip archive in the format used by Windows. The default value of + this property is true. + + + + When adding an entry from a file or directory, the Creation (), Access (), and Modified + () times for the given entry are automatically + set from the filesystem values. When adding an entry from a stream or + string, all three values are implicitly set to DateTime.Now. Applications + can also explicitly set those times by calling . + + + + PKWARE's + zip specification describes multiple ways to format these times in a + zip file. One is the format Windows applications normally use: 100ns ticks + since Jan 1, 1601 UTC. The other is a format Unix applications typically + use: seconds since January 1, 1970 UTC. Each format can be stored in an + "extra field" in the zip entry when saving the zip archive. The former + uses an extra field with a Header Id of 0x000A, while the latter uses a + header ID of 0x5455. + + + + Not all zip tools and libraries can interpret these fields. Windows + compressed folders is one that can read the Windows Format timestamps, + while I believe the Infozip + tools can read the Unix format timestamps. Although the time values are + easily convertible, subject to a loss of precision, some tools and + libraries may be able to read only one or the other. DotNetZip can read or + write times in either or both formats. + + + + The times stored are taken from , , and . + + + + This property is not mutually exclusive from the property. It is + possible that a zip entry can embed the timestamps in both forms, one + form, or neither. But, there are no guarantees that a program running on + Mac or Linux will gracefully handle NTFS Formatted times, or that a + non-DotNetZip-powered application running on Windows will be able to + handle file times in Unix format. When in doubt, test. + + + + Normally you will use the ZipFile.EmitTimesInWindowsFormatWhenSaving + property, to specify the behavior for all entries in a zip, rather than + the property on each individual entry. + + + + + + + + + + + + + Specifies whether the Creation, Access, and Modified times for the given + entry will be emitted in "Unix(tm) format" when the zip archive is saved. + + + + + An application creating a zip archive can use this flag to explicitly + specify that the file times for the entry should or should not be stored + in the zip archive in the format used by Unix. By default this flag is + false, meaning the Unix-format times are not stored in the zip + archive. + + + + When adding an entry from a file or directory, the Creation (), Access (), and Modified + () times for the given entry are automatically + set from the filesystem values. When adding an entry from a stream or + string, all three values are implicitly set to DateTime.Now. Applications + can also explicitly set those times by calling . + + + + PKWARE's + zip specification describes multiple ways to format these times in a + zip file. One is the format Windows applications normally use: 100ns ticks + since Jan 1, 1601 UTC. The other is a format Unix applications typically + use: seconds since Jan 1, 1970 UTC. Each format can be stored in an + "extra field" in the zip entry when saving the zip archive. The former + uses an extra field with a Header Id of 0x000A, while the latter uses a + header ID of 0x5455. + + + + Not all tools and libraries can interpret these fields. Windows + compressed folders is one that can read the Windows Format timestamps, + while I believe the Infozip + tools can read the Unix format timestamps. Although the time values are + easily convertible, subject to a loss of precision, some tools and + libraries may be able to read only one or the other. DotNetZip can read or + write times in either or both formats. + + + + The times stored are taken from , , and . + + + + This property is not mutually exclusive from the property. It is + possible that a zip entry can embed the timestamps in both forms, one + form, or neither. But, there are no guarantees that a program running on + Mac or Linux will gracefully handle NTFS Formatted times, or that a + non-DotNetZip-powered application running on Windows will be able to + handle file times in Unix format. When in doubt, test. + + + + Normally you will use the ZipFile.EmitTimesInUnixFormatWhenSaving + property, to specify the behavior for all entries, rather than the + property on each individual entry. + + + + + + + + + + + + + The type of timestamp attached to the ZipEntry. + + + + This property is valid only for a ZipEntry that was read from a zip archive. + It indicates the type of timestamp attached to the entry. + + + + + + + + The file attributes for the entry. + + + + + + The attributes in NTFS include + ReadOnly, Archive, Hidden, System, and Indexed. When adding a + ZipEntry to a ZipFile, these attributes are set implicitly when + adding an entry from the filesystem. When adding an entry from a stream + or string, the Attributes are not set implicitly. Regardless of the way + an entry was added to a ZipFile, you can set the attributes + explicitly if you like. + + + + When reading a ZipEntry from a ZipFile, the attributes are + set according to the data stored in the ZipFile. If you extract the + entry from the archive to a filesystem file, DotNetZip will set the + attributes on the resulting file accordingly. + + + + The attributes can be set explicitly by the application. For example the + application may wish to set the FileAttributes.ReadOnly bit for all + entries added to an archive, so that on unpack, this attribute will be set + on the extracted file. Any changes you make to this property are made + permanent only when you call a Save() method on the ZipFile + instance that contains the ZipEntry. + + + + For example, an application may wish to zip up a directory and set the + ReadOnly bit on every file in the archive, so that upon later extraction, + the resulting files will be marked as ReadOnly. Not every extraction tool + respects these attributes, but if you unpack with DotNetZip, as for + example in a self-extracting archive, then the attributes will be set as + they are stored in the ZipFile. + + + + These attributes may not be interesting or useful if the resulting archive + is extracted on a non-Windows platform. How these attributes get used + upon extraction depends on the platform and tool used. + + + + This property is only partially supported in the Silverlight version + of the library: applications can read attributes on entries within + ZipFiles. But extracting entries within Silverlight will not set the + attributes on the extracted files. + + + + + + + The name of the filesystem file, referred to by the ZipEntry. + + + + + This property specifies the thing-to-be-zipped on disk, and is set only + when the ZipEntry is being created from a filesystem file. If the + ZipFile is instantiated by reading an existing .zip archive, then + the LocalFileName will be null (Nothing in VB). + + + + When it is set, the value of this property may be different than , which is the path used in the archive itself. If you + call Zip.AddFile("foop.txt", AlternativeDirectory), then the path + used for the ZipEntry within the zip archive will be different + than this path. + + + + If the entry is being added from a stream, then this is null (Nothing in VB). + + + + + + + + The name of the file contained in the ZipEntry. + + + + + + This is the name of the entry in the ZipFile itself. When creating + a zip archive, if the ZipEntry has been created from a filesystem + file, via a call to or , or a related overload, the value + of this property is derived from the name of that file. The + FileName property does not include drive letters, and may include a + different directory path, depending on the value of the + directoryPathInArchive parameter used when adding the entry into + the ZipFile. + + + + In some cases there is no related filesystem file - for example when a + ZipEntry is created using or one of the similar overloads. In this case, the value of + this property is derived from the fileName and the directory path passed + to that method. + + + + When reading a zip file, this property takes the value of the entry name + as stored in the zip file. If you extract such an entry, the extracted + file will take the name given by this property. + + + + Applications can set this property when creating new zip archives or when + reading existing archives. When setting this property, the actual value + that is set will replace backslashes with forward slashes, in accordance + with the Zip + specification, for compatibility with Unix(tm) and ... get + this.... Amiga! + + + + If an application reads a ZipFile via or a related overload, and then explicitly + sets the FileName on an entry contained within the ZipFile, and + then calls , the application will effectively + rename the entry within the zip archive. + + + + If an application sets the value of FileName, then calls + Extract() on the entry, the entry is extracted to a file using the + newly set value as the filename. The FileName value is made + permanent in the zip archive only after a call to one of the + ZipFile.Save() methods on the ZipFile that contains the + ZipEntry. + + + + If an application attempts to set the FileName to a value that + would result in a duplicate entry in the ZipFile, an exception is + thrown. + + + + When a ZipEntry is contained within a ZipFile, applications + cannot rename the entry within the context of a foreach (For + Each in VB) loop, because of the way the ZipFile stores + entries. If you need to enumerate through all the entries and rename one + or more of them, use ZipFile.EntriesSorted as the + collection. See also, ZipFile.GetEnumerator(). + + + + + + + The stream that provides content for the ZipEntry. + + + + + + The application can use this property to set the input stream for an + entry on a just-in-time basis. Imagine a scenario where the application + creates a ZipFile comprised of content obtained from hundreds of + files, via calls to AddFile(). The DotNetZip library opens streams + on these files on a just-in-time basis, only when writing the entry out to + an external store within the scope of a ZipFile.Save() call. Only + one input stream is opened at a time, as each entry is being written out. + + + + Now imagine a different application that creates a ZipFile + with content obtained from hundreds of streams, added through . Normally the + application would supply an open stream to that call. But when large + numbers of streams are being added, this can mean many open streams at one + time, unnecessarily. + + + + To avoid this, call and specify delegates that open and close the stream at + the time of Save. + + + + + Setting the value of this property when the entry was not added from a + stream (for example, when the ZipEntry was added with or , or when the entry was added by + reading an existing zip archive) will throw an exception. + + + + + + + + A flag indicating whether the InputStream was provided Just-in-time. + + + + + + When creating a zip archive, an application can obtain content for one or + more of the ZipEntry instances from streams, using the method. At the time + of calling that method, the application can supply null as the value of + the stream parameter. By doing so, the application indicates to the + library that it will provide a stream for the entry on a just-in-time + basis, at the time one of the ZipFile.Save() methods is called and + the data for the various entries are being compressed and written out. + + + + In this case, the application can set the + property, typically within the SaveProgress event (event type: ) for that entry. + + + + The application will later want to call Close() and Dispose() on that + stream. In the SaveProgress event, when the event type is , the application can + do so. This flag indicates that the stream has been provided by the + application on a just-in-time basis and that it is the application's + responsibility to call Close/Dispose on that stream. + + + + + + + + An enum indicating the source of the ZipEntry. + + + + + The version of the zip engine needed to read the ZipEntry. + + + + + This is a readonly property, indicating the version of the Zip + specification that the extracting tool or library must support to + extract the given entry. Generally higher versions indicate newer + features. Older zip engines obviously won't know about new features, and + won't be able to extract entries that depend on those newer features. + + + + + value + Features + + + + 20 + a basic Zip Entry, potentially using PKZIP encryption. + + + + + 45 + The ZIP64 extension is used on the entry. + + + + + 46 + File is compressed using BZIP2 compression* + + + + 50 + File is encrypted using PkWare's DES, 3DES, (broken) RC2 or RC4 + + + + 51 + File is encrypted using PKWare's AES encryption or corrected RC2 encryption. + + + + 52 + File is encrypted using corrected RC2-64 encryption** + + + + 61 + File is encrypted using non-OAEP key wrapping*** + + + + 63 + File is compressed using LZMA, PPMd+, Blowfish, or Twofish + + + + + + There are other values possible, not listed here. DotNetZip supports + regular PKZip encryption, and ZIP64 extensions. DotNetZip cannot extract + entries that require a zip engine higher than 45. + + + + This value is set upon reading an existing zip file, or after saving a zip + archive. + + + + + + The comment attached to the ZipEntry. + + + + + Each entry in a zip file can optionally have a comment associated to + it. The comment might be displayed by a zip tool during extraction, for + example. + + + + By default, the Comment is encoded in IBM437 code page. You can + specify an alternative with and + . + + + + + + + + Indicates whether the entry requires ZIP64 extensions. + + + + + + This property is null (Nothing in VB) until a Save() method on the + containing instance has been called. The property is + non-null (HasValue is true) only after a Save() method has + been called. + + + + After the containing ZipFile has been saved, the Value of this + property is true if any of the following three conditions holds: the + uncompressed size of the entry is larger than 0xFFFFFFFF; the compressed + size of the entry is larger than 0xFFFFFFFF; the relative offset of the + entry within the zip archive is larger than 0xFFFFFFFF. These quantities + are not known until a Save() is attempted on the zip archive and + the compression is applied. + + + + If none of the three conditions holds, then the Value is false. + + + + A Value of false does not indicate that the entry, as saved in the + zip archive, does not use ZIP64. It merely indicates that ZIP64 is + not required. An entry may use ZIP64 even when not required if + the property on the containing + ZipFile instance is set to , or if + the property on the containing + ZipFile instance is set to + and the output stream was not seekable. + + + + + + + + Indicates whether the entry actually used ZIP64 extensions, as it was most + recently written to the output file or stream. + + + + + + This Nullable property is null (Nothing in VB) until a Save() + method on the containing instance has been + called. HasValue is true only after a Save() method has been + called. + + + + The value of this property for a particular ZipEntry may change + over successive calls to Save() methods on the containing ZipFile, + even if the file that corresponds to the ZipEntry does not. This + may happen if other entries contained in the ZipFile expand, + causing the offset for this particular entry to exceed 0xFFFFFFFF. + + + + + + + The bitfield for the entry as defined in the zip spec. You probably + never need to look at this. + + + + + You probably do not need to concern yourself with the contents of this + property, but in case you do: + + + + + bit + meaning + + + + 0 + set if encryption is used. + + + + 1-2 + + set to determine whether normal, max, fast deflation. DotNetZip library + always leaves these bits unset when writing (indicating "normal" + deflation"), but can read an entry with any value here. + + + + + 3 + + Indicates that the Crc32, Compressed and Uncompressed sizes are zero in the + local header. This bit gets set on an entry during writing a zip file, when + it is saved to a non-seekable output stream. + + + + + + 4 + reserved for "enhanced deflating". This library doesn't do enhanced deflating. + + + + 5 + set to indicate the zip is compressed patched data. This library doesn't do that. + + + + 6 + + set if PKWare's strong encryption is used (must also set bit 1 if bit 6 is + set). This bit is not set if WinZip's AES encryption is set. + + + + 7 + not used + + + + 8 + not used + + + + 9 + not used + + + + 10 + not used + + + + 11 + + Language encoding flag (EFS). If this bit is set, the filename and comment + fields for this file must be encoded using UTF-8. This library currently + does not support UTF-8. + + + + + 12 + Reserved by PKWARE for enhanced compression. + + + + 13 + + Used when encrypting the Central Directory to indicate selected data + values in the Local Header are masked to hide their actual values. See + the section in the Zip + specification describing the Strong Encryption Specification for + details. + + + + + 14 + Reserved by PKWARE. + + + + 15 + Reserved by PKWARE. + + + + + + + + + The compression method employed for this ZipEntry. + + + + + + The + Zip specification allows a variety of compression methods. This + library supports just two: 0x08 = Deflate. 0x00 = Store (no compression), + for reading or writing. + + + + When reading an entry from an existing zipfile, the value you retrieve + here indicates the compression method used on the entry by the original + creator of the zip. When writing a zipfile, you can specify either 0x08 + (Deflate) or 0x00 (None). If you try setting something else, you will get + an exception. + + + + You may wish to set CompressionMethod to CompressionMethod.None (0) + when zipping already-compressed data like a jpg, png, or mp3 file. + This can save time and cpu cycles. + + + + When setting this property on a ZipEntry that is read from an + existing zip file, calling ZipFile.Save() will cause the new + CompressionMethod to be used on the entry in the newly saved zip file. + + + + Setting this property may have the side effect of modifying the + CompressionLevel property. If you set the CompressionMethod to a + value other than None, and CompressionLevel is previously + set to None, then CompressionLevel will be set to + Default. + + + + + + + In this example, the first entry added to the zip archive uses the default + behavior - compression is used where it makes sense. The second entry, + the MP3 file, is added to the archive without being compressed. + + using (ZipFile zip = new ZipFile(ZipFileToCreate)) + { + ZipEntry e1= zip.AddFile(@"notes\Readme.txt"); + ZipEntry e2= zip.AddFile(@"music\StopThisTrain.mp3"); + e2.CompressionMethod = CompressionMethod.None; + zip.Save(); + } + + + + Using zip As New ZipFile(ZipFileToCreate) + zip.AddFile("notes\Readme.txt") + Dim e2 as ZipEntry = zip.AddFile("music\StopThisTrain.mp3") + e2.CompressionMethod = CompressionMethod.None + zip.Save + End Using + + + + + + Sets the compression level to be used for the entry when saving the zip + archive. This applies only for CompressionMethod = DEFLATE. + + + + + When using the DEFLATE compression method, Varying the compression + level used on entries can affect the size-vs-speed tradeoff when + compression and decompressing data streams or files. + + + + If you do not set this property, the default compression level is used, + which normally gives a good balance of compression efficiency and + compression speed. In some tests, using BestCompression can + double the time it takes to compress, while delivering just a small + increase in compression efficiency. This behavior will vary with the + type of data you compress. If you are in doubt, just leave this setting + alone, and accept the default. + + + + When setting this property on a ZipEntry that is read from an + existing zip file, calling ZipFile.Save() will cause the new + CompressionLevel to be used on the entry in the newly saved zip file. + + + + Setting this property may have the side effect of modifying the + CompressionMethod property. If you set the CompressionLevel + to a value other than None, CompressionMethod will be set + to Deflate, if it was previously None. + + + + Setting this property has no effect if the CompressionMethod is something + other than Deflate or None. + + + + + + + + The compressed size of the file, in bytes, within the zip archive. + + + + When reading a ZipFile, this value is read in from the existing + zip file. When creating or updating a ZipFile, the compressed + size is computed during compression. Therefore the value on a + ZipEntry is valid after a call to Save() (or one of its + overloads) in that case. + + + + + + + The size of the file, in bytes, before compression, or after extraction. + + + + When reading a ZipFile, this value is read in from the existing + zip file. When creating or updating a ZipFile, the uncompressed + size is computed during compression. Therefore the value on a + ZipEntry is valid after a call to Save() (or one of its + overloads) in that case. + + + + + + + The ratio of compressed size to uncompressed size of the ZipEntry. + + + + + This is a ratio of the compressed size to the uncompressed size of the + entry, expressed as a double in the range of 0 to 100+. A value of 100 + indicates no compression at all. It could be higher than 100 when the + compression algorithm actually inflates the data, as may occur for small + files, or uncompressible data that is encrypted. + + + + You could format it for presentation to a user via a format string of + "{3,5:F0}%" to see it as a percentage. + + + + If the size of the original uncompressed file is 0, implying a + denominator of 0, the return value will be zero. + + + + This property is valid after reading in an existing zip file, or after + saving the ZipFile that contains the ZipEntry. You cannot know the + effect of a compression transform until you try it. + + + + + + + The 32-bit CRC (Cyclic Redundancy Check) on the contents of the ZipEntry. + + + + + You probably don't need to concern yourself with this. It is used + internally by DotNetZip to verify files or streams upon extraction. + + The value is a 32-bit + CRC using 0xEDB88320 for the polynomial. This is the same CRC-32 used in + PNG, MPEG-2, and other protocols and formats. It is a read-only property; when + creating a Zip archive, the CRC for each entry is set only after a call to + Save() on the containing ZipFile. When reading an existing zip file, the value + of this property reflects the stored CRC for the entry. + + + + + + True if the entry is a directory (not a file). + This is a readonly property on the entry. + + + + + A derived property that is true if the entry uses encryption. + + + + + This is a readonly property on the entry. When reading a zip file, + the value for the ZipEntry is determined by the data read + from the zip file. After saving a ZipFile, the value of this + property for each ZipEntry indicates whether encryption was + actually used (which will have been true if the was set and the property + was something other than . + + + + + + Set this to specify which encryption algorithm to use for the entry when + saving it to a zip archive. + + + + + + Set this property in order to encrypt the entry when the ZipFile is + saved. When setting this property, you must also set a on the entry. If you set a value other than on this property and do not set a + Password then the entry will not be encrypted. The ZipEntry + data is encrypted as the ZipFile is saved, when you call or one of its cousins on the containing + ZipFile instance. You do not need to specify the Encryption + when extracting entries from an archive. + + + + The Zip specification from PKWare defines a set of encryption algorithms, + and the data formats for the zip archive that support them, and PKWare + supports those algorithms in the tools it produces. Other vendors of tools + and libraries, such as WinZip or Xceed, typically support a + subset of the algorithms specified by PKWare. These tools can + sometimes support additional different encryption algorithms and data + formats, not specified by PKWare. The AES Encryption specified and + supported by WinZip is the most popular example. This library supports a + subset of the complete set of algorithms specified by PKWare and other + vendors. + + + + There is no common, ubiquitous multi-vendor standard for strong encryption + within zip files. There is broad support for so-called "traditional" Zip + encryption, sometimes called Zip 2.0 encryption, as specified + by PKWare, but this encryption is considered weak and + breakable. This library currently supports the Zip 2.0 "weak" encryption, + and also a stronger WinZip-compatible AES encryption, using either 128-bit + or 256-bit key strength. If you want DotNetZip to support an algorithm + that is not currently supported, call the author of this library and maybe + we can talk business. + + + + The class also has a property. In most cases you will use + that property when setting encryption. This property takes + precedence over any Encryption set on the ZipFile itself. + Typically, you would use the per-entry Encryption when most entries in the + zip archive use one encryption algorithm, and a few entries use a + different one. If all entries in the zip file use the same Encryption, + then it is simpler to just set this property on the ZipFile itself, when + creating a zip archive. + + + + Some comments on updating archives: If you read a ZipFile, you can + modify the Encryption on an encrypted entry: you can remove encryption + from an entry that was encrypted; you can encrypt an entry that was not + encrypted previously; or, you can change the encryption algorithm. The + changes in encryption are not made permanent until you call Save() on the + ZipFile. To effect changes in encryption, the entry content is + streamed through several transformations, depending on the modification + the application has requested. For example if the entry is not encrypted + and the application sets Encryption to PkzipWeak, then at + the time of Save(), the original entry is read and decompressed, + then re-compressed and encrypted. Conversely, if the original entry is + encrypted with PkzipWeak encryption, and the application sets the + Encryption property to WinZipAes128, then at the time of + Save(), the original entry is decrypted via PKZIP encryption and + decompressed, then re-compressed and re-encrypted with AES. This all + happens automatically within the library, but it can be time-consuming for + large entries. + + + + Additionally, when updating archives, it is not possible to change the + password when changing the encryption algorithm. To change both the + algorithm and the password, you need to Save() the zipfile twice. First + set the Encryption to None, then call Save(). Then set the + Encryption to the new value (not "None"), then call Save() + once again. + + + + The WinZip AES encryption algorithms are not supported on the .NET Compact + Framework. + + + + + + This example creates a zip archive that uses encryption, and then extracts + entries from the archive. When creating the zip archive, the ReadMe.txt + file is zipped without using a password or encryption. The other file + uses encryption. + + + // Create a zip archive with AES Encryption. + using (ZipFile zip = new ZipFile()) + { + zip.AddFile("ReadMe.txt") + ZipEntry e1= zip.AddFile("2008-Regional-Sales-Report.pdf"); + e1.Encryption= EncryptionAlgorithm.WinZipAes256; + e1.Password= "Top.Secret.No.Peeking!"; + zip.Save("EncryptedArchive.zip"); + } + + // Extract a zip archive that uses AES Encryption. + // You do not need to specify the algorithm during extraction. + using (ZipFile zip = ZipFile.Read("EncryptedArchive.zip")) + { + // Specify the password that is used during extraction, for + // all entries that require a password: + zip.Password= "Top.Secret.No.Peeking!"; + zip.ExtractAll("extractDirectory"); + } + + + + ' Create a zip that uses Encryption. + Using zip As New ZipFile() + zip.AddFile("ReadMe.txt") + Dim e1 as ZipEntry + e1= zip.AddFile("2008-Regional-Sales-Report.pdf") + e1.Encryption= EncryptionAlgorithm.WinZipAes256 + e1.Password= "Top.Secret.No.Peeking!" + zip.Save("EncryptedArchive.zip") + End Using + + ' Extract a zip archive that uses AES Encryption. + ' You do not need to specify the algorithm during extraction. + Using (zip as ZipFile = ZipFile.Read("EncryptedArchive.zip")) + ' Specify the password that is used during extraction, for + ' all entries that require a password: + zip.Password= "Top.Secret.No.Peeking!" + zip.ExtractAll("extractDirectory") + End Using + + + + + + Thrown in the setter if EncryptionAlgorithm.Unsupported is specified. + + + ZipEntry.Password + ZipFile.Encryption + + + + The Password to be used when encrypting a ZipEntry upon + ZipFile.Save(), or when decrypting an entry upon Extract(). + + + + + This is a write-only property on the entry. Set this to request that the + entry be encrypted when writing the zip archive, or set it to specify the + password to be used when extracting an existing entry that is encrypted. + + + + The password set here is implicitly used to encrypt the entry during the + operation, or to decrypt during the or operation. If you set + the Password on a ZipEntry after calling Save(), there is no + effect. + + + + Consider setting the property when using a + password. Answering concerns that the standard password protection + supported by all zip tools is weak, WinZip has extended the ZIP + specification with a way to use AES Encryption to protect entries in the + Zip file. Unlike the "PKZIP 2.0" encryption specified in the PKZIP + specification, AES + Encryption uses a standard, strong, tested, encryption + algorithm. DotNetZip can create zip archives that use WinZip-compatible + AES encryption, if you set the property. But, + archives created that use AES encryption may not be readable by all other + tools and libraries. For example, Windows Explorer cannot read a + "compressed folder" (a zip file) that uses AES encryption, though it can + read a zip file that uses "PKZIP encryption." + + + + The class also has a + property. This property takes precedence over any password set on the + ZipFile itself. Typically, you would use the per-entry Password when most + entries in the zip archive use one password, and a few entries use a + different password. If all entries in the zip file use the same password, + then it is simpler to just set this property on the ZipFile itself, + whether creating a zip archive or extracting a zip archive. + + + + Some comments on updating archives: If you read a ZipFile, you + cannot modify the password on any encrypted entry, except by extracting + the entry with the original password (if any), removing the original entry + via , and then adding a new + entry with a new Password. + + + + For example, suppose you read a ZipFile, and there is an encrypted + entry. Setting the Password property on that ZipEntry and then + calling Save() on the ZipFile does not update the password + on that entry in the archive. Neither is an exception thrown. Instead, + what happens during the Save() is the existing entry is copied + through to the new zip archive, in its original encrypted form. Upon + re-reading that archive, the entry can be decrypted with its original + password. + + + + If you read a ZipFile, and there is an un-encrypted entry, you can set the + Password on the entry and then call Save() on the ZipFile, and get + encryption on that entry. + + + + + + + This example creates a zip file with two entries, and then extracts the + entries from the zip file. When creating the zip file, the two files are + added to the zip file using password protection. Each entry uses a + different password. During extraction, each file is extracted with the + appropriate password. + + + // create a file with encryption + using (ZipFile zip = new ZipFile()) + { + ZipEntry entry; + entry= zip.AddFile("Declaration.txt"); + entry.Password= "123456!"; + entry = zip.AddFile("Report.xls"); + entry.Password= "1Secret!"; + zip.Save("EncryptedArchive.zip"); + } + + // extract entries that use encryption + using (ZipFile zip = ZipFile.Read("EncryptedArchive.zip")) + { + ZipEntry entry; + entry = zip["Declaration.txt"]; + entry.Password = "123456!"; + entry.Extract("extractDir"); + entry = zip["Report.xls"]; + entry.Password = "1Secret!"; + entry.Extract("extractDir"); + } + + + + + Using zip As New ZipFile + Dim entry as ZipEntry + entry= zip.AddFile("Declaration.txt") + entry.Password= "123456!" + entry = zip.AddFile("Report.xls") + entry.Password= "1Secret!" + zip.Save("EncryptedArchive.zip") + End Using + + + ' extract entries that use encryption + Using (zip as ZipFile = ZipFile.Read("EncryptedArchive.zip")) + Dim entry as ZipEntry + entry = zip("Declaration.txt") + entry.Password = "123456!" + entry.Extract("extractDir") + entry = zip("Report.xls") + entry.Password = "1Secret!" + entry.Extract("extractDir") + End Using + + + + + + + ZipFile.Password + + + + The action the library should take when extracting a file that already exists. + + + + + This property affects the behavior of the Extract methods (one of the + Extract() or ExtractWithPassword() overloads), when + extraction would would overwrite an existing filesystem file. If you do + not set this property, the library throws an exception when extracting + an entry would overwrite an existing file. + + + + This property has no effect when extracting to a stream, or when the file to be + extracted does not already exist. + + + + + + + This example shows how to set the ExtractExistingFile property in + an ExtractProgress event, in response to user input. The + ExtractProgress event is invoked if and only if the + ExtractExistingFile property was previously set to + ExtractExistingFileAction.InvokeExtractProgressEvent. + + public static void ExtractProgress(object sender, ExtractProgressEventArgs e) + { + if (e.EventType == ZipProgressEventType.Extracting_BeforeExtractEntry) + Console.WriteLine("extract {0} ", e.CurrentEntry.FileName); + + else if (e.EventType == ZipProgressEventType.Extracting_ExtractEntryWouldOverwrite) + { + ZipEntry entry = e.CurrentEntry; + string response = null; + // Ask the user if he wants overwrite the file + do + { + Console.Write("Overwrite {0} in {1} ? (y/n/C) ", entry.FileName, e.ExtractLocation); + response = Console.ReadLine(); + Console.WriteLine(); + + } while (response != null && response[0]!='Y' && + response[0]!='N' && response[0]!='C'); + + if (response[0]=='C') + e.Cancel = true; + else if (response[0]=='Y') + entry.ExtractExistingFile = ExtractExistingFileAction.OverwriteSilently; + else + entry.ExtractExistingFile= ExtractExistingFileAction.DoNotOverwrite; + } + } + + + + + + The action to take when an error is encountered while + opening or reading files as they are saved into a zip archive. + + + + + Errors can occur within a call to ZipFile.Save, as the various files contained + in a ZipFile are being saved into the zip archive. During the + Save, DotNetZip will perform a File.Open on the file + associated to the ZipEntry, and then will read the entire contents of + the file as it is zipped. Either the open or the Read may fail, because + of lock conflicts or other reasons. Using this property, you can + specify the action to take when such errors occur. + + + + Typically you will NOT set this property on individual ZipEntry + instances. Instead, you will set the ZipFile.ZipErrorAction property on + the ZipFile instance, before adding any entries to the + ZipFile. If you do this, errors encountered on behalf of any of + the entries in the ZipFile will be handled the same way. + + + + But, if you use a handler, you will want + to set this property on the ZipEntry within the handler, to + communicate back to DotNetZip what you would like to do with the + particular error. + + + + + + + + + Indicates whether the entry was included in the most recent save. + + + An entry can be excluded or skipped from a save if there is an error + opening or reading the entry. + + + + + + A callback that allows the application to specify the compression to use + for a given entry that is about to be added to the zip archive. + + + + + See + + + + + + Set to indicate whether to use UTF-8 encoding for filenames and comments. + + + + + + If this flag is set, the comment and filename for the entry will be + encoded with UTF-8, as described in the Zip + specification, if necessary. "Necessary" means, the filename or + entry comment (if any) cannot be reflexively encoded and decoded using the + default code page, IBM437. + + + + Setting this flag to true is equivalent to setting to System.Text.Encoding.UTF8. + + + + This flag has no effect or relation to the text encoding used within the + file itself. + + + + + + + The text encoding to use for the FileName and Comment on this ZipEntry, + when the default encoding is insufficient. + + + + + + Don't use this property. See . + + + + + + + Specifies the alternate text encoding used by this ZipEntry + + + + The default text encoding used in Zip files for encoding filenames and + comments is IBM437, which is something like a superset of ASCII. In + cases where this is insufficient, applications can specify an + alternate encoding. + + + When creating a zip file, the usage of the alternate encoding is + governed by the property. + Typically you would set both properties to tell DotNetZip to employ an + encoding that is not IBM437 in the zipfile you are creating. + + + Keep in mind that because the ZIP specification states that the only + valid encodings to use are IBM437 and UTF-8, if you use something + other than that, then zip tools and libraries may not be able to + successfully read the zip archive you generate. + + + The zip specification states that applications should presume that + IBM437 is in use, except when a special bit is set, which indicates + UTF-8. There is no way to specify an arbitrary code page, within the + zip file itself. When you create a zip file encoded with gb2312 or + ibm861 or anything other than IBM437 or UTF-8, then the application + that reads the zip file needs to "know" which code page to use. In + some cases, the code page used when reading is chosen implicitly. For + example, WinRar uses the ambient code page for the host desktop + operating system. The pitfall here is that if you create a zip in + Copenhagen and send it to Tokyo, the reader of the zipfile may not be + able to decode successfully. + + + + This example shows how to create a zipfile encoded with a + language-specific encoding: + + using (var zip = new ZipFile()) + { + zip.AlternateEnoding = System.Text.Encoding.GetEncoding("ibm861"); + zip.AlternateEnodingUsage = ZipOption.Always; + zip.AddFileS(arrayOfFiles); + zip.Save("Myarchive-Encoded-in-IBM861.zip"); + } + + + + + + + Describes if and when this instance should apply + AlternateEncoding to encode the FileName and Comment, when + saving. + + + + + + Indicates whether an entry is marked as a text file. Be careful when + using on this property. Unless you have a good reason, you should + probably ignore this property. + + + + + The ZIP format includes a provision for specifying whether an entry in + the zip archive is a text or binary file. This property exposes that + metadata item. Be careful when using this property: It's not clear + that this property as a firm meaning, across tools and libraries. + + + + To be clear, when reading a zip file, the property value may or may + not be set, and its value may or may not be valid. Not all entries + that you may think of as "text" entries will be so marked, and entries + marked as "text" are not guaranteed in any way to be text entries. + Whether the value is set and set correctly depends entirely on the + application that produced the zip file. + + + + There are many zip tools available, and when creating zip files, some + of them "respect" the IsText metadata field, and some of them do not. + Unfortunately, even when an application tries to do "the right thing", + it's not always clear what "the right thing" is. + + + + There's no firm definition of just what it means to be "a text file", + and the zip specification does not help in this regard. Twenty years + ago, text was ASCII, each byte was less than 127. IsText meant, all + bytes in the file were less than 127. These days, it is not the case + that all text files have all bytes less than 127. Any unicode file + may have bytes that are above 0x7f. The zip specification has nothing + to say on this topic. Therefore, it's not clear what IsText really + means. + + + + This property merely tells a reading application what is stored in the + metadata for an entry, without guaranteeing its validity or its + meaning. + + + + When DotNetZip is used to create a zipfile, it attempts to set this + field "correctly." For example, if a file ends in ".txt", this field + will be set. Your application may override that default setting. When + writing a zip file, you must set the property before calling + Save() on the ZipFile. + + + + When reading a zip file, a more general way to decide just what kind + of file is contained in a particular entry is to use the file type + database stored in the operating system. The operating system stores + a table that says, a file with .jpg extension is a JPG image file, a + file with a .xml extension is an XML document, a file with a .txt is a + pure ASCII text document, and so on. To get this information on + Windows, you + need to read and parse the registry. + + + + + using (var zip = new ZipFile()) + { + var e = zip.UpdateFile("Descriptions.mme", ""); + e.IsText = true; + zip.Save(zipPath); + } + + + + Using zip As New ZipFile + Dim e2 as ZipEntry = zip.AddFile("Descriptions.mme", "") + e.IsText= True + zip.Save(zipPath) + End Using + + + + + + An enum that specifies the type of timestamp available on the ZipEntry. + + + + + + The last modified time of a file can be stored in multiple ways in + a zip file, and they are not mutually exclusive: + + + + + In the so-called "DOS" format, which has a 2-second precision. Values + are rounded to the nearest even second. For example, if the time on the + file is 12:34:43, then it will be stored as 12:34:44. This first value + is accessible via the LastModified property. This value is always + present in the metadata for each zip entry. In some cases the value is + invalid, or zero. + + + + In the so-called "Windows" or "NTFS" format, as an 8-byte integer + quantity expressed as the number of 1/10 milliseconds (in other words + the number of 100 nanosecond units) since January 1, 1601 (UTC). This + format is how Windows represents file times. This time is accessible + via the ModifiedTime property. + + + + In the "Unix" format, a 4-byte quantity specifying the number of seconds since + January 1, 1970 UTC. + + + + In an older format, now deprecated but still used by some current + tools. This format is also a 4-byte quantity specifying the number of + seconds since January 1, 1970 UTC. + + + + + + This bit field describes which of the formats were found in a ZipEntry that was read. + + + + + + + Default value. + + + + + A DOS timestamp with 2-second precision. + + + + + A Windows timestamp with 100-ns precision. + + + + + A Unix timestamp with 1-second precision. + + + + + A Unix timestamp with 1-second precision, stored in InfoZip v1 format. This + format is outdated and is supported for reading archives only. + + + + + The method of compression to use for a particular ZipEntry. + + + + PKWare's + ZIP Specification describes a number of distinct + cmopression methods that can be used within a zip + file. DotNetZip supports a subset of them. + + + + + No compression at all. For COM environments, the value is 0 (zero). + + + + + DEFLATE compression, as described in IETF RFC + 1951. This is the "normal" compression used in zip + files. For COM environments, the value is 8. + + + + + BZip2 compression, a compression algorithm developed by Julian Seward. + For COM environments, the value is 12. + + + + + The ZipFile type represents a zip archive file. + + + + + This is the main type in the DotNetZip class library. This class reads and + writes zip files, as defined in the specification + for zip files described by PKWare. The compression for this + implementation is provided by a managed-code version of Zlib, included with + DotNetZip in the classes in the Ionic.Zlib namespace. + + + + This class provides a general purpose zip file capability. Use it to read, + create, or update zip files. When you want to create zip files using a + Stream type to write the zip file, you may want to consider the class. + + + + Both the ZipOutputStream class and the ZipFile class can + be used to create zip files. Both of them support many of the common zip + features, including Unicode, different compression methods and levels, + and ZIP64. They provide very similar performance when creating zip + files. + + + + The ZipFile class is generally easier to use than + ZipOutputStream and should be considered a higher-level interface. For + example, when creating a zip file via calls to the PutNextEntry() and + Write() methods on the ZipOutputStream class, the caller is + responsible for opening the file, reading the bytes from the file, writing + those bytes into the ZipOutputStream, setting the attributes on the + ZipEntry, and setting the created, last modified, and last accessed + timestamps on the zip entry. All of these things are done automatically by a + call to ZipFile.AddFile(). + For this reason, the ZipOutputStream is generally recommended for use + only when your application emits arbitrary data, not necessarily data from a + filesystem file, directly into a zip file, and does so using a Stream + metaphor. + + + + Aside from the differences in programming model, there are other + differences in capability between the two classes. + + + + + ZipFile can be used to read and extract zip files, in addition to + creating zip files. ZipOutputStream cannot read zip files. If you want + to use a stream to read zip files, check out the class. + + + + ZipOutputStream does not support the creation of segmented or spanned + zip files. + + + + ZipOutputStream cannot produce a self-extracting archive. + + + + + Be aware that the ZipFile class implements the interface. In order for ZipFile to + produce a valid zip file, you use use it within a using clause (Using + in VB), or call the Dispose() method explicitly. See the examples + for how to employ a using clause. + + + + + + + Adds an item, either a file or a directory, to a zip file archive. + + + + + This method is handy if you are adding things to zip archive and don't + want to bother distinguishing between directories or files. Any files are + added as single entries. A directory added through this method is added + recursively: all files and subdirectories contained within the directory + are added to the ZipFile. + + + + The name of the item may be a relative path or a fully-qualified + path. Remember, the items contained in ZipFile instance get written + to the disk only when you call or a similar + save method. + + + + The directory name used for the file within the archive is the same + as the directory name (potentially a relative path) specified in the + . + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + + + This method has two overloads. + + the name of the file or directory to add. + + The ZipEntry added. + + + + Adds an item, either a file or a directory, to a zip file archive, + explicitly specifying the directory path to be used in the archive. + + + + + If adding a directory, the add is recursive on all files and + subdirectories contained within it. + + + The name of the item may be a relative path or a fully-qualified path. + The item added by this call to the ZipFile is not read from the + disk nor written to the zip file archive until the application calls + Save() on the ZipFile. + + + + This version of the method allows the caller to explicitly specify the + directory path to be used in the archive, which would override the + "natural" path of the filesystem file. + + + + Encryption will be used on the file data if the Password has + been set on the ZipFile object, prior to calling this method. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + Thrown if the file or directory passed in does not exist. + + + the name of the file or directory to add. + + + + The name of the directory path to use within the zip archive. This path + need not refer to an extant directory in the current filesystem. If the + files within the zip are later extracted, this is the path used for the + extracted file. Passing null (Nothing in VB) will use the + path on the fileOrDirectoryName. Passing the empty string ("") will + insert the item at the root path within the archive. + + + + + + + + This example shows how to zip up a set of files into a flat hierarchy, + regardless of where in the filesystem the files originated. The resulting + zip archive will contain a toplevel directory named "flat", which itself + will contain files Readme.txt, MyProposal.docx, and Image1.jpg. A + subdirectory under "flat" called SupportFiles will contain all the files + in the "c:\SupportFiles" directory on disk. + + + String[] itemnames= { + "c:\\fixedContent\\Readme.txt", + "MyProposal.docx", + "c:\\SupportFiles", // a directory + "images\\Image1.jpg" + }; + + try + { + using (ZipFile zip = new ZipFile()) + { + for (int i = 1; i < itemnames.Length; i++) + { + // will add Files or Dirs, recurses and flattens subdirectories + zip.AddItem(itemnames[i],"flat"); + } + zip.Save(ZipToCreate); + } + } + catch (System.Exception ex1) + { + System.Console.Error.WriteLine("exception: {0}", ex1); + } + + + + Dim itemnames As String() = _ + New String() { "c:\fixedContent\Readme.txt", _ + "MyProposal.docx", _ + "SupportFiles", _ + "images\Image1.jpg" } + Try + Using zip As New ZipFile + Dim i As Integer + For i = 1 To itemnames.Length - 1 + ' will add Files or Dirs, recursing and flattening subdirectories. + zip.AddItem(itemnames(i), "flat") + Next i + zip.Save(ZipToCreate) + End Using + Catch ex1 As Exception + Console.Error.WriteLine("exception: {0}", ex1.ToString()) + End Try + + + The ZipEntry added. + + + + Adds a File to a Zip file archive. + + + + + This call collects metadata for the named file in the filesystem, + including the file attributes and the timestamp, and inserts that metadata + into the resulting ZipEntry. Only when the application calls Save() on + the ZipFile, does DotNetZip read the file from the filesystem and + then write the content to the zip file archive. + + + + This method will throw an exception if an entry with the same name already + exists in the ZipFile. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + In this example, three files are added to a Zip archive. The ReadMe.txt + file will be placed in the root of the archive. The .png file will be + placed in a folder within the zip called photos\personal. The pdf file + will be included into a folder within the zip called Desktop. + + + try + { + using (ZipFile zip = new ZipFile()) + { + zip.AddFile("c:\\photos\\personal\\7440-N49th.png"); + zip.AddFile("c:\\Desktop\\2008-Regional-Sales-Report.pdf"); + zip.AddFile("ReadMe.txt"); + + zip.Save("Package.zip"); + } + } + catch (System.Exception ex1) + { + System.Console.Error.WriteLine("exception: " + ex1); + } + + + + Try + Using zip As ZipFile = New ZipFile + zip.AddFile("c:\photos\personal\7440-N49th.png") + zip.AddFile("c:\Desktop\2008-Regional-Sales-Report.pdf") + zip.AddFile("ReadMe.txt") + zip.Save("Package.zip") + End Using + Catch ex1 As Exception + Console.Error.WriteLine("exception: {0}", ex1.ToString) + End Try + + + + This method has two overloads. + + + + + + + The name of the file to add. It should refer to a file in the filesystem. + The name of the file may be a relative path or a fully-qualified path. + + The ZipEntry corresponding to the File added. + + + + Adds a File to a Zip file archive, potentially overriding the path to be + used within the zip archive. + + + + + The file added by this call to the ZipFile is not written to the + zip file archive until the application calls Save() on the ZipFile. + + + + This method will throw an exception if an entry with the same name already + exists in the ZipFile. + + + + This version of the method allows the caller to explicitly specify the + directory path to be used in the archive. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + In this example, three files are added to a Zip archive. The ReadMe.txt + file will be placed in the root of the archive. The .png file will be + placed in a folder within the zip called images. The pdf file will be + included into a folder within the zip called files\docs, and will be + encrypted with the given password. + + + try + { + using (ZipFile zip = new ZipFile()) + { + // the following entry will be inserted at the root in the archive. + zip.AddFile("c:\\datafiles\\ReadMe.txt", ""); + // this image file will be inserted into the "images" directory in the archive. + zip.AddFile("c:\\photos\\personal\\7440-N49th.png", "images"); + // the following will result in a password-protected file called + // files\\docs\\2008-Regional-Sales-Report.pdf in the archive. + zip.Password = "EncryptMe!"; + zip.AddFile("c:\\Desktop\\2008-Regional-Sales-Report.pdf", "files\\docs"); + zip.Save("Archive.zip"); + } + } + catch (System.Exception ex1) + { + System.Console.Error.WriteLine("exception: {0}", ex1); + } + + + + Try + Using zip As ZipFile = New ZipFile + ' the following entry will be inserted at the root in the archive. + zip.AddFile("c:\datafiles\ReadMe.txt", "") + ' this image file will be inserted into the "images" directory in the archive. + zip.AddFile("c:\photos\personal\7440-N49th.png", "images") + ' the following will result in a password-protected file called + ' files\\docs\\2008-Regional-Sales-Report.pdf in the archive. + zip.Password = "EncryptMe!" + zip.AddFile("c:\Desktop\2008-Regional-Sales-Report.pdf", "files\documents") + zip.Save("Archive.zip") + End Using + Catch ex1 As Exception + Console.Error.WriteLine("exception: {0}", ex1) + End Try + + + + + + + + + The name of the file to add. The name of the file may be a relative path + or a fully-qualified path. + + + + Specifies a directory path to use to override any path in the fileName. + This path may, or may not, correspond to a real directory in the current + filesystem. If the files within the zip are later extracted, this is the + path used for the extracted file. Passing null (Nothing in + VB) will use the path on the fileName, if any. Passing the empty string + ("") will insert the item at the root path within the archive. + + + The ZipEntry corresponding to the file added. + + + + This method removes a collection of entries from the ZipFile. + + + + A collection of ZipEntry instances from this zip file to be removed. For + example, you can pass in an array of ZipEntry instances; or you can call + SelectEntries(), and then add or remove entries from that + ICollection<ZipEntry> (ICollection(Of ZipEntry) in VB), and pass + that ICollection to this method. + + + + + + + + This method removes a collection of entries from the ZipFile, by name. + + + + A collection of strings that refer to names of entries to be removed + from the ZipFile. For example, you can pass in an array or a + List of Strings that provide the names of entries to be removed. + + + + + + + + This method adds a set of files to the ZipFile. + + + + + Use this method to add a set of files to the zip archive, in one call. + For example, a list of files received from + System.IO.Directory.GetFiles() can be added to a zip archive in one + call. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + The collection of names of the files to add. Each string should refer to a + file in the filesystem. The name of the file may be a relative path or a + fully-qualified path. + + + + This example shows how to create a zip file, and add a few files into it. + + String ZipFileToCreate = "archive1.zip"; + String DirectoryToZip = "c:\\reports"; + using (ZipFile zip = new ZipFile()) + { + // Store all files found in the top level directory, into the zip archive. + String[] filenames = System.IO.Directory.GetFiles(DirectoryToZip); + zip.AddFiles(filenames); + zip.Save(ZipFileToCreate); + } + + + + Dim ZipFileToCreate As String = "archive1.zip" + Dim DirectoryToZip As String = "c:\reports" + Using zip As ZipFile = New ZipFile + ' Store all files found in the top level directory, into the zip archive. + Dim filenames As String() = System.IO.Directory.GetFiles(DirectoryToZip) + zip.AddFiles(filenames) + zip.Save(ZipFileToCreate) + End Using + + + + + + + + Adds or updates a set of files in the ZipFile. + + + + + Any files that already exist in the archive are updated. Any files that + don't yet exist in the archive are added. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + The collection of names of the files to update. Each string should refer to a file in + the filesystem. The name of the file may be a relative path or a fully-qualified path. + + + + + + Adds a set of files to the ZipFile, using the + specified directory path in the archive. + + + + + Any directory structure that may be present in the + filenames contained in the list is "flattened" in the + archive. Each file in the list is added to the archive in + the specified top-level directory. + + + + For ZipFile properties including , , , , , , and , their respective values at the + time of this call will be applied to each ZipEntry added. + + + + + The names of the files to add. Each string should refer to + a file in the filesystem. The name of the file may be a + relative path or a fully-qualified path. + + + + Specifies a directory path to use to override any path in the file name. + Th is path may, or may not, correspond to a real directory in the current + filesystem. If the files within the zip are later extracted, this is the + path used for the extracted file. Passing null (Nothing in + VB) will use the path on each of the fileNames, if any. Passing + the empty string ("") will insert the item at the root path within the + archive. + + + + + + + Adds a set of files to the ZipFile, using the specified directory + path in the archive, and preserving the full directory structure in the + filenames. + + + + + If preserveDirHierarchy is true, any directory structure present in the + filenames contained in the list is preserved in the archive. On the other + hand, if preserveDirHierarchy is false, any directory structure that may + be present in the filenames contained in the list is "flattened" in the + archive; Each file in the list is added to the archive in the specified + top-level directory. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + + The names of the files to add. Each string should refer to a file in the + filesystem. The name of the file may be a relative path or a + fully-qualified path. + + + + Specifies a directory path to use to override any path in the file name. + This path may, or may not, correspond to a real directory in the current + filesystem. If the files within the zip are later extracted, this is the + path used for the extracted file. Passing null (Nothing in + VB) will use the path on each of the fileNames, if any. Passing + the empty string ("") will insert the item at the root path within the + archive. + + + + whether the entries in the zip archive will reflect the directory + hierarchy that is present in the various filenames. For example, if + includes two paths, \Animalia\Chordata\Mammalia\Info.txt and + \Plantae\Magnoliophyta\Dicotyledon\Info.txt, then calling this method with + = false will result in an + exception because of a duplicate entry name, while calling this method + with = true will result in the + full direcory paths being included in the entries added to the ZipFile. + + + + + + Adds or updates a set of files to the ZipFile, using the specified + directory path in the archive. + + + + + + Any files that already exist in the archive are updated. Any files that + don't yet exist in the archive are added. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + The names of the files to add or update. Each string should refer to a + file in the filesystem. The name of the file may be a relative path or a + fully-qualified path. + + + + Specifies a directory path to use to override any path in the file name. + This path may, or may not, correspond to a real directory in the current + filesystem. If the files within the zip are later extracted, this is the + path used for the extracted file. Passing null (Nothing in + VB) will use the path on each of the fileNames, if any. Passing + the empty string ("") will insert the item at the root path within the + archive. + + + + + + + Adds or Updates a File in a Zip file archive. + + + + + This method adds a file to a zip archive, or, if the file already exists + in the zip archive, this method Updates the content of that given filename + in the zip archive. The UpdateFile method might more accurately be + called "AddOrUpdateFile". + + + + Upon success, there is no way for the application to learn whether the file + was added versus updated. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + This example shows how to Update an existing entry in a zipfile. The first + call to UpdateFile adds the file to the newly-created zip archive. The + second call to UpdateFile updates the content for that file in the zip + archive. + + + using (ZipFile zip1 = new ZipFile()) + { + // UpdateFile might more accurately be called "AddOrUpdateFile" + zip1.UpdateFile("MyDocuments\\Readme.txt"); + zip1.UpdateFile("CustomerList.csv"); + zip1.Comment = "This zip archive has been created."; + zip1.Save("Content.zip"); + } + + using (ZipFile zip2 = ZipFile.Read("Content.zip")) + { + zip2.UpdateFile("Updates\\Readme.txt"); + zip2.Comment = "This zip archive has been updated: The Readme.txt file has been changed."; + zip2.Save(); + } + + + + Using zip1 As New ZipFile + ' UpdateFile might more accurately be called "AddOrUpdateFile" + zip1.UpdateFile("MyDocuments\Readme.txt") + zip1.UpdateFile("CustomerList.csv") + zip1.Comment = "This zip archive has been created." + zip1.Save("Content.zip") + End Using + + Using zip2 As ZipFile = ZipFile.Read("Content.zip") + zip2.UpdateFile("Updates\Readme.txt") + zip2.Comment = "This zip archive has been updated: The Readme.txt file has been changed." + zip2.Save + End Using + + + + + + + + + The name of the file to add or update. It should refer to a file in the + filesystem. The name of the file may be a relative path or a + fully-qualified path. + + + + The ZipEntry corresponding to the File that was added or updated. + + + + + Adds or Updates a File in a Zip file archive. + + + + + This method adds a file to a zip archive, or, if the file already exists + in the zip archive, this method Updates the content of that given filename + in the zip archive. + + + + This version of the method allows the caller to explicitly specify the + directory path to be used in the archive. The entry to be added or + updated is found by using the specified directory path, combined with the + basename of the specified filename. + + + + Upon success, there is no way for the application to learn if the file was + added versus updated. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + + + The name of the file to add or update. It should refer to a file in the + filesystem. The name of the file may be a relative path or a + fully-qualified path. + + + + Specifies a directory path to use to override any path in the + fileName. This path may, or may not, correspond to a real + directory in the current filesystem. If the files within the zip are + later extracted, this is the path used for the extracted file. Passing + null (Nothing in VB) will use the path on the + fileName, if any. Passing the empty string ("") will insert the + item at the root path within the archive. + + + + The ZipEntry corresponding to the File that was added or updated. + + + + + Add or update a directory in a zip archive. + + + + If the specified directory does not exist in the archive, then this method + is equivalent to calling AddDirectory(). If the specified + directory already exists in the archive, then this method updates any + existing entries, and adds any new entries. Any entries that are in the + zip archive but not in the specified directory, are left alone. In other + words, the contents of the zip file will be a union of the previous + contents and the new files. + + + + + + + + The path to the directory to be added to the zip archive, or updated in + the zip archive. + + + + The ZipEntry corresponding to the Directory that was added or updated. + + + + + Add or update a directory in the zip archive at the specified root + directory in the archive. + + + + If the specified directory does not exist in the archive, then this method + is equivalent to calling AddDirectory(). If the specified + directory already exists in the archive, then this method updates any + existing entries, and adds any new entries. Any entries that are in the + zip archive but not in the specified directory, are left alone. In other + words, the contents of the zip file will be a union of the previous + contents and the new files. + + + + + + + + The path to the directory to be added to the zip archive, or updated + in the zip archive. + + + + Specifies a directory path to use to override any path in the + directoryName. This path may, or may not, correspond to a real + directory in the current filesystem. If the files within the zip are + later extracted, this is the path used for the extracted file. Passing + null (Nothing in VB) will use the path on the + directoryName, if any. Passing the empty string ("") will insert + the item at the root path within the archive. + + + + The ZipEntry corresponding to the Directory that was added or updated. + + + + + Add or update a file or directory in the zip archive. + + + + + This is useful when the application is not sure or does not care if the + item to be added is a file or directory, and does not know or does not + care if the item already exists in the ZipFile. Calling this method + is equivalent to calling RemoveEntry() if an entry by the same name + already exists, followed calling by AddItem(). + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + + + the path to the file or directory to be added or updated. + + + + + Add or update a file or directory. + + + + + This method is useful when the application is not sure or does not care if + the item to be added is a file or directory, and does not know or does not + care if the item already exists in the ZipFile. Calling this method + is equivalent to calling RemoveEntry(), if an entry by that name + exists, and then calling AddItem(). + + + + This version of the method allows the caller to explicitly specify the + directory path to be used for the item being added to the archive. The + entry or entries that are added or updated will use the specified + DirectoryPathInArchive. Extracting the entry from the archive will + result in a file stored in that directory path. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + + + The path for the File or Directory to be added or updated. + + + Specifies a directory path to use to override any path in the + itemName. This path may, or may not, correspond to a real + directory in the current filesystem. If the files within the zip are + later extracted, this is the path used for the extracted file. Passing + null (Nothing in VB) will use the path on the + itemName, if any. Passing the empty string ("") will insert the + item at the root path within the archive. + + + + + Adds a named entry into the zip archive, taking content for the entry + from a string. + + + + Calling this method creates an entry using the given fileName and + directory path within the archive. There is no need for a file by the + given name to exist in the filesystem; the name is used within the zip + archive only. The content for the entry is encoded using the default text + encoding for the machine, or on Silverlight, using UTF-8. + + + + The content of the file, should it be extracted from the zip. + + + + The name, including any path, to use for the entry within the archive. + + + The ZipEntry added. + + + + This example shows how to add an entry to the zipfile, using a string as + content for that entry. + + + string Content = "This string will be the content of the Readme.txt file in the zip archive."; + using (ZipFile zip1 = new ZipFile()) + { + zip1.AddFile("MyDocuments\\Resume.doc", "files"); + zip1.AddEntry("Readme.txt", Content); + zip1.Comment = "This zip file was created at " + System.DateTime.Now.ToString("G"); + zip1.Save("Content.zip"); + } + + + + Public Sub Run() + Dim Content As String = "This string will be the content of the Readme.txt file in the zip archive." + Using zip1 As ZipFile = New ZipFile + zip1.AddEntry("Readme.txt", Content) + zip1.AddFile("MyDocuments\Resume.doc", "files") + zip1.Comment = ("This zip file was created at " & DateTime.Now.ToString("G")) + zip1.Save("Content.zip") + End Using + End Sub + + + + + + Adds a named entry into the zip archive, taking content for the entry + from a string, and using the specified text encoding. + + + + + + Calling this method creates an entry using the given fileName and + directory path within the archive. There is no need for a file by the + given name to exist in the filesystem; the name is used within the zip + archive only. + + + + The content for the entry, a string value, is encoded using the given + text encoding. A BOM (byte-order-mark) is emitted into the file, if the + Encoding parameter is set for that. + + + + Most Encoding classes support a constructor that accepts a boolean, + indicating whether to emit a BOM or not. For example see . + + + + + + The name, including any path, to use within the archive for the entry. + + + + The content of the file, should it be extracted from the zip. + + + + The text encoding to use when encoding the string. Be aware: This is + distinct from the text encoding used to encode the fileName, as specified + in . + + + The ZipEntry added. + + + + + Create an entry in the ZipFile using the given Stream + as input. The entry will have the given filename. + + + + + + The application should provide an open, readable stream; in this case it + will be read during the call to or one of + its overloads. + + + + The passed stream will be read from its current position. If + necessary, callers should set the position in the stream before + calling AddEntry(). This might be appropriate when using this method + with a MemoryStream, for example. + + + + In cases where a large number of streams will be added to the + ZipFile, the application may wish to avoid maintaining all of the + streams open simultaneously. To handle this situation, the application + should use the + overload. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + This example adds a single entry to a ZipFile via a Stream. + + + + String zipToCreate = "Content.zip"; + String fileNameInArchive = "Content-From-Stream.bin"; + using (System.IO.Stream streamToRead = MyStreamOpener()) + { + using (ZipFile zip = new ZipFile()) + { + ZipEntry entry= zip.AddEntry(fileNameInArchive, streamToRead); + zip.AddFile("Readme.txt"); + zip.Save(zipToCreate); // the stream is read implicitly here + } + } + + + + Dim zipToCreate As String = "Content.zip" + Dim fileNameInArchive As String = "Content-From-Stream.bin" + Using streamToRead as System.IO.Stream = MyStreamOpener() + Using zip As ZipFile = New ZipFile() + Dim entry as ZipEntry = zip.AddEntry(fileNameInArchive, streamToRead) + zip.AddFile("Readme.txt") + zip.Save(zipToCreate) '' the stream is read implicitly, here + End Using + End Using + + + + + + + The name, including any path, which is shown in the zip file for the added + entry. + + + The input stream from which to grab content for the file + + The ZipEntry added. + + + + Add a ZipEntry for which content is written directly by the application. + + + + + When the application needs to write the zip entry data, use this + method to add the ZipEntry. For example, in the case that the + application wishes to write the XML representation of a DataSet into + a ZipEntry, the application can use this method to do so. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + About progress events: When using the WriteDelegate, DotNetZip does + not issue any SaveProgress events with EventType = + Saving_EntryBytesRead. (This is because it is the + application's code that runs in WriteDelegate - there's no way for + DotNetZip to know when to issue a EntryBytesRead event.) + Applications that want to update a progress bar or similar status + indicator should do so from within the WriteDelegate + itself. DotNetZip will issue the other SaveProgress events, + including + Saving_Started, + + Saving_BeforeWriteEntry, and + Saving_AfterWriteEntry. + + + + Note: When you use PKZip encryption, it's normally necessary to + compute the CRC of the content to be encrypted, before compressing or + encrypting it. Therefore, when using PKZip encryption with a + WriteDelegate, the WriteDelegate CAN BE called twice: once to compute + the CRC, and the second time to potentially compress and + encrypt. Surprising, but true. This is because PKWARE specified that + the encryption initialization data depends on the CRC. + If this happens, for each call of the delegate, your + application must stream the same entry data in its entirety. If your + application writes different data during the second call, it will + result in a corrupt zip file. + + + + The double-read behavior happens with all types of entries, not only + those that use WriteDelegate. It happens if you add an entry from a + filesystem file, or using a string, or a stream, or an opener/closer + pair. But in those cases, DotNetZip takes care of reading twice; in + the case of the WriteDelegate, the application code gets invoked + twice. Be aware. + + + + As you can imagine, this can cause performance problems for large + streams, and it can lead to correctness problems when you use a + WriteDelegate. This is a pretty big pitfall. There are two + ways to avoid it. First, and most preferred: don't use PKZIP + encryption. If you use the WinZip AES encryption, this problem + doesn't occur, because the encryption protocol doesn't require the CRC + up front. Second: if you do choose to use PKZIP encryption, write out + to a non-seekable stream (like standard output, or the + Response.OutputStream in an ASP.NET application). In this case, + DotNetZip will use an alternative encryption protocol that does not + rely on the CRC of the content. This also implies setting bit 3 in + the zip entry, which still presents problems for some zip tools. + + + + In the future I may modify DotNetZip to *always* use bit 3 when PKZIP + encryption is in use. This seems like a win overall, but there will + be some work involved. If you feel strongly about it, visit the + DotNetZip forums and vote up the Workitem + tracking this issue. + + + + + the name of the entry to add + the delegate which will write the entry content + the ZipEntry added + + + + This example shows an application filling a DataSet, then saving the + contents of that DataSet as XML, into a ZipEntry in a ZipFile, using an + anonymous delegate in C#. The DataSet XML is never saved to a disk file. + + + var c1= new System.Data.SqlClient.SqlConnection(connstring1); + var da = new System.Data.SqlClient.SqlDataAdapter() + { + SelectCommand= new System.Data.SqlClient.SqlCommand(strSelect, c1) + }; + + DataSet ds1 = new DataSet(); + da.Fill(ds1, "Invoices"); + + using(Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile()) + { + zip.AddEntry(zipEntryName, (name,stream) => ds1.WriteXml(stream) ); + zip.Save(zipFileName); + } + + + + + + This example uses an anonymous method in C# as the WriteDelegate to provide + the data for the ZipEntry. The example is a bit contrived - the + AddFile() method is a simpler way to insert the contents of a file + into an entry in a zip file. On the other hand, if there is some sort of + processing or transformation of the file contents required before writing, + the application could use the WriteDelegate to do it, in this way. + + + using (var input = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite )) + { + using(Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile()) + { + zip.AddEntry(zipEntryName, (name,output) => + { + byte[] buffer = new byte[BufferSize]; + int n; + while ((n = input.Read(buffer, 0, buffer.Length)) != 0) + { + // could transform the data here... + output.Write(buffer, 0, n); + // could update a progress bar here + } + }); + + zip.Save(zipFileName); + } + } + + + + + + This example uses a named delegate in VB to write data for the given + ZipEntry (VB9 does not have anonymous delegates). The example here is a bit + contrived - a simpler way to add the contents of a file to a ZipEntry is to + simply use the appropriate AddFile() method. The key scenario for + which the WriteDelegate makes sense is saving a DataSet, in XML + format, to the zip file. The DataSet can write XML to a stream, and the + WriteDelegate is the perfect place to write into the zip file. There may be + other data structures that can write to a stream, but cannot be read as a + stream. The WriteDelegate would be appropriate for those cases as + well. + + + Private Sub WriteEntry (ByVal name As String, ByVal output As Stream) + Using input As FileStream = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite) + Dim n As Integer = -1 + Dim buffer As Byte() = New Byte(BufferSize){} + Do While n <> 0 + n = input.Read(buffer, 0, buffer.Length) + output.Write(buffer, 0, n) + Loop + End Using + End Sub + + Public Sub Run() + Using zip = New ZipFile + zip.AddEntry(zipEntryName, New WriteDelegate(AddressOf WriteEntry)) + zip.Save(zipFileName) + End Using + End Sub + + + + + + Add an entry, for which the application will provide a stream, + just-in-time. + + + + + In cases where the application wishes to open the stream that holds + the content for the ZipEntry, on a just-in-time basis, the application + can use this method and provide delegates to open and close the + stream. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + This example uses anonymous methods in C# to open and close the + source stream for the content for a zip entry. In a real + application, the logic for the OpenDelegate would probably be more + involved. + + + using(Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile()) + { + zip.AddEntry(zipEntryName, + (name) => File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite ), + (name, stream) => stream.Close() + ); + + zip.Save(zipFileName); + } + + + + + + + This example uses delegates in VB.NET to open and close the + the source stream for the content for a zip entry. VB 9.0 lacks + support for "Sub" lambda expressions, and so the CloseDelegate must + be an actual, named Sub. + + + + Function MyStreamOpener(ByVal entryName As String) As Stream + '' This simply opens a file. You probably want to do somethinig + '' more involved here: open a stream to read from a database, + '' open a stream on an HTTP connection, and so on. + Return File.OpenRead(entryName) + End Function + + Sub MyStreamCloser(entryName As String, stream As Stream) + stream.Close() + End Sub + + Public Sub Run() + Dim dirToZip As String = "fodder" + Dim zipFileToCreate As String = "Archive.zip" + Dim opener As OpenDelegate = AddressOf MyStreamOpener + Dim closer As CloseDelegate = AddressOf MyStreamCloser + Dim numFilestoAdd As Int32 = 4 + Using zip As ZipFile = New ZipFile + Dim i As Integer + For i = 0 To numFilesToAdd - 1 + zip.AddEntry(String.Format("content-{0:000}.txt"), opener, closer) + Next i + zip.Save(zipFileToCreate) + End Using + End Sub + + + + + the name of the entry to add + + the delegate that will be invoked to open the stream + + + the delegate that will be invoked to close the stream + + the ZipEntry added + + + + + Updates the given entry in the ZipFile, using the given + string as content for the ZipEntry. + + + + + + Calling this method is equivalent to removing the ZipEntry for + the given file name and directory path, if it exists, and then calling + . See the documentation for + that method for further explanation. The string content is encoded + using the default encoding for the machine, or on Silverlight, using + UTF-8. This encoding is distinct from the encoding used for the + filename itself. See . + + + + + + The name, including any path, to use within the archive for the entry. + + + + The content of the file, should it be extracted from the zip. + + + The ZipEntry added. + + + + + Updates the given entry in the ZipFile, using the given string as + content for the ZipEntry. + + + + Calling this method is equivalent to removing the ZipEntry for the + given file name and directory path, if it exists, and then calling . See the + documentation for that method for further explanation. + + + + The name, including any path, to use within the archive for the entry. + + + + The content of the file, should it be extracted from the zip. + + + + The text encoding to use when encoding the string. Be aware: This is + distinct from the text encoding used to encode the filename. See . + + + The ZipEntry added. + + + + + Updates the given entry in the ZipFile, using the given delegate + as the source for content for the ZipEntry. + + + + Calling this method is equivalent to removing the ZipEntry for the + given file name and directory path, if it exists, and then calling . See the + documentation for that method for further explanation. + + + + The name, including any path, to use within the archive for the entry. + + + the delegate which will write the entry content. + + The ZipEntry added. + + + + + Updates the given entry in the ZipFile, using the given delegates + to open and close the stream that provides the content for the ZipEntry. + + + + Calling this method is equivalent to removing the ZipEntry for the + given file name and directory path, if it exists, and then calling . See the + documentation for that method for further explanation. + + + + The name, including any path, to use within the archive for the entry. + + + + the delegate that will be invoked to open the stream + + + the delegate that will be invoked to close the stream + + + The ZipEntry added or updated. + + + + + Updates the given entry in the ZipFile, using the given stream as + input, and the given filename and given directory Path. + + + + + Calling the method is equivalent to calling RemoveEntry() if an + entry by the same name already exists, and then calling AddEntry() + with the given fileName and stream. + + + + The stream must be open and readable during the call to + ZipFile.Save. You can dispense the stream on a just-in-time basis + using the property. Check the + documentation of that property for more information. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to the + ZipEntry added. + + + + + + + + + The name, including any path, to use within the archive for the entry. + + + The input stream from which to read file data. + The ZipEntry added. + + + + Add an entry into the zip archive using the given filename and + directory path within the archive, and the given content for the + file. No file is created in the filesystem. + + + The data to use for the entry. + + + The name, including any path, to use within the archive for the entry. + + + The ZipEntry added. + + + + Updates the given entry in the ZipFile, using the given byte + array as content for the entry. + + + + Calling this method is equivalent to removing the ZipEntry + for the given filename and directory path, if it exists, and then + calling . See the + documentation for that method for further explanation. + + + + The name, including any path, to use within the archive for the entry. + + + The content to use for the ZipEntry. + + The ZipEntry added. + + + + + Adds the contents of a filesystem directory to a Zip file archive. + + + + + + The name of the directory may be a relative path or a fully-qualified + path. Any files within the named directory are added to the archive. Any + subdirectories within the named directory are also added to the archive, + recursively. + + + + Top-level entries in the named directory will appear as top-level entries + in the zip archive. Entries in subdirectories in the named directory will + result in entries in subdirectories in the zip archive. + + + + If you want the entries to appear in a containing directory in the zip + archive itself, then you should call the AddDirectory() overload that + allows you to explicitly specify a directory path for use in the archive. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + + + + + + This method has 2 overloads. + + The name of the directory to add. + The ZipEntry added. + + + + Adds the contents of a filesystem directory to a Zip file archive, + overriding the path to be used for entries in the archive. + + + + + The name of the directory may be a relative path or a fully-qualified + path. The add operation is recursive, so that any files or subdirectories + within the name directory are also added to the archive. + + + + Top-level entries in the named directory will appear as top-level entries + in the zip archive. Entries in subdirectories in the named directory will + result in entries in subdirectories in the zip archive. + + + + For ZipFile properties including , , , , , + , and , their + respective values at the time of this call will be applied to each + ZipEntry added. + + + + + + + In this code, calling the ZipUp() method with a value of "c:\reports" for + the directory parameter will result in a zip file structure in which all + entries are contained in a toplevel "reports" directory. + + + + public void ZipUp(string targetZip, string directory) + { + using (var zip = new ZipFile()) + { + zip.AddDirectory(directory, System.IO.Path.GetFileName(directory)); + zip.Save(targetZip); + } + } + + + + + + + + The name of the directory to add. + + + Specifies a directory path to use to override any path in the + DirectoryName. This path may, or may not, correspond to a real directory + in the current filesystem. If the zip is later extracted, this is the + path used for the extracted file or directory. Passing null + (Nothing in VB) or the empty string ("") will insert the items at + the root path within the archive. + + + The ZipEntry added. + + + + Creates a directory in the zip archive. + + + + + + Use this when you want to create a directory in the archive but there is + no corresponding filesystem representation for that directory. + + + + You will probably not need to do this in your code. One of the only times + you will want to do this is if you want an empty directory in the zip + archive. The reason: if you add a file to a zip archive that is stored + within a multi-level directory, all of the directory tree is implicitly + created in the zip archive. + + + + + + The name of the directory to create in the archive. + + The ZipEntry added. + + + + Checks a zip file to see if its directory is consistent. + + + + + + In cases of data error, the directory within a zip file can get out + of synch with the entries in the zip file. This method checks the + given zip file and returns true if this has occurred. + + + This method may take a long time to run for large zip files. + + + This method is not supported in the Reduced or Compact Framework + versions of DotNetZip. + + + + Developers using COM can use the ComHelper.CheckZip(String) + method. + + + + + The filename to of the zip file to check. + + true if the named zip file checks OK. Otherwise, false. + + + + + + + Checks a zip file to see if its directory is consistent, + and optionally fixes the directory if necessary. + + + + + + In cases of data error, the directory within a zip file can get out of + synch with the entries in the zip file. This method checks the given + zip file, and returns true if this has occurred. It also optionally + fixes the zipfile, saving the fixed copy in Name_Fixed.zip. + + + + This method may take a long time to run for large zip files. It + will take even longer if the file actually needs to be fixed, and if + fixIfNecessary is true. + + + + This method is not supported in the Reduced or Compact + Framework versions of DotNetZip. + + + + + The filename to of the zip file to check. + + If true, the method will fix the zip file if + necessary. + + + a TextWriter in which messages generated while checking will be written. + + + true if the named zip is OK; false if the file needs to be fixed. + + + + + + + Rewrite the directory within a zipfile. + + + + + + In cases of data error, the directory in a zip file can get out of + synch with the entries in the zip file. This method attempts to fix + the zip file if this has occurred. + + + This can take a long time for large zip files. + + This won't work if the zip file uses a non-standard + code page - neither IBM437 nor UTF-8. + + + This method is not supported in the Reduced or Compact Framework + versions of DotNetZip. + + + + Developers using COM can use the ComHelper.FixZipDirectory(String) + method. + + + + + The filename to of the zip file to fix. + + + + + + + Verify the password on a zip file. + + + + + Keep in mind that passwords in zipfiles are applied to + zip entries, not to the entire zip file. So testing a + zipfile for a particular password doesn't work in the + general case. On the other hand, it's often the case + that a single password will be used on all entries in a + zip file. This method works for that case. + + + There is no way to check a password without doing the + decryption. So this code decrypts and extracts the given + zipfile into + + + + The filename to of the zip file to fix. + + The password to check. + + a bool indicating whether the password matches. + + + + Returns true if an entry by the given name exists in the ZipFile. + + + the name of the entry to find + true if an entry with the given name exists; otherwise false. + + + + Provides a string representation of the instance. + a string representation of the instance. + + + + Creates a new ZipFile instance, using the specified filename. + + + + + Applications can use this constructor to create a new ZipFile for writing, + or to slurp in an existing zip archive for read and update purposes. + + + + To create a new zip archive, an application can call this constructor, + passing the name of a file that does not exist. The name may be a fully + qualified path. Then the application can add directories or files to the + ZipFile via AddDirectory(), AddFile(), AddItem() + and then write the zip archive to the disk by calling Save(). The + zip file is not actually opened and written to the disk until the + application calls ZipFile.Save(). At that point the new zip file + with the given name is created. + + + + If you won't know the name of the Zipfile until the time you call + ZipFile.Save(), or if you plan to save to a stream (which has no + name), then you should use the no-argument constructor. + + + + The application can also call this constructor to read an existing zip + archive. passing the name of a valid zip file that does exist. But, it's + better form to use the static method, + passing the name of the zip file, because using ZipFile.Read() in + your code communicates very clearly what you are doing. In either case, + the file is then read into the ZipFile instance. The app can then + enumerate the entries or can modify the zip file, for example adding + entries, removing entries, changing comments, and so on. + + + + One advantage to this parameterized constructor: it allows applications to + use the same code to add items to a zip archive, regardless of whether the + zip file exists. + + + + Instances of the ZipFile class are not multi-thread safe. You may + not party on a single instance with multiple threads. You may have + multiple threads that each use a distinct ZipFile instance, or you + can synchronize multi-thread access to a single instance. + + + + By the way, since DotNetZip is so easy to use, don't you think you should + donate $5 or $10? + + + + + + Thrown if name refers to an existing file that is not a valid zip file. + + + + This example shows how to create a zipfile, and add a few files into it. + + String ZipFileToCreate = "archive1.zip"; + String DirectoryToZip = "c:\\reports"; + using (ZipFile zip = new ZipFile()) + { + // Store all files found in the top level directory, into the zip archive. + String[] filenames = System.IO.Directory.GetFiles(DirectoryToZip); + zip.AddFiles(filenames, "files"); + zip.Save(ZipFileToCreate); + } + + + + Dim ZipFileToCreate As String = "archive1.zip" + Dim DirectoryToZip As String = "c:\reports" + Using zip As ZipFile = New ZipFile() + Dim filenames As String() = System.IO.Directory.GetFiles(DirectoryToZip) + zip.AddFiles(filenames, "files") + zip.Save(ZipFileToCreate) + End Using + + + + The filename to use for the new zip archive. + + + + + Creates a new ZipFile instance, using the specified name for the + filename, and the specified Encoding. + + + + + See the documentation on the ZipFile + constructor that accepts a single string argument for basic + information on all the ZipFile constructors. + + + + The Encoding is used as the default alternate encoding for entries with + filenames or comments that cannot be encoded with the IBM437 code page. + This is equivalent to setting the property on the ZipFile + instance after construction. + + + + Instances of the ZipFile class are not multi-thread safe. You may + not party on a single instance with multiple threads. You may have + multiple threads that each use a distinct ZipFile instance, or you + can synchronize multi-thread access to a single instance. + + + + + + Thrown if name refers to an existing file that is not a valid zip file. + + + The filename to use for the new zip archive. + The Encoding is used as the default alternate + encoding for entries with filenames or comments that cannot be encoded + with the IBM437 code page. + + + + Create a zip file, without specifying a target filename or stream to save to. + + + + + See the documentation on the ZipFile + constructor that accepts a single string argument for basic + information on all the ZipFile constructors. + + + + After instantiating with this constructor and adding entries to the + archive, the application should call or + to save to a file or a + stream, respectively. The application can also set the + property and then call the no-argument method. (This + is the preferred approach for applications that use the library through + COM interop.) If you call the no-argument method + without having set the Name of the ZipFile, either through + the parameterized constructor or through the explicit property , the + Save() will throw, because there is no place to save the file. + + + Instances of the ZipFile class are not multi-thread safe. You may + have multiple threads that each use a distinct ZipFile instance, or + you can synchronize multi-thread access to a single instance. + + + + + This example creates a Zip archive called Backup.zip, containing all the files + in the directory DirectoryToZip. Files within subdirectories are not zipped up. + + using (ZipFile zip = new ZipFile()) + { + // Store all files found in the top level directory, into the zip archive. + // note: this code does not recurse subdirectories! + String[] filenames = System.IO.Directory.GetFiles(DirectoryToZip); + zip.AddFiles(filenames, "files"); + zip.Save("Backup.zip"); + } + + + + Using zip As New ZipFile + ' Store all files found in the top level directory, into the zip archive. + ' note: this code does not recurse subdirectories! + Dim filenames As String() = System.IO.Directory.GetFiles(DirectoryToZip) + zip.AddFiles(filenames, "files") + zip.Save("Backup.zip") + End Using + + + + + + Create a zip file, specifying a text Encoding, but without specifying a + target filename or stream to save to. + + + + + See the documentation on the ZipFile + constructor that accepts a single string argument for basic + information on all the ZipFile constructors. + + + + + + The Encoding is used as the default alternate encoding for entries with + filenames or comments that cannot be encoded with the IBM437 code page. + + + + + Creates a new ZipFile instance, using the specified name for the + filename, and the specified status message writer. + + + + + See the documentation on the ZipFile + constructor that accepts a single string argument for basic + information on all the ZipFile constructors. + + + + This version of the constructor allows the caller to pass in a TextWriter, + to which verbose messages will be written during extraction or creation of + the zip archive. A console application may wish to pass + System.Console.Out to get messages on the Console. A graphical or headless + application may wish to capture the messages in a different + TextWriter, for example, a StringWriter, and then display + the messages in a TextBox, or generate an audit log of ZipFile operations. + + + + To encrypt the data for the files added to the ZipFile instance, + set the Password property after creating the ZipFile instance. + + + + Instances of the ZipFile class are not multi-thread safe. You may + not party on a single instance with multiple threads. You may have + multiple threads that each use a distinct ZipFile instance, or you + can synchronize multi-thread access to a single instance. + + + + + + Thrown if name refers to an existing file that is not a valid zip file. + + + + + using (ZipFile zip = new ZipFile("Backup.zip", Console.Out)) + { + // Store all files found in the top level directory, into the zip archive. + // note: this code does not recurse subdirectories! + // Status messages will be written to Console.Out + String[] filenames = System.IO.Directory.GetFiles(DirectoryToZip); + zip.AddFiles(filenames); + zip.Save(); + } + + + + Using zip As New ZipFile("Backup.zip", Console.Out) + ' Store all files found in the top level directory, into the zip archive. + ' note: this code does not recurse subdirectories! + ' Status messages will be written to Console.Out + Dim filenames As String() = System.IO.Directory.GetFiles(DirectoryToZip) + zip.AddFiles(filenames) + zip.Save() + End Using + + + + The filename to use for the new zip archive. + A TextWriter to use for writing + verbose status messages. + + + + Creates a new ZipFile instance, using the specified name for the + filename, the specified status message writer, and the specified Encoding. + + + + + This constructor works like the ZipFile + constructor that accepts a single string argument. See that + reference for detail on what this constructor does. + + + + This version of the constructor allows the caller to pass in a + TextWriter, and an Encoding. The TextWriter will collect + verbose messages that are generated by the library during extraction or + creation of the zip archive. A console application may wish to pass + System.Console.Out to get messages on the Console. A graphical or + headless application may wish to capture the messages in a different + TextWriter, for example, a StringWriter, and then display + the messages in a TextBox, or generate an audit log of + ZipFile operations. + + + + The Encoding is used as the default alternate encoding for entries + with filenames or comments that cannot be encoded with the IBM437 code + page. This is a equivalent to setting the property on the ZipFile + instance after construction. + + + + To encrypt the data for the files added to the ZipFile instance, + set the Password property after creating the ZipFile + instance. + + + + Instances of the ZipFile class are not multi-thread safe. You may + not party on a single instance with multiple threads. You may have + multiple threads that each use a distinct ZipFile instance, or you + can synchronize multi-thread access to a single instance. + + + + + + Thrown if fileName refers to an existing file that is not a valid zip file. + + + The filename to use for the new zip archive. + A TextWriter to use for writing verbose + status messages. + + The Encoding is used as the default alternate encoding for entries with + filenames or comments that cannot be encoded with the IBM437 code page. + + + + + Initialize a ZipFile instance by reading in a zip file. + + + + + + This method is primarily useful from COM Automation environments, when + reading or extracting zip files. In COM, it is not possible to invoke + parameterized constructors for a class. A COM Automation application can + update a zip file by using the default (no argument) + constructor, then calling Initialize() to read the contents + of an on-disk zip archive into the ZipFile instance. + + + + .NET applications are encouraged to use the ZipFile.Read() methods + for better clarity. + + + + the name of the existing zip file to read in. + + + + Removes the given ZipEntry from the zip archive. + + + + + After calling RemoveEntry, the application must call Save to + make the changes permanent. + + + + + Thrown if the specified ZipEntry does not exist in the ZipFile. + + + + In this example, all entries in the zip archive dating from before + December 31st, 2007, are removed from the archive. This is actually much + easier if you use the RemoveSelectedEntries method. But I needed an + example for RemoveEntry, so here it is. + + String ZipFileToRead = "ArchiveToModify.zip"; + System.DateTime Threshold = new System.DateTime(2007,12,31); + using (ZipFile zip = ZipFile.Read(ZipFileToRead)) + { + var EntriesToRemove = new System.Collections.Generic.List<ZipEntry>(); + foreach (ZipEntry e in zip) + { + if (e.LastModified < Threshold) + { + // We cannot remove the entry from the list, within the context of + // an enumeration of said list. + // So we add the doomed entry to a list to be removed later. + EntriesToRemove.Add(e); + } + } + + // actually remove the doomed entries. + foreach (ZipEntry zombie in EntriesToRemove) + zip.RemoveEntry(zombie); + + zip.Comment= String.Format("This zip archive was updated at {0}.", + System.DateTime.Now.ToString("G")); + + // save with a different name + zip.Save("Archive-Updated.zip"); + } + + + + Dim ZipFileToRead As String = "ArchiveToModify.zip" + Dim Threshold As New DateTime(2007, 12, 31) + Using zip As ZipFile = ZipFile.Read(ZipFileToRead) + Dim EntriesToRemove As New System.Collections.Generic.List(Of ZipEntry) + Dim e As ZipEntry + For Each e In zip + If (e.LastModified < Threshold) Then + ' We cannot remove the entry from the list, within the context of + ' an enumeration of said list. + ' So we add the doomed entry to a list to be removed later. + EntriesToRemove.Add(e) + End If + Next + + ' actually remove the doomed entries. + Dim zombie As ZipEntry + For Each zombie In EntriesToRemove + zip.RemoveEntry(zombie) + Next + zip.Comment = String.Format("This zip archive was updated at {0}.", DateTime.Now.ToString("G")) + 'save as a different name + zip.Save("Archive-Updated.zip") + End Using + + + + + The ZipEntry to remove from the zip. + + + + + + + + Removes the ZipEntry with the given filename from the zip archive. + + + + + After calling RemoveEntry, the application must call Save to + make the changes permanent. + + + + + + Thrown if the ZipFile is not updatable. + + + + Thrown if a ZipEntry with the specified filename does not exist in + the ZipFile. + + + + + This example shows one way to remove an entry with a given filename from + an existing zip archive. + + + String zipFileToRead= "PackedDocuments.zip"; + string candidate = "DatedMaterial.xps"; + using (ZipFile zip = ZipFile.Read(zipFileToRead)) + { + if (zip.EntryFilenames.Contains(candidate)) + { + zip.RemoveEntry(candidate); + zip.Comment= String.Format("The file '{0}' has been removed from this archive.", + Candidate); + zip.Save(); + } + } + + + Dim zipFileToRead As String = "PackedDocuments.zip" + Dim candidate As String = "DatedMaterial.xps" + Using zip As ZipFile = ZipFile.Read(zipFileToRead) + If zip.EntryFilenames.Contains(candidate) Then + zip.RemoveEntry(candidate) + zip.Comment = String.Format("The file '{0}' has been removed from this archive.", Candidate) + zip.Save + End If + End Using + + + + + The name of the file, including any directory path, to remove from the zip. + The filename match is not case-sensitive by default; you can use the + CaseSensitiveRetrieval property to change this behavior. The + pathname can use forward-slashes or backward slashes. + + + + + + Closes the read and write streams associated + to the ZipFile, if necessary. + + + + The Dispose() method is generally employed implicitly, via a using(..) {..} + statement. (Using...End Using in VB) If you do not employ a using + statement, insure that your application calls Dispose() explicitly. For + example, in a Powershell application, or an application that uses the COM + interop interface, you must call Dispose() explicitly. + + + + This example extracts an entry selected by name, from the Zip file to the + Console. + + using (ZipFile zip = ZipFile.Read(zipfile)) + { + foreach (ZipEntry e in zip) + { + if (WantThisEntry(e.FileName)) + zip.Extract(e.FileName, Console.OpenStandardOutput()); + } + } // Dispose() is called implicitly here. + + + + Using zip As ZipFile = ZipFile.Read(zipfile) + Dim e As ZipEntry + For Each e In zip + If WantThisEntry(e.FileName) Then + zip.Extract(e.FileName, Console.OpenStandardOutput()) + End If + Next + End Using ' Dispose is implicity called here + + + + + + Disposes any managed resources, if the flag is set, then marks the + instance disposed. This method is typically not called explicitly from + application code. + + + + Applications should call the no-arg Dispose method. + + + + indicates whether the method should dispose streams or not. + + + + + Default size of the buffer used for IO. + + + + + Extracts all of the items in the zip archive, to the specified path in the + filesystem. The path can be relative or fully-qualified. + + + + + This method will extract all entries in the ZipFile to the + specified path. + + + + If an extraction of a file from the zip archive would overwrite an + existing file in the filesystem, the action taken is dictated by the + ExtractExistingFile property, which overrides any setting you may have + made on individual ZipEntry instances. By default, if you have not + set that property on the ZipFile instance, the entry will not + be extracted, the existing file will not be overwritten and an + exception will be thrown. To change this, set the property, or use the + overload that allows you to + specify an ExtractExistingFileAction parameter. + + + + The action to take when an extract would overwrite an existing file + applies to all entries. If you want to set this on a per-entry basis, + then you must use one of the ZipEntry.Extract methods. + + + + This method will send verbose output messages to the , if it is set on the ZipFile + instance. + + + + You may wish to take advantage of the ExtractProgress event. + + + + About timestamps: When extracting a file entry from a zip archive, the + extracted file gets the last modified time of the entry as stored in + the archive. The archive may also store extended file timestamp + information, including last accessed and created times. If these are + present in the ZipEntry, then the extracted file will also get + these times. + + + + A Directory entry is somewhat different. It will get the times as + described for a file entry, but, if there are file entries in the zip + archive that, when extracted, appear in the just-created directory, + then when those file entries are extracted, the last modified and last + accessed times of the directory will change, as a side effect. The + result is that after an extraction of a directory and a number of + files within the directory, the last modified and last accessed + timestamps on the directory will reflect the time that the last file + was extracted into the directory, rather than the time stored in the + zip archive for the directory. + + + + To compensate, when extracting an archive with ExtractAll, + DotNetZip will extract all the file and directory entries as described + above, but it will then make a second pass on the directories, and + reset the times on the directories to reflect what is stored in the + zip archive. + + + + This compensation is performed only within the context of an + ExtractAll. If you call ZipEntry.Extract on a directory + entry, the timestamps on directory in the filesystem will reflect the + times stored in the zip. If you then call ZipEntry.Extract on + a file entry, which is extracted into the directory, the timestamps on + the directory will be updated to the current time. + + + + + This example extracts all the entries in a zip archive file, to the + specified target directory. The extraction will overwrite any + existing files silently. + + + String TargetDirectory= "unpack"; + using(ZipFile zip= ZipFile.Read(ZipFileToExtract)) + { + zip.ExtractExistingFile= ExtractExistingFileAction.OverwriteSilently; + zip.ExtractAll(TargetDirectory); + } + + + + Dim TargetDirectory As String = "unpack" + Using zip As ZipFile = ZipFile.Read(ZipFileToExtract) + zip.ExtractExistingFile= ExtractExistingFileAction.OverwriteSilently + zip.ExtractAll(TargetDirectory) + End Using + + + + + + + + The path to which the contents of the zipfile will be extracted. + The path can be relative or fully-qualified. + + + + + + Extracts all of the items in the zip archive, to the specified path in the + filesystem, using the specified behavior when extraction would overwrite an + existing file. + + + + + + This method will extract all entries in the ZipFile to the specified + path. For an extraction that would overwrite an existing file, the behavior + is dictated by , which overrides any + setting you may have made on individual ZipEntry instances. + + + + The action to take when an extract would overwrite an existing file + applies to all entries. If you want to set this on a per-entry basis, + then you must use or one of the similar methods. + + + + Calling this method is equivalent to setting the property and then calling . + + + + This method will send verbose output messages to the + , if it is set on the ZipFile instance. + + + + + This example extracts all the entries in a zip archive file, to the + specified target directory. It does not overwrite any existing files. + + String TargetDirectory= "c:\\unpack"; + using(ZipFile zip= ZipFile.Read(ZipFileToExtract)) + { + zip.ExtractAll(TargetDirectory, ExtractExistingFileAction.DontOverwrite); + } + + + + Dim TargetDirectory As String = "c:\unpack" + Using zip As ZipFile = ZipFile.Read(ZipFileToExtract) + zip.ExtractAll(TargetDirectory, ExtractExistingFileAction.DontOverwrite) + End Using + + + + + The path to which the contents of the zipfile will be extracted. + The path can be relative or fully-qualified. + + + + The action to take if extraction would overwrite an existing file. + + + + + + Reads a zip file archive and returns the instance. + + + + + The stream is read using the default System.Text.Encoding, which is the + IBM437 codepage. + + + + + Thrown if the ZipFile cannot be read. The implementation of this method + relies on System.IO.File.OpenRead, which can throw a variety of exceptions, + including specific exceptions if a file is not found, an unauthorized access + exception, exceptions for poorly formatted filenames, and so on. + + + + The name of the zip archive to open. This can be a fully-qualified or relative + pathname. + + + . + + The instance read from the zip archive. + + + + + Reads a zip file archive from the named filesystem file using the + specified options. + + + + + This version of the Read() method allows the caller to pass + in a TextWriter an Encoding, via an instance of the + ReadOptions class. The ZipFile is read in using the + specified encoding for entries where UTF-8 encoding is not + explicitly specified. + + + + + + + This example shows how to read a zip file using the Big-5 Chinese + code page (950), and extract each entry in the zip file, while + sending status messages out to the Console. + + + + For this code to work as intended, the zipfile must have been + created using the big5 code page (CP950). This is typical, for + example, when using WinRar on a machine with CP950 set as the + default code page. In that case, the names of entries within the + Zip archive will be stored in that code page, and reading the zip + archive must be done using that code page. If the application did + not use the correct code page in ZipFile.Read(), then names of + entries within the zip archive would not be correctly retrieved. + + + + string zipToExtract = "MyArchive.zip"; + string extractDirectory = "extract"; + var options = new ReadOptions + { + StatusMessageWriter = System.Console.Out, + Encoding = System.Text.Encoding.GetEncoding(950) + }; + using (ZipFile zip = ZipFile.Read(zipToExtract, options)) + { + foreach (ZipEntry e in zip) + { + e.Extract(extractDirectory); + } + } + + + + + Dim zipToExtract as String = "MyArchive.zip" + Dim extractDirectory as String = "extract" + Dim options as New ReadOptions + options.Encoding = System.Text.Encoding.GetEncoding(950) + options.StatusMessageWriter = System.Console.Out + Using zip As ZipFile = ZipFile.Read(zipToExtract, options) + Dim e As ZipEntry + For Each e In zip + e.Extract(extractDirectory) + Next + End Using + + + + + + + + This example shows how to read a zip file using the default + code page, to remove entries that have a modified date before a given threshold, + sending status messages out to a StringWriter. + + + + var options = new ReadOptions + { + StatusMessageWriter = new System.IO.StringWriter() + }; + using (ZipFile zip = ZipFile.Read("PackedDocuments.zip", options)) + { + var Threshold = new DateTime(2007,7,4); + // We cannot remove the entry from the list, within the context of + // an enumeration of said list. + // So we add the doomed entry to a list to be removed later. + // pass 1: mark the entries for removal + var MarkedEntries = new System.Collections.Generic.List<ZipEntry>(); + foreach (ZipEntry e in zip) + { + if (e.LastModified < Threshold) + MarkedEntries.Add(e); + } + // pass 2: actually remove the entry. + foreach (ZipEntry zombie in MarkedEntries) + zip.RemoveEntry(zombie); + zip.Comment = "This archive has been updated."; + zip.Save(); + } + // can now use contents of sw, eg store in an audit log + + + + Dim options as New ReadOptions + options.StatusMessageWriter = New System.IO.StringWriter + Using zip As ZipFile = ZipFile.Read("PackedDocuments.zip", options) + Dim Threshold As New DateTime(2007, 7, 4) + ' We cannot remove the entry from the list, within the context of + ' an enumeration of said list. + ' So we add the doomed entry to a list to be removed later. + ' pass 1: mark the entries for removal + Dim MarkedEntries As New System.Collections.Generic.List(Of ZipEntry) + Dim e As ZipEntry + For Each e In zip + If (e.LastModified < Threshold) Then + MarkedEntries.Add(e) + End If + Next + ' pass 2: actually remove the entry. + Dim zombie As ZipEntry + For Each zombie In MarkedEntries + zip.RemoveEntry(zombie) + Next + zip.Comment = "This archive has been updated." + zip.Save + End Using + ' can now use contents of sw, eg store in an audit log + + + + + Thrown if the zipfile cannot be read. The implementation of + this method relies on System.IO.File.OpenRead, which + can throw a variety of exceptions, including specific + exceptions if a file is not found, an unauthorized access + exception, exceptions for poorly formatted filenames, and so + on. + + + + The name of the zip archive to open. + This can be a fully-qualified or relative pathname. + + + + The set of options to use when reading the zip file. + + + The ZipFile instance read from the zip archive. + + + + + + + Reads a zip file archive using the specified text encoding, the specified + TextWriter for status messages, and the specified ReadProgress event handler, + and returns the instance. + + + + The name of the zip archive to open. + This can be a fully-qualified or relative pathname. + + + + An event handler for Read operations. + + + + The System.IO.TextWriter to use for writing verbose status messages + during operations on the zip archive. A console application may wish to + pass System.Console.Out to get messages on the Console. A graphical + or headless application may wish to capture the messages in a different + TextWriter, such as a System.IO.StringWriter. + + + + The System.Text.Encoding to use when reading in the zip archive. Be + careful specifying the encoding. If the value you use here is not the same + as the Encoding used when the zip archive was created (possibly by a + different archiver) you will get unexpected results and possibly exceptions. + + + The instance read from the zip archive. + + + + + Reads a zip archive from a stream. + + + + + + When reading from a file, it's probably easier to just use + ZipFile.Read(String, ReadOptions). This + overload is useful when when the zip archive content is + available from an already-open stream. The stream must be + open and readable and seekable when calling this method. The + stream is left open when the reading is completed. + + + + Using this overload, the stream is read using the default + System.Text.Encoding, which is the IBM437 + codepage. If you want to specify the encoding to use when + reading the zipfile content, see + ZipFile.Read(Stream, ReadOptions). This + + + + Reading of zip content begins at the current position in the + stream. This means if you have a stream that concatenates + regular data and zip data, if you position the open, readable + stream at the start of the zip data, you will be able to read + the zip archive using this constructor, or any of the ZipFile + constructors that accept a as + input. Some examples of where this might be useful: the zip + content is concatenated at the end of a regular EXE file, as + some self-extracting archives do. (Note: SFX files produced + by DotNetZip do not work this way; they can be read as normal + ZIP files). Another example might be a stream being read from + a database, where the zip content is embedded within an + aggregate stream of data. + + + + + + + This example shows how to Read zip content from a stream, and + extract one entry into a different stream. In this example, + the filename "NameOfEntryInArchive.doc", refers only to the + name of the entry within the zip archive. A file by that + name is not created in the filesystem. The I/O is done + strictly with the given streams. + + + + using (ZipFile zip = ZipFile.Read(InputStream)) + { + zip.Extract("NameOfEntryInArchive.doc", OutputStream); + } + + + + Using zip as ZipFile = ZipFile.Read(InputStream) + zip.Extract("NameOfEntryInArchive.doc", OutputStream) + End Using + + + + the stream containing the zip data. + + The ZipFile instance read from the stream + + + + + Reads a zip file archive from the given stream using the + specified options. + + + + + + When reading from a file, it's probably easier to just use + ZipFile.Read(String, ReadOptions). This + overload is useful when when the zip archive content is + available from an already-open stream. The stream must be + open and readable and seekable when calling this method. The + stream is left open when the reading is completed. + + + + Reading of zip content begins at the current position in the + stream. This means if you have a stream that concatenates + regular data and zip data, if you position the open, readable + stream at the start of the zip data, you will be able to read + the zip archive using this constructor, or any of the ZipFile + constructors that accept a as + input. Some examples of where this might be useful: the zip + content is concatenated at the end of a regular EXE file, as + some self-extracting archives do. (Note: SFX files produced + by DotNetZip do not work this way; they can be read as normal + ZIP files). Another example might be a stream being read from + a database, where the zip content is embedded within an + aggregate stream of data. + + + + the stream containing the zip data. + + + The set of options to use when reading the zip file. + + + + Thrown if the zip archive cannot be read. + + + The ZipFile instance read from the stream. + + + + + + + Reads a zip archive from a stream, using the specified text Encoding, the + specified TextWriter for status messages, + and the specified ReadProgress event handler. + + + + + Reading of zip content begins at the current position in the stream. This + means if you have a stream that concatenates regular data and zip data, if + you position the open, readable stream at the start of the zip data, you + will be able to read the zip archive using this constructor, or any of the + ZipFile constructors that accept a as + input. Some examples of where this might be useful: the zip content is + concatenated at the end of a regular EXE file, as some self-extracting + archives do. (Note: SFX files produced by DotNetZip do not work this + way). Another example might be a stream being read from a database, where + the zip content is embedded within an aggregate stream of data. + + + + the stream containing the zip data. + + + The System.IO.TextWriter to which verbose status messages are written + during operations on the ZipFile. For example, in a console + application, System.Console.Out works, and will get a message for each entry + added to the ZipFile. If the TextWriter is null, no verbose messages + are written. + + + + The text encoding to use when reading entries that do not have the UTF-8 + encoding bit set. Be careful specifying the encoding. If the value you use + here is not the same as the Encoding used when the zip archive was created + (possibly by a different archiver) you will get unexpected results and + possibly exceptions. See the + property for more information. + + + + An event handler for Read operations. + + + an instance of ZipFile + + + + Checks the given file to see if it appears to be a valid zip file. + + + + + Calling this method is equivalent to calling with the testExtract parameter set to false. + + + + The file to check. + true if the file appears to be a zip file. + + + + Checks a file to see if it is a valid zip file. + + + + + This method opens the specified zip file, reads in the zip archive, + verifying the ZIP metadata as it reads. + + + + If everything succeeds, then the method returns true. If anything fails - + for example if an incorrect signature or CRC is found, indicating a + corrupt file, the the method returns false. This method also returns + false for a file that does not exist. + + + + If is true, as part of its check, this + method reads in the content for each entry, expands it, and checks CRCs. + This provides an additional check beyond verifying the zip header and + directory data. + + + + If is true, and if any of the zip entries + are protected with a password, this method will return false. If you want + to verify a ZipFile that has entries which are protected with a + password, you will need to do that manually. + + + + + The zip file to check. + true if the caller wants to extract each entry. + true if the file contains a valid zip file. + + + + Checks a stream to see if it contains a valid zip archive. + + + + + This method reads the zip archive contained in the specified stream, verifying + the ZIP metadata as it reads. If testExtract is true, this method also extracts + each entry in the archive, dumping all the bits into . + + + + If everything succeeds, then the method returns true. If anything fails - + for example if an incorrect signature or CRC is found, indicating a corrupt + file, the the method returns false. This method also returns false for a + file that does not exist. + + + + If testExtract is true, this method reads in the content for each + entry, expands it, and checks CRCs. This provides an additional check + beyond verifying the zip header data. + + + + If testExtract is true, and if any of the zip entries are protected + with a password, this method will return false. If you want to verify a + ZipFile that has entries which are protected with a password, you will need + to do that manually. + + + + + + The stream to check. + true if the caller wants to extract each entry. + true if the stream contains a valid zip archive. + + + + Delete file with retry on UnauthorizedAccessException. + + + + + When calling File.Delete() on a file that has been "recently" + created, the call sometimes fails with + UnauthorizedAccessException. This method simply retries the Delete 3 + times with a sleep between tries. + + + + the name of the file to be deleted + + + + Saves the Zip archive to a file, specified by the Name property of the + ZipFile. + + + + + The ZipFile instance is written to storage, typically a zip file + in a filesystem, only when the caller calls Save. In the typical + case, the Save operation writes the zip content to a temporary file, and + then renames the temporary file to the desired name. If necessary, this + method will delete a pre-existing file before the rename. + + + + The property is specified either explicitly, + or implicitly using one of the parameterized ZipFile constructors. For + COM Automation clients, the Name property must be set explicitly, + because COM Automation clients cannot call parameterized constructors. + + + + When using a filesystem file for the Zip output, it is possible to call + Save multiple times on the ZipFile instance. With each + call the zip content is re-written to the same output file. + + + + Data for entries that have been added to the ZipFile instance is + written to the output when the Save method is called. This means + that the input streams for those entries must be available at the time + the application calls Save. If, for example, the application + adds entries with AddEntry using a dynamically-allocated + MemoryStream, the memory stream must not have been disposed + before the call to Save. See the property for more discussion of the + availability requirements of the input stream for an entry, and an + approach for providing just-in-time stream lifecycle management. + + + + + + + + Thrown if you haven't specified a location or stream for saving the zip, + either in the constructor or by setting the Name property, or if you try + to save a regular zip archive to a filename with a .exe extension. + + + + Thrown if is non-zero, and the number + of segments that would be generated for the spanned zip file during the + save operation exceeds 99. If this happens, you need to increase the + segment size. + + + + + + Save the file to a new zipfile, with the given name. + + + + + This method allows the application to explicitly specify the name of the zip + file when saving. Use this when creating a new zip file, or when + updating a zip archive. + + + + An application can also save a zip archive in several places by calling this + method multiple times in succession, with different filenames. + + + + The ZipFile instance is written to storage, typically a zip file in a + filesystem, only when the caller calls Save. The Save operation writes + the zip content to a temporary file, and then renames the temporary file + to the desired name. If necessary, this method will delete a pre-existing file + before the rename. + + + + + + Thrown if you specify a directory for the filename. + + + + The name of the zip archive to save to. Existing files will + be overwritten with great prejudice. + + + + This example shows how to create and Save a zip file. + + using (ZipFile zip = new ZipFile()) + { + zip.AddDirectory(@"c:\reports\January"); + zip.Save("January.zip"); + } + + + + Using zip As New ZipFile() + zip.AddDirectory("c:\reports\January") + zip.Save("January.zip") + End Using + + + + + + This example shows how to update a zip file. + + using (ZipFile zip = ZipFile.Read("ExistingArchive.zip")) + { + zip.AddFile("NewData.csv"); + zip.Save("UpdatedArchive.zip"); + } + + + + Using zip As ZipFile = ZipFile.Read("ExistingArchive.zip") + zip.AddFile("NewData.csv") + zip.Save("UpdatedArchive.zip") + End Using + + + + + + + Save the zip archive to the specified stream. + + + + + The ZipFile instance is written to storage - typically a zip file + in a filesystem, but using this overload, the storage can be anything + accessible via a writable stream - only when the caller calls Save. + + + + Use this method to save the zip content to a stream directly. A common + scenario is an ASP.NET application that dynamically generates a zip file + and allows the browser to download it. The application can call + Save(Response.OutputStream) to write a zipfile directly to the + output stream, without creating a zip file on the disk on the ASP.NET + server. + + + + Be careful when saving a file to a non-seekable stream, including + Response.OutputStream. When DotNetZip writes to a non-seekable + stream, the zip archive is formatted in such a way that may not be + compatible with all zip tools on all platforms. It's a perfectly legal + and compliant zip file, but some people have reported problems opening + files produced this way using the Mac OS archive utility. + + + + + + + This example saves the zipfile content into a MemoryStream, and + then gets the array of bytes from that MemoryStream. + + + using (var zip = new Ionic.Zip.ZipFile()) + { + zip.CompressionLevel= Ionic.Zlib.CompressionLevel.BestCompression; + zip.Password = "VerySecret."; + zip.Encryption = EncryptionAlgorithm.WinZipAes128; + zip.AddFile(sourceFileName); + MemoryStream output = new MemoryStream(); + zip.Save(output); + + byte[] zipbytes = output.ToArray(); + } + + + + + + This example shows a pitfall you should avoid. DO NOT read + from a stream, then try to save to the same stream. DO + NOT DO THIS: + + + + using (var fs = new FileSteeam(filename, FileMode.Open)) + { + using (var zip = Ionic.Zip.ZipFile.Read(inputStream)) + { + zip.AddEntry("Name1.txt", "this is the content"); + zip.Save(inputStream); // NO NO NO!! + } + } + + + + Better like this: + + + + using (var zip = Ionic.Zip.ZipFile.Read(filename)) + { + zip.AddEntry("Name1.txt", "this is the content"); + zip.Save(); // YES! + } + + + + + + The System.IO.Stream to write to. It must be + writable. If you created the ZipFile instanct by calling + ZipFile.Read(), this stream must not be the same stream + you passed to ZipFile.Read(). + + + + + Adds to the ZipFile a set of files from the current working directory on + disk, that conform to the specified criteria. + + + + + This method selects files from the the current working directory matching + the specified criteria, and adds them to the ZipFile. + + + + Specify the criteria in statements of 3 elements: a noun, an operator, and + a value. Consider the string "name != *.doc" . The noun is "name". The + operator is "!=", implying "Not Equal". The value is "*.doc". That + criterion, in English, says "all files with a name that does not end in + the .doc extension." + + + + Supported nouns include "name" (or "filename") for the filename; "atime", + "mtime", and "ctime" for last access time, last modfied time, and created + time of the file, respectively; "attributes" (or "attrs") for the file + attributes; "size" (or "length") for the file length (uncompressed), and + "type" for the type of object, either a file or a directory. The + "attributes", "name" and "type" nouns both support = and != as operators. + The "size", "atime", "mtime", and "ctime" nouns support = and !=, and + >, >=, <, <= as well. The times are taken to be expressed in + local time. + + + + Specify values for the file attributes as a string with one or more of the + characters H,R,S,A,I,L in any order, implying file attributes of Hidden, + ReadOnly, System, Archive, NotContextIndexed, and ReparsePoint (symbolic + link) respectively. + + + + To specify a time, use YYYY-MM-DD-HH:mm:ss or YYYY/MM/DD-HH:mm:ss as the + format. If you omit the HH:mm:ss portion, it is assumed to be 00:00:00 + (midnight). + + + + The value for a size criterion is expressed in integer quantities of bytes, + kilobytes (use k or kb after the number), megabytes (m or mb), or gigabytes + (g or gb). + + + + The value for a name is a pattern to match against the filename, potentially + including wildcards. The pattern follows CMD.exe glob rules: * implies one + or more of any character, while ? implies one character. If the name + pattern contains any slashes, it is matched to the entire filename, + including the path; otherwise, it is matched against only the filename + without the path. This means a pattern of "*\*.*" matches all files one + directory level deep, while a pattern of "*.*" matches all files in all + directories. + + + + To specify a name pattern that includes spaces, use single quotes around the + pattern. A pattern of "'* *.*'" will match all files that have spaces in + the filename. The full criteria string for that would be "name = '* *.*'" . + + + + The value for a type criterion is either F (implying a file) or D (implying + a directory). + + + + Some examples: + + + + + criteria + Files retrieved + + + + name != *.xls + any file with an extension that is not .xls + + + + + name = *.mp3 + any file with a .mp3 extension. + + + + + *.mp3 + (same as above) any file with a .mp3 extension. + + + + + attributes = A + all files whose attributes include the Archive bit. + + + + + attributes != H + all files whose attributes do not include the Hidden bit. + + + + + mtime > 2009-01-01 + all files with a last modified time after January 1st, 2009. + + + + + size > 2gb + all files whose uncompressed size is greater than 2gb. + + + + + type = D + all directories in the filesystem. + + + + + + You can combine criteria with the conjunctions AND or OR. Using a string + like "name = *.txt AND size >= 100k" for the selectionCriteria retrieves + entries whose names end in .txt, and whose uncompressed size is greater than + or equal to 100 kilobytes. + + + + For more complex combinations of criteria, you can use parenthesis to group + clauses in the boolean logic. Without parenthesis, the precedence of the + criterion atoms is determined by order of appearance. Unlike the C# + language, the AND conjunction does not take precendence over the logical OR. + This is important only in strings that contain 3 or more criterion atoms. + In other words, "name = *.txt and size > 1000 or attributes = H" implies + "((name = *.txt AND size > 1000) OR attributes = H)" while "attributes = + H OR name = *.txt and size > 1000" evaluates to "((attributes = H OR name + = *.txt) AND size > 1000)". When in doubt, use parenthesis. + + + + Using time properties requires some extra care. If you want to retrieve all + entries that were last updated on 2009 February 14, specify a time range + like so:"mtime >= 2009-02-14 AND mtime < 2009-02-15". Read this to + say: all files updated after 12:00am on February 14th, until 12:00am on + February 15th. You can use the same bracketing approach to specify any time + period - a year, a month, a week, and so on. + + + + The syntax allows one special case: if you provide a string with no spaces, it is + treated as a pattern to match for the filename. Therefore a string like "*.xls" + will be equivalent to specifying "name = *.xls". + + + + There is no logic in this method that insures that the file inclusion + criteria are internally consistent. For example, it's possible to specify + criteria that says the file must have a size of less than 100 bytes, as well + as a size that is greater than 1000 bytes. Obviously no file will ever + satisfy such criteria, but this method does not detect such logical + inconsistencies. The caller is responsible for insuring the criteria are + sensible. + + + + Using this method, the file selection does not recurse into + subdirectories, and the full path of the selected files is included in the + entries added into the zip archive. If you don't like these behaviors, + see the other overloads of this method. + + + + + This example zips up all *.csv files in the current working directory. + + using (ZipFile zip = new ZipFile()) + { + // To just match on filename wildcards, + // use the shorthand form of the selectionCriteria string. + zip.AddSelectedFiles("*.csv"); + zip.Save(PathToZipArchive); + } + + + Using zip As ZipFile = New ZipFile() + zip.AddSelectedFiles("*.csv") + zip.Save(PathToZipArchive) + End Using + + + + The criteria for file selection + + + + Adds to the ZipFile a set of files from the disk that conform to the + specified criteria, optionally recursing into subdirectories. + + + + + This method selects files from the the current working directory matching + the specified criteria, and adds them to the ZipFile. If + recurseDirectories is true, files are also selected from + subdirectories, and the directory structure in the filesystem is + reproduced in the zip archive, rooted at the current working directory. + + + + Using this method, the full path of the selected files is included in the + entries added into the zip archive. If you don't want this behavior, use + one of the overloads of this method that allows the specification of a + directoryInArchive. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + + + + This example zips up all *.xml files in the current working directory, or any + subdirectory, that are larger than 1mb. + + + using (ZipFile zip = new ZipFile()) + { + // Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.xml and size > 1024kb", true); + zip.Save(PathToZipArchive); + } + + + Using zip As ZipFile = New ZipFile() + ' Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.xml and size > 1024kb", true) + zip.Save(PathToZipArchive) + End Using + + + + The criteria for file selection + + + If true, the file selection will recurse into subdirectories. + + + + + Adds to the ZipFile a set of files from a specified directory in the + filesystem, that conform to the specified criteria. + + + + + This method selects files that conform to the specified criteria, from the + the specified directory on disk, and adds them to the ZipFile. The search + does not recurse into subdirectores. + + + + Using this method, the full filesystem path of the files on disk is + reproduced on the entries added to the zip file. If you don't want this + behavior, use one of the other overloads of this method. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + + + + This example zips up all *.xml files larger than 1mb in the directory + given by "d:\rawdata". + + + using (ZipFile zip = new ZipFile()) + { + // Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.xml and size > 1024kb", "d:\\rawdata"); + zip.Save(PathToZipArchive); + } + + + + Using zip As ZipFile = New ZipFile() + ' Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.xml and size > 1024kb", "d:\rawdata) + zip.Save(PathToZipArchive) + End Using + + + + The criteria for file selection + + + The name of the directory on the disk from which to select files. + + + + + Adds to the ZipFile a set of files from the specified directory on disk, + that conform to the specified criteria. + + + + + + This method selects files from the the specified disk directory matching + the specified selection criteria, and adds them to the ZipFile. If + recurseDirectories is true, files are also selected from + subdirectories. + + + + The full directory structure in the filesystem is reproduced on the + entries added to the zip archive. If you don't want this behavior, use + one of the overloads of this method that allows the specification of a + directoryInArchive. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + + + This example zips up all *.csv files in the "files" directory, or any + subdirectory, that have been saved since 2009 February 14th. + + + using (ZipFile zip = new ZipFile()) + { + // Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.csv and mtime > 2009-02-14", "files", true); + zip.Save(PathToZipArchive); + } + + + Using zip As ZipFile = New ZipFile() + ' Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.csv and mtime > 2009-02-14", "files", true) + zip.Save(PathToZipArchive) + End Using + + + + + This example zips up all files in the current working + directory, and all its child directories, except those in + the excludethis subdirectory. + + Using Zip As ZipFile = New ZipFile(zipfile) + Zip.AddSelectedFfiles("name != 'excludethis\*.*'", datapath, True) + Zip.Save() + End Using + + + + The criteria for file selection + + + The filesystem path from which to select files. + + + + If true, the file selection will recurse into subdirectories. + + + + + Adds to the ZipFile a selection of files from the specified directory on + disk, that conform to the specified criteria, and using a specified root + path for entries added to the zip archive. + + + + + This method selects files from the specified disk directory matching the + specified selection criteria, and adds those files to the ZipFile, using + the specified directory path in the archive. The search does not recurse + into subdirectories. For details on the syntax for the selectionCriteria + parameter, see . + + + + + + + This example zips up all *.psd files in the "photos" directory that have + been saved since 2009 February 14th, and puts them all in a zip file, + using the directory name of "content" in the zip archive itself. When the + zip archive is unzipped, the folder containing the .psd files will be + named "content". + + + using (ZipFile zip = new ZipFile()) + { + // Use a compound expression in the selectionCriteria string. + zip.AddSelectedFiles("name = *.psd and mtime > 2009-02-14", "photos", "content"); + zip.Save(PathToZipArchive); + } + + + Using zip As ZipFile = New ZipFile + zip.AddSelectedFiles("name = *.psd and mtime > 2009-02-14", "photos", "content") + zip.Save(PathToZipArchive) + End Using + + + + + The criteria for selection of files to add to the ZipFile. + + + + The path to the directory in the filesystem from which to select files. + + + + Specifies a directory path to use to in place of the + directoryOnDisk. This path may, or may not, correspond to a real + directory in the current filesystem. If the files within the zip are + later extracted, this is the path used for the extracted file. Passing + null (nothing in VB) will use the path on the file name, if any; in other + words it would use directoryOnDisk, plus any subdirectory. Passing + the empty string ("") will insert the item at the root path within the + archive. + + + + + Adds to the ZipFile a selection of files from the specified directory on + disk, that conform to the specified criteria, optionally recursing through + subdirectories, and using a specified root path for entries added to the + zip archive. + + + + This method selects files from the specified disk directory that match the + specified selection criteria, and adds those files to the ZipFile, using + the specified directory path in the archive. If recurseDirectories + is true, files are also selected from subdirectories, and the directory + structure in the filesystem is reproduced in the zip archive, rooted at + the directory specified by directoryOnDisk. For details on the + syntax for the selectionCriteria parameter, see . + + + + + This example zips up all files that are NOT *.pst files, in the current + working directory and any subdirectories. + + + using (ZipFile zip = new ZipFile()) + { + zip.AddSelectedFiles("name != *.pst", SourceDirectory, "backup", true); + zip.Save(PathToZipArchive); + } + + + Using zip As ZipFile = New ZipFile + zip.AddSelectedFiles("name != *.pst", SourceDirectory, "backup", true) + zip.Save(PathToZipArchive) + End Using + + + + + The criteria for selection of files to add to the ZipFile. + + + + The path to the directory in the filesystem from which to select files. + + + + Specifies a directory path to use to in place of the + directoryOnDisk. This path may, or may not, correspond to a real + directory in the current filesystem. If the files within the zip are + later extracted, this is the path used for the extracted file. Passing + null (nothing in VB) will use the path on the file name, if any; in other + words it would use directoryOnDisk, plus any subdirectory. Passing + the empty string ("") will insert the item at the root path within the + archive. + + + + If true, the method also scans subdirectories for files matching the + criteria. + + + + + Updates the ZipFile with a selection of files from the disk that conform + to the specified criteria. + + + + This method selects files from the specified disk directory that match the + specified selection criteria, and Updates the ZipFile with those + files, using the specified directory path in the archive. If + recurseDirectories is true, files are also selected from + subdirectories, and the directory structure in the filesystem is + reproduced in the zip archive, rooted at the directory specified by + directoryOnDisk. For details on the syntax for the + selectionCriteria parameter, see . + + + + The criteria for selection of files to add to the ZipFile. + + + + The path to the directory in the filesystem from which to select files. + + + + Specifies a directory path to use to in place of the + directoryOnDisk. This path may, or may not, correspond to a + real directory in the current filesystem. If the files within the zip + are later extracted, this is the path used for the extracted file. + Passing null (nothing in VB) will use the path on the file name, if + any; in other words it would use directoryOnDisk, plus any + subdirectory. Passing the empty string ("") will insert the item at + the root path within the archive. + + + + If true, the method also scans subdirectories for files matching the criteria. + + + + + + + Retrieve entries from the zipfile by specified criteria. + + + + + This method allows callers to retrieve the collection of entries from the zipfile + that fit the specified criteria. The criteria are described in a string format, and + can include patterns for the filename; constraints on the size of the entry; + constraints on the last modified, created, or last accessed time for the file + described by the entry; or the attributes of the entry. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + This method is intended for use with a ZipFile that has been read from storage. + When creating a new ZipFile, this method will work only after the ZipArchive has + been Saved to the disk (the ZipFile class subsequently and implicitly reads the Zip + archive from storage.) Calling SelectEntries on a ZipFile that has not yet been + saved will deliver undefined results. + + + + + Thrown if selectionCriteria has an invalid syntax. + + + + This example selects all the PhotoShop files from within an archive, and extracts them + to the current working directory. + + using (ZipFile zip1 = ZipFile.Read(ZipFileName)) + { + var PhotoShopFiles = zip1.SelectEntries("*.psd"); + foreach (ZipEntry psd in PhotoShopFiles) + { + psd.Extract(); + } + } + + + Using zip1 As ZipFile = ZipFile.Read(ZipFileName) + Dim PhotoShopFiles as ICollection(Of ZipEntry) + PhotoShopFiles = zip1.SelectEntries("*.psd") + Dim psd As ZipEntry + For Each psd In PhotoShopFiles + psd.Extract + Next + End Using + + + the string that specifies which entries to select + a collection of ZipEntry objects that conform to the inclusion spec + + + + Retrieve entries from the zipfile by specified criteria. + + + + + This method allows callers to retrieve the collection of entries from the zipfile + that fit the specified criteria. The criteria are described in a string format, and + can include patterns for the filename; constraints on the size of the entry; + constraints on the last modified, created, or last accessed time for the file + described by the entry; or the attributes of the entry. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + This method is intended for use with a ZipFile that has been read from storage. + When creating a new ZipFile, this method will work only after the ZipArchive has + been Saved to the disk (the ZipFile class subsequently and implicitly reads the Zip + archive from storage.) Calling SelectEntries on a ZipFile that has not yet been + saved will deliver undefined results. + + + + + Thrown if selectionCriteria has an invalid syntax. + + + + + using (ZipFile zip1 = ZipFile.Read(ZipFileName)) + { + var UpdatedPhotoShopFiles = zip1.SelectEntries("*.psd", "UpdatedFiles"); + foreach (ZipEntry e in UpdatedPhotoShopFiles) + { + // prompt for extract here + if (WantExtract(e.FileName)) + e.Extract(); + } + } + + + Using zip1 As ZipFile = ZipFile.Read(ZipFileName) + Dim UpdatedPhotoShopFiles As ICollection(Of ZipEntry) = zip1.SelectEntries("*.psd", "UpdatedFiles") + Dim e As ZipEntry + For Each e In UpdatedPhotoShopFiles + ' prompt for extract here + If Me.WantExtract(e.FileName) Then + e.Extract + End If + Next + End Using + + + the string that specifies which entries to select + + + the directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + + a collection of ZipEntry objects that conform to the inclusion spec + + + + Remove entries from the zipfile by specified criteria. + + + + + This method allows callers to remove the collection of entries from the zipfile + that fit the specified criteria. The criteria are described in a string format, and + can include patterns for the filename; constraints on the size of the entry; + constraints on the last modified, created, or last accessed time for the file + described by the entry; or the attributes of the entry. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + This method is intended for use with a ZipFile that has been read from storage. + When creating a new ZipFile, this method will work only after the ZipArchive has + been Saved to the disk (the ZipFile class subsequently and implicitly reads the Zip + archive from storage.) Calling SelectEntries on a ZipFile that has not yet been + saved will deliver undefined results. + + + + + Thrown if selectionCriteria has an invalid syntax. + + + + This example removes all entries in a zip file that were modified prior to January 1st, 2008. + + using (ZipFile zip1 = ZipFile.Read(ZipFileName)) + { + // remove all entries from prior to Jan 1, 2008 + zip1.RemoveEntries("mtime < 2008-01-01"); + // don't forget to save the archive! + zip1.Save(); + } + + + Using zip As ZipFile = ZipFile.Read(ZipFileName) + ' remove all entries from prior to Jan 1, 2008 + zip1.RemoveEntries("mtime < 2008-01-01") + ' do not forget to save the archive! + zip1.Save + End Using + + + the string that specifies which entries to select + the number of entries removed + + + + Remove entries from the zipfile by specified criteria, and within the specified + path in the archive. + + + + + This method allows callers to remove the collection of entries from the zipfile + that fit the specified criteria. The criteria are described in a string format, and + can include patterns for the filename; constraints on the size of the entry; + constraints on the last modified, created, or last accessed time for the file + described by the entry; or the attributes of the entry. + + + + For details on the syntax for the selectionCriteria parameter, see . + + + + This method is intended for use with a ZipFile that has been read from storage. + When creating a new ZipFile, this method will work only after the ZipArchive has + been Saved to the disk (the ZipFile class subsequently and implicitly reads the Zip + archive from storage.) Calling SelectEntries on a ZipFile that has not yet been + saved will deliver undefined results. + + + + + Thrown if selectionCriteria has an invalid syntax. + + + + + using (ZipFile zip1 = ZipFile.Read(ZipFileName)) + { + // remove all entries from prior to Jan 1, 2008 + zip1.RemoveEntries("mtime < 2008-01-01", "documents"); + // a call to ZipFile.Save will make the modifications permanent + zip1.Save(); + } + + + Using zip As ZipFile = ZipFile.Read(ZipFileName) + ' remove all entries from prior to Jan 1, 2008 + zip1.RemoveEntries("mtime < 2008-01-01", "documents") + ' a call to ZipFile.Save will make the modifications permanent + zip1.Save + End Using + + + + the string that specifies which entries to select + + the directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + the number of entries removed + + + + Selects and Extracts a set of Entries from the ZipFile. + + + + + The entries are extracted into the current working directory. + + + + If any of the files to be extracted already exist, then the action taken is as + specified in the property on the + corresponding ZipEntry instance. By default, the action taken in this case is to + throw an exception. + + + + For information on the syntax of the selectionCriteria string, + see . + + + + + This example shows how extract all XML files modified after 15 January 2009. + + using (ZipFile zip = ZipFile.Read(zipArchiveName)) + { + zip.ExtractSelectedEntries("name = *.xml and mtime > 2009-01-15"); + } + + + the selection criteria for entries to extract. + + + + + + Selects and Extracts a set of Entries from the ZipFile. + + + + + The entries are extracted into the current working directory. When extraction would would + overwrite an existing filesystem file, the action taken is as specified in the + parameter. + + + + For information on the syntax of the string describing the entry selection criteria, + see . + + + + + This example shows how extract all XML files modified after 15 January 2009, + overwriting any existing files. + + using (ZipFile zip = ZipFile.Read(zipArchiveName)) + { + zip.ExtractSelectedEntries("name = *.xml and mtime > 2009-01-15", + ExtractExistingFileAction.OverwriteSilently); + } + + + + the selection criteria for entries to extract. + + + The action to take if extraction would overwrite an existing file. + + + + + Selects and Extracts a set of Entries from the ZipFile. + + + + + The entries are selected from the specified directory within the archive, and then + extracted into the current working directory. + + + + If any of the files to be extracted already exist, then the action taken is as + specified in the property on the + corresponding ZipEntry instance. By default, the action taken in this case is to + throw an exception. + + + + For information on the syntax of the string describing the entry selection criteria, + see . + + + + + This example shows how extract all XML files modified after 15 January 2009, + and writes them to the "unpack" directory. + + using (ZipFile zip = ZipFile.Read(zipArchiveName)) + { + zip.ExtractSelectedEntries("name = *.xml and mtime > 2009-01-15","unpack"); + } + + + + the selection criteria for entries to extract. + + + the directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + + + + + + Selects and Extracts a set of Entries from the ZipFile. + + + + + The entries are extracted into the specified directory. If any of the files to be + extracted already exist, an exception will be thrown. + + + For information on the syntax of the string describing the entry selection criteria, + see . + + + + the selection criteria for entries to extract. + + + the directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + + + the directory on the disk into which to extract. It will be created + if it does not exist. + + + + + Selects and Extracts a set of Entries from the ZipFile. + + + + + The entries are extracted into the specified directory. When extraction would would + overwrite an existing filesystem file, the action taken is as specified in the + parameter. + + + + For information on the syntax of the string describing the entry selection criteria, + see . + + + + + This example shows how extract all files with an XML extension or with a size larger than 100,000 bytes, + and puts them in the unpack directory. For any files that already exist in + that destination directory, they will not be overwritten. + + using (ZipFile zip = ZipFile.Read(zipArchiveName)) + { + zip.ExtractSelectedEntries("name = *.xml or size > 100000", + null, + "unpack", + ExtractExistingFileAction.DontOverwrite); + } + + + + the selection criteria for entries to extract. + + + The directory on the disk into which to extract. It will be created if it does not exist. + + + + The directory in the archive from which to select entries. If null, then + all directories in the archive are used. + + + + The action to take if extraction would overwrite an existing file. + + + + + + Saves the ZipFile instance to a self-extracting zip archive. + + + + + + The generated exe image will execute on any machine that has the .NET + Framework 2.0 installed on it. The generated exe image is also a + valid ZIP file, readable with DotNetZip or another Zip library or tool + such as WinZip. + + + + There are two "flavors" of self-extracting archive. The + WinFormsApplication version will pop up a GUI and allow the + user to select a target directory into which to extract. There's also + a checkbox allowing the user to specify to overwrite existing files, + and another checkbox to allow the user to request that Explorer be + opened to see the extracted files after extraction. The other flavor + is ConsoleApplication. A self-extractor generated with that + flavor setting will run from the command line. It accepts command-line + options to set the overwrite behavior, and to specify the target + extraction directory. + + + + There are a few temporary files created during the saving to a + self-extracting zip. These files are created in the directory pointed + to by , which defaults to . These temporary files are + removed upon successful completion of this method. + + + + When a user runs the WinForms SFX, the user's personal directory (Environment.SpecialFolder.Personal) + will be used as the default extract location. If you want to set the + default extract location, you should use the other overload of + SaveSelfExtractor()/ The user who runs the SFX will have the + opportunity to change the extract directory before extracting. When + the user runs the Command-Line SFX, the user must explicitly specify + the directory to which to extract. The .NET Framework 2.0 is required + on the computer when the self-extracting archive is run. + + + + NB: This method is not available in the version of DotNetZip build for + the .NET Compact Framework, nor in the "Reduced" DotNetZip library. + + + + + + + string DirectoryPath = "c:\\Documents\\Project7"; + using (ZipFile zip = new ZipFile()) + { + zip.AddDirectory(DirectoryPath, System.IO.Path.GetFileName(DirectoryPath)); + zip.Comment = "This will be embedded into a self-extracting console-based exe"; + zip.SaveSelfExtractor("archive.exe", SelfExtractorFlavor.ConsoleApplication); + } + + + Dim DirectoryPath As String = "c:\Documents\Project7" + Using zip As New ZipFile() + zip.AddDirectory(DirectoryPath, System.IO.Path.GetFileName(DirectoryPath)) + zip.Comment = "This will be embedded into a self-extracting console-based exe" + zip.SaveSelfExtractor("archive.exe", SelfExtractorFlavor.ConsoleApplication) + End Using + + + + + a pathname, possibly fully qualified, to be created. Typically it + will end in an .exe extension. + + Indicates whether a Winforms or Console self-extractor is + desired. + + + + Saves the ZipFile instance to a self-extracting zip archive, using + the specified save options. + + + + + This method saves a self extracting archive, using the specified save + options. These options include the flavor of the SFX, the default extract + directory, the icon file, and so on. See the documentation + for for more + details. + + + + The user who runs the SFX will have the opportunity to change the extract + directory before extracting. If at the time of extraction, the specified + directory does not exist, the SFX will create the directory before + extracting the files. + + + + + + This example saves a WinForms-based self-extracting archive EXE that + will use c:\ExtractHere as the default extract location. The C# code + shows syntax for .NET 3.0, which uses an object initializer for + the SelfExtractorOptions object. + + string DirectoryPath = "c:\\Documents\\Project7"; + using (ZipFile zip = new ZipFile()) + { + zip.AddDirectory(DirectoryPath, System.IO.Path.GetFileName(DirectoryPath)); + zip.Comment = "This will be embedded into a self-extracting WinForms-based exe"; + var options = new SelfExtractorOptions + { + Flavor = SelfExtractorFlavor.WinFormsApplication, + DefaultExtractDirectory = "%USERPROFILE%\\ExtractHere", + PostExtractCommandLine = ExeToRunAfterExtract, + SfxExeWindowTitle = "My Custom Window Title", + RemoveUnpackedFilesAfterExecute = true + }; + zip.SaveSelfExtractor("archive.exe", options); + } + + + Dim DirectoryPath As String = "c:\Documents\Project7" + Using zip As New ZipFile() + zip.AddDirectory(DirectoryPath, System.IO.Path.GetFileName(DirectoryPath)) + zip.Comment = "This will be embedded into a self-extracting console-based exe" + Dim options As New SelfExtractorOptions() + options.Flavor = SelfExtractorFlavor.WinFormsApplication + options.DefaultExtractDirectory = "%USERPROFILE%\\ExtractHere" + options.PostExtractCommandLine = ExeToRunAfterExtract + options.SfxExeWindowTitle = "My Custom Window Title" + options.RemoveUnpackedFilesAfterExecute = True + zip.SaveSelfExtractor("archive.exe", options) + End Using + + + + The name of the EXE to generate. + provides the options for creating the + Self-extracting archive. + + + + Generic IEnumerator support, for use of a ZipFile in an enumeration. + + + + You probably do not want to call GetEnumerator explicitly. Instead + it is implicitly called when you use a loop in C#, or a + For Each loop in VB.NET. + + + + This example reads a zipfile of a given name, then enumerates the + entries in that zip file, and displays the information about each + entry on the Console. + + using (ZipFile zip = ZipFile.Read(zipfile)) + { + bool header = true; + foreach (ZipEntry e in zip) + { + if (header) + { + System.Console.WriteLine("Zipfile: {0}", zip.Name); + System.Console.WriteLine("Version Needed: 0x{0:X2}", e.VersionNeeded); + System.Console.WriteLine("BitField: 0x{0:X2}", e.BitField); + System.Console.WriteLine("Compression Method: 0x{0:X2}", e.CompressionMethod); + System.Console.WriteLine("\n{1,-22} {2,-6} {3,4} {4,-8} {0}", + "Filename", "Modified", "Size", "Ratio", "Packed"); + System.Console.WriteLine(new System.String('-', 72)); + header = false; + } + + System.Console.WriteLine("{1,-22} {2,-6} {3,4:F0}% {4,-8} {0}", + e.FileName, + e.LastModified.ToString("yyyy-MM-dd HH:mm:ss"), + e.UncompressedSize, + e.CompressionRatio, + e.CompressedSize); + + e.Extract(); + } + } + + + + Dim ZipFileToExtract As String = "c:\foo.zip" + Using zip As ZipFile = ZipFile.Read(ZipFileToExtract) + Dim header As Boolean = True + Dim e As ZipEntry + For Each e In zip + If header Then + Console.WriteLine("Zipfile: {0}", zip.Name) + Console.WriteLine("Version Needed: 0x{0:X2}", e.VersionNeeded) + Console.WriteLine("BitField: 0x{0:X2}", e.BitField) + Console.WriteLine("Compression Method: 0x{0:X2}", e.CompressionMethod) + Console.WriteLine(ChrW(10) & "{1,-22} {2,-6} {3,4} {4,-8} {0}", _ + "Filename", "Modified", "Size", "Ratio", "Packed" ) + Console.WriteLine(New String("-"c, 72)) + header = False + End If + Console.WriteLine("{1,-22} {2,-6} {3,4:F0}% {4,-8} {0}", _ + e.FileName, _ + e.LastModified.ToString("yyyy-MM-dd HH:mm:ss"), _ + e.UncompressedSize, _ + e.CompressionRatio, _ + e.CompressedSize ) + e.Extract + Next + End Using + + + + A generic enumerator suitable for use within a foreach loop. + + + + An IEnumerator, for use of a ZipFile in a foreach construct. + + + + This method is included for COM support. An application generally does not call + this method directly. It is called implicitly by COM clients when enumerating + the entries in the ZipFile instance. In VBScript, this is done with a For Each + statement. In Javascript, this is done with new Enumerator(zipfile). + + + + The IEnumerator over the entries in the ZipFile. + + + + + Provides a human-readable string with information about the ZipFile. + + + + + The information string contains 10 lines or so, about each ZipEntry, + describing whether encryption is in use, the compressed and uncompressed + length of the entry, the offset of the entry, and so on. As a result the + information string can be very long for zip files that contain many + entries. + + + This information is mostly useful for diagnostic purposes. + + + + + + Indicates whether to perform a full scan of the zip file when reading it. + + + + + + You almost never want to use this property. + + + + When reading a zip file, if this flag is true (True in + VB), the entire zip archive will be scanned and searched for entries. + For large archives, this can take a very, long time. The much more + efficient default behavior is to read the zip directory, which is + stored at the end of the zip file. But, in some cases the directory is + corrupted and you need to perform a full scan of the zip file to + determine the contents of the zip file. This property lets you do + that, when necessary. + + + + This flag is effective only when calling . Normally you would read a ZipFile with the + static ZipFile.Read + method. But you can't set the FullScan property on the + ZipFile instance when you use a static factory method like + ZipFile.Read. + + + + + + + This example shows how to read a zip file using the full scan approach, + and then save it, thereby producing a corrected zip file. + + + using (var zip = new ZipFile()) + { + zip.FullScan = true; + zip.Initialize(zipFileName); + zip.Save(newName); + } + + + + Using zip As New ZipFile + zip.FullScan = True + zip.Initialize(zipFileName) + zip.Save(newName) + End Using + + + + + + + Whether to sort the ZipEntries before saving the file. + + + + The default is false. If you have a large number of zip entries, the sort + alone can consume significant time. + + + + + using (var zip = new ZipFile()) + { + zip.AddFiles(filesToAdd); + zip.SortEntriesBeforeSaving = true; + zip.Save(name); + } + + + + Using zip As New ZipFile + zip.AddFiles(filesToAdd) + zip.SortEntriesBeforeSaving = True + zip.Save(name) + End Using + + + + + + + Indicates whether NTFS Reparse Points, like junctions, should be + traversed during calls to AddDirectory(). + + + + By default, calls to AddDirectory() will traverse NTFS reparse + points, like mounted volumes, and directory junctions. An example + of a junction is the "My Music" directory in Windows Vista. In some + cases you may not want DotNetZip to traverse those directories. In + that case, set this property to false. + + + + + using (var zip = new ZipFile()) + { + zip.AddDirectoryWillTraverseReparsePoints = false; + zip.AddDirectory(dirToZip,"fodder"); + zip.Save(zipFileToCreate); + } + + + + + + Size of the IO buffer used while saving. + + + + + + First, let me say that you really don't need to bother with this. It is + here to allow for optimizations that you probably won't make! It will work + fine if you don't set or get this property at all. Ok? + + + + Now that we have that out of the way, the fine print: This + property affects the size of the buffer that is used for I/O for each + entry contained in the zip file. When a file is read in to be compressed, + it uses a buffer given by the size here. When you update a zip file, the + data for unmodified entries is copied from the first zip file to the + other, through a buffer given by the size here. + + + + Changing the buffer size affects a few things: first, for larger buffer + sizes, the memory used by the ZipFile, obviously, will be larger + during I/O operations. This may make operations faster for very much + larger files. Last, for any given entry, when you use a larger buffer + there will be fewer progress events during I/O operations, because there's + one progress event generated for each time the buffer is filled and then + emptied. + + + + The default buffer size is 8k. Increasing the buffer size may speed + things up as you compress larger files. But there are no hard-and-fast + rules here, eh? You won't know til you test it. And there will be a + limit where ever larger buffers actually slow things down. So as I said + in the beginning, it's probably best if you don't set or get this property + at all. + + + + + + This example shows how you might set a large buffer size for efficiency when + dealing with zip entries that are larger than 1gb. + + using (ZipFile zip = new ZipFile()) + { + zip.SaveProgress += this.zip1_SaveProgress; + zip.AddDirectory(directoryToZip, ""); + zip.UseZip64WhenSaving = Zip64Option.Always; + zip.BufferSize = 65536*8; // 65536 * 8 = 512k + zip.Save(ZipFileToCreate); + } + + + + + + Size of the work buffer to use for the ZLIB codec during compression. + + + + + When doing ZLIB or Deflate compression, the library fills a buffer, + then passes it to the compressor for compression. Then the library + reads out the compressed bytes. This happens repeatedly until there + is no more uncompressed data to compress. This property sets the + size of the buffer that will be used for chunk-wise compression. In + order for the setting to take effect, your application needs to set + this property before calling one of the ZipFile.Save() + overloads. + + + Setting this affects the performance and memory efficiency of + compression and decompression. For larger files, setting this to a + larger size may improve compression performance, but the exact + numbers vary depending on available memory, the size of the streams + you are compressing, and a bunch of other variables. I don't have + good firm recommendations on how to set it. You'll have to test it + yourself. Or just leave it alone and accept the default. + + + + + + Indicates whether extracted files should keep their paths as + stored in the zip archive. + + + + + This property affects Extraction. It is not used when creating zip + archives. + + + + With this property set to false, the default, extracting entries + from a zip file will create files in the filesystem that have the full + path associated to the entry within the zip file. With this property set + to true, extracting entries from the zip file results in files + with no path: the folders are "flattened." + + + + An example: suppose the zip file contains entries /directory1/file1.txt and + /directory2/file2.txt. With FlattenFoldersOnExtract set to false, + the files created will be \directory1\file1.txt and \directory2\file2.txt. + With the property set to true, the files created are file1.txt and file2.txt. + + + + + + + The compression strategy to use for all entries. + + + + Set the Strategy used by the ZLIB-compatible compressor, when + compressing entries using the DEFLATE method. Different compression + strategies work better on different sorts of data. The strategy + parameter can affect the compression ratio and the speed of + compression but not the correctness of the compresssion. For more + information see Ionic.Zlib.CompressionStrategy. + + + + + The name of the ZipFile, on disk. + + + + + + When the ZipFile instance was created by reading an archive using + one of the ZipFile.Read methods, this property represents the name + of the zip file that was read. When the ZipFile instance was + created by using the no-argument constructor, this value is null + (Nothing in VB). + + + + If you use the no-argument constructor, and you then explicitly set this + property, when you call , this name will + specify the name of the zip file created. Doing so is equivalent to + calling . When instantiating a + ZipFile by reading from a stream or byte array, the Name + property remains null. When saving to a stream, the Name + property is implicitly set to null. + + + + + + Sets the compression level to be used for entries subsequently added to + the zip archive. + + + + + Varying the compression level used on entries can affect the + size-vs-speed tradeoff when compression and decompressing data streams + or files. + + + + As with some other properties on the ZipFile class, like , , and , setting this property on a ZipFile + instance will cause the specified CompressionLevel to be used on all + items that are subsequently added to the + ZipFile instance. If you set this property after you have added + items to the ZipFile, but before you have called Save(), + those items will not use the specified compression level. + + + + If you do not set this property, the default compression level is used, + which normally gives a good balance of compression efficiency and + compression speed. In some tests, using BestCompression can + double the time it takes to compress, while delivering just a small + increase in compression efficiency. This behavior will vary with the + type of data you compress. If you are in doubt, just leave this setting + alone, and accept the default. + + + + + + The compression method for the zipfile. + + + + By default, the compression method is CompressionMethod.Deflate. + + + + + + + A comment attached to the zip archive. + + + + + + This property is read/write. It allows the application to specify a + comment for the ZipFile, or read the comment for the + ZipFile. After setting this property, changes are only made + permanent when you call a Save() method. + + + + According to PKWARE's + zip specification, the comment is not encrypted, even if there is a + password set on the zip file. + + + + The specification does not describe how to indicate the encoding used + on a comment string. Many "compliant" zip tools and libraries use + IBM437 as the code page for comments; DotNetZip, too, follows that + practice. On the other hand, there are situations where you want a + Comment to be encoded with something else, for example using code page + 950 "Big-5 Chinese". To fill that need, DotNetZip will encode the + comment following the same procedure it follows for encoding + filenames: (a) if is + Never, it uses the default encoding (IBM437). (b) if is Always, it always uses the + alternate encoding (). (c) if is AsNecessary, it uses the + alternate encoding only if the default encoding is not sufficient for + encoding the comment - in other words if decoding the result does not + produce the original string. This decision is taken at the time of + the call to ZipFile.Save(). + + + + When creating a zip archive using this library, it is possible to change + the value of between each + entry you add, and between adding entries and the call to + Save(). Don't do this. It will likely result in a zip file that is + not readable by any tool or application. For best interoperability, leave + alone, or specify it only + once, before adding any entries to the ZipFile instance. + + + + + + + Specifies whether the Creation, Access, and Modified times for entries + added to the zip file will be emitted in “Windows format” + when the zip archive is saved. + + + + + An application creating a zip archive can use this flag to explicitly + specify that the file times for the entries should or should not be stored + in the zip archive in the format used by Windows. By default this flag is + true, meaning the Windows-format times are stored in the zip + archive. + + + + When adding an entry from a file or directory, the Creation (), Access (), and Modified () times for the given entry are + automatically set from the filesystem values. When adding an entry from a + stream or string, all three values are implicitly set to + DateTime.Now. Applications can also explicitly set those times by + calling . + + + + PKWARE's + zip specification describes multiple ways to format these times in a + zip file. One is the format Windows applications normally use: 100ns ticks + since January 1, 1601 UTC. The other is a format Unix applications typically + use: seconds since January 1, 1970 UTC. Each format can be stored in an + "extra field" in the zip entry when saving the zip archive. The former + uses an extra field with a Header Id of 0x000A, while the latter uses a + header ID of 0x5455, although you probably don't need to know that. + + + + Not all tools and libraries can interpret these fields. Windows + compressed folders is one that can read the Windows Format timestamps, + while I believe the Infozip + tools can read the Unix format timestamps. Some tools and libraries + may be able to read only one or the other. DotNetZip can read or write + times in either or both formats. + + + + The times stored are taken from , , and . + + + + The value set here applies to all entries subsequently added to the + ZipFile. + + + + This property is not mutually exclusive of the property. It is possible and + legal and valid to produce a zip file that contains timestamps encoded in + the Unix format as well as in the Windows format, in addition to the LastModified time attached to each + entry in the archive, a time that is always stored in "DOS format". And, + notwithstanding the names PKWare uses for these time formats, any of them + can be read and written by any computer, on any operating system. But, + there are no guarantees that a program running on Mac or Linux will + gracefully handle a zip file with "Windows" formatted times, or that an + application that does not use DotNetZip but runs on Windows will be able to + handle file times in Unix format. + + + + When in doubt, test. Sorry, I haven't got a complete list of tools and + which sort of timestamps they can use and will tolerate. If you get any + good information and would like to pass it on, please do so and I will + include that information in this documentation. + + + + + This example shows how to save a zip file that contains file timestamps + in a format normally used by Unix. + + using (var zip = new ZipFile()) + { + // produce a zip file the Mac will like + zip.EmitTimesInWindowsFormatWhenSaving = false; + zip.EmitTimesInUnixFormatWhenSaving = true; + zip.AddDirectory(directoryToZip, "files"); + zip.Save(outputFile); + } + + + + Using zip As New ZipFile + '' produce a zip file the Mac will like + zip.EmitTimesInWindowsFormatWhenSaving = False + zip.EmitTimesInUnixFormatWhenSaving = True + zip.AddDirectory(directoryToZip, "files") + zip.Save(outputFile) + End Using + + + + + + + + + Specifies whether the Creation, Access, and Modified times + for entries added to the zip file will be emitted in "Unix(tm) + format" when the zip archive is saved. + + + + + An application creating a zip archive can use this flag to explicitly + specify that the file times for the entries should or should not be stored + in the zip archive in the format used by Unix. By default this flag is + false, meaning the Unix-format times are not stored in the zip + archive. + + + + When adding an entry from a file or directory, the Creation (), Access (), and Modified () times for the given entry are + automatically set from the filesystem values. When adding an entry from a + stream or string, all three values are implicitly set to DateTime.Now. + Applications can also explicitly set those times by calling . + + + + PKWARE's + zip specification describes multiple ways to format these times in a + zip file. One is the format Windows applications normally use: 100ns ticks + since January 1, 1601 UTC. The other is a format Unix applications + typically use: seconds since January 1, 1970 UTC. Each format can be + stored in an "extra field" in the zip entry when saving the zip + archive. The former uses an extra field with a Header Id of 0x000A, while + the latter uses a header ID of 0x5455, although you probably don't need to + know that. + + + + Not all tools and libraries can interpret these fields. Windows + compressed folders is one that can read the Windows Format timestamps, + while I believe the Infozip + tools can read the Unix format timestamps. Some tools and libraries may be + able to read only one or the other. DotNetZip can read or write times in + either or both formats. + + + + The times stored are taken from , , and . + + + + This property is not mutually exclusive of the property. It is possible and + legal and valid to produce a zip file that contains timestamps encoded in + the Unix format as well as in the Windows format, in addition to the LastModified time attached to each + entry in the zip archive, a time that is always stored in "DOS + format". And, notwithstanding the names PKWare uses for these time + formats, any of them can be read and written by any computer, on any + operating system. But, there are no guarantees that a program running on + Mac or Linux will gracefully handle a zip file with "Windows" formatted + times, or that an application that does not use DotNetZip but runs on + Windows will be able to handle file times in Unix format. + + + + When in doubt, test. Sorry, I haven't got a complete list of tools and + which sort of timestamps they can use and will tolerate. If you get any + good information and would like to pass it on, please do so and I will + include that information in this documentation. + + + + + + + + + Indicates whether verbose output is sent to the during AddXxx() and + ReadXxx() operations. + + + + This is a synthetic property. It returns true if the is non-null. + + + + + Indicates whether to perform case-sensitive matching on the filename when + retrieving entries in the zipfile via the string-based indexer. + + + + The default value is false, which means don't do case-sensitive + matching. In other words, retrieving zip["ReadMe.Txt"] is the same as + zip["readme.txt"]. It really makes sense to set this to true only + if you are not running on Windows, which has case-insensitive + filenames. But since this library is not built for non-Windows platforms, + in most cases you should just leave this property alone. + + + + + Indicates whether to encode entry filenames and entry comments using Unicode + (UTF-8). + + + + + The + PKWare zip specification provides for encoding file names and file + comments in either the IBM437 code page, or in UTF-8. This flag selects + the encoding according to that specification. By default, this flag is + false, and filenames and comments are encoded into the zip file in the + IBM437 codepage. Setting this flag to true will specify that filenames + and comments that cannot be encoded with IBM437 will be encoded with + UTF-8. + + + + Zip files created with strict adherence to the PKWare specification with + respect to UTF-8 encoding can contain entries with filenames containing + any combination of Unicode characters, including the full range of + characters from Chinese, Latin, Hebrew, Greek, Cyrillic, and many other + alphabets. However, because at this time, the UTF-8 portion of the PKWare + specification is not broadly supported by other zip libraries and + utilities, such zip files may not be readable by your favorite zip tool or + archiver. In other words, interoperability will decrease if you set this + flag to true. + + + + In particular, Zip files created with strict adherence to the PKWare + specification with respect to UTF-8 encoding will not work well with + Explorer in Windows XP or Windows Vista, because Windows compressed + folders, as far as I know, do not support UTF-8 in zip files. Vista can + read the zip files, but shows the filenames incorrectly. Unpacking from + Windows Vista Explorer will result in filenames that have rubbish + characters in place of the high-order UTF-8 bytes. + + + + Also, zip files that use UTF-8 encoding will not work well with Java + applications that use the java.util.zip classes, as of v5.0 of the Java + runtime. The Java runtime does not correctly implement the PKWare + specification in this regard. + + + + As a result, we have the unfortunate situation that "correct" behavior by + the DotNetZip library with regard to Unicode encoding of filenames during + zip creation will result in zip files that are readable by strictly + compliant and current tools (for example the most recent release of the + commercial WinZip tool); but these zip files will not be readable by + various other tools or libraries, including Windows Explorer. + + + + The DotNetZip library can read and write zip files with UTF8-encoded + entries, according to the PKware spec. If you use DotNetZip for both + creating and reading the zip file, and you use UTF-8, there will be no + loss of information in the filenames. For example, using a self-extractor + created by this library will allow you to unpack files correctly with no + loss of information in the filenames. + + + + If you do not set this flag, it will remain false. If this flag is false, + your ZipFile will encode all filenames and comments using the + IBM437 codepage. This can cause "loss of information" on some filenames, + but the resulting zipfile will be more interoperable with other + utilities. As an example of the loss of information, diacritics can be + lost. The o-tilde character will be down-coded to plain o. The c with a + cedilla (Unicode 0xE7) used in Portugese will be downcoded to a c. + Likewise, the O-stroke character (Unicode 248), used in Danish and + Norwegian, will be down-coded to plain o. Chinese characters cannot be + represented in codepage IBM437; when using the default encoding, Chinese + characters in filenames will be represented as ?. These are all examples + of "information loss". + + + + The loss of information associated to the use of the IBM437 encoding is + inconvenient, and can also lead to runtime errors. For example, using + IBM437, any sequence of 4 Chinese characters will be encoded as ????. If + your application creates a ZipFile, then adds two files, each with + names of four Chinese characters each, this will result in a duplicate + filename exception. In the case where you add a single file with a name + containing four Chinese characters, calling Extract() on the entry that + has question marks in the filename will result in an exception, because + the question mark is not legal for use within filenames on Windows. These + are just a few examples of the problems associated to loss of information. + + + + This flag is independent of the encoding of the content within the entries + in the zip file. Think of the zip file as a container - it supports an + encoding. Within the container are other "containers" - the file entries + themselves. The encoding within those entries is independent of the + encoding of the zip archive container for those entries. + + + + Rather than specify the encoding in a binary fashion using this flag, an + application can specify an arbitrary encoding via the property. Setting the encoding + explicitly when creating zip archives will result in non-compliant zip + files that, curiously, are fairly interoperable. The challenge is, the + PKWare specification does not provide for a way to specify that an entry + in a zip archive uses a code page that is neither IBM437 nor UTF-8. + Therefore if you set the encoding explicitly when creating a zip archive, + you must take care upon reading the zip archive to use the same code page. + If you get it wrong, the behavior is undefined and may result in incorrect + filenames, exceptions, stomach upset, hair loss, and acne. + + + + + + + Specify whether to use ZIP64 extensions when saving a zip archive. + + + + + + When creating a zip file, the default value for the property is . is + safest, in the sense that you will not get an Exception if a pre-ZIP64 + limit is exceeded. + + + + You may set the property at any time before calling Save(). + + + + When reading a zip file via the Zipfile.Read() method, DotNetZip + will properly read ZIP64-endowed zip archives, regardless of the value of + this property. DotNetZip will always read ZIP64 archives. This property + governs only whether DotNetZip will write them. Therefore, when updating + archives, be careful about setting this property after reading an archive + that may use ZIP64 extensions. + + + + An interesting question is, if you have set this property to + AsNecessary, and then successfully saved, does the resulting + archive use ZIP64 extensions or not? To learn this, check the property, after calling Save(). + + + + Have you thought about + donating? + + + + + + + + Indicates whether the archive requires ZIP64 extensions. + + + + + + This property is null (or Nothing in VB) if the archive has + not been saved, and there are fewer than 65334 ZipEntry items + contained in the archive. + + + + The Value is true if any of the following four conditions holds: + the uncompressed size of any entry is larger than 0xFFFFFFFF; the + compressed size of any entry is larger than 0xFFFFFFFF; the relative + offset of any entry within the zip archive is larger than 0xFFFFFFFF; or + there are more than 65534 entries in the archive. (0xFFFFFFFF = + 4,294,967,295). The result may not be known until a Save() is attempted + on the zip archive. The Value of this + property may be set only AFTER one of the Save() methods has been called. + + + + If none of the four conditions holds, and the archive has been saved, then + the Value is false. + + + + A Value of false does not indicate that the zip archive, as saved, + does not use ZIP64. It merely indicates that ZIP64 is not required. An + archive may use ZIP64 even when not required if the property is set to , or if the property is set to and the output stream was not + seekable. Use the property to determine if + the most recent Save() method resulted in an archive that utilized + the ZIP64 extensions. + + + + + + + + + Indicates whether the most recent Save() operation used ZIP64 extensions. + + + + + The use of ZIP64 extensions within an archive is not always necessary, and + for interoperability concerns, it may be desired to NOT use ZIP64 if + possible. The property can be + set to use ZIP64 extensions only when necessary. In those cases, + Sometimes applications want to know whether a Save() actually used ZIP64 + extensions. Applications can query this read-only property to learn + whether ZIP64 has been used in a just-saved ZipFile. + + + + The value is null (or Nothing in VB) if the archive has not + been saved. + + + + Non-null values (HasValue is true) indicate whether ZIP64 + extensions were used during the most recent Save() operation. The + ZIP64 extensions may have been used as required by any particular entry + because of its uncompressed or compressed size, or because the archive is + larger than 4294967295 bytes, or because there are more than 65534 entries + in the archive, or because the UseZip64WhenSaving property was set + to , or because the + UseZip64WhenSaving property was set to and the output stream was not seekable. + The value of this property does not indicate the reason the ZIP64 + extensions were used. + + + + + + + + + Indicates whether the most recent Read() operation read a zip file that uses + ZIP64 extensions. + + + + This property will return null (Nothing in VB) if you've added an entry after reading + the zip file. + + + + + The text encoding to use when writing new entries to the ZipFile, + for those entries that cannot be encoded with the default (IBM437) + encoding; or, the text encoding that was used when reading the entries + from the ZipFile. + + + + + In its + zip specification, PKWare describes two options for encoding + filenames and comments: using IBM437 or UTF-8. But, some archiving tools + or libraries do not follow the specification, and instead encode + characters using the system default code page. For example, WinRAR when + run on a machine in Shanghai may encode filenames with the Big-5 Chinese + (950) code page. This behavior is contrary to the Zip specification, but + it occurs anyway. + + + + When using DotNetZip to write zip archives that will be read by one of + these other archivers, set this property to specify the code page to use + when encoding the and for each ZipEntry in the zip file, for + values that cannot be encoded with the default codepage for zip files, + IBM437. This is why this property is "provisional". In all cases, IBM437 + is used where possible, in other words, where no loss of data would + result. It is possible, therefore, to have a given entry with a + Comment encoded in IBM437 and a FileName encoded with the + specified "provisional" codepage. + + + + Be aware that a zip file created after you've explicitly set the property to a value other than + IBM437 may not be compliant to the PKWare specification, and may not be + readable by compliant archivers. On the other hand, many (most?) + archivers are non-compliant and can read zip files created in arbitrary + code pages. The trick is to use or specify the proper codepage when + reading the zip. + + + + When creating a zip archive using this library, it is possible to change + the value of between each + entry you add, and between adding entries and the call to + Save(). Don't do this. It will likely result in a zipfile that is + not readable. For best interoperability, either leave alone, or specify it only once, + before adding any entries to the ZipFile instance. There is one + exception to this recommendation, described later. + + + + When using an arbitrary, non-UTF8 code page for encoding, there is no + standard way for the creator application - whether DotNetZip, WinZip, + WinRar, or something else - to formally specify in the zip file which + codepage has been used for the entries. As a result, readers of zip files + are not able to inspect the zip file and determine the codepage that was + used for the entries contained within it. It is left to the application + or user to determine the necessary codepage when reading zip files encoded + this way. In other words, if you explicitly specify the codepage when you + create the zipfile, you must explicitly specify the same codepage when + reading the zipfile. + + + + The way you specify the code page to use when reading a zip file varies + depending on the tool or library you use to read the zip. In DotNetZip, + you use a ZipFile.Read() method that accepts an encoding parameter. It + isn't possible with Windows Explorer, as far as I know, to specify an + explicit codepage to use when reading a zip. If you use an incorrect + codepage when reading a zipfile, you will get entries with filenames that + are incorrect, and the incorrect filenames may even contain characters + that are not legal for use within filenames in Windows. Extracting entries + with illegal characters in the filenames will lead to exceptions. It's too + bad, but this is just the way things are with code pages in zip + files. Caveat Emptor. + + + + Example: Suppose you create a zipfile that contains entries with + filenames that have Danish characters. If you use equal to "iso-8859-1" (cp 28591), + the filenames will be correctly encoded in the zip. But, to read that + zipfile correctly, you have to specify the same codepage at the time you + read it. If try to read that zip file with Windows Explorer or another + application that is not flexible with respect to the codepage used to + decode filenames in zipfiles, you will get a filename like "Inf°.txt". + + + + When using DotNetZip to read a zip archive, and the zip archive uses an + arbitrary code page, you must specify the encoding to use before or when + the Zipfile is READ. This means you must use a ZipFile.Read() + method that allows you to specify a System.Text.Encoding parameter. Setting + the ProvisionalAlternateEncoding property after your application has read in + the zip archive will not affect the entry names of entries that have already + been read in. + + + + And now, the exception to the rule described above. One strategy for + specifying the code page for a given zip file is to describe the code page + in a human-readable form in the Zip comment. For example, the comment may + read "Entries in this archive are encoded in the Big5 code page". For + maximum interoperability, the zip comment in this case should be encoded + in the default, IBM437 code page. In this case, the zip comment is + encoded using a different page than the filenames. To do this, Specify + ProvisionalAlternateEncoding to your desired region-specific code + page, once before adding any entries, and then reset + ProvisionalAlternateEncoding to IBM437 before setting the property and calling Save(). + + + + + This example shows how to read a zip file using the Big-5 Chinese code page + (950), and extract each entry in the zip file. For this code to work as + desired, the Zipfile must have been created using the big5 code page + (CP950). This is typical, for example, when using WinRar on a machine with + CP950 set as the default code page. In that case, the names of entries + within the Zip archive will be stored in that code page, and reading the zip + archive must be done using that code page. If the application did not use + the correct code page in ZipFile.Read(), then names of entries within the + zip archive would not be correctly retrieved. + + using (var zip = ZipFile.Read(zipFileName, System.Text.Encoding.GetEncoding("big5"))) + { + // retrieve and extract an entry using a name encoded with CP950 + zip[MyDesiredEntry].Extract("unpack"); + } + + + + Using zip As ZipFile = ZipFile.Read(ZipToExtract, System.Text.Encoding.GetEncoding("big5")) + ' retrieve and extract an entry using a name encoded with CP950 + zip(MyDesiredEntry).Extract("unpack") + End Using + + + + DefaultEncoding + + + + A Text Encoding to use when encoding the filenames and comments for + all the ZipEntry items, during a ZipFile.Save() operation. + + + + Whether the encoding specified here is used during the save depends + on . + + + + + + A flag that tells if and when this instance should apply + AlternateEncoding to encode the filenames and comments associated to + of ZipEntry objects contained within this instance. + + + + + The default text encoding used in zip archives. It is numeric 437, also + known as IBM437. + + + + + + Gets or sets the TextWriter to which status messages are delivered + for the instance. + + + + If the TextWriter is set to a non-null value, then verbose output is sent + to the TextWriter during Add, Read, Save and + Extract operations. Typically, console applications might use + Console.Out and graphical or headless applications might use a + System.IO.StringWriter. The output of this is suitable for viewing + by humans. + + + + + In this example, a console application instantiates a ZipFile, then + sets the StatusMessageTextWriter to Console.Out. At that + point, all verbose status messages for that ZipFile are sent to the + console. + + + + using (ZipFile zip= ZipFile.Read(FilePath)) + { + zip.StatusMessageTextWriter= System.Console.Out; + // messages are sent to the console during extraction + zip.ExtractAll(); + } + + + + Using zip As ZipFile = ZipFile.Read(FilePath) + zip.StatusMessageTextWriter= System.Console.Out + 'Status Messages will be sent to the console during extraction + zip.ExtractAll() + End Using + + + + In this example, a Windows Forms application instantiates a + ZipFile, then sets the StatusMessageTextWriter to a + StringWriter. At that point, all verbose status messages for that + ZipFile are sent to the StringWriter. + + + + var sw = new System.IO.StringWriter(); + using (ZipFile zip= ZipFile.Read(FilePath)) + { + zip.StatusMessageTextWriter= sw; + zip.ExtractAll(); + } + Console.WriteLine("{0}", sw.ToString()); + + + + Dim sw as New System.IO.StringWriter + Using zip As ZipFile = ZipFile.Read(FilePath) + zip.StatusMessageTextWriter= sw + zip.ExtractAll() + End Using + 'Status Messages are now available in sw + + + + + + + Gets or sets the name for the folder to store the temporary file + this library writes when saving a zip archive. + + + + + This library will create a temporary file when saving a Zip archive to a + file. This file is written when calling one of the Save() methods + that does not save to a stream, or one of the SaveSelfExtractor() + methods. + + + + By default, the library will create the temporary file in the directory + specified for the file itself, via the property or via + the method. + + + + Setting this property allows applications to override this default + behavior, so that the library will create the temporary file in the + specified folder. For example, to have the library create the temporary + file in the current working directory, regardless where the ZipFile + is saved, specfy ".". To revert to the default behavior, set this + property to null (Nothing in VB). + + + + When setting the property to a non-null value, the folder specified must + exist; if it does not an exception is thrown. The application should have + write and delete permissions on the folder. The permissions are not + explicitly checked ahead of time; if the application does not have the + appropriate rights, an exception will be thrown at the time Save() + is called. + + + + There is no temporary file created when reading a zip archive. When + saving to a Stream, there is no temporary file created. For example, if + the application is an ASP.NET application and calls Save() + specifying the Response.OutputStream as the output stream, there is + no temporary file created. + + + + + Thrown when setting the property if the directory does not exist. + + + + + + Sets the password to be used on the ZipFile instance. + + + + + + When writing a zip archive, this password is applied to the entries, not + to the zip archive itself. It applies to any ZipEntry subsequently + added to the ZipFile, using one of the AddFile, + AddDirectory, AddEntry, or AddItem methods, etc. + When reading a zip archive, this property applies to any entry + subsequently extracted from the ZipFile using one of the Extract + methods on the ZipFile class. + + + + When writing a zip archive, keep this in mind: though the password is set + on the ZipFile object, according to the Zip spec, the "directory" of the + archive - in other words the list of entries or files contained in the archive - is + not encrypted with the password, or protected in any way. If you set the + Password property, the password actually applies to individual entries + that are added to the archive, subsequent to the setting of this property. + The list of filenames in the archive that is eventually created will + appear in clear text, but the contents of the individual files are + encrypted. This is how Zip encryption works. + + + + One simple way around this limitation is to simply double-wrap sensitive + filenames: Store the files in a zip file, and then store that zip file + within a second, "outer" zip file. If you apply a password to the outer + zip file, then readers will be able to see that the outer zip file + contains an inner zip file. But readers will not be able to read the + directory or file list of the inner zip file. + + + + If you set the password on the ZipFile, and then add a set of files + to the archive, then each entry is encrypted with that password. You may + also want to change the password between adding different entries. If you + set the password, add an entry, then set the password to null + (Nothing in VB), and add another entry, the first entry is + encrypted and the second is not. If you call AddFile(), then set + the Password property, then call ZipFile.Save, the file + added will not be password-protected, and no warning will be generated. + + + + When setting the Password, you may also want to explicitly set the property, to specify how to encrypt the entries added + to the ZipFile. If you set the Password to a non-null value and do not + set , then PKZip 2.0 ("Weak") encryption is used. + This encryption is relatively weak but is very interoperable. If you set + the password to a null value (Nothing in VB), Encryption is + reset to None. + + + + All of the preceding applies to writing zip archives, in other words when + you use one of the Save methods. To use this property when reading or an + existing ZipFile, do the following: set the Password property on the + ZipFile, then call one of the Extract() overloads on the . In this case, the entry is extracted using the + Password that is specified on the ZipFile instance. If you + have not set the Password property, then the password is + null, and the entry is extracted with no password. + + + + If you set the Password property on the ZipFile, then call + Extract() an entry that has not been encrypted with a password, the + password is not used for that entry, and the ZipEntry is extracted + as normal. In other words, the password is used only if necessary. + + + + The class also has a Password property. It takes precedence + over this property on the ZipFile. Typically, you would use the + per-entry Password when most entries in the zip archive use one password, + and a few entries use a different password. If all entries in the zip + file use the same password, then it is simpler to just set this property + on the ZipFile itself, whether creating a zip archive or extracting + a zip archive. + + + + + + + This example creates a zip file, using password protection for the + entries, and then extracts the entries from the zip file. When creating + the zip file, the Readme.txt file is not protected with a password, but + the other two are password-protected as they are saved. During extraction, + each file is extracted with the appropriate password. + + + // create a file with encryption + using (ZipFile zip = new ZipFile()) + { + zip.AddFile("ReadMe.txt"); + zip.Password= "!Secret1"; + zip.AddFile("MapToTheSite-7440-N49th.png"); + zip.AddFile("2008-Regional-Sales-Report.pdf"); + zip.Save("EncryptedArchive.zip"); + } + + // extract entries that use encryption + using (ZipFile zip = ZipFile.Read("EncryptedArchive.zip")) + { + zip.Password= "!Secret1"; + zip.ExtractAll("extractDir"); + } + + + + + Using zip As New ZipFile + zip.AddFile("ReadMe.txt") + zip.Password = "123456!" + zip.AddFile("MapToTheSite-7440-N49th.png") + zip.Password= "!Secret1"; + zip.AddFile("2008-Regional-Sales-Report.pdf") + zip.Save("EncryptedArchive.zip") + End Using + + + ' extract entries that use encryption + Using (zip as ZipFile = ZipFile.Read("EncryptedArchive.zip")) + zip.Password= "!Secret1" + zip.ExtractAll("extractDir") + End Using + + + + + + ZipFile.Encryption + ZipEntry.Password + + + + The action the library should take when extracting a file that already + exists. + + + + + This property affects the behavior of the Extract methods (one of the + Extract() or ExtractWithPassword() overloads), when + extraction would would overwrite an existing filesystem file. If you do + not set this property, the library throws an exception when extracting an + entry would overwrite an existing file. + + + + This property has no effect when extracting to a stream, or when the file + to be extracted does not already exist. + + + + + + + The action the library should take when an error is encountered while + opening or reading files as they are saved into a zip archive. + + + + + Errors can occur as a file is being saved to the zip archive. For + example, the File.Open may fail, or a File.Read may fail, because of + lock conflicts or other reasons. + + + + The first problem might occur after having called AddDirectory() on a + directory that contains a Clipper .dbf file; the file is locked by + Clipper and cannot be opened for read by another process. An example of + the second problem might occur when trying to zip a .pst file that is in + use by Microsoft Outlook. Outlook locks a range on the file, which allows + other processes to open the file, but not read it in its entirety. + + + + This property tells DotNetZip what you would like to do in the case of + these errors. The primary options are: ZipErrorAction.Throw to + throw an exception (this is the default behavior if you don't set this + property); ZipErrorAction.Skip to Skip the file for which there + was an error and continue saving; ZipErrorAction.Retry to Retry + the entry that caused the problem; or + ZipErrorAction.InvokeErrorEvent to invoke an event handler. + + + + This property is implicitly set to ZipErrorAction.InvokeErrorEvent + if you add a handler to the event. If you set + this property to something other than + ZipErrorAction.InvokeErrorEvent, then the ZipError + event is implicitly cleared. What it means is you can set one or the + other (or neither), depending on what you want, but you never need to set + both. + + + + As with some other properties on the ZipFile class, like , , and , setting this property on a ZipFile + instance will cause the specified ZipErrorAction to be used on all + items that are subsequently added to the + ZipFile instance. If you set this property after you have added + items to the ZipFile, but before you have called Save(), + those items will not use the specified error handling action. + + + + If you want to handle any errors that occur with any entry in the zip + file in the same way, then set this property once, before adding any + entries to the zip archive. + + + + If you set this property to ZipErrorAction.Skip and you'd like to + learn which files may have been skipped after a Save(), you can + set the on the ZipFile before + calling Save(). A message will be emitted into that writer for + each skipped file, if any. + + + + + + This example shows how to tell DotNetZip to skip any files for which an + error is generated during the Save(). + + Public Sub SaveZipFile() + Dim SourceFolder As String = "fodder" + Dim DestFile As String = "eHandler.zip" + Dim sw as New StringWriter + Using zipArchive As ZipFile = New ZipFile + ' Tell DotNetZip to skip any files for which it encounters an error + zipArchive.ZipErrorAction = ZipErrorAction.Skip + zipArchive.StatusMessageTextWriter = sw + zipArchive.AddDirectory(SourceFolder) + zipArchive.Save(DestFile) + End Using + ' examine sw here to see any messages + End Sub + + + + + + + + + + The Encryption to use for entries added to the ZipFile. + + + + + Set this when creating a zip archive, or when updating a zip archive. The + specified Encryption is applied to the entries subsequently added to the + ZipFile instance. Applications do not need to set the + Encryption property when reading or extracting a zip archive. + + + + If you set this to something other than EncryptionAlgorithm.None, you + will also need to set the . + + + + As with some other properties on the ZipFile class, like and , setting this + property on a ZipFile instance will cause the specified + EncryptionAlgorithm to be used on all items + that are subsequently added to the ZipFile instance. In other + words, if you set this property after you have added items to the + ZipFile, but before you have called Save(), those items will + not be encrypted or protected with a password in the resulting zip + archive. To get a zip archive with encrypted entries, set this property, + along with the property, before calling + AddFile, AddItem, or AddDirectory (etc.) on the + ZipFile instance. + + + + If you read a ZipFile, you can modify the Encryption on an + encrypted entry, only by setting the Encryption property on the + ZipEntry itself. Setting the Encryption property on the + ZipFile, once it has been created via a call to + ZipFile.Read(), does not affect entries that were previously read. + + + + For example, suppose you read a ZipFile, and there is an encrypted + entry. Setting the Encryption property on that ZipFile and + then calling Save() on the ZipFile does not update the + Encryption used for the entries in the archive. Neither is an + exception thrown. Instead, what happens during the Save() is that + all previously existing entries are copied through to the new zip archive, + with whatever encryption and password that was used when originally + creating the zip archive. Upon re-reading that archive, to extract + entries, applications should use the original password or passwords, if + any. + + + + Suppose an application reads a ZipFile, and there is an encrypted + entry. Setting the Encryption property on that ZipFile and + then adding new entries (via AddFile(), AddEntry(), etc) + and then calling Save() on the ZipFile does not update the + Encryption on any of the entries that had previously been in the + ZipFile. The Encryption property applies only to the + newly-added entries. + + + + + + + This example creates a zip archive that uses encryption, and then extracts + entries from the archive. When creating the zip archive, the ReadMe.txt + file is zipped without using a password or encryption. The other files + use encryption. + + + + // Create a zip archive with AES Encryption. + using (ZipFile zip = new ZipFile()) + { + zip.AddFile("ReadMe.txt"); + zip.Encryption= EncryptionAlgorithm.WinZipAes256; + zip.Password= "Top.Secret.No.Peeking!"; + zip.AddFile("7440-N49th.png"); + zip.AddFile("2008-Regional-Sales-Report.pdf"); + zip.Save("EncryptedArchive.zip"); + } + + // Extract a zip archive that uses AES Encryption. + // You do not need to specify the algorithm during extraction. + using (ZipFile zip = ZipFile.Read("EncryptedArchive.zip")) + { + zip.Password= "Top.Secret.No.Peeking!"; + zip.ExtractAll("extractDirectory"); + } + + + + ' Create a zip that uses Encryption. + Using zip As New ZipFile() + zip.Encryption= EncryptionAlgorithm.WinZipAes256 + zip.Password= "Top.Secret.No.Peeking!" + zip.AddFile("ReadMe.txt") + zip.AddFile("7440-N49th.png") + zip.AddFile("2008-Regional-Sales-Report.pdf") + zip.Save("EncryptedArchive.zip") + End Using + + ' Extract a zip archive that uses AES Encryption. + ' You do not need to specify the algorithm during extraction. + Using (zip as ZipFile = ZipFile.Read("EncryptedArchive.zip")) + zip.Password= "Top.Secret.No.Peeking!" + zip.ExtractAll("extractDirectory") + End Using + + + + + ZipFile.Password + ZipEntry.Encryption + + + + A callback that allows the application to specify the compression level + to use for entries subsequently added to the zip archive. + + + + + + With this callback, the DotNetZip library allows the application to + determine whether compression will be used, at the time of the + Save. This may be useful if the application wants to favor + speed over size, and wants to defer the decision until the time of + Save. + + + + Typically applications set the property on + the ZipFile or on each ZipEntry to determine the level of + compression used. This is done at the time the entry is added to the + ZipFile. Setting the property to + Ionic.Zlib.CompressionLevel.None means no compression will be used. + + + + This callback allows the application to defer the decision on the + CompressionLevel to use, until the time of the call to + ZipFile.Save(). The callback is invoked once per ZipEntry, + at the time the data for the entry is being written out as part of a + Save() operation. The application can use whatever criteria it + likes in determining the level to return. For example, an application may + wish that no .mp3 files should be compressed, because they are already + compressed and the extra compression is not worth the CPU time incurred, + and so can return None for all .mp3 entries. + + + + The library determines whether compression will be attempted for an entry + this way: If the entry is a zero length file, or a directory, no + compression is used. Otherwise, if this callback is set, it is invoked + and the CompressionLevel is set to the return value. If this + callback has not been set, then the previously set value for + CompressionLevel is used. + + + + + + + The maximum size of an output segment, when saving a split Zip file. + + + + Set this to a non-zero value before calling or to specify that the ZipFile should be saved as a + split archive, also sometimes called a spanned archive. Some also + call them multi-file archives. + + + + A split zip archive is saved in a set of discrete filesystem files, + rather than in a single file. This is handy when transmitting the + archive in email or some other mechanism that has a limit to the size of + each file. The first file in a split archive will be named + basename.z01, the second will be named basename.z02, and + so on. The final file is named basename.zip. According to the zip + specification from PKWare, the minimum value is 65536, for a 64k segment + size. The maximum number of segments allows in a split archive is 99. + + + + The value of this property determines the maximum size of a split + segment when writing a split archive. For example, suppose you have a + ZipFile that would save to a single file of 200k. If you set the + MaxOutputSegmentSize to 65536 before calling Save(), you + will get four distinct output files. On the other hand if you set this + property to 256k, then you will get a single-file archive for that + ZipFile. + + + + The size of each split output file will be as large as possible, up to + the maximum size set here. The zip specification requires that some data + fields in a zip archive may not span a split boundary, and an output + segment may be smaller than the maximum if necessary to avoid that + problem. Also, obviously the final segment of the archive may be smaller + than the maximum segment size. Segments will never be larger than the + value set with this property. + + + + You can save a split Zip file only when saving to a regular filesystem + file. It's not possible to save a split zip file as a self-extracting + archive, nor is it possible to save a split zip file to a stream. When + saving to a SFX or to a Stream, this property is ignored. + + + + About interoperability: Split or spanned zip files produced by DotNetZip + can be read by WinZip or PKZip, and vice-versa. Segmented zip files may + not be readable by other tools, if those other tools don't support zip + spanning or splitting. When in doubt, test. I don't believe Windows + Explorer can extract a split archive. + + + + This property has no effect when reading a split archive. You can read + a split archive in the normal way with DotNetZip. + + + + When saving a zip file, if you want a regular zip file rather than a + split zip file, don't set this property, or set it to Zero. + + + + If you read a split archive, with and + then subsequently call ZipFile.Save(), unless you set this + property before calling Save(), you will get a normal, + single-file archive. + + + + + + + + Returns the number of segments used in the most recent Save() operation. + + + + This is normally zero, unless you have set the property. If you have set , and then you save a file, after the call to + Save() completes, you can read this value to learn the number of segments that + were created. + + + If you call Save("Archive.zip"), and it creates 5 segments, then you + will have filesystem files named Archive.z01, Archive.z02, Archive.z03, + Archive.z04, and Archive.zip, and the value of this property will be 5. + + + + + + + The size threshold for an entry, above which a parallel deflate is used. + + + + + + DotNetZip will use multiple threads to compress any ZipEntry, + if the entry is larger than the given size. Zero means "always + use parallel deflate", while -1 means "never use parallel + deflate". The default value for this property is 512k. Aside + from the special values of 0 and 1, the minimum value is 65536. + + + + If the entry size cannot be known before compression, as with a + read-forward stream, then Parallel deflate will never be + performed, unless the value of this property is zero. + + + + A parallel deflate operations will speed up the compression of + large files, on computers with multiple CPUs or multiple CPU + cores. For files above 1mb, on a dual core or dual-cpu (2p) + machine, the time required to compress the file can be 70% of the + single-threaded deflate. For very large files on 4p machines the + compression can be done in 30% of the normal time. The downside + is that parallel deflate consumes extra memory during the deflate, + and the deflation is not as effective. + + + + Parallel deflate tends to yield slightly less compression when + compared to as single-threaded deflate; this is because the original + data stream is split into multiple independent buffers, each of which + is compressed in parallel. But because they are treated + independently, there is no opportunity to share compression + dictionaries. For that reason, a deflated stream may be slightly + larger when compressed using parallel deflate, as compared to a + traditional single-threaded deflate. Sometimes the increase over the + normal deflate is as much as 5% of the total compressed size. For + larger files it can be as small as 0.1%. + + + + Multi-threaded compression does not give as much an advantage when + using Encryption. This is primarily because encryption tends to slow + down the entire pipeline. Also, multi-threaded compression gives less + of an advantage when using lower compression levels, for example . You may have to + perform some tests to determine the best approach for your situation. + + + + + + + + + + The maximum number of buffer pairs to use when performing + parallel compression. + + + + + This property sets an upper limit on the number of memory + buffer pairs to create when performing parallel + compression. The implementation of the parallel + compression stream allocates multiple buffers to + facilitate parallel compression. As each buffer fills up, + the stream uses + ThreadPool.QueueUserWorkItem() to compress those + buffers in a background threadpool thread. After a buffer + is compressed, it is re-ordered and written to the output + stream. + + + + A higher number of buffer pairs enables a higher degree of + parallelism, which tends to increase the speed of compression on + multi-cpu computers. On the other hand, a higher number of buffer + pairs also implies a larger memory consumption, more active worker + threads, and a higher cpu utilization for any compression. This + property enables the application to limit its memory consumption and + CPU utilization behavior depending on requirements. + + + + For each compression "task" that occurs in parallel, there are 2 + buffers allocated: one for input and one for output. This property + sets a limit for the number of pairs. The total amount of storage + space allocated for buffering will then be (N*S*2), where N is the + number of buffer pairs, S is the size of each buffer (). By default, DotNetZip allocates 4 buffer + pairs per CPU core, so if your machine has 4 cores, and you retain + the default buffer size of 128k, then the + ParallelDeflateOutputStream will use 4 * 4 * 2 * 128kb of buffer + memory in total, or 4mb, in blocks of 128kb. If you then set this + property to 8, then the number will be 8 * 2 * 128kb of buffer + memory, or 2mb. + + + + CPU utilization will also go up with additional buffers, because a + larger number of buffer pairs allows a larger number of background + threads to compress in parallel. If you find that parallel + compression is consuming too much memory or CPU, you can adjust this + value downward. + + + + The default value is 16. Different values may deliver better or + worse results, depending on your priorities and the dynamic + performance characteristics of your storage and compute resources. + + + + This property is not the number of buffer pairs to use; it is an + upper limit. An illustration: Suppose you have an application that + uses the default value of this property (which is 16), and it runs + on a machine with 2 CPU cores. In that case, DotNetZip will allocate + 4 buffer pairs per CPU core, for a total of 8 pairs. The upper + limit specified by this property has no effect. + + + + The application can set this value at any time + before calling ZipFile.Save(). + + + + + + + + + Returns the version number on the DotNetZip assembly. + + + + + This property is exposed as a convenience. Callers could also get the + version value by retrieving GetName().Version on the + System.Reflection.Assembly object pointing to the DotNetZip + assembly. But sometimes it is not clear which assembly is being loaded. + This property makes it clear. + + + This static property is primarily useful for diagnostic purposes. + + + + + + This is an integer indexer into the Zip archive. + + + + + This property is read-only. + + + + Internally, the ZipEntry instances that belong to the + ZipFile are stored in a Dictionary. When you use this + indexer the first time, it creates a read-only + List<ZipEntry> from the Dictionary.Values Collection. + If at any time you modify the set of entries in the ZipFile, + either by adding an entry, removing an entry, or renaming an + entry, a new List will be created, and the numeric indexes for the + remaining entries may be different. + + + + This means you cannot rename any ZipEntry from + inside an enumeration of the zip file. + + + + The index value. + + + + + + The ZipEntry within the Zip archive at the specified index. If the + entry does not exist in the archive, this indexer throws. + + + + + + This is a name-based indexer into the Zip archive. + + + + + This property is read-only. + + + + The property on the ZipFile + determines whether retrieval via this indexer is done via case-sensitive + comparisons. By default, retrieval is not case sensitive. This makes + sense on Windows, in which filesystems are not case sensitive. + + + + Regardless of case-sensitivity, it is not always the case that + this[value].FileName == value. In other words, the FileName + property of the ZipEntry retrieved with this indexer, may or may + not be equal to the index value. + + + + This is because DotNetZip performs a normalization of filenames passed to + this indexer, before attempting to retrieve the item. That normalization + includes: removal of a volume letter and colon, swapping backward slashes + for forward slashes. So, zip["dir1\\entry1.txt"].FileName == + "dir1/entry.txt". + + + + Directory entries in the zip file may be retrieved via this indexer only + with names that have a trailing slash. DotNetZip automatically appends a + trailing slash to the names of any directory entries added to a zip. + + + + + + This example extracts only the entries in a zip file that are .txt files. + + using (ZipFile zip = ZipFile.Read("PackedDocuments.zip")) + { + foreach (string s1 in zip.EntryFilenames) + { + if (s1.EndsWith(".txt")) + zip[s1].Extract("textfiles"); + } + } + + + Using zip As ZipFile = ZipFile.Read("PackedDocuments.zip") + Dim s1 As String + For Each s1 In zip.EntryFilenames + If s1.EndsWith(".txt") Then + zip(s1).Extract("textfiles") + End If + Next + End Using + + + + + + Thrown if the caller attempts to assign a non-null value to the indexer. + + + + The name of the file, including any directory path, to retrieve from the + zip. The filename match is not case-sensitive by default; you can use the + property to change this behavior. The + pathname can use forward-slashes or backward slashes. + + + + The ZipEntry within the Zip archive, given by the specified + filename. If the named entry does not exist in the archive, this indexer + returns null (Nothing in VB). + + + + + + The list of filenames for the entries contained within the zip archive. + + + + According to the ZIP specification, the names of the entries use forward + slashes in pathnames. If you are scanning through the list, you may have + to swap forward slashes for backslashes. + + + + + + This example shows one way to test if a filename is already contained + within a zip archive. + + String zipFileToRead= "PackedDocuments.zip"; + string candidate = "DatedMaterial.xps"; + using (ZipFile zip = new ZipFile(zipFileToRead)) + { + if (zip.EntryFilenames.Contains(candidate)) + Console.WriteLine("The file '{0}' exists in the zip archive '{1}'", + candidate, + zipFileName); + else + Console.WriteLine("The file, '{0}', does not exist in the zip archive '{1}'", + candidate, + zipFileName); + Console.WriteLine(); + } + + + Dim zipFileToRead As String = "PackedDocuments.zip" + Dim candidate As String = "DatedMaterial.xps" + Using zip As ZipFile.Read(ZipFileToRead) + If zip.EntryFilenames.Contains(candidate) Then + Console.WriteLine("The file '{0}' exists in the zip archive '{1}'", _ + candidate, _ + zipFileName) + Else + Console.WriteLine("The file, '{0}', does not exist in the zip archive '{1}'", _ + candidate, _ + zipFileName) + End If + Console.WriteLine + End Using + + + + + The list of strings for the filenames contained within the Zip archive. + + + + + + Returns the readonly collection of entries in the Zip archive. + + + + + + If there are no entries in the current ZipFile, the value returned is a + non-null zero-element collection. If there are entries in the zip file, + the elements are returned in no particular order. + + + This is the implied enumerator on the ZipFile class. If you use a + ZipFile instance in a context that expects an enumerator, you will + get this collection. + + + + + + + Returns a readonly collection of entries in the Zip archive, sorted by FileName. + + + + If there are no entries in the current ZipFile, the value returned + is a non-null zero-element collection. If there are entries in the zip + file, the elements are returned sorted by the name of the entry. + + + + + This example fills a Windows Forms ListView with the entries in a zip file. + + + using (ZipFile zip = ZipFile.Read(zipFile)) + { + foreach (ZipEntry entry in zip.EntriesSorted) + { + ListViewItem item = new ListViewItem(n.ToString()); + n++; + string[] subitems = new string[] { + entry.FileName.Replace("/","\\"), + entry.LastModified.ToString("yyyy-MM-dd HH:mm:ss"), + entry.UncompressedSize.ToString(), + String.Format("{0,5:F0}%", entry.CompressionRatio), + entry.CompressedSize.ToString(), + (entry.UsesEncryption) ? "Y" : "N", + String.Format("{0:X8}", entry.Crc)}; + + foreach (String s in subitems) + { + ListViewItem.ListViewSubItem subitem = new ListViewItem.ListViewSubItem(); + subitem.Text = s; + item.SubItems.Add(subitem); + } + + this.listView1.Items.Add(item); + } + } + + + + + + + + Returns the number of entries in the Zip archive. + + + + + An event handler invoked when a Save() starts, before and after each + entry has been written to the archive, when a Save() completes, and + during other Save events. + + + + + Depending on the particular event, different properties on the parameter are set. The following + table summarizes the available EventTypes and the conditions under + which this event handler is invoked with a + SaveProgressEventArgs with the given EventType. + + + + + value of EntryType + Meaning and conditions + + + + ZipProgressEventType.Saving_Started + Fired when ZipFile.Save() begins. + + + + + ZipProgressEventType.Saving_BeforeSaveEntry + + Fired within ZipFile.Save(), just before writing data for each + particular entry. + + + + + ZipProgressEventType.Saving_AfterSaveEntry + + Fired within ZipFile.Save(), just after having finished writing data + for each particular entry. + + + + + ZipProgressEventType.Saving_Completed + Fired when ZipFile.Save() has completed. + + + + + ZipProgressEventType.Saving_AfterSaveTempArchive + + Fired after the temporary file has been created. This happens only + when saving to a disk file. This event will not be invoked when + saving to a stream. + + + + + ZipProgressEventType.Saving_BeforeRenameTempArchive + + Fired just before renaming the temporary file to the permanent + location. This happens only when saving to a disk file. This event + will not be invoked when saving to a stream. + + + + + ZipProgressEventType.Saving_AfterRenameTempArchive + + Fired just after renaming the temporary file to the permanent + location. This happens only when saving to a disk file. This event + will not be invoked when saving to a stream. + + + + + ZipProgressEventType.Saving_AfterCompileSelfExtractor + + Fired after a self-extracting archive has finished compiling. This + EventType is used only within SaveSelfExtractor(). + + + + + ZipProgressEventType.Saving_BytesRead + + Set during the save of a particular entry, to update progress of the + Save(). When this EventType is set, the BytesTransferred is the + number of bytes that have been read from the source stream. The + TotalBytesToTransfer is the number of bytes in the uncompressed + file. + + + + + + + + + This example uses an anonymous method to handle the + SaveProgress event, by updating a progress bar. + + + progressBar1.Value = 0; + progressBar1.Max = listbox1.Items.Count; + using (ZipFile zip = new ZipFile()) + { + // listbox1 contains a list of filenames + zip.AddFiles(listbox1.Items); + + // do the progress bar: + zip.SaveProgress += (sender, e) => { + if (e.EventType == ZipProgressEventType.Saving_BeforeWriteEntry) { + progressBar1.PerformStep(); + } + }; + + zip.Save(fs); + } + + + + + This example uses a named method as the + SaveProgress event handler, to update the user, in a + console-based application. + + + static bool justHadByteUpdate= false; + public static void SaveProgress(object sender, SaveProgressEventArgs e) + { + if (e.EventType == ZipProgressEventType.Saving_Started) + Console.WriteLine("Saving: {0}", e.ArchiveName); + + else if (e.EventType == ZipProgressEventType.Saving_Completed) + { + justHadByteUpdate= false; + Console.WriteLine(); + Console.WriteLine("Done: {0}", e.ArchiveName); + } + + else if (e.EventType == ZipProgressEventType.Saving_BeforeWriteEntry) + { + if (justHadByteUpdate) + Console.WriteLine(); + Console.WriteLine(" Writing: {0} ({1}/{2})", + e.CurrentEntry.FileName, e.EntriesSaved, e.EntriesTotal); + justHadByteUpdate= false; + } + + else if (e.EventType == ZipProgressEventType.Saving_EntryBytesRead) + { + if (justHadByteUpdate) + Console.SetCursorPosition(0, Console.CursorTop); + Console.Write(" {0}/{1} ({2:N0}%)", e.BytesTransferred, e.TotalBytesToTransfer, + e.BytesTransferred / (0.01 * e.TotalBytesToTransfer )); + justHadByteUpdate= true; + } + } + + public static ZipUp(string targetZip, string directory) + { + using (var zip = new ZipFile()) { + zip.SaveProgress += SaveProgress; + zip.AddDirectory(directory); + zip.Save(targetZip); + } + } + + + + + Public Sub ZipUp(ByVal targetZip As String, ByVal directory As String) + Using zip As ZipFile = New ZipFile + AddHandler zip.SaveProgress, AddressOf MySaveProgress + zip.AddDirectory(directory) + zip.Save(targetZip) + End Using + End Sub + + Private Shared justHadByteUpdate As Boolean = False + + Public Shared Sub MySaveProgress(ByVal sender As Object, ByVal e As SaveProgressEventArgs) + If (e.EventType Is ZipProgressEventType.Saving_Started) Then + Console.WriteLine("Saving: {0}", e.ArchiveName) + + ElseIf (e.EventType Is ZipProgressEventType.Saving_Completed) Then + justHadByteUpdate = False + Console.WriteLine + Console.WriteLine("Done: {0}", e.ArchiveName) + + ElseIf (e.EventType Is ZipProgressEventType.Saving_BeforeWriteEntry) Then + If justHadByteUpdate Then + Console.WriteLine + End If + Console.WriteLine(" Writing: {0} ({1}/{2})", e.CurrentEntry.FileName, e.EntriesSaved, e.EntriesTotal) + justHadByteUpdate = False + + ElseIf (e.EventType Is ZipProgressEventType.Saving_EntryBytesRead) Then + If justHadByteUpdate Then + Console.SetCursorPosition(0, Console.CursorTop) + End If + Console.Write(" {0}/{1} ({2:N0}%)", e.BytesTransferred, _ + e.TotalBytesToTransfer, _ + (CDbl(e.BytesTransferred) / (0.01 * e.TotalBytesToTransfer))) + justHadByteUpdate = True + End If + End Sub + + + + + + This is a more complete example of using the SaveProgress + events in a Windows Forms application, with a + Thread object. + + + delegate void SaveEntryProgress(SaveProgressEventArgs e); + delegate void ButtonClick(object sender, EventArgs e); + + public class WorkerOptions + { + public string ZipName; + public string Folder; + public string Encoding; + public string Comment; + public int ZipFlavor; + public Zip64Option Zip64; + } + + private int _progress2MaxFactor; + private bool _saveCanceled; + private long _totalBytesBeforeCompress; + private long _totalBytesAfterCompress; + private Thread _workerThread; + + + private void btnZipup_Click(object sender, EventArgs e) + { + KickoffZipup(); + } + + private void btnCancel_Click(object sender, EventArgs e) + { + if (this.lblStatus.InvokeRequired) + { + this.lblStatus.Invoke(new ButtonClick(this.btnCancel_Click), new object[] { sender, e }); + } + else + { + _saveCanceled = true; + lblStatus.Text = "Canceled..."; + ResetState(); + } + } + + private void KickoffZipup() + { + _folderName = tbDirName.Text; + + if (_folderName == null || _folderName == "") return; + if (this.tbZipName.Text == null || this.tbZipName.Text == "") return; + + // check for existence of the zip file: + if (System.IO.File.Exists(this.tbZipName.Text)) + { + var dlgResult = MessageBox.Show(String.Format("The file you have specified ({0}) already exists." + + " Do you want to overwrite this file?", this.tbZipName.Text), + "Confirmation is Required", MessageBoxButtons.YesNo, MessageBoxIcon.Question); + if (dlgResult != DialogResult.Yes) return; + System.IO.File.Delete(this.tbZipName.Text); + } + + _saveCanceled = false; + _nFilesCompleted = 0; + _totalBytesAfterCompress = 0; + _totalBytesBeforeCompress = 0; + this.btnOk.Enabled = false; + this.btnOk.Text = "Zipping..."; + this.btnCancel.Enabled = true; + lblStatus.Text = "Zipping..."; + + var options = new WorkerOptions + { + ZipName = this.tbZipName.Text, + Folder = _folderName, + Encoding = "ibm437" + }; + + if (this.comboBox1.SelectedIndex != 0) + { + options.Encoding = this.comboBox1.SelectedItem.ToString(); + } + + if (this.radioFlavorSfxCmd.Checked) + options.ZipFlavor = 2; + else if (this.radioFlavorSfxGui.Checked) + options.ZipFlavor = 1; + else options.ZipFlavor = 0; + + if (this.radioZip64AsNecessary.Checked) + options.Zip64 = Zip64Option.AsNecessary; + else if (this.radioZip64Always.Checked) + options.Zip64 = Zip64Option.Always; + else options.Zip64 = Zip64Option.Never; + + options.Comment = String.Format("Encoding:{0} || Flavor:{1} || ZIP64:{2}\r\nCreated at {3} || {4}\r\n", + options.Encoding, + FlavorToString(options.ZipFlavor), + options.Zip64.ToString(), + System.DateTime.Now.ToString("yyyy-MMM-dd HH:mm:ss"), + this.Text); + + if (this.tbComment.Text != TB_COMMENT_NOTE) + options.Comment += this.tbComment.Text; + + _workerThread = new Thread(this.DoSave); + _workerThread.Name = "Zip Saver thread"; + _workerThread.Start(options); + this.Cursor = Cursors.WaitCursor; + } + + + private void DoSave(Object p) + { + WorkerOptions options = p as WorkerOptions; + try + { + using (var zip1 = new ZipFile()) + { + zip1.ProvisionalAlternateEncoding = System.Text.Encoding.GetEncoding(options.Encoding); + zip1.Comment = options.Comment; + zip1.AddDirectory(options.Folder); + _entriesToZip = zip1.EntryFileNames.Count; + SetProgressBars(); + zip1.SaveProgress += this.zip1_SaveProgress; + + zip1.UseZip64WhenSaving = options.Zip64; + + if (options.ZipFlavor == 1) + zip1.SaveSelfExtractor(options.ZipName, SelfExtractorFlavor.WinFormsApplication); + else if (options.ZipFlavor == 2) + zip1.SaveSelfExtractor(options.ZipName, SelfExtractorFlavor.ConsoleApplication); + else + zip1.Save(options.ZipName); + } + } + catch (System.Exception exc1) + { + MessageBox.Show(String.Format("Exception while zipping: {0}", exc1.Message)); + btnCancel_Click(null, null); + } + } + + + + void zip1_SaveProgress(object sender, SaveProgressEventArgs e) + { + switch (e.EventType) + { + case ZipProgressEventType.Saving_AfterWriteEntry: + StepArchiveProgress(e); + break; + case ZipProgressEventType.Saving_EntryBytesRead: + StepEntryProgress(e); + break; + case ZipProgressEventType.Saving_Completed: + SaveCompleted(); + break; + case ZipProgressEventType.Saving_AfterSaveTempArchive: + // this event only occurs when saving an SFX file + TempArchiveSaved(); + break; + } + if (_saveCanceled) + e.Cancel = true; + } + + + + private void StepArchiveProgress(SaveProgressEventArgs e) + { + if (this.progressBar1.InvokeRequired) + { + this.progressBar1.Invoke(new SaveEntryProgress(this.StepArchiveProgress), new object[] { e }); + } + else + { + if (!_saveCanceled) + { + _nFilesCompleted++; + this.progressBar1.PerformStep(); + _totalBytesAfterCompress += e.CurrentEntry.CompressedSize; + _totalBytesBeforeCompress += e.CurrentEntry.UncompressedSize; + + // reset the progress bar for the entry: + this.progressBar2.Value = this.progressBar2.Maximum = 1; + + this.Update(); + } + } + } + + + private void StepEntryProgress(SaveProgressEventArgs e) + { + if (this.progressBar2.InvokeRequired) + { + this.progressBar2.Invoke(new SaveEntryProgress(this.StepEntryProgress), new object[] { e }); + } + else + { + if (!_saveCanceled) + { + if (this.progressBar2.Maximum == 1) + { + // reset + Int64 max = e.TotalBytesToTransfer; + _progress2MaxFactor = 0; + while (max > System.Int32.MaxValue) + { + max /= 2; + _progress2MaxFactor++; + } + this.progressBar2.Maximum = (int)max; + lblStatus.Text = String.Format("{0} of {1} files...({2})", + _nFilesCompleted + 1, _entriesToZip, e.CurrentEntry.FileName); + } + + int xferred = e.BytesTransferred >> _progress2MaxFactor; + + this.progressBar2.Value = (xferred >= this.progressBar2.Maximum) + ? this.progressBar2.Maximum + : xferred; + + this.Update(); + } + } + } + + private void SaveCompleted() + { + if (this.lblStatus.InvokeRequired) + { + this.lblStatus.Invoke(new MethodInvoker(this.SaveCompleted)); + } + else + { + lblStatus.Text = String.Format("Done, Compressed {0} files, {1:N0}% of original.", + _nFilesCompleted, (100.00 * _totalBytesAfterCompress) / _totalBytesBeforeCompress); + ResetState(); + } + } + + private void ResetState() + { + this.btnCancel.Enabled = false; + this.btnOk.Enabled = true; + this.btnOk.Text = "Zip it!"; + this.progressBar1.Value = 0; + this.progressBar2.Value = 0; + this.Cursor = Cursors.Default; + if (!_workerThread.IsAlive) + _workerThread.Join(); + } + + + + + + + + + + + An event handler invoked before, during, and after the reading of a zip archive. + + + + + Depending on the particular event being signaled, different properties on the + parameter are set. The following table + summarizes the available EventTypes and the conditions under which this + event handler is invoked with a ReadProgressEventArgs with the given EventType. + + + + + value of EntryType + Meaning and conditions + + + + ZipProgressEventType.Reading_Started + Fired just as ZipFile.Read() begins. Meaningful properties: ArchiveName. + + + + + ZipProgressEventType.Reading_Completed + Fired when ZipFile.Read() has completed. Meaningful properties: ArchiveName. + + + + + ZipProgressEventType.Reading_ArchiveBytesRead + Fired while reading, updates the number of bytes read for the entire archive. + Meaningful properties: ArchiveName, CurrentEntry, BytesTransferred, TotalBytesToTransfer. + + + + + ZipProgressEventType.Reading_BeforeReadEntry + Indicates an entry is about to be read from the archive. + Meaningful properties: ArchiveName, EntriesTotal. + + + + + ZipProgressEventType.Reading_AfterReadEntry + Indicates an entry has just been read from the archive. + Meaningful properties: ArchiveName, EntriesTotal, CurrentEntry. + + + + + + + + + + + + + An event handler invoked before, during, and after extraction of + entries in the zip archive. + + + + + Depending on the particular event, different properties on the parameter are set. The following + table summarizes the available EventTypes and the conditions under + which this event handler is invoked with a + ExtractProgressEventArgs with the given EventType. + + + + + value of EntryType + Meaning and conditions + + + + ZipProgressEventType.Extracting_BeforeExtractAll + + Set when ExtractAll() begins. The ArchiveName, Overwrite, and + ExtractLocation properties are meaningful. + + + + ZipProgressEventType.Extracting_AfterExtractAll + + Set when ExtractAll() has completed. The ArchiveName, Overwrite, + and ExtractLocation properties are meaningful. + + + + + ZipProgressEventType.Extracting_BeforeExtractEntry + + Set when an Extract() on an entry in the ZipFile has begun. + Properties that are meaningful: ArchiveName, EntriesTotal, + CurrentEntry, Overwrite, ExtractLocation, EntriesExtracted. + + + + + ZipProgressEventType.Extracting_AfterExtractEntry + + Set when an Extract() on an entry in the ZipFile has completed. + Properties that are meaningful: ArchiveName, EntriesTotal, + CurrentEntry, Overwrite, ExtractLocation, EntriesExtracted. + + + + + ZipProgressEventType.Extracting_EntryBytesWritten + + Set within a call to Extract() on an entry in the ZipFile, as data + is extracted for the entry. Properties that are meaningful: + ArchiveName, CurrentEntry, BytesTransferred, TotalBytesToTransfer. + + + + + ZipProgressEventType.Extracting_ExtractEntryWouldOverwrite + + Set within a call to Extract() on an entry in the ZipFile, when the + extraction would overwrite an existing file. This event type is used + only when ExtractExistingFileAction on the ZipFile or + ZipEntry is set to InvokeExtractProgressEvent. + + + + + + + + + + private static bool justHadByteUpdate = false; + public static void ExtractProgress(object sender, ExtractProgressEventArgs e) + { + if(e.EventType == ZipProgressEventType.Extracting_EntryBytesWritten) + { + if (justHadByteUpdate) + Console.SetCursorPosition(0, Console.CursorTop); + + Console.Write(" {0}/{1} ({2:N0}%)", e.BytesTransferred, e.TotalBytesToTransfer, + e.BytesTransferred / (0.01 * e.TotalBytesToTransfer )); + justHadByteUpdate = true; + } + else if(e.EventType == ZipProgressEventType.Extracting_BeforeExtractEntry) + { + if (justHadByteUpdate) + Console.WriteLine(); + Console.WriteLine("Extracting: {0}", e.CurrentEntry.FileName); + justHadByteUpdate= false; + } + } + + public static ExtractZip(string zipToExtract, string directory) + { + string TargetDirectory= "extract"; + using (var zip = ZipFile.Read(zipToExtract)) { + zip.ExtractProgress += ExtractProgress; + foreach (var e in zip1) + { + e.Extract(TargetDirectory, true); + } + } + } + + + + Public Shared Sub Main(ByVal args As String()) + Dim ZipToUnpack As String = "C1P3SML.zip" + Dim TargetDir As String = "ExtractTest_Extract" + Console.WriteLine("Extracting file {0} to {1}", ZipToUnpack, TargetDir) + Using zip1 As ZipFile = ZipFile.Read(ZipToUnpack) + AddHandler zip1.ExtractProgress, AddressOf MyExtractProgress + Dim e As ZipEntry + For Each e In zip1 + e.Extract(TargetDir, True) + Next + End Using + End Sub + + Private Shared justHadByteUpdate As Boolean = False + + Public Shared Sub MyExtractProgress(ByVal sender As Object, ByVal e As ExtractProgressEventArgs) + If (e.EventType = ZipProgressEventType.Extracting_EntryBytesWritten) Then + If ExtractTest.justHadByteUpdate Then + Console.SetCursorPosition(0, Console.CursorTop) + End If + Console.Write(" {0}/{1} ({2:N0}%)", e.BytesTransferred, e.TotalBytesToTransfer, (CDbl(e.BytesTransferred) / (0.01 * e.TotalBytesToTransfer))) + ExtractTest.justHadByteUpdate = True + ElseIf (e.EventType = ZipProgressEventType.Extracting_BeforeExtractEntry) Then + If ExtractTest.justHadByteUpdate Then + Console.WriteLine + End If + Console.WriteLine("Extracting: {0}", e.CurrentEntry.FileName) + ExtractTest.justHadByteUpdate = False + End If + End Sub + + + + + + + + + + An event handler invoked before, during, and after Adding entries to a zip archive. + + + + Adding a large number of entries to a zip file can take a long + time. For example, when calling on a + directory that contains 50,000 files, it could take 3 minutes or so. + This event handler allws an application to track the progress of the Add + operation, and to optionally cancel a lengthy Add operation. + + + + + + int _numEntriesToAdd= 0; + int _numEntriesAdded= 0; + void AddProgressHandler(object sender, AddProgressEventArgs e) + { + switch (e.EventType) + { + case ZipProgressEventType.Adding_Started: + Console.WriteLine("Adding files to the zip..."); + break; + case ZipProgressEventType.Adding_AfterAddEntry: + _numEntriesAdded++; + Console.WriteLine(String.Format("Adding file {0}/{1} :: {2}", + _numEntriesAdded, _numEntriesToAdd, e.CurrentEntry.FileName)); + break; + case ZipProgressEventType.Adding_Completed: + Console.WriteLine("Added all files"); + break; + } + } + + void CreateTheZip() + { + using (ZipFile zip = new ZipFile()) + { + zip.AddProgress += AddProgressHandler; + zip.AddDirectory(System.IO.Path.GetFileName(DirToZip)); + zip.Save(ZipFileToCreate); + } + } + + + + + + Private Sub AddProgressHandler(ByVal sender As Object, ByVal e As AddProgressEventArgs) + Select Case e.EventType + Case ZipProgressEventType.Adding_Started + Console.WriteLine("Adding files to the zip...") + Exit Select + Case ZipProgressEventType.Adding_AfterAddEntry + Console.WriteLine(String.Format("Adding file {0}", e.CurrentEntry.FileName)) + Exit Select + Case ZipProgressEventType.Adding_Completed + Console.WriteLine("Added all files") + Exit Select + End Select + End Sub + + Sub CreateTheZip() + Using zip as ZipFile = New ZipFile + AddHandler zip.AddProgress, AddressOf AddProgressHandler + zip.AddDirectory(System.IO.Path.GetFileName(DirToZip)) + zip.Save(ZipFileToCreate); + End Using + End Sub + + + + + + + + + + + + An event that is raised when an error occurs during open or read of files + while saving a zip archive. + + + + + Errors can occur as a file is being saved to the zip archive. For + example, the File.Open may fail, or a File.Read may fail, because of + lock conflicts or other reasons. If you add a handler to this event, + you can handle such errors in your own code. If you don't add a + handler, the library will throw an exception if it encounters an I/O + error during a call to Save(). + + + + Setting a handler implicitly sets to + ZipErrorAction.InvokeErrorEvent. + + + + The handler you add applies to all items that are + subsequently added to the ZipFile instance. If you set this + property after you have added items to the ZipFile, but before you + have called Save(), errors that occur while saving those items + will not cause the error handler to be invoked. + + + + If you want to handle any errors that occur with any entry in the zip + file using the same error handler, then add your error handler once, + before adding any entries to the zip archive. + + + + In the error handler method, you need to set the property on the + ZipErrorEventArgs.CurrentEntry. This communicates back to + DotNetZip what you would like to do with this particular error. Within + an error handler, if you set the ZipEntry.ZipErrorAction property + on the ZipEntry to ZipErrorAction.InvokeErrorEvent or if + you don't set it at all, the library will throw the exception. (It is the + same as if you had set the ZipEntry.ZipErrorAction property on the + ZipEntry to ZipErrorAction.Throw.) If you set the + ZipErrorEventArgs.Cancel to true, the entire Save() will be + canceled. + + + + In the case that you use ZipErrorAction.Skip, implying that + you want to skip the entry for which there's been an error, DotNetZip + tries to seek backwards in the output stream, and truncate all bytes + written on behalf of that particular entry. This works only if the + output stream is seekable. It will not work, for example, when using + ASPNET's Response.OutputStream. + + + + + + + This example shows how to use an event handler to handle + errors during save of the zip file. + + + public static void MyZipError(object sender, ZipErrorEventArgs e) + { + Console.WriteLine("Error saving {0}...", e.FileName); + Console.WriteLine(" Exception: {0}", e.exception); + ZipEntry entry = e.CurrentEntry; + string response = null; + // Ask the user whether he wants to skip this error or not + do + { + Console.Write("Retry, Skip, Throw, or Cancel ? (R/S/T/C) "); + response = Console.ReadLine(); + Console.WriteLine(); + + } while (response != null && + response[0]!='S' && response[0]!='s' && + response[0]!='R' && response[0]!='r' && + response[0]!='T' && response[0]!='t' && + response[0]!='C' && response[0]!='c'); + + e.Cancel = (response[0]=='C' || response[0]=='c'); + + if (response[0]=='S' || response[0]=='s') + entry.ZipErrorAction = ZipErrorAction.Skip; + else if (response[0]=='R' || response[0]=='r') + entry.ZipErrorAction = ZipErrorAction.Retry; + else if (response[0]=='T' || response[0]=='t') + entry.ZipErrorAction = ZipErrorAction.Throw; + } + + public void SaveTheFile() + { + string directoryToZip = "fodder"; + string directoryInArchive = "files"; + string zipFileToCreate = "Archive.zip"; + using (var zip = new ZipFile()) + { + // set the event handler before adding any entries + zip.ZipError += MyZipError; + zip.AddDirectory(directoryToZip, directoryInArchive); + zip.Save(zipFileToCreate); + } + } + + + + Private Sub MyZipError(ByVal sender As Object, ByVal e As Ionic.Zip.ZipErrorEventArgs) + ' At this point, the application could prompt the user for an action to take. + ' But in this case, this application will simply automatically skip the file, in case of error. + Console.WriteLine("Zip Error, entry {0}", e.CurrentEntry.FileName) + Console.WriteLine(" Exception: {0}", e.exception) + ' set the desired ZipErrorAction on the CurrentEntry to communicate that to DotNetZip + e.CurrentEntry.ZipErrorAction = Zip.ZipErrorAction.Skip + End Sub + + Public Sub SaveTheFile() + Dim directoryToZip As String = "fodder" + Dim directoryInArchive As String = "files" + Dim zipFileToCreate as String = "Archive.zip" + Using zipArchive As ZipFile = New ZipFile + ' set the event handler before adding any entries + AddHandler zipArchive.ZipError, AddressOf MyZipError + zipArchive.AddDirectory(directoryToZip, directoryInArchive) + zipArchive.Save(zipFileToCreate) + End Using + End Sub + + + + + + + + + Options for using ZIP64 extensions when saving zip archives. + + + + + + Designed many years ago, the original zip + specification from PKWARE allowed for 32-bit quantities for the + compressed and uncompressed sizes of zip entries, as well as a 32-bit quantity + for specifying the length of the zip archive itself, and a maximum of 65535 + entries. These limits are now regularly exceeded in many backup and archival + scenarios. Recently, PKWare added extensions to the original zip spec, called + "ZIP64 extensions", to raise those limitations. This property governs whether + DotNetZip will use those extensions when writing zip archives. The use of + these extensions is optional and explicit in DotNetZip because, despite the + status of ZIP64 as a bona fide standard, many other zip tools and libraries do + not support ZIP64, and therefore a zip file with ZIP64 extensions may be + unreadable by some of those other tools. + + + + Set this property to to always use ZIP64 + extensions when saving, regardless of whether your zip archive needs it. + Suppose you add 5 files, each under 100k, to a ZipFile. If you specify Always + for this flag, you will get a ZIP64 archive, though the archive does not need + to use ZIP64 because none of the original zip limits had been exceeded. + + + + Set this property to to tell the DotNetZip + library to never use ZIP64 extensions. This is useful for maximum + compatibility and interoperability, at the expense of the capability of + handling large files or large archives. NB: Windows Explorer in Windows XP + and Windows Vista cannot currently extract files from a zip64 archive, so if + you want to guarantee that a zip archive produced by this library will work in + Windows Explorer, use Never. If you set this property to , and your application creates a zip that would + exceed one of the Zip limits, the library will throw an exception while saving + the zip file. + + + + Set this property to to tell the + DotNetZip library to use the ZIP64 extensions when required by the + entry. After the file is compressed, the original and compressed sizes are + checked, and if they exceed the limits described above, then zip64 can be + used. That is the general idea, but there is an additional wrinkle when saving + to a non-seekable device, like the ASP.NET Response.OutputStream, or + Console.Out. When using non-seekable streams for output, the entry + header - which indicates whether zip64 is in use - is emitted before it is + known if zip64 is necessary. It is only after all entries have been saved + that it can be known if ZIP64 will be required. On seekable output streams, + after saving all entries, the library can seek backward and re-emit the zip + file header to be consistent with the actual ZIP64 requirement. But using a + non-seekable output stream, the library cannot seek backward, so the header + can never be changed. In other words, the archive's use of ZIP64 extensions is + not alterable after the header is emitted. Therefore, when saving to + non-seekable streams, using is the same + as using : it will always produce a zip + archive that uses ZIP64 extensions. + + + + + + + The default behavior, which is "Never". + (For COM clients, this is a 0 (zero).) + + + + + Do not use ZIP64 extensions when writing zip archives. + (For COM clients, this is a 0 (zero).) + + + + + Use ZIP64 extensions when writing zip archives, as necessary. + For example, when a single entry exceeds 0xFFFFFFFF in size, or when the archive as a whole + exceeds 0xFFFFFFFF in size, or when there are more than 65535 entries in an archive. + (For COM clients, this is a 1.) + + + + + Always use ZIP64 extensions when writing zip archives, even when unnecessary. + (For COM clients, this is a 2.) + + + + + An enum representing the values on a three-way toggle switch + for various options in the library. This might be used to + specify whether to employ a particular text encoding, or to use + ZIP64 extensions, or some other option. + + + + + The default behavior. This is the same as "Never". + (For COM clients, this is a 0 (zero).) + + + + + Never use the associated option. + (For COM clients, this is a 0 (zero).) + + + + + Use the associated behavior "as necessary." + (For COM clients, this is a 1.) + + + + + Use the associated behavior Always, whether necessary or not. + (For COM clients, this is a 2.) + + + + + A class for collecting the various options that can be used when + Reading zip files for extraction or update. + + + + + When reading a zip file, there are several options an + application can set, to modify how the file is read, or what + the library does while reading. This class collects those + options into one container. + + + + Pass an instance of the ReadOptions class into the + ZipFile.Read() method. + + + . + . + + + + + An event handler for Read operations. When opening large zip + archives, you may want to display a progress bar or other + indicator of status progress while reading. This parameter + allows you to specify a ReadProgress Event Handler directly. + When you call Read(), the progress event is invoked as + necessary. + + + + + The System.IO.TextWriter to use for writing verbose status messages + during operations on the zip archive. A console application may wish to + pass System.Console.Out to get messages on the Console. A graphical + or headless application may wish to capture the messages in a different + TextWriter, such as a System.IO.StringWriter. + + + + + The System.Text.Encoding to use when reading in the zip archive. Be + careful specifying the encoding. If the value you use here is not the same + as the Encoding used when the zip archive was created (possibly by a + different archiver) you will get unexpected results and possibly exceptions. + + + + + + + + An enum that provides the different self-extractor flavors + + + + + A self-extracting zip archive that runs from the console or + command line. + + + + + A self-extracting zip archive that presents a graphical user + interface when it is executed. + + + + + The options for generating a self-extracting archive. + + + + + The type of SFX to create. + + + + + The command to run after extraction. + + + + + This is optional. Leave it empty (null in C# or Nothing in + VB) to run no command after extraction. + + + + If it is non-empty, the SFX will execute the command specified in this + string on the user's machine, and using the extract directory as the + working directory for the process, after unpacking the archive. The + program to execute can include a path, if you like. If you want to execute + a program that accepts arguments, specify the program name, followed by a + space, and then the arguments for the program, each separated by a space, + just as you would on a normal command line. Example: program.exe arg1 + arg2. The string prior to the first space will be taken as the + program name, and the string following the first space specifies the + arguments to the program. + + + + If you want to execute a program that has a space in the name or path of + the file, surround the program name in double-quotes. The first character + of the command line should be a double-quote character, and there must be + a matching double-quote following the end of the program file name. Any + optional arguments to the program follow that, separated by + spaces. Example: "c:\project files\program name.exe" arg1 arg2. + + + + If the flavor of the SFX is SelfExtractorFlavor.ConsoleApplication, + then the SFX starts a new process, using this string as the post-extract + command line. The SFX waits for the process to exit. The exit code of + the post-extract command line is returned as the exit code of the + command-line self-extractor exe. A non-zero exit code is typically used to + indicated a failure by the program. In the case of an SFX, a non-zero exit + code may indicate a failure during extraction, OR, it may indicate a + failure of the run-after-extract program if specified, OR, it may indicate + the run-after-extract program could not be fuond. There is no way to + distinguish these conditions from the calling shell, aside from parsing + the output of the SFX. If you have Quiet set to true, you may not + see error messages, if a problem occurs. + + + + If the flavor of the SFX is + SelfExtractorFlavor.WinFormsApplication, then the SFX starts a new + process, using this string as the post-extract command line, and using the + extract directory as the working directory for the process. The SFX does + not wait for the command to complete, and does not check the exit code of + the program. If the run-after-extract program cannot be fuond, a message + box is displayed indicating that fact. + + + + You can specify environment variables within this string, with a format like + %NAME%. The value of these variables will be expanded at the time + the SFX is run. Example: %WINDIR%\system32\xcopy.exe may expand at + runtime to c:\Windows\System32\xcopy.exe. + + + + By combining this with the RemoveUnpackedFilesAfterExecute + flag, you can create an SFX that extracts itself, runs a file that + was extracted, then deletes all the files that were extracted. If + you want it to run "invisibly" then set Flavor to + SelfExtractorFlavor.ConsoleApplication, and set Quiet + to true. The user running such an EXE will see a console window + appear, then disappear quickly. You may also want to specify the + default extract location, with DefaultExtractDirectory. + + + + If you set Flavor to + SelfExtractorFlavor.WinFormsApplication, and set Quiet to + true, then a GUI with progressbars is displayed, but it is + "non-interactive" - it accepts no input from the user. Instead the SFX + just automatically unpacks and exits. + + + + + + + The default extract directory the user will see when + running the self-extracting archive. + + + + + Passing null (or Nothing in VB) here will cause the Self Extractor to use + the the user's personal directory () for the default extract + location. + + + + This is only a default location. The actual extract location will be + settable on the command line when the SFX is executed. + + + + You can specify environment variables within this string, + with %NAME%. The value of these variables will be + expanded at the time the SFX is run. Example: + %USERPROFILE%\Documents\unpack may expand at runtime to + c:\users\melvin\Documents\unpack. + + + + + + The name of an .ico file in the filesystem to use for the application icon + for the generated SFX. + + + + + Normally, DotNetZip will embed an "zipped folder" icon into the generated + SFX. If you prefer to use a different icon, you can specify it here. It + should be a .ico file. This file is passed as the /win32icon + option to the csc.exe compiler when constructing the SFX file. + + + + + + + Whether the ConsoleApplication SFX will be quiet during extraction. + + + + + This option affects the way the generated SFX runs. By default it is + false. When you set it to true,... + + + + + Flavor + Behavior + + + + ConsoleApplication + no messages will be emitted during successful + operation. Double-clicking the SFX in Windows + Explorer or as an attachment in an email will cause a console + window to appear briefly, before it disappears. If you run the + ConsoleApplication SFX from the cmd.exe prompt, it runs as a + normal console app; by default, because it is quiet, it displays + no messages to the console. If you pass the -v+ command line + argument to the Console SFX when you run it, you will get verbose + messages to the console. + + + + + WinFormsApplication + the SFX extracts automatically when the application + is launched, with no additional user input. + + + + + + + When you set it to false,... + + + + + Flavor + Behavior + + + + ConsoleApplication + the extractor will emit a + message to the console for each entry extracted. + + When double-clicking to launch the SFX, the console window will + remain, and the SFX will emit a message for each file as it + extracts. The messages fly by quickly, they won't be easily + readable, unless the extracted files are fairly large. + + + + + + WinFormsApplication + the SFX presents a forms UI and allows the user to select + options before extracting. + + + + + + + + + + Specify what the self-extractor will do when extracting an entry + would overwrite an existing file. + + + + The default behavvior is to Throw. + + + + + + Whether to remove the files that have been unpacked, after executing the + PostExtractCommandLine. + + + + + If true, and if there is a + PostExtractCommandLine, and if the command runs successfully, + then the files that the SFX unpacked will be removed, afterwards. If + the command does not complete successfully (non-zero return code), + that is interpreted as a failure, and the extracted files will not be + removed. + + + + Setting this flag, and setting Flavor to + SelfExtractorFlavor.ConsoleApplication, and setting Quiet to + true, results in an SFX that extracts itself, runs a file that was + extracted, then deletes all the files that were extracted, with no + intervention by the user. You may also want to specify the default + extract location, with DefaultExtractDirectory. + + + + + + + The file version number to embed into the generated EXE. It will show up, for + example, during a mouseover in Windows Explorer. + + + + + + The product version to embed into the generated EXE. It will show up, for + example, during a mouseover in Windows Explorer. + + + + You can use any arbitrary string, but a human-readable version number is + recommended. For example "v1.2 alpha" or "v4.2 RC2". If you specify nothing, + then there is no product version embedded into the EXE. + + + + + + The copyright notice, if any, to embed into the generated EXE. + + + + It will show up, for example, while viewing properties of the file in + Windows Explorer. You can use any arbitrary string, but typically you + want something like "Copyright © Dino Chiesa 2011". + + + + + + The description to embed into the generated EXE. + + + + Use any arbitrary string. This text will be displayed during a + mouseover in Windows Explorer. If you specify nothing, then the string + "DotNetZip SFX Archive" is embedded into the EXE as the description. + + + + + + The product name to embed into the generated EXE. + + + + Use any arbitrary string. This text will be displayed + while viewing properties of the EXE file in + Windows Explorer. + + + + + + The title to display in the Window of a GUI SFX, while it extracts. + + + + + By default the title show in the GUI window of a self-extractor + is "DotNetZip Self-extractor (http://DotNetZip.codeplex.com/)". + You can change that by setting this property before saving the SFX. + + + + This property has an effect only when producing a Self-extractor + of flavor SelfExtractorFlavor.WinFormsApplication. + + + + + + + Additional options for the csc.exe compiler, when producing the SFX + EXE. + + + + + + Reset the BitWriter. + + + + This is useful when the BitWriter writes into a MemoryStream, and + is used by a BZip2Compressor, which itself is re-used for multiple + distinct data blocks. + + + + + + Write some number of bits from the given value, into the output. + + + + The nbits value should be a max of 25, for safety. For performance + reasons, this method does not check! + + + + + + Write a full 8-bit byte into the output. + + + + + Write four 8-bit bytes into the output. + + + + + Write all available byte-aligned bytes. + + + + This method writes no new output, but flushes any accumulated + bits. At completion, the accumulator may contain up to 7 + bits. + + + This is necessary when re-assembling output from N independent + compressors, one for each of N blocks. The output of any + particular compressor will in general have some fragment of a byte + remaining. This fragment needs to be accumulated into the + parent BZip2OutputStream. + + + + + + Writes all available bytes, and emits padding for the final byte as + necessary. This must be the last method invoked on an instance of + BitWriter. + + + + + Delivers the remaining bits, left-aligned, in a byte. + + + + This is valid only if NumRemainingBits is less than 8; + in other words it is valid only after a call to Flush(). + + + + + Knuth's increments seem to work better than Incerpi-Sedgewick here. + Possibly because the number of elems to sort is usually small, typically + <= 20. + + + + BZip2Compressor writes its compressed data out via a BitWriter. This + is necessary because BZip2 does byte shredding. + + + + + Accept new bytes into the compressor data buffer + + + + This method does the first-level (cheap) run-length encoding, and + stores the encoded data into the rle block. + + + + + + Process one input byte into the block. + + + + + To "process" the byte means to do the run-length encoding. + There are 3 possible return values: + + 0 - the byte was not written, in other words, not + encoded into the block. This happens when the + byte b would require the start of a new run, and + the block has no more room for new runs. + + 1 - the byte was written, and the block is not full. + + 2 - the byte was written, and the block is full. + + + + 0 if the byte was not written, non-zero if written. + + + + Append one run to the output block. + + + + + This compressor does run-length-encoding before BWT and etc. This + method simply appends a run to the output block. The append always + succeeds. The return value indicates whether the block is full: + false (not full) implies that at least one additional run could be + processed. + + + true if the block is now full; otherwise false. + + + + Compress the data that has been placed (Run-length-encoded) into the + block. The compressed data goes into the CompressedBytes array. + + + + Side effects: 1. fills the CompressedBytes array. 2. sets the + AvailableBytesOut property. + + + + + This is the most hammered method of this class. + +

+ This is the version using unrolled loops. +

+
+ + Method "mainQSort3", file "blocksort.c", BZip2 1.0.2 + + + + The number of uncompressed bytes being held in the buffer. + + + + I am thinking this may be useful in a Stream that uses this + compressor class. In the Close() method on the stream it could + check this value to see if anything has been written at all. You + may think the stream could easily track the number of bytes it + wrote, which would eliminate the need for this. But, there is the + case where the stream writes a complete block, and it is full, and + then writes no more. In that case the stream may want to check. + + + + + Array instance identical to sfmap, both are used only + temporarily and independently, so we do not need to allocate + additional memory. + + + + A read-only decorator stream that performs BZip2 decompression on Read. + + + + + Create a BZip2InputStream, wrapping it around the given input Stream. + + + + The input stream will be closed when the BZip2InputStream is closed. + + + The stream from which to read compressed data + + + + Create a BZip2InputStream with the given stream, and + specifying whether to leave the wrapped stream open when + the BZip2InputStream is closed. + + The stream from which to read compressed data + + Whether to leave the input stream open, when the BZip2InputStream closes. + + + + + This example reads a bzip2-compressed file, decompresses it, + and writes the decompressed data into a newly created file. + + + var fname = "logfile.log.bz2"; + using (var fs = File.OpenRead(fname)) + { + using (var decompressor = new Ionic.BZip2.BZip2InputStream(fs)) + { + var outFname = fname + ".decompressed"; + using (var output = File.Create(outFname)) + { + byte[] buffer = new byte[2048]; + int n; + while ((n = decompressor.Read(buffer, 0, buffer.Length)) > 0) + { + output.Write(buffer, 0, n); + } + } + } + } + + + + + + Read data from the stream. + + + + + To decompress a BZip2 data stream, create a BZip2InputStream, + providing a stream that reads compressed data. Then call Read() on + that BZip2InputStream, and the data read will be decompressed + as you read. + + + + A BZip2InputStream can be used only for Read(), not for Write(). + + + + The buffer into which the read data should be placed. + the offset within that data array to put the first byte read. + the number of bytes to read. + the number of bytes actually read + + + + Read a single byte from the stream. + + the byte read from the stream, or -1 if EOF + + + + Flush the stream. + + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + this is irrelevant, since it will always throw! + irrelevant! + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + + + + Calling this method always throws a . + + this parameter is never used + this parameter is never used + this parameter is never used + + + + Dispose the stream. + + + indicates whether the Dispose method was invoked by user code. + + + + + Close the stream. + + + + + Read n bits from input, right justifying the result. + + + + For example, if you read 1 bit, the result is either 0 + or 1. + + + + The number of bits to read, always between 1 and 32. + + + + Called by createHuffmanDecodingTables() exclusively. + + + Called by recvDecodingTables() exclusively. + + + + Indicates whether the stream can be read. + + + The return value depends on whether the captive stream supports reading. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value depends on whether the captive stream supports writing. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the + total number of uncompressed bytes read in. + + + + + Compressor State + + + + Freq table collected to save a pass over the data during + decompression. + + + Initializes the tt array. + + This method is called when the required length of the array is known. + I don't initialize it at construction time to avoid unneccessary + memory allocation when compressing small files. + + + + A write-only decorator stream that compresses data as it is + written using the BZip2 algorithm. + + + + + Constructs a new BZip2OutputStream, that sends its + compressed output to the given output stream. + + + + The destination stream, to which compressed output will be sent. + + + + + This example reads a file, then compresses it with bzip2 file, + and writes the compressed data into a newly created file. + + + var fname = "logfile.log"; + using (var fs = File.OpenRead(fname)) + { + var outFname = fname + ".bz2"; + using (var output = File.Create(outFname)) + { + using (var compressor = new Ionic.BZip2.BZip2OutputStream(output)) + { + byte[] buffer = new byte[2048]; + int n; + while ((n = fs.Read(buffer, 0, buffer.Length)) > 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + + + + Constructs a new BZip2OutputStream with specified blocksize. + + the destination stream. + + The blockSize in units of 100000 bytes. + The valid range is 1..9. + + + + + Constructs a new BZip2OutputStream. + + the destination stream. + + whether to leave the captive stream open upon closing this stream. + + + + + Constructs a new BZip2OutputStream with specified blocksize, + and explicitly specifies whether to leave the wrapped stream open. + + + the destination stream. + + The blockSize in units of 100000 bytes. + The valid range is 1..9. + + + whether to leave the captive stream open upon closing this stream. + + + + + Close the stream. + + + + This may or may not close the underlying stream. Check the + constructors that accept a bool value. + + + + + + Flush the stream. + + + + + Write data to the stream. + + + + + Use the BZip2OutputStream to compress data while writing: + create a BZip2OutputStream with a writable output stream. + Then call Write() on that BZip2OutputStream, providing + uncompressed data as input. The data sent to the output stream will + be the compressed form of the input data. + + + + A BZip2OutputStream can be used only for Write() not for Read(). + + + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + this is irrelevant, since it will always throw! + irrelevant! + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + + + + Calling this method always throws a . + + this parameter is never used + this parameter is never used + this parameter is never used + never returns anything; always throws + + + + The blocksize parameter specified at construction time. + + + + + Indicates whether the stream can be read. + + + The return value is always false. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value should always be true, unless and until the + object is disposed and closed. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the + total number of uncompressed bytes written through. + + + + + A write-only decorator stream that compresses data as it is + written using the BZip2 algorithm. This stream compresses by + block using multiple threads. + + + This class performs BZIP2 compression through writing. For + more information on the BZIP2 algorithm, see + . + + + + This class is similar to , + except that this implementation uses an approach that employs multiple + worker threads to perform the compression. On a multi-cpu or multi-core + computer, the performance of this class can be significantly higher than + the single-threaded BZip2OutputStream, particularly for larger streams. + How large? Anything over 10mb is a good candidate for parallel + compression. + + + + The tradeoff is that this class uses more memory and more CPU than the + vanilla BZip2OutputStream. Also, for small files, the + ParallelBZip2OutputStream can be much slower than the vanilla + BZip2OutputStream, because of the overhead associated to using the + thread pool. + + + + + + + Constructs a new ParallelBZip2OutputStream, that sends its + compressed output to the given output stream. + + + + The destination stream, to which compressed output will be sent. + + + + + This example reads a file, then compresses it with bzip2 file, + and writes the compressed data into a newly created file. + + + var fname = "logfile.log"; + using (var fs = File.OpenRead(fname)) + { + var outFname = fname + ".bz2"; + using (var output = File.Create(outFname)) + { + using (var compressor = new Ionic.BZip2.ParallelBZip2OutputStream(output)) + { + byte[] buffer = new byte[2048]; + int n; + while ((n = fs.Read(buffer, 0, buffer.Length)) > 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + + + + Constructs a new ParallelBZip2OutputStream with specified blocksize. + + the destination stream. + + The blockSize in units of 100000 bytes. + The valid range is 1..9. + + + + + Constructs a new ParallelBZip2OutputStream. + + the destination stream. + + whether to leave the captive stream open upon closing this stream. + + + + + Constructs a new ParallelBZip2OutputStream with specified blocksize, + and explicitly specifies whether to leave the wrapped stream open. + + + the destination stream. + + The blockSize in units of 100000 bytes. + The valid range is 1..9. + + + whether to leave the captive stream open upon closing this stream. + + + + + Close the stream. + + + + This may or may not close the underlying stream. Check the + constructors that accept a bool value. + + + + + + Flush the stream. + + + + + Write data to the stream. + + + + + Use the ParallelBZip2OutputStream to compress data while + writing: create a ParallelBZip2OutputStream with a writable + output stream. Then call Write() on that + ParallelBZip2OutputStream, providing uncompressed data as + input. The data sent to the output stream will be the compressed + form of the input data. + + + + A ParallelBZip2OutputStream can be used only for + Write() not for Read(). + + + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + this is irrelevant, since it will always throw! + irrelevant! + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + + + + Calling this method always throws a . + + this parameter is never used + this parameter is never used + this parameter is never used + never returns anything; always throws + + + + The maximum number of concurrent compression worker threads to use. + + + + + This property sets an upper limit on the number of concurrent worker + threads to employ for compression. The implementation of this stream + employs multiple threads from the .NET thread pool, via + ThreadPool.QueueUserWorkItem(), to compress the incoming data by + block. As each block of data is compressed, this stream re-orders the + compressed blocks and writes them to the output stream. + + + + A higher number of workers enables a higher degree of + parallelism, which tends to increase the speed of compression on + multi-cpu computers. On the other hand, a higher number of buffer + pairs also implies a larger memory consumption, more active worker + threads, and a higher cpu utilization for any compression. This + property enables the application to limit its memory consumption and + CPU utilization behavior depending on requirements. + + + + By default, DotNetZip allocates 4 workers per CPU core, subject to the + upper limit specified in this property. For example, suppose the + application sets this property to 16. Then, on a machine with 2 + cores, DotNetZip will use 8 workers; that number does not exceed the + upper limit specified by this property, so the actual number of + workers used will be 4 * 2 = 8. On a machine with 4 cores, DotNetZip + will use 16 workers; again, the limit does not apply. On a machine + with 8 cores, DotNetZip will use 16 workers, because of the limit. + + + + For each compression "worker thread" that occurs in parallel, there is + up to 2mb of memory allocated, for buffering and processing. The + actual number depends on the property. + + + + CPU utilization will also go up with additional workers, because a + larger number of buffer pairs allows a larger number of background + threads to compress in parallel. If you find that parallel + compression is consuming too much memory or CPU, you can adjust this + value downward. + + + + The default value is 16. Different values may deliver better or + worse results, depending on your priorities and the dynamic + performance characteristics of your storage and compute resources. + + + + The application can set this value at any time, but it is effective + only before the first call to Write(), which is when the buffers are + allocated. + + + + + + The blocksize parameter specified at construction time. + + + + + Indicates whether the stream can be read. + + + The return value is always false. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value depends on whether the captive stream supports writing. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the + total number of uncompressed bytes written through. + + + + + The total number of bytes written out by the stream. + + + This value is meaningful only after a call to Close(). + + + + + Returns the "random" number at a specific index. + + the index + the random number + + + + A class for compressing and decompressing streams using the Deflate algorithm. + + + + + + The DeflateStream is a Decorator on a . It adds DEFLATE compression or decompression to any + stream. + + + + Using this stream, applications can compress or decompress data via stream + Read and Write operations. Either compresssion or decompression + can occur through either reading or writing. The compression format used is + DEFLATE, which is documented in IETF RFC 1951, "DEFLATE + Compressed Data Format Specification version 1.3.". + + + + This class is similar to , except that + ZlibStream adds the RFC + 1950 - ZLIB framing bytes to a compressed stream when compressing, or + expects the RFC1950 framing bytes when decompressing. The DeflateStream + does not. + + + + + + + + + + Create a DeflateStream using the specified CompressionMode. + + + + When mode is CompressionMode.Compress, the DeflateStream will use + the default compression level. The "captive" stream will be closed when + the DeflateStream is closed. + + + + This example uses a DeflateStream to compress data from a file, and writes + the compressed data to another file. + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(fileToCompress + ".deflated")) + { + using (Stream compressor = new DeflateStream(raw, CompressionMode.Compress)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(fileToCompress & ".deflated") + Using compressor As Stream = New DeflateStream(raw, CompressionMode.Compress) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + The stream which will be read or written. + Indicates whether the DeflateStream will compress or decompress. + + + + Create a DeflateStream using the specified CompressionMode and the specified CompressionLevel. + + + + + + When mode is CompressionMode.Decompress, the level parameter is + ignored. The "captive" stream will be closed when the DeflateStream is + closed. + + + + + + + This example uses a DeflateStream to compress data from a file, and writes + the compressed data to another file. + + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(fileToCompress + ".deflated")) + { + using (Stream compressor = new DeflateStream(raw, + CompressionMode.Compress, + CompressionLevel.BestCompression)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n= -1; + while (n != 0) + { + if (n > 0) + compressor.Write(buffer, 0, n); + n= input.Read(buffer, 0, buffer.Length); + } + } + } + } + + + + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(fileToCompress & ".deflated") + Using compressor As Stream = New DeflateStream(raw, CompressionMode.Compress, CompressionLevel.BestCompression) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + The stream to be read or written while deflating or inflating. + Indicates whether the DeflateStream will compress or decompress. + A tuning knob to trade speed for effectiveness. + + + + Create a DeflateStream using the specified + CompressionMode, and explicitly specify whether the + stream should be left open after Deflation or Inflation. + + + + + + This constructor allows the application to request that the captive stream + remain open after the deflation or inflation occurs. By default, after + Close() is called on the stream, the captive stream is also + closed. In some cases this is not desired, for example if the stream is a + memory stream that will be re-read after compression. Specify true for + the parameter to leave the stream open. + + + + The DeflateStream will use the default compression level. + + + + See the other overloads of this constructor for example code. + + + + + The stream which will be read or written. This is called the + "captive" stream in other places in this documentation. + + + + Indicates whether the DeflateStream will compress or decompress. + + + true if the application would like the stream to + remain open after inflation/deflation. + + + + Create a DeflateStream using the specified CompressionMode + and the specified CompressionLevel, and explicitly specify whether + the stream should be left open after Deflation or Inflation. + + + + + + When mode is CompressionMode.Decompress, the level parameter is ignored. + + + + This constructor allows the application to request that the captive stream + remain open after the deflation or inflation occurs. By default, after + Close() is called on the stream, the captive stream is also + closed. In some cases this is not desired, for example if the stream is a + that will be re-read after + compression. Specify true for the parameter + to leave the stream open. + + + + + + + This example shows how to use a DeflateStream to compress data from + a file, and store the compressed data into another file. + + + using (var output = System.IO.File.Create(fileToCompress + ".deflated")) + { + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (Stream compressor = new DeflateStream(output, CompressionMode.Compress, CompressionLevel.BestCompression, true)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n= -1; + while (n != 0) + { + if (n > 0) + compressor.Write(buffer, 0, n); + n= input.Read(buffer, 0, buffer.Length); + } + } + } + // can write additional data to the output stream here + } + + + + Using output As FileStream = File.Create(fileToCompress & ".deflated") + Using input As Stream = File.OpenRead(fileToCompress) + Using compressor As Stream = New DeflateStream(output, CompressionMode.Compress, CompressionLevel.BestCompression, True) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + ' can write additional data to the output stream here. + End Using + + + The stream which will be read or written. + Indicates whether the DeflateStream will compress or decompress. + true if the application would like the stream to remain open after inflation/deflation. + A tuning knob to trade speed for effectiveness. + + + + Dispose the stream. + + + + This may or may not result in a Close() call on the captive + stream. See the constructors that have a leaveOpen parameter + for more information. + + + Application code won't call this code directly. This method may be + invoked in two distinct scenarios. If disposing == true, the method + has been called directly or indirectly by a user's code, for example + via the public Dispose() method. In this case, both managed and + unmanaged resources can be referenced and disposed. If disposing == + false, the method has been called by the runtime from inside the + object finalizer and this method should not reference other objects; + in that case only unmanaged resources must be referenced or + disposed. + + + + true if the Dispose method was invoked by user code. + + + + + Flush the stream. + + + + + Read data from the stream. + + + + + If you wish to use the DeflateStream to compress data while + reading, you can create a DeflateStream with + CompressionMode.Compress, providing an uncompressed data stream. + Then call Read() on that DeflateStream, and the data read will be + compressed as you read. If you wish to use the DeflateStream to + decompress data while reading, you can create a DeflateStream with + CompressionMode.Decompress, providing a readable compressed data + stream. Then call Read() on that DeflateStream, and the data read + will be decompressed as you read. + + + + A DeflateStream can be used for Read() or Write(), but not both. + + + + The buffer into which the read data should be placed. + the offset within that data array to put the first byte read. + the number of bytes to read. + the number of bytes actually read + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + this is irrelevant, since it will always throw! + irrelevant! + + + + Calling this method always throws a . + + this is irrelevant, since it will always throw! + + + + Write data to the stream. + + + + + If you wish to use the DeflateStream to compress data while + writing, you can create a DeflateStream with + CompressionMode.Compress, and a writable output stream. Then call + Write() on that DeflateStream, providing uncompressed data + as input. The data sent to the output stream will be the compressed form + of the data written. If you wish to use the DeflateStream to + decompress data while writing, you can create a DeflateStream with + CompressionMode.Decompress, and a writable output stream. Then + call Write() on that stream, providing previously compressed + data. The data sent to the output stream will be the decompressed form of + the data written. + + + + A DeflateStream can be used for Read() or Write(), + but not both. + + + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Compress a string into a byte array using DEFLATE (RFC 1951). + + + + Uncompress it with . + + + DeflateStream.UncompressString(byte[]) + DeflateStream.CompressBuffer(byte[]) + GZipStream.CompressString(string) + ZlibStream.CompressString(string) + + + A string to compress. The string will first be encoded + using UTF8, then compressed. + + + The string in compressed form + + + + Compress a byte array into a new byte array using DEFLATE. + + + + Uncompress it with . + + + DeflateStream.CompressString(string) + DeflateStream.UncompressBuffer(byte[]) + GZipStream.CompressBuffer(byte[]) + ZlibStream.CompressBuffer(byte[]) + + + A buffer to compress. + + + The data in compressed form + + + + Uncompress a DEFLATE'd byte array into a single string. + + + DeflateStream.CompressString(String) + DeflateStream.UncompressBuffer(byte[]) + GZipStream.UncompressString(byte[]) + ZlibStream.UncompressString(byte[]) + + + A buffer containing DEFLATE-compressed data. + + + The uncompressed string + + + + Uncompress a DEFLATE'd byte array into a byte array. + + + DeflateStream.CompressBuffer(byte[]) + DeflateStream.UncompressString(byte[]) + GZipStream.UncompressBuffer(byte[]) + ZlibStream.UncompressBuffer(byte[]) + + + A buffer containing data that has been compressed with DEFLATE. + + + The data in uncompressed form + + + + This property sets the flush behavior on the stream. + + See the ZLIB documentation for the meaning of the flush behavior. + + + + + The size of the working buffer for the compression codec. + + + + + The working buffer is used for all stream operations. The default size is + 1024 bytes. The minimum size is 128 bytes. You may get better performance + with a larger buffer. Then again, you might not. You would have to test + it. + + + + Set this before the first call to Read() or Write() on the + stream. If you try to set it afterwards, it will throw. + + + + + + The ZLIB strategy to be used during compression. + + + + By tweaking this parameter, you may be able to optimize the compression for + data with particular characteristics. + + + + Returns the total number of bytes input so far. + + + Returns the total number of bytes output so far. + + + + Indicates whether the stream can be read. + + + The return value depends on whether the captive stream supports reading. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value depends on whether the captive stream supports writing. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the total bytes + written out, if used in writing, or the total bytes read in, if used in + reading. The count may refer to compressed bytes or uncompressed bytes, + depending on how you've used the stream. + + + + + A class for compressing and decompressing GZIP streams. + + + + + The GZipStream is a Decorator on a + . It adds GZIP compression or decompression to any + stream. + + + + Like the System.IO.Compression.GZipStream in the .NET Base Class Library, the + Ionic.Zlib.GZipStream can compress while writing, or decompress while + reading, but not vice versa. The compression method used is GZIP, which is + documented in IETF RFC + 1952, "GZIP file format specification version 4.3". + + + A GZipStream can be used to decompress data (through Read()) or + to compress data (through Write()), but not both. + + + + If you wish to use the GZipStream to compress data, you must wrap it + around a write-able stream. As you call Write() on the GZipStream, the + data will be compressed into the GZIP format. If you want to decompress data, + you must wrap the GZipStream around a readable stream that contains an + IETF RFC 1952-compliant stream. The data will be decompressed as you call + Read() on the GZipStream. + + + + Though the GZIP format allows data from multiple files to be concatenated + together, this stream handles only a single segment of GZIP format, typically + representing a single file. + + + + This class is similar to and . + ZlibStream handles RFC1950-compliant streams. + handles RFC1951-compliant streams. This class handles RFC1952-compliant streams. + + + + + + + + + + The last modified time for the GZIP stream. + + + + GZIP allows the storage of a last modified time with each GZIP entry. + When compressing data, you can set this before the first call to + Write(). When decompressing, you can retrieve this value any time + after the first call to Read(). + + + + + Create a GZipStream using the specified CompressionMode. + + + + + When mode is CompressionMode.Compress, the GZipStream will use the + default compression level. + + + + As noted in the class documentation, the CompressionMode (Compress + or Decompress) also establishes the "direction" of the stream. A + GZipStream with CompressionMode.Compress works only through + Write(). A GZipStream with + CompressionMode.Decompress works only through Read(). + + + + + + This example shows how to use a GZipStream to compress data. + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(outputFile)) + { + using (Stream compressor = new GZipStream(raw, CompressionMode.Compress)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + Dim outputFile As String = (fileToCompress & ".compressed") + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(outputFile) + Using compressor As Stream = New GZipStream(raw, CompressionMode.Compress) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + + + This example shows how to use a GZipStream to uncompress a file. + + private void GunZipFile(string filename) + { + if (!filename.EndsWith(".gz)) + throw new ArgumentException("filename"); + var DecompressedFile = filename.Substring(0,filename.Length-3); + byte[] working = new byte[WORKING_BUFFER_SIZE]; + int n= 1; + using (System.IO.Stream input = System.IO.File.OpenRead(filename)) + { + using (Stream decompressor= new Ionic.Zlib.GZipStream(input, CompressionMode.Decompress, true)) + { + using (var output = System.IO.File.Create(DecompressedFile)) + { + while (n !=0) + { + n= decompressor.Read(working, 0, working.Length); + if (n > 0) + { + output.Write(working, 0, n); + } + } + } + } + } + } + + + + Private Sub GunZipFile(ByVal filename as String) + If Not (filename.EndsWith(".gz)) Then + Throw New ArgumentException("filename") + End If + Dim DecompressedFile as String = filename.Substring(0,filename.Length-3) + Dim working(WORKING_BUFFER_SIZE) as Byte + Dim n As Integer = 1 + Using input As Stream = File.OpenRead(filename) + Using decompressor As Stream = new Ionic.Zlib.GZipStream(input, CompressionMode.Decompress, True) + Using output As Stream = File.Create(UncompressedFile) + Do + n= decompressor.Read(working, 0, working.Length) + If n > 0 Then + output.Write(working, 0, n) + End IF + Loop While (n > 0) + End Using + End Using + End Using + End Sub + + + + The stream which will be read or written. + Indicates whether the GZipStream will compress or decompress. + + + + Create a GZipStream using the specified CompressionMode and + the specified CompressionLevel. + + + + + The CompressionMode (Compress or Decompress) also establishes the + "direction" of the stream. A GZipStream with + CompressionMode.Compress works only through Write(). A + GZipStream with CompressionMode.Decompress works only + through Read(). + + + + + + + This example shows how to use a GZipStream to compress a file into a .gz file. + + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(fileToCompress + ".gz")) + { + using (Stream compressor = new GZipStream(raw, + CompressionMode.Compress, + CompressionLevel.BestCompression)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(fileToCompress & ".gz") + Using compressor As Stream = New GZipStream(raw, CompressionMode.Compress, CompressionLevel.BestCompression) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + The stream to be read or written while deflating or inflating. + Indicates whether the GZipStream will compress or decompress. + A tuning knob to trade speed for effectiveness. + + + + Create a GZipStream using the specified CompressionMode, and + explicitly specify whether the stream should be left open after Deflation + or Inflation. + + + + + This constructor allows the application to request that the captive stream + remain open after the deflation or inflation occurs. By default, after + Close() is called on the stream, the captive stream is also + closed. In some cases this is not desired, for example if the stream is a + memory stream that will be re-read after compressed data has been written + to it. Specify true for the parameter to leave + the stream open. + + + + The (Compress or Decompress) also + establishes the "direction" of the stream. A GZipStream with + CompressionMode.Compress works only through Write(). A GZipStream + with CompressionMode.Decompress works only through Read(). + + + + The GZipStream will use the default compression level. If you want + to specify the compression level, see . + + + + See the other overloads of this constructor for example code. + + + + + + The stream which will be read or written. This is called the "captive" + stream in other places in this documentation. + + + Indicates whether the GZipStream will compress or decompress. + + + + true if the application would like the base stream to remain open after + inflation/deflation. + + + + + Create a GZipStream using the specified CompressionMode and the + specified CompressionLevel, and explicitly specify whether the + stream should be left open after Deflation or Inflation. + + + + + + This constructor allows the application to request that the captive stream + remain open after the deflation or inflation occurs. By default, after + Close() is called on the stream, the captive stream is also + closed. In some cases this is not desired, for example if the stream is a + memory stream that will be re-read after compressed data has been written + to it. Specify true for the parameter to + leave the stream open. + + + + As noted in the class documentation, the CompressionMode (Compress + or Decompress) also establishes the "direction" of the stream. A + GZipStream with CompressionMode.Compress works only through + Write(). A GZipStream with CompressionMode.Decompress works only + through Read(). + + + + + + This example shows how to use a GZipStream to compress data. + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(outputFile)) + { + using (Stream compressor = new GZipStream(raw, CompressionMode.Compress, CompressionLevel.BestCompression, true)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + Dim outputFile As String = (fileToCompress & ".compressed") + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(outputFile) + Using compressor As Stream = New GZipStream(raw, CompressionMode.Compress, CompressionLevel.BestCompression, True) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + The stream which will be read or written. + Indicates whether the GZipStream will compress or decompress. + true if the application would like the stream to remain open after inflation/deflation. + A tuning knob to trade speed for effectiveness. + + + + Dispose the stream. + + + + This may or may not result in a Close() call on the captive + stream. See the constructors that have a leaveOpen parameter + for more information. + + + This method may be invoked in two distinct scenarios. If disposing + == true, the method has been called directly or indirectly by a + user's code, for example via the public Dispose() method. In this + case, both managed and unmanaged resources can be referenced and + disposed. If disposing == false, the method has been called by the + runtime from inside the object finalizer and this method should not + reference other objects; in that case only unmanaged resources must + be referenced or disposed. + + + + indicates whether the Dispose method was invoked by user code. + + + + + Flush the stream. + + + + + Read and decompress data from the source stream. + + + + With a GZipStream, decompression is done through reading. + + + + + byte[] working = new byte[WORKING_BUFFER_SIZE]; + using (System.IO.Stream input = System.IO.File.OpenRead(_CompressedFile)) + { + using (Stream decompressor= new Ionic.Zlib.GZipStream(input, CompressionMode.Decompress, true)) + { + using (var output = System.IO.File.Create(_DecompressedFile)) + { + int n; + while ((n= decompressor.Read(working, 0, working.Length)) !=0) + { + output.Write(working, 0, n); + } + } + } + } + + + The buffer into which the decompressed data should be placed. + the offset within that data array to put the first byte read. + the number of bytes to read. + the number of bytes actually read + + + + Calling this method always throws a . + + irrelevant; it will always throw! + irrelevant; it will always throw! + irrelevant! + + + + Calling this method always throws a . + + irrelevant; this method will always throw! + + + + Write data to the stream. + + + + + If you wish to use the GZipStream to compress data while writing, + you can create a GZipStream with CompressionMode.Compress, and a + writable output stream. Then call Write() on that GZipStream, + providing uncompressed data as input. The data sent to the output stream + will be the compressed form of the data written. + + + + A GZipStream can be used for Read() or Write(), but not + both. Writing implies compression. Reading implies decompression. + + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Compress a string into a byte array using GZip. + + + + Uncompress it with . + + + + + + + A string to compress. The string will first be encoded + using UTF8, then compressed. + + + The string in compressed form + + + + Compress a byte array into a new byte array using GZip. + + + + Uncompress it with . + + + + + + + A buffer to compress. + + + The data in compressed form + + + + Uncompress a GZip'ed byte array into a single string. + + + + + + + A buffer containing GZIP-compressed data. + + + The uncompressed string + + + + Uncompress a GZip'ed byte array into a byte array. + + + + + + + A buffer containing data that has been compressed with GZip. + + + The data in uncompressed form + + + + The comment on the GZIP stream. + + + + + The GZIP format allows for each file to optionally have an associated + comment stored with the file. The comment is encoded with the ISO-8859-1 + code page. To include a comment in a GZIP stream you create, set this + property before calling Write() for the first time on the + GZipStream. + + + + When using GZipStream to decompress, you can retrieve this property + after the first call to Read(). If no comment has been set in the + GZIP bytestream, the Comment property will return null + (Nothing in VB). + + + + + + The FileName for the GZIP stream. + + + + + + The GZIP format optionally allows each file to have an associated + filename. When compressing data (through Write()), set this + FileName before calling Write() the first time on the GZipStream. + The actual filename is encoded into the GZIP bytestream with the + ISO-8859-1 code page, according to RFC 1952. It is the application's + responsibility to insure that the FileName can be encoded and decoded + correctly with this code page. + + + + When decompressing (through Read()), you can retrieve this value + any time after the first Read(). In the case where there was no filename + encoded into the GZIP bytestream, the property will return null (Nothing + in VB). + + + + + + The CRC on the GZIP stream. + + + This is used for internal error checking. You probably don't need to look at this property. + + + + + This property sets the flush behavior on the stream. + + + + + The size of the working buffer for the compression codec. + + + + + The working buffer is used for all stream operations. The default size is + 1024 bytes. The minimum size is 128 bytes. You may get better performance + with a larger buffer. Then again, you might not. You would have to test + it. + + + + Set this before the first call to Read() or Write() on the + stream. If you try to set it afterwards, it will throw. + + + + + Returns the total number of bytes input so far. + + + Returns the total number of bytes output so far. + + + + Indicates whether the stream can be read. + + + The return value depends on whether the captive stream supports reading. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value depends on whether the captive stream supports writing. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the total bytes + written out, if used in writing, or the total bytes read in, if used in + reading. The count may refer to compressed bytes or uncompressed bytes, + depending on how you've used the stream. + + + + + A class for compressing streams using the + Deflate algorithm with multiple threads. + + + + + This class performs DEFLATE compression through writing. For + more information on the Deflate algorithm, see IETF RFC 1951, + "DEFLATE Compressed Data Format Specification version 1.3." + + + + This class is similar to , except + that this class is for compression only, and this implementation uses an + approach that employs multiple worker threads to perform the DEFLATE. On + a multi-cpu or multi-core computer, the performance of this class can be + significantly higher than the single-threaded DeflateStream, particularly + for larger streams. How large? Anything over 10mb is a good candidate + for parallel compression. + + + + The tradeoff is that this class uses more memory and more CPU than the + vanilla DeflateStream, and also is less efficient as a compressor. For + large files the size of the compressed data stream can be less than 1% + larger than the size of a compressed data stream from the vanialla + DeflateStream. For smaller files the difference can be larger. The + difference will also be larger if you set the BufferSize to be lower than + the default value. Your mileage may vary. Finally, for small files, the + ParallelDeflateOutputStream can be much slower than the vanilla + DeflateStream, because of the overhead associated to using the thread + pool. + + + + + + + + Create a ParallelDeflateOutputStream. + + + + + This stream compresses data written into it via the DEFLATE + algorithm (see RFC 1951), and writes out the compressed byte stream. + + + + The instance will use the default compression level, the default + buffer sizes and the default number of threads and buffers per + thread. + + + + This class is similar to , + except that this implementation uses an approach that employs + multiple worker threads to perform the DEFLATE. On a multi-cpu or + multi-core computer, the performance of this class can be + significantly higher than the single-threaded DeflateStream, + particularly for larger streams. How large? Anything over 10mb is + a good candidate for parallel compression. + + + + + + + This example shows how to use a ParallelDeflateOutputStream to compress + data. It reads a file, compresses it, and writes the compressed data to + a second, output file. + + + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n= -1; + String outputFile = fileToCompress + ".compressed"; + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(outputFile)) + { + using (Stream compressor = new ParallelDeflateOutputStream(raw)) + { + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Dim outputFile As String = (fileToCompress & ".compressed") + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(outputFile) + Using compressor As Stream = New ParallelDeflateOutputStream(raw) + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + The stream to which compressed data will be written. + + + + Create a ParallelDeflateOutputStream using the specified CompressionLevel. + + + See the + constructor for example code. + + The stream to which compressed data will be written. + A tuning knob to trade speed for effectiveness. + + + + Create a ParallelDeflateOutputStream and specify whether to leave the captive stream open + when the ParallelDeflateOutputStream is closed. + + + See the + constructor for example code. + + The stream to which compressed data will be written. + + true if the application would like the stream to remain open after inflation/deflation. + + + + + Create a ParallelDeflateOutputStream and specify whether to leave the captive stream open + when the ParallelDeflateOutputStream is closed. + + + See the + constructor for example code. + + The stream to which compressed data will be written. + A tuning knob to trade speed for effectiveness. + + true if the application would like the stream to remain open after inflation/deflation. + + + + + Create a ParallelDeflateOutputStream using the specified + CompressionLevel and CompressionStrategy, and specifying whether to + leave the captive stream open when the ParallelDeflateOutputStream is + closed. + + + See the + constructor for example code. + + The stream to which compressed data will be written. + A tuning knob to trade speed for effectiveness. + + By tweaking this parameter, you may be able to optimize the compression for + data with particular characteristics. + + + true if the application would like the stream to remain open after inflation/deflation. + + + + + Write data to the stream. + + + + + + To use the ParallelDeflateOutputStream to compress data, create a + ParallelDeflateOutputStream with CompressionMode.Compress, passing a + writable output stream. Then call Write() on that + ParallelDeflateOutputStream, providing uncompressed data as input. The + data sent to the output stream will be the compressed form of the data + written. + + + + To decompress data, use the class. + + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Flush the stream. + + + + + Close the stream. + + + You must call Close on the stream to guarantee that all of the data written in has + been compressed, and the compressed data has been written out. + + + + Dispose the object + + + Because ParallelDeflateOutputStream is IDisposable, the + application must call this method when finished using the instance. + + + This method is generally called implicitly upon exit from + a using scope in C# (Using in VB). + + + + + The Dispose method + + indicates whether the Dispose method was invoked by user code. + + + + + Resets the stream for use with another stream. + + + Because the ParallelDeflateOutputStream is expensive to create, it + has been designed so that it can be recycled and re-used. You have + to call Close() on the stream first, then you can call Reset() on + it, to use it again on another stream. + + + + The new output stream for this era. + + + + + ParallelDeflateOutputStream deflater = null; + foreach (var inputFile in listOfFiles) + { + string outputFile = inputFile + ".compressed"; + using (System.IO.Stream input = System.IO.File.OpenRead(inputFile)) + { + using (var outStream = System.IO.File.Create(outputFile)) + { + if (deflater == null) + deflater = new ParallelDeflateOutputStream(outStream, + CompressionLevel.Best, + CompressionStrategy.Default, + true); + deflater.Reset(outStream); + + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + deflater.Write(buffer, 0, n); + } + } + } + } + + + + + + This method always throws a NotSupportedException. + + + The buffer into which data would be read, IF THIS METHOD + ACTUALLY DID ANYTHING. + + + The offset within that data array at which to insert the + data that is read, IF THIS METHOD ACTUALLY DID + ANYTHING. + + + The number of bytes to write, IF THIS METHOD ACTUALLY DID + ANYTHING. + + nothing. + + + + This method always throws a NotSupportedException. + + + The offset to seek to.... + IF THIS METHOD ACTUALLY DID ANYTHING. + + + The reference specifying how to apply the offset.... IF + THIS METHOD ACTUALLY DID ANYTHING. + + nothing. It always throws. + + + + This method always throws a NotSupportedException. + + + The new value for the stream length.... IF + THIS METHOD ACTUALLY DID ANYTHING. + + + + + The ZLIB strategy to be used during compression. + + + + + + The maximum number of buffer pairs to use. + + + + + This property sets an upper limit on the number of memory buffer + pairs to create. The implementation of this stream allocates + multiple buffers to facilitate parallel compression. As each buffer + fills up, this stream uses + ThreadPool.QueueUserWorkItem() + to compress those buffers in a background threadpool thread. After a + buffer is compressed, it is re-ordered and written to the output + stream. + + + + A higher number of buffer pairs enables a higher degree of + parallelism, which tends to increase the speed of compression on + multi-cpu computers. On the other hand, a higher number of buffer + pairs also implies a larger memory consumption, more active worker + threads, and a higher cpu utilization for any compression. This + property enables the application to limit its memory consumption and + CPU utilization behavior depending on requirements. + + + + For each compression "task" that occurs in parallel, there are 2 + buffers allocated: one for input and one for output. This property + sets a limit for the number of pairs. The total amount of storage + space allocated for buffering will then be (N*S*2), where N is the + number of buffer pairs, S is the size of each buffer (). By default, DotNetZip allocates 4 buffer + pairs per CPU core, so if your machine has 4 cores, and you retain + the default buffer size of 128k, then the + ParallelDeflateOutputStream will use 4 * 4 * 2 * 128kb of buffer + memory in total, or 4mb, in blocks of 128kb. If you then set this + property to 8, then the number will be 8 * 2 * 128kb of buffer + memory, or 2mb. + + + + CPU utilization will also go up with additional buffers, because a + larger number of buffer pairs allows a larger number of background + threads to compress in parallel. If you find that parallel + compression is consuming too much memory or CPU, you can adjust this + value downward. + + + + The default value is 16. Different values may deliver better or + worse results, depending on your priorities and the dynamic + performance characteristics of your storage and compute resources. + + + + This property is not the number of buffer pairs to use; it is an + upper limit. An illustration: Suppose you have an application that + uses the default value of this property (which is 16), and it runs + on a machine with 2 CPU cores. In that case, DotNetZip will allocate + 4 buffer pairs per CPU core, for a total of 8 pairs. The upper + limit specified by this property has no effect. + + + + The application can set this value at any time, but it is effective + only before the first call to Write(), which is when the buffers are + allocated. + + + + + + The size of the buffers used by the compressor threads. + + + + + The default buffer size is 128k. The application can set this value + at any time, but it is effective only before the first Write(). + + + + Larger buffer sizes implies larger memory consumption but allows + more efficient compression. Using smaller buffer sizes consumes less + memory but may result in less effective compression. For example, + using the default buffer size of 128k, the compression delivered is + within 1% of the compression delivered by the single-threaded . On the other hand, using a + BufferSize of 8k can result in a compressed data stream that is 5% + larger than that delivered by the single-threaded + DeflateStream. Excessively small buffer sizes can also cause + the speed of the ParallelDeflateOutputStream to drop, because of + larger thread scheduling overhead dealing with many many small + buffers. + + + + The total amount of storage space allocated for buffering will be + (N*S*2), where N is the number of buffer pairs, and S is the size of + each buffer (this property). There are 2 buffers used by the + compressor, one for input and one for output. By default, DotNetZip + allocates 4 buffer pairs per CPU core, so if your machine has 4 + cores, then the number of buffer pairs used will be 16. If you + accept the default value of this property, 128k, then the + ParallelDeflateOutputStream will use 16 * 2 * 128kb of buffer memory + in total, or 4mb, in blocks of 128kb. If you set this property to + 64kb, then the number will be 16 * 2 * 64kb of buffer memory, or + 2mb. + + + + + + + The CRC32 for the data that was written out, prior to compression. + + + This value is meaningful only after a call to Close(). + + + + + The total number of uncompressed bytes processed by the ParallelDeflateOutputStream. + + + This value is meaningful only after a call to Close(). + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream supports Read operations. + + + Always returns false. + + + + + Indicates whether the stream supports Write operations. + + + Returns true if the provided stream is writable. + + + + + Reading this property always throws a NotSupportedException. + + + + + Returns the current position of the output stream. + + + + Because the output gets written by a background thread, + the value may change asynchronously. Setting this + property always throws a NotSupportedException. + + + + + + Map from a distance to a distance code. + + + No side effects. _dist_code[256] and _dist_code[257] are never used. + + + + + Describes how to flush the current deflate operation. + + + The different FlushType values are useful when using a Deflate in a streaming application. + + + + No flush at all. + + + Closes the current block, but doesn't flush it to + the output. Used internally only in hypothetical + scenarios. This was supposed to be removed by Zlib, but it is + still in use in some edge cases. + + + + + Use this during compression to specify that all pending output should be + flushed to the output buffer and the output should be aligned on a byte + boundary. You might use this in a streaming communication scenario, so that + the decompressor can get all input data available so far. When using this + with a ZlibCodec, AvailableBytesIn will be zero after the call if + enough output space has been provided before the call. Flushing will + degrade compression and so it should be used only when necessary. + + + + + Use this during compression to specify that all output should be flushed, as + with FlushType.Sync, but also, the compression state should be reset + so that decompression can restart from this point if previous compressed + data has been damaged or if random access is desired. Using + FlushType.Full too often can significantly degrade the compression. + + + + Signals the end of the compression/decompression stream. + + + + The compression level to be used when using a DeflateStream or ZlibStream with CompressionMode.Compress. + + + + + None means that the data will be simply stored, with no change at all. + If you are producing ZIPs for use on Mac OSX, be aware that archives produced with CompressionLevel.None + cannot be opened with the default zip reader. Use a different CompressionLevel. + + + + + Same as None. + + + + + The fastest but least effective compression. + + + + + A synonym for BestSpeed. + + + + + A little slower, but better, than level 1. + + + + + A little slower, but better, than level 2. + + + + + A little slower, but better, than level 3. + + + + + A little slower than level 4, but with better compression. + + + + + The default compression level, with a good balance of speed and compression efficiency. + + + + + A synonym for Default. + + + + + Pretty good compression! + + + + + Better compression than Level7! + + + + + The "best" compression, where best means greatest reduction in size of the input data stream. + This is also the slowest compression. + + + + + A synonym for BestCompression. + + + + + Describes options for how the compression algorithm is executed. Different strategies + work better on different sorts of data. The strategy parameter can affect the compression + ratio and the speed of compression but not the correctness of the compresssion. + + + + + The default strategy is probably the best for normal data. + + + + + The Filtered strategy is intended to be used most effectively with data produced by a + filter or predictor. By this definition, filtered data consists mostly of small + values with a somewhat random distribution. In this case, the compression algorithm + is tuned to compress them better. The effect of Filtered is to force more Huffman + coding and less string matching; it is a half-step between Default and HuffmanOnly. + + + + + Using HuffmanOnly will force the compressor to do Huffman encoding only, with no + string matching. + + + + + An enum to specify the direction of transcoding - whether to compress or decompress. + + + + + Used to specify that the stream should compress the data. + + + + + Used to specify that the stream should decompress the data. + + + + + A general purpose exception class for exceptions in the Zlib library. + + + + + The ZlibException class captures exception information generated + by the Zlib library. + + + + + This ctor collects a message attached to the exception. + + the message for the exception. + + + + Performs an unsigned bitwise right shift with the specified number + + Number to operate on + Ammount of bits to shift + The resulting number from the shift operation + + + + Reads a number of characters from the current source TextReader and writes + the data to the target array at the specified index. + + + The source TextReader to read from + Contains the array of characteres read from the source TextReader. + The starting index of the target array. + The maximum number of characters to read from the source TextReader. + + + The number of characters read. The number will be less than or equal to + count depending on the data available in the source TextReader. Returns -1 + if the end of the stream is reached. + + + + + Computes an Adler-32 checksum. + + + The Adler checksum is similar to a CRC checksum, but faster to compute, though less + reliable. It is used in producing RFC1950 compressed streams. The Adler checksum + is a required part of the "ZLIB" standard. Applications will almost never need to + use this class directly. + + + + + + + Calculates the Adler32 checksum. + + + + This is used within ZLIB. You probably don't need to use this directly. + + + + To compute an Adler32 checksum on a byte array: + + var adler = Adler.Adler32(0, null, 0, 0); + adler = Adler.Adler32(adler, buffer, index, length); + + + + + + Encoder and Decoder for ZLIB and DEFLATE (IETF RFC1950 and RFC1951). + + + + This class compresses and decompresses data according to the Deflate algorithm + and optionally, the ZLIB format, as documented in RFC 1950 - ZLIB and RFC 1951 - DEFLATE. + + + + + The buffer from which data is taken. + + + + + An index into the InputBuffer array, indicating where to start reading. + + + + + The number of bytes available in the InputBuffer, starting at NextIn. + + + Generally you should set this to InputBuffer.Length before the first Inflate() or Deflate() call. + The class will update this number as calls to Inflate/Deflate are made. + + + + + Total number of bytes read so far, through all calls to Inflate()/Deflate(). + + + + + Buffer to store output data. + + + + + An index into the OutputBuffer array, indicating where to start writing. + + + + + The number of bytes available in the OutputBuffer, starting at NextOut. + + + Generally you should set this to OutputBuffer.Length before the first Inflate() or Deflate() call. + The class will update this number as calls to Inflate/Deflate are made. + + + + + Total number of bytes written to the output so far, through all calls to Inflate()/Deflate(). + + + + + used for diagnostics, when something goes wrong! + + + + + The compression level to use in this codec. Useful only in compression mode. + + + + + The number of Window Bits to use. + + + This gauges the size of the sliding window, and hence the + compression effectiveness as well as memory consumption. It's best to just leave this + setting alone if you don't know what it is. The maximum value is 15 bits, which implies + a 32k window. + + + + + The compression strategy to use. + + + This is only effective in compression. The theory offered by ZLIB is that different + strategies could potentially produce significant differences in compression behavior + for different data sets. Unfortunately I don't have any good recommendations for how + to set it differently. When I tested changing the strategy I got minimally different + compression performance. It's best to leave this property alone if you don't have a + good feel for it. Or, you may want to produce a test harness that runs through the + different strategy options and evaluates them on different file types. If you do that, + let me know your results. + + + + + Create a ZlibCodec. + + + If you use this default constructor, you will later have to explicitly call + InitializeInflate() or InitializeDeflate() before using the ZlibCodec to compress + or decompress. + + + + + Create a ZlibCodec that either compresses or decompresses. + + + Indicates whether the codec should compress (deflate) or decompress (inflate). + + + + + Initialize the inflation state. + + + It is not necessary to call this before using the ZlibCodec to inflate data; + It is implicitly called when you call the constructor. + + Z_OK if everything goes well. + + + + Initialize the inflation state with an explicit flag to + govern the handling of RFC1950 header bytes. + + + + By default, the ZLIB header defined in RFC 1950 is expected. If + you want to read a zlib stream you should specify true for + expectRfc1950Header. If you have a deflate stream, you will want to specify + false. It is only necessary to invoke this initializer explicitly if you + want to specify false. + + + whether to expect an RFC1950 header byte + pair when reading the stream of data to be inflated. + + Z_OK if everything goes well. + + + + Initialize the ZlibCodec for inflation, with the specified number of window bits. + + The number of window bits to use. If you need to ask what that is, + then you shouldn't be calling this initializer. + Z_OK if all goes well. + + + + Initialize the inflation state with an explicit flag to govern the handling of + RFC1950 header bytes. + + + + If you want to read a zlib stream you should specify true for + expectRfc1950Header. In this case, the library will expect to find a ZLIB + header, as defined in RFC + 1950, in the compressed stream. If you will be reading a DEFLATE or + GZIP stream, which does not have such a header, you will want to specify + false. + + + whether to expect an RFC1950 header byte pair when reading + the stream of data to be inflated. + The number of window bits to use. If you need to ask what that is, + then you shouldn't be calling this initializer. + Z_OK if everything goes well. + + + + Inflate the data in the InputBuffer, placing the result in the OutputBuffer. + + + You must have set InputBuffer and OutputBuffer, NextIn and NextOut, and AvailableBytesIn and + AvailableBytesOut before calling this method. + + + + private void InflateBuffer() + { + int bufferSize = 1024; + byte[] buffer = new byte[bufferSize]; + ZlibCodec decompressor = new ZlibCodec(); + + Console.WriteLine("\n============================================"); + Console.WriteLine("Size of Buffer to Inflate: {0} bytes.", CompressedBytes.Length); + MemoryStream ms = new MemoryStream(DecompressedBytes); + + int rc = decompressor.InitializeInflate(); + + decompressor.InputBuffer = CompressedBytes; + decompressor.NextIn = 0; + decompressor.AvailableBytesIn = CompressedBytes.Length; + + decompressor.OutputBuffer = buffer; + + // pass 1: inflate + do + { + decompressor.NextOut = 0; + decompressor.AvailableBytesOut = buffer.Length; + rc = decompressor.Inflate(FlushType.None); + + if (rc != ZlibConstants.Z_OK && rc != ZlibConstants.Z_STREAM_END) + throw new Exception("inflating: " + decompressor.Message); + + ms.Write(decompressor.OutputBuffer, 0, buffer.Length - decompressor.AvailableBytesOut); + } + while (decompressor.AvailableBytesIn > 0 || decompressor.AvailableBytesOut == 0); + + // pass 2: finish and flush + do + { + decompressor.NextOut = 0; + decompressor.AvailableBytesOut = buffer.Length; + rc = decompressor.Inflate(FlushType.Finish); + + if (rc != ZlibConstants.Z_STREAM_END && rc != ZlibConstants.Z_OK) + throw new Exception("inflating: " + decompressor.Message); + + if (buffer.Length - decompressor.AvailableBytesOut > 0) + ms.Write(buffer, 0, buffer.Length - decompressor.AvailableBytesOut); + } + while (decompressor.AvailableBytesIn > 0 || decompressor.AvailableBytesOut == 0); + + decompressor.EndInflate(); + } + + + + The flush to use when inflating. + Z_OK if everything goes well. + + + + Ends an inflation session. + + + Call this after successively calling Inflate(). This will cause all buffers to be flushed. + After calling this you cannot call Inflate() without a intervening call to one of the + InitializeInflate() overloads. + + Z_OK if everything goes well. + + + + I don't know what this does! + + Z_OK if everything goes well. + + + + Initialize the ZlibCodec for deflation operation. + + + The codec will use the MAX window bits and the default level of compression. + + + + int bufferSize = 40000; + byte[] CompressedBytes = new byte[bufferSize]; + byte[] DecompressedBytes = new byte[bufferSize]; + + ZlibCodec compressor = new ZlibCodec(); + + compressor.InitializeDeflate(CompressionLevel.Default); + + compressor.InputBuffer = System.Text.ASCIIEncoding.ASCII.GetBytes(TextToCompress); + compressor.NextIn = 0; + compressor.AvailableBytesIn = compressor.InputBuffer.Length; + + compressor.OutputBuffer = CompressedBytes; + compressor.NextOut = 0; + compressor.AvailableBytesOut = CompressedBytes.Length; + + while (compressor.TotalBytesIn != TextToCompress.Length && compressor.TotalBytesOut < bufferSize) + { + compressor.Deflate(FlushType.None); + } + + while (true) + { + int rc= compressor.Deflate(FlushType.Finish); + if (rc == ZlibConstants.Z_STREAM_END) break; + } + + compressor.EndDeflate(); + + + + Z_OK if all goes well. You generally don't need to check the return code. + + + + Initialize the ZlibCodec for deflation operation, using the specified CompressionLevel. + + + The codec will use the maximum window bits (15) and the specified + CompressionLevel. It will emit a ZLIB stream as it compresses. + + The compression level for the codec. + Z_OK if all goes well. + + + + Initialize the ZlibCodec for deflation operation, using the specified CompressionLevel, + and the explicit flag governing whether to emit an RFC1950 header byte pair. + + + The codec will use the maximum window bits (15) and the specified CompressionLevel. + If you want to generate a zlib stream, you should specify true for + wantRfc1950Header. In this case, the library will emit a ZLIB + header, as defined in RFC + 1950, in the compressed stream. + + The compression level for the codec. + whether to emit an initial RFC1950 byte pair in the compressed stream. + Z_OK if all goes well. + + + + Initialize the ZlibCodec for deflation operation, using the specified CompressionLevel, + and the specified number of window bits. + + + The codec will use the specified number of window bits and the specified CompressionLevel. + + The compression level for the codec. + the number of window bits to use. If you don't know what this means, don't use this method. + Z_OK if all goes well. + + + + Initialize the ZlibCodec for deflation operation, using the specified + CompressionLevel, the specified number of window bits, and the explicit flag + governing whether to emit an RFC1950 header byte pair. + + + The compression level for the codec. + whether to emit an initial RFC1950 byte pair in the compressed stream. + the number of window bits to use. If you don't know what this means, don't use this method. + Z_OK if all goes well. + + + + Deflate one batch of data. + + + You must have set InputBuffer and OutputBuffer before calling this method. + + + + private void DeflateBuffer(CompressionLevel level) + { + int bufferSize = 1024; + byte[] buffer = new byte[bufferSize]; + ZlibCodec compressor = new ZlibCodec(); + + Console.WriteLine("\n============================================"); + Console.WriteLine("Size of Buffer to Deflate: {0} bytes.", UncompressedBytes.Length); + MemoryStream ms = new MemoryStream(); + + int rc = compressor.InitializeDeflate(level); + + compressor.InputBuffer = UncompressedBytes; + compressor.NextIn = 0; + compressor.AvailableBytesIn = UncompressedBytes.Length; + + compressor.OutputBuffer = buffer; + + // pass 1: deflate + do + { + compressor.NextOut = 0; + compressor.AvailableBytesOut = buffer.Length; + rc = compressor.Deflate(FlushType.None); + + if (rc != ZlibConstants.Z_OK && rc != ZlibConstants.Z_STREAM_END) + throw new Exception("deflating: " + compressor.Message); + + ms.Write(compressor.OutputBuffer, 0, buffer.Length - compressor.AvailableBytesOut); + } + while (compressor.AvailableBytesIn > 0 || compressor.AvailableBytesOut == 0); + + // pass 2: finish and flush + do + { + compressor.NextOut = 0; + compressor.AvailableBytesOut = buffer.Length; + rc = compressor.Deflate(FlushType.Finish); + + if (rc != ZlibConstants.Z_STREAM_END && rc != ZlibConstants.Z_OK) + throw new Exception("deflating: " + compressor.Message); + + if (buffer.Length - compressor.AvailableBytesOut > 0) + ms.Write(buffer, 0, buffer.Length - compressor.AvailableBytesOut); + } + while (compressor.AvailableBytesIn > 0 || compressor.AvailableBytesOut == 0); + + compressor.EndDeflate(); + + ms.Seek(0, SeekOrigin.Begin); + CompressedBytes = new byte[compressor.TotalBytesOut]; + ms.Read(CompressedBytes, 0, CompressedBytes.Length); + } + + + whether to flush all data as you deflate. Generally you will want to + use Z_NO_FLUSH here, in a series of calls to Deflate(), and then call EndDeflate() to + flush everything. + + Z_OK if all goes well. + + + + End a deflation session. + + + Call this after making a series of one or more calls to Deflate(). All buffers are flushed. + + Z_OK if all goes well. + + + + Reset a codec for another deflation session. + + + Call this to reset the deflation state. For example if a thread is deflating + non-consecutive blocks, you can call Reset() after the Deflate(Sync) of the first + block and before the next Deflate(None) of the second block. + + Z_OK if all goes well. + + + + Set the CompressionStrategy and CompressionLevel for a deflation session. + + the level of compression to use. + the strategy to use for compression. + Z_OK if all goes well. + + + + Set the dictionary to be used for either Inflation or Deflation. + + The dictionary bytes to use. + Z_OK if all goes well. + + + + The Adler32 checksum on the data transferred through the codec so far. You probably don't need to look at this. + + + + + A bunch of constants used in the Zlib interface. + + + + + The maximum number of window bits for the Deflate algorithm. + + + + + The default number of window bits for the Deflate algorithm. + + + + + indicates everything is A-OK + + + + + Indicates that the last operation reached the end of the stream. + + + + + The operation ended in need of a dictionary. + + + + + There was an error with the stream - not enough data, not open and readable, etc. + + + + + There was an error with the data - not enough data, bad data, etc. + + + + + There was an error with the working buffer. + + + + + The size of the working buffer used in the ZlibCodec class. Defaults to 8192 bytes. + + + + + The minimum size of the working buffer used in the ZlibCodec class. Currently it is 128 bytes. + + + + + Represents a Zlib stream for compression or decompression. + + + + + The ZlibStream is a Decorator on a . It adds ZLIB compression or decompression to any + stream. + + + Using this stream, applications can compress or decompress data via + stream Read() and Write() operations. Either compresssion or + decompression can occur through either reading or writing. The compression + format used is ZLIB, which is documented in IETF RFC 1950, "ZLIB Compressed + Data Format Specification version 3.3". This implementation of ZLIB always uses + DEFLATE as the compression method. (see IETF RFC 1951, "DEFLATE + Compressed Data Format Specification version 1.3.") + + + The ZLIB format allows for varying compression methods, window sizes, and dictionaries. + This implementation always uses the DEFLATE compression method, a preset dictionary, + and 15 window bits by default. + + + + This class is similar to , except that it adds the + RFC1950 header and trailer bytes to a compressed stream when compressing, or expects + the RFC1950 header and trailer bytes when decompressing. It is also similar to the + . + + + + + + + + Create a ZlibStream using the specified CompressionMode. + + + + + When mode is CompressionMode.Compress, the ZlibStream + will use the default compression level. The "captive" stream will be + closed when the ZlibStream is closed. + + + + + + This example uses a ZlibStream to compress a file, and writes the + compressed data to another file. + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(fileToCompress + ".zlib")) + { + using (Stream compressor = new ZlibStream(raw, CompressionMode.Compress)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(fileToCompress & ".zlib") + Using compressor As Stream = New ZlibStream(raw, CompressionMode.Compress) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + + The stream which will be read or written. + Indicates whether the ZlibStream will compress or decompress. + + + + Create a ZlibStream using the specified CompressionMode and + the specified CompressionLevel. + + + + + + When mode is CompressionMode.Decompress, the level parameter is ignored. + The "captive" stream will be closed when the ZlibStream is closed. + + + + + + This example uses a ZlibStream to compress data from a file, and writes the + compressed data to another file. + + + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (var raw = System.IO.File.Create(fileToCompress + ".zlib")) + { + using (Stream compressor = new ZlibStream(raw, + CompressionMode.Compress, + CompressionLevel.BestCompression)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + } + + + + Using input As Stream = File.OpenRead(fileToCompress) + Using raw As FileStream = File.Create(fileToCompress & ".zlib") + Using compressor As Stream = New ZlibStream(raw, CompressionMode.Compress, CompressionLevel.BestCompression) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + End Using + + + + The stream to be read or written while deflating or inflating. + Indicates whether the ZlibStream will compress or decompress. + A tuning knob to trade speed for effectiveness. + + + + Create a ZlibStream using the specified CompressionMode, and + explicitly specify whether the captive stream should be left open after + Deflation or Inflation. + + + + + + When mode is CompressionMode.Compress, the ZlibStream will use + the default compression level. + + + + This constructor allows the application to request that the captive stream + remain open after the deflation or inflation occurs. By default, after + Close() is called on the stream, the captive stream is also + closed. In some cases this is not desired, for example if the stream is a + that will be re-read after + compression. Specify true for the parameter to leave the stream + open. + + + + See the other overloads of this constructor for example code. + + + + + The stream which will be read or written. This is called the + "captive" stream in other places in this documentation. + Indicates whether the ZlibStream will compress or decompress. + true if the application would like the stream to remain + open after inflation/deflation. + + + + Create a ZlibStream using the specified CompressionMode + and the specified CompressionLevel, and explicitly specify + whether the stream should be left open after Deflation or Inflation. + + + + + + This constructor allows the application to request that the captive + stream remain open after the deflation or inflation occurs. By + default, after Close() is called on the stream, the captive + stream is also closed. In some cases this is not desired, for example + if the stream is a that will be + re-read after compression. Specify true for the parameter to leave the stream open. + + + + When mode is CompressionMode.Decompress, the level parameter is + ignored. + + + + + + + This example shows how to use a ZlibStream to compress the data from a file, + and store the result into another file. The filestream remains open to allow + additional data to be written to it. + + + using (var output = System.IO.File.Create(fileToCompress + ".zlib")) + { + using (System.IO.Stream input = System.IO.File.OpenRead(fileToCompress)) + { + using (Stream compressor = new ZlibStream(output, CompressionMode.Compress, CompressionLevel.BestCompression, true)) + { + byte[] buffer = new byte[WORKING_BUFFER_SIZE]; + int n; + while ((n= input.Read(buffer, 0, buffer.Length)) != 0) + { + compressor.Write(buffer, 0, n); + } + } + } + // can write additional data to the output stream here + } + + + Using output As FileStream = File.Create(fileToCompress & ".zlib") + Using input As Stream = File.OpenRead(fileToCompress) + Using compressor As Stream = New ZlibStream(output, CompressionMode.Compress, CompressionLevel.BestCompression, True) + Dim buffer As Byte() = New Byte(4096) {} + Dim n As Integer = -1 + Do While (n <> 0) + If (n > 0) Then + compressor.Write(buffer, 0, n) + End If + n = input.Read(buffer, 0, buffer.Length) + Loop + End Using + End Using + ' can write additional data to the output stream here. + End Using + + + + The stream which will be read or written. + + Indicates whether the ZlibStream will compress or decompress. + + + true if the application would like the stream to remain open after + inflation/deflation. + + + + A tuning knob to trade speed for effectiveness. This parameter is + effective only when mode is CompressionMode.Compress. + + + + + Dispose the stream. + + + + This may or may not result in a Close() call on the captive + stream. See the constructors that have a leaveOpen parameter + for more information. + + + This method may be invoked in two distinct scenarios. If disposing + == true, the method has been called directly or indirectly by a + user's code, for example via the public Dispose() method. In this + case, both managed and unmanaged resources can be referenced and + disposed. If disposing == false, the method has been called by the + runtime from inside the object finalizer and this method should not + reference other objects; in that case only unmanaged resources must + be referenced or disposed. + + + + indicates whether the Dispose method was invoked by user code. + + + + + Flush the stream. + + + + + Read data from the stream. + + + + + + If you wish to use the ZlibStream to compress data while reading, + you can create a ZlibStream with CompressionMode.Compress, + providing an uncompressed data stream. Then call Read() on that + ZlibStream, and the data read will be compressed. If you wish to + use the ZlibStream to decompress data while reading, you can create + a ZlibStream with CompressionMode.Decompress, providing a + readable compressed data stream. Then call Read() on that + ZlibStream, and the data will be decompressed as it is read. + + + + A ZlibStream can be used for Read() or Write(), but + not both. + + + + + + The buffer into which the read data should be placed. + + + the offset within that data array to put the first byte read. + + the number of bytes to read. + + the number of bytes read + + + + Calling this method always throws a . + + + The offset to seek to.... + IF THIS METHOD ACTUALLY DID ANYTHING. + + + The reference specifying how to apply the offset.... IF + THIS METHOD ACTUALLY DID ANYTHING. + + + nothing. This method always throws. + + + + Calling this method always throws a . + + + The new value for the stream length.... IF + THIS METHOD ACTUALLY DID ANYTHING. + + + + + Write data to the stream. + + + + + + If you wish to use the ZlibStream to compress data while writing, + you can create a ZlibStream with CompressionMode.Compress, + and a writable output stream. Then call Write() on that + ZlibStream, providing uncompressed data as input. The data sent to + the output stream will be the compressed form of the data written. If you + wish to use the ZlibStream to decompress data while writing, you + can create a ZlibStream with CompressionMode.Decompress, and a + writable output stream. Then call Write() on that stream, + providing previously compressed data. The data sent to the output stream + will be the decompressed form of the data written. + + + + A ZlibStream can be used for Read() or Write(), but not both. + + + The buffer holding data to write to the stream. + the offset within that data array to find the first byte to write. + the number of bytes to write. + + + + Compress a string into a byte array using ZLIB. + + + + Uncompress it with . + + + + + + + + A string to compress. The string will first be encoded + using UTF8, then compressed. + + + The string in compressed form + + + + Compress a byte array into a new byte array using ZLIB. + + + + Uncompress it with . + + + + + + + A buffer to compress. + + + The data in compressed form + + + + Uncompress a ZLIB-compressed byte array into a single string. + + + + + + + A buffer containing ZLIB-compressed data. + + + The uncompressed string + + + + Uncompress a ZLIB-compressed byte array into a byte array. + + + + + + + A buffer containing ZLIB-compressed data. + + + The data in uncompressed form + + + + This property sets the flush behavior on the stream. + Sorry, though, not sure exactly how to describe all the various settings. + + + + + The size of the working buffer for the compression codec. + + + + + The working buffer is used for all stream operations. The default size is + 1024 bytes. The minimum size is 128 bytes. You may get better performance + with a larger buffer. Then again, you might not. You would have to test + it. + + + + Set this before the first call to Read() or Write() on the + stream. If you try to set it afterwards, it will throw. + + + + + Returns the total number of bytes input so far. + + + Returns the total number of bytes output so far. + + + + Indicates whether the stream can be read. + + + The return value depends on whether the captive stream supports reading. + + + + + Indicates whether the stream supports Seek operations. + + + Always returns false. + + + + + Indicates whether the stream can be written. + + + The return value depends on whether the captive stream supports writing. + + + + + Reading this property always throws a . + + + + + The position of the stream pointer. + + + + Setting this property always throws a . Reading will return the total bytes + written out, if used in writing, or the total bytes read in, if used in + reading. The count may refer to compressed bytes or uncompressed bytes, + depending on how you've used the stream. + + + + + Computes a CRC-32. The CRC-32 algorithm is parameterized - you + can set the polynomial and enable or disable bit + reversal. This can be used for GZIP, BZip2, or ZIP. + + + This type is used internally by DotNetZip; it is generally not used + directly by applications wishing to create, read, or manipulate zip + archive files. + + + + + Returns the CRC32 for the specified stream. + + The stream over which to calculate the CRC32 + the CRC32 calculation + + + + Returns the CRC32 for the specified stream, and writes the input into the + output stream. + + The stream over which to calculate the CRC32 + The stream into which to deflate the input + the CRC32 calculation + + + + Get the CRC32 for the given (word,byte) combo. This is a + computation defined by PKzip for PKZIP 2.0 (weak) encryption. + + The word to start with. + The byte to combine it with. + The CRC-ized result. + + + + Update the value for the running CRC32 using the given block of bytes. + This is useful when using the CRC32() class in a Stream. + + block of bytes to slurp + starting point in the block + how many bytes within the block to slurp + + + + Process one byte in the CRC. + + the byte to include into the CRC . + + + + Process a run of N identical bytes into the CRC. + + + + This method serves as an optimization for updating the CRC when a + run of identical bytes is found. Rather than passing in a buffer of + length n, containing all identical bytes b, this method accepts the + byte value and the length of the (virtual) buffer - the length of + the run. + + + the byte to include into the CRC. + the number of times that byte should be repeated. + + + + Combines the given CRC32 value with the current running total. + + + This is useful when using a divide-and-conquer approach to + calculating a CRC. Multiple threads can each calculate a + CRC32 on a segment of the data, and then combine the + individual CRC32 values at the end. + + the crc value to be combined with this one + the length of data the CRC value was calculated on + + + + Create an instance of the CRC32 class using the default settings: no + bit reversal, and a polynomial of 0xEDB88320. + + + + + Create an instance of the CRC32 class, specifying whether to reverse + data bits or not. + + + specify true if the instance should reverse data bits. + + + + In the CRC-32 used by BZip2, the bits are reversed. Therefore if you + want a CRC32 with compatibility with BZip2, you should pass true + here. In the CRC-32 used by GZIP and PKZIP, the bits are not + reversed; Therefore if you want a CRC32 with compatibility with + those, you should pass false. + + + + + + Create an instance of the CRC32 class, specifying the polynomial and + whether to reverse data bits or not. + + + The polynomial to use for the CRC, expressed in the reversed (LSB) + format: the highest ordered bit in the polynomial value is the + coefficient of the 0th power; the second-highest order bit is the + coefficient of the 1 power, and so on. Expressed this way, the + polynomial for the CRC-32C used in IEEE 802.3, is 0xEDB88320. + + + specify true if the instance should reverse data bits. + + + + + In the CRC-32 used by BZip2, the bits are reversed. Therefore if you + want a CRC32 with compatibility with BZip2, you should pass true + here for the reverseBits parameter. In the CRC-32 used by + GZIP and PKZIP, the bits are not reversed; Therefore if you want a + CRC32 with compatibility with those, you should pass false for the + reverseBits parameter. + + + + + + Reset the CRC-32 class - clear the CRC "remainder register." + + + + Use this when employing a single instance of this class to compute + multiple, distinct CRCs on multiple, distinct data blocks. + + + + + + Indicates the total number of bytes applied to the CRC. + + + + + Indicates the current CRC for all blocks slurped in. + + + + + A Stream that calculates a CRC32 (a checksum) on all bytes read, + or on all bytes written. + + + + + This class can be used to verify the CRC of a ZipEntry when + reading from a stream, or to calculate a CRC when writing to a + stream. The stream should be used to either read, or write, but + not both. If you intermix reads and writes, the results are not + defined. + + + + This class is intended primarily for use internally by the + DotNetZip library. + + + + + + The default constructor. + + + + Instances returned from this constructor will leave the underlying + stream open upon Close(). The stream uses the default CRC32 + algorithm, which implies a polynomial of 0xEDB88320. + + + The underlying stream + + + + The constructor allows the caller to specify how to handle the + underlying stream at close. + + + + The stream uses the default CRC32 algorithm, which implies a + polynomial of 0xEDB88320. + + + The underlying stream + true to leave the underlying stream + open upon close of the CrcCalculatorStream; false otherwise. + + + + A constructor allowing the specification of the length of the stream + to read. + + + + The stream uses the default CRC32 algorithm, which implies a + polynomial of 0xEDB88320. + + + Instances returned from this constructor will leave the underlying + stream open upon Close(). + + + The underlying stream + The length of the stream to slurp + + + + A constructor allowing the specification of the length of the stream + to read, as well as whether to keep the underlying stream open upon + Close(). + + + + The stream uses the default CRC32 algorithm, which implies a + polynomial of 0xEDB88320. + + + The underlying stream + The length of the stream to slurp + true to leave the underlying stream + open upon close of the CrcCalculatorStream; false otherwise. + + + + A constructor allowing the specification of the length of the stream + to read, as well as whether to keep the underlying stream open upon + Close(), and the CRC32 instance to use. + + + + The stream uses the specified CRC32 instance, which allows the + application to specify how the CRC gets calculated. + + + The underlying stream + The length of the stream to slurp + true to leave the underlying stream + open upon close of the CrcCalculatorStream; false otherwise. + the CRC32 instance to use to calculate the CRC32 + + + + Read from the stream + + the buffer to read + the offset at which to start + the number of bytes to read + the number of bytes actually read + + + + Write to the stream. + + the buffer from which to write + the offset at which to start writing + the number of bytes to write + + + + Flush the stream. + + + + + Seeking is not supported on this stream. This method always throws + + + N/A + N/A + N/A + + + + This method always throws + + + N/A + + + + Closes the stream. + + + + + Gets the total number of bytes run through the CRC32 calculator. + + + + This is either the total number of bytes read, or the total number of + bytes written, depending on the direction of this stream. + + + + + Provides the current CRC for all blocks slurped in. + + + + The running total of the CRC is kept as data is written or read + through the stream. read this property after all reads or writes to + get an accurate CRC for the entire stream. + + + + + + Indicates whether the underlying stream will be left open when the + CrcCalculatorStream is Closed. + + + + Set this at any point before calling . + + + + + + Indicates whether the stream supports reading. + + + + + Indicates whether the stream supports seeking. + + + + Always returns false. + + + + + + Indicates whether the stream supports writing. + + + + + Returns the length of the underlying stream. + + + + + The getter for this property returns the total bytes read. + If you use the setter, it will throw + . + + +
+
Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/PowerCollections.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/it-IT/DotSpatial.Plugins.Measure.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_datum.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_datum.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_datum.txt (revision 2866) @@ -0,0 +1,462 @@ +! +! By email on December 2nd, 2010: +! +! I, Louis Burry, on behalf of PCI Geomatics agree to allow the ellips.txt +! and datum.txt file to be distributed under the GDAL open source license. +! +! Louis Burry +! VP Technology & Delivery +! PCI Geomatics +! +! NOTE: The range of "D900" to "D998" is set aside for +! the use of local customer development. +! +! And the range of "D-90" to "D-98" is set aside for +! the use of local customer development. +! +"DoD World Geodetic System 1984, DMA TR 8350.2" +"4 JUL 1997, Third Printing, Includes 3 JAN 2000 Updates" +"D-01","NAD27 (USA, NADCON)","E000","Conterminous U.S.","conus.los","conus.las" +"D-02","NAD83 (USA, NADCON)","E008","Conterminous U.S.","conus.los","conus.las" +"D-03","NAD27 (Canada, NTv1)","E000","Canada","grid.dac" +"D-04","NAD83 (Canada, NTv1)","E008","Canada","grid.dac" +"D-07","NAD27 (USA, NADCON)","E000","Alaska","alaska.los","alaska.las" +"D-08","NAD83 (USA, NADCON)","E008","Alaska","alaska.los","alaska.las" +"D-09","NAD27 (USA, NADCON)","E000","St. George","stgeorge.los","stgeorge.las" +"D-10","NAD83 (USA, NADCON)","E008","St. George","stgeorge.los","stgeorge.las" +"D-11","NAD27 (USA, NADCON)","E000","St. Lawrence","stlrnc.los","stlrnc.las" +"D-12","NAD83 (USA, NADCON)","E008","St. Lawrence","stlrnc.los","stlrnc.las" +"D-13","NAD27 (USA, NADCON)","E000","St. Paul","stpaul.los","stpaul.las" +"D-14","NAD83 (USA, NADCON)","E008","St. Paul","stpaul.los","stpaul.las" +"D-15","Old Hawaiian (USA, NADCON)","E000","Hawaii","hawaii.los","hawaii.las" +"D-16","NAD83 (USA, NADCON)","E008","Hawaii","hawaii.los","hawaii.las" +"D-17","NAD27 (USA, NADCON)","E000","Puerto Rico Virgin Islands","prvi.los","prvi.las" +"D-18","NAD83 (USA, NADCON)","E008","Puerto Rico Virgin Islands","prvi.los","prvi.las" +!"D-19","AGD66 (NTv2)","E014","Australia","A66 National (13.09.01).gsb" +!"D-20","AGD84 (NTv2)","E014","Australia","National 84 (02.07.01).gsb" +!"D-21","GDA94 (from AGD66, NTv2)","E008","Australia","A66 National (13.09.01).gsb" +!"D-22","GDA94 (from AGD84, NTv2)","E008","Australia","National 84 (02.07.01).gsb" +!"D-23","NZGD49 (NTv2)","E004","New Zealand","nzgd2kgrid0005.gsb" +!"D-24","NZGD2000 (NTv2)","E008","New Zealand","nzgd2kgrid0005.gsb" +!"D-66","NAD27 (NTv2)","E000","Quebec","na27scrs.gsb" +!"D-67","NAD83 (SCRS) (NTv2)","E008","Quebec","na27scrs.gsb" +!"D-68","NAD27 (NTv2)","E000","Quebec","na27na83.gsb" +!"D-69","NAD83 (NTv2)","E008","Quebec","na27na83.gsb" +!"D-70","NAD27 (CGQ77) (NTv2)","E000","Quebec","cq77scrs.gsb" +!"D-71","NAD83 (SCRS) (NTv2)","E008","Quebec","cq77scrs.gsb" +!"D-72","NAD27 (CGQ77) (NTv2)","E000","Quebec","cq77na83.gsb" +!"D-73","NAD83 (NTv2)","E008","Quebec","cq77na83.gsb" +!"D-74","NAD83 (NTv2)","E008","Quebec","na83scrs.gsb" +!"D-75","NAD83 (SCRS) (NTv2)","E008","Quebec","na83scrs.gsb" +!"D-76","NAD27 (NTv2)","E000","Saskatchewan","sk27-98.gsb" +!"D-77","NAD83 (CSRS98) (NTv2)","E008","Saskatchewan","sk27-98.gsb" +!"D-78","NAD83 (NTv2)","E008","Saskatchewan","sk83-98.gsb" +!"D-79","NAD83 (CSRS98) (NTv2)","E008","Saskatchewan","sk83-98.gsb" +!"D-80","ATS77 (NTv2)","E910","Nova Scotia","ns778301.gsb" +!"D-81","NAD83 (CSRS98) (NTv2)","E008","Nova Scotia","ns778301.gsb" +!"D-82","ATS77 (NTv2)","E910","Prince Edward Island","pe7783v2.gsb" +!"D-83","NAD83 (CSRS98) (NTv2)","E008","Prince Edward Island","pe7783v2.gsb" +!"D-84","ATS77 (NTv2)","E910","New Brunswick","nb7783v2.gsb" +!"D-85","NAD83 (CSRS98) (NTv2)","E008","New Brunswick","nb7783v2.gsb" +!"D-86","NAD27 (NTv2)","E000","Canada","ntv2_0.gsb" +!"D-87","NAD83 (NTv2)","E008","Canada","ntv2_0.gsb" +!"D-88","NAD27 (1976) (NTv2)","E000","Ontario","may76v20.gsb" +!"D-89","NAD83 (NTv2)","E008","Ontario","may76v20.gsb" +"D800","Normal Sphere","E019",0,0,0,"",0,0,0,0 +"D000","WGS 1984","E012",0,0,0,"Global Definition",0,0,0,0 +"D001","WGS 1972","E005",0,0,0,"Global Definition",3,3,3,1 +"D002","Adindan","E001",-166,-15,204,"MEAN FOR Ethiopia, Sudan",5,5,3,22 +"D003","Adindan","E001",-118,-14,218,"Burkina Faso",25,25,25,1 +"D004","Adindan","E001",-134,-2,210,"Cameroon",25,25,25,1 +"D005","Adindan","E001",-165,-11,206,"Ethiopia",3,3,3,8 +"D006","Adindan","E001",-123,-20,220,"Mali",25,25,25,1 +"D007","Adindan","E001",-128,-18,224,"Senegal",25,25,25,2 +"D008","Adindan","E001",-161,-14,205,"Sudan",3,5,3,14 +"D009","Afgooye","E015",-43,-163,45,"Somalia",25,25,25,1 +"D010","Ain el Abd 1970","E004",-150,-250,-1,"Bahrain",25,25,25,2 +"D011","Ain el Abd 1970","E004",-143,-236,7,"Saudi Arabia",10,10,10,9 +"D012","Anna 1 Astro 1965","E014",-491,-22,435,"Cocos Islands",25,25,25,1 +"D013","Antigua Island Astro 1943","E001",-270,13,62,"Antigua (Leeward Islands)",25,25,25,1 +"D014","Arc 1950","E001",-143,-90,-294,"MEAN Solution",20,33,20,41 +"D015","Arc 1950","E001",-138,-105,-289,"Botswana",3,5,3,9 +"D016","Arc 1950","E001",-153,-5,-292,"Burundi",20,20,20,3 +"D017","Arc 1950","E001",-125,-108,-295,"Lesotho",3,3,8,5 +"D018","Arc 1950","E001",-161,-73,-317,"Malawi",9,24,8,6 +"D019","Arc 1950","E001",-134,-105,-295,"Swaziland",15,15,15,4 +"D020","Arc 1950","E001",-169,-19,-278,"Zaire",25,25,25,2 +"D021","Arc 1950","E001",-147,-74,-283,"Zambia",21,21,27,5 +"D022","Arc 1950","E001",-142,-96,-293,"Zimbabwe",5,8,11,10 +"D023","Arc 1960","E001",-160,-6,-302,"MEAN FOR Kenya, Tanzania",20,20,20,25 +"D024","Ascension Island 1958","E004",-205,107,53,"Ascension Island",25,25,25,2 +"D025","Astro Beacon E 1945","E004",145,75,-272,"Iwo Jima",25,25,25,1 +"D026","Astro DOS 71/4","E004",-320,550,-494,"St Helena Island",25,25,25,1 +"D027","Astro Tern Island (FRIG) 1961","E004",114,-116,-333,"Tern Island",25,25,25,1 +"D028","Astronomical Station 1952","E004",124,-234,-25,"Marcus Island",25,25,25,1 +"D029","Australian Geodetic 1966","E014",-133,-48,148,"Australia & Tasmania",3,3,3,105 +"D030","Australian Geodetic 1984","E014",-134,-48,149,"Australia & Tasmania",2,2,2,90 +"D031","Ayabelle Lighthouse","E001",-79,-129,145,"Djibouti",25,25,25,1 +"D032","Bellevue (IGN)","E004",-127,-769,472,"Efate & Erromango Islands",20,20,20,3 +"D033","Bermuda 1957","E000",-73,213,296,"Bermuda",20,20,20,3 +"D034","Bissau","E004",-173,253,27,"Guinea-Bissau",25,25,25,2 +"D035","Bogota Observatory","E004",307,304,-318,"Colombia",6,5,6,7 +"D036","Bukit Rimpah","E002",-384,664,-48,"Indonesia (Bangka & Belitung Islands)",-1,-1,-1,0 +"D037","Camp Area Astro","E004",-104,-129,239,"Antarctica (McMurdo Camp Area)",-1,-1,-1,0 +"D038","Campo Inchauspe 1969","E004",-148,136,90,"Argentina",5,5,5,20 +"D039","Canton Astro 1966","E004",298,-304,-375,"Phoenix Islands",15,15,15,4 +"D040","Cape (Superceded by D517)","E001",-136,-108,-292,"South Africa",3,6,6,5 +"D041","Cape Canaveral","E000",-2,151,181,"MEAN FOR Florida,Bahamas",3,3,3,19 +"D042","Carthage","E001",-263,6,431,"Tunisia",6,9,8,5 +"D043","Chatham Island Astro 1971","E004",175,-38,113,"New Zealand (Chatham Island)",15,15,15,4 +"D044","Chua Astro","E004",-134,229,-29,"Paraguay",6,9,5,6 +"D045","Corrego Alegre","E004",-206,172,-6,"Brazil",5,3,5,17 +"D046","Dabola","E001",-83,37,124,"Guinea",15,15,15,4 +"D047","Djakarta (Batavia)","E002",-377,681,-50,"Indonesia (Sumatra)",3,3,3,5 +"D048","DOS 1968","E004",230,-199,-752,"New Georgia Islands (Gizo Island)",25,25,25,1 +"D049","Easter Island 1967","E004",211,147,111,"Easter Island",25,25,25,1 +"D050","European 1950","E004",-87,-98,-121,"MEAN FOR Europe,",3,8,5,85 +"D051","European 1950","E004",-87,-96,-120,"MEAN FOR Western Europe,",3,3,3,52 +"D052","European 1950","E004",-103,-106,-141,"MEAN FOR Iraq, Israel, Jordan, Lebanon",-1,-1,-1,0 +"D053","European 1950","E004",-104,-101,-140,"Cyprus",15,15,15,4 +"D054","European 1950","E004",-130,-117,-151,"Egypt",6,8,8,14 +"D055","European 1950","E004",-86,-96,-120,"MEAN FOR England, Channel Islands, Ireland",3,3,3,40 +"D056","European 1950","E004",-87,-95,-120,"Finland, Norway",3,5,3,20 +"D057","European 1950","E004",-84,-95,-130,"Greece",25,25,25,2 +"D058","European 1950","E004",-117,-132,-164,"Iran",9,12,11,27 +"D059","European 1950","E004",-97,-103,-120,"Italy (Sardinia)",25,25,25,2 +"D060","European 1950","E004",-97,-88,-135,"Italy (Sicily)",20,20,20,3 +"D061","European 1950","E004",-107,-88,-149,"Malta",25,25,25,1 +"D062","European 1950","E004",-84,-107,-120,"Portugal, Spain",5,6,3,18 +"D063","European 1979","E004",-86,-98,-119,"MEAN Solution",3,3,3,22 +"D064","Fort Thomas 1955","E001",-7,215,225,"Nevis, St. Kitts (Leeward Islands)",25,25,25,2 +"D065","Gan 1970","E004",-133,-321,50,"Republic of Maldives",25,25,25,1 +"D066","Geodetic Datum 1949","E004",84,-22,209,"New Zealand",5,3,5,14 +"D067","Graciosa Base SW 1948","E004",-104,167,-38,"Azores (Faial,Graciosa,Pico)",3,3,3,5 +"D068","Guam 1963","E000",-100,-248,259,"Guam",3,3,3,5 +"D069","Gunung Segara","E002",-403,684,41,"Indonesia (Kalimantan)",-1,-1,-1,0 +"D070","GUX 1 Astro","E004",252,-209,-751,"Guadalcanal Island",25,25,25,1 +"D071","Herat North","E004",-333,-222,114,"Afghanistan",-1,-1,-1,0 +"D072","Hjorsey 1955","E004",-73,46,-86,"Iceland",3,3,6,6 +"D073","Hong Kong 1963","E004",-156,-271,-189,"Hong Kong",25,25,25,2 +"D074","Hu-Tzu-Shan","E004",-637,-549,-203,"Taiwan",15,15,15,4 +"D075","Indian","E006",282,726,254,"Bangladesh",10,8,12,6 +"D076","Indian","E901",295,736,257,"India, Nepal",12,10,15,7 +"D077","Indian 1954","E006",217,823,299,"Thailand",15,6,12,11 +"D078","Indian 1975 (Cycle 1)","E006",210,814,289,"Thailand",3,2,3,62 +"D079","Ireland 1965","E011",506,-122,611,"Ireland",3,3,3,7 +"D080","ISTS 061 Astro 1968","E004",-794,119,-298,"South Georgia Islands",25,25,25,1 +"D081","ISTS 073 Astro 1969","E004",208,-435,-229,"Diego Garcia",25,25,25,2 +"D082","Johnston Island 1961","E004",189,-79,-202,"Johnston Island",25,25,25,1 +"D083","Kandawala","E006",-97,787,86,"Sri Lanka",20,20,20,3 +"D084","Kerguelen Island 1949","E004",145,-187,103,"Kerguelen Island",25,25,25,1 +"D085","Kertau 1948","E010",-11,851,5,"West Malaysia & Singapore",10,8,6,6 +"D086","Kusaie Astro 1951","E004",647,1777,-1124,"Caroline Islands",25,25,25,1 +"D087","L. C. 5 Astro 1961","E000",42,124,147,"Cayman Brac Island",25,25,25,1 +"D088","Leigon","E001",-130,29,364,"Ghana",2,3,2,8 +"D089","Liberia 1964","E001",-90,40,88,"Liberia",15,15,15,4 +"D090","Luzon","E000",-133,-77,-51,"Philippines (Excluding Mindanao)",8,11,9,6 +"D091","Luzon","E000",-133,-79,-72,"Philippines (Mindanao)",25,25,25,1 +"D092","Mahe 1971","E001",41,-220,-134,"Mahe Island",25,25,25,1 +"D093","Massawa","E002",639,405,60,"Ethiopia (Eritrea)",25,25,25,1 +"D094","Merchich","E001",31,146,47,"Morocco",5,3,3,9 +"D095","Midway Astro 1961","E004",912,-58,1227,"Midway Islands",25,25,25,1 +"D096","Minna","E001",-81,-84,115,"Cameroon",25,25,25,2 +"D097","Minna","E001",-92,-93,122,"Nigeria",3,6,5,6 +"D098","Montserrat Island Astro 1958","E001",174,359,365,"Montserrat (Leeward Islands)",25,25,25,1 +"D099","M'Poraloko","E001",-74,-130,42,"Gabon",25,25,25,1 +"D100","Nahrwan","E001",-247,-148,369,"Oman (Masirah Island)",25,25,25,2 +"D101","Nahrwan","E001",-243,-192,477,"Saudi Arabia",20,20,20,3 +"D102","Nahrwan","E001",-249,-156,381,"United Arab Emirates",25,25,25,2 +"D103","Naparima BWI","E004",-10,375,165,"Trinidad & Tobago",15,15,15,4 +"D104","North American 1927","E000",-3,142,183,"MEAN FOR Caribbean",3,9,12,15 +"D105","North American 1927","E000",0,125,194,"MEAN FOR Central America",8,3,5,19 +"D106","North American 1927","E000",-10,158,187,"MEAN FOR Canada",15,11,6,112 +"D107","North American 1927","E000",-8,160,176,"MEAN FOR CONUS",5,5,6,405 +"D108","North American 1927","E000",-9,161,179,"MEAN FOR CONUS (East of Mississippi River)",5,5,8,129 +"D109","North American 1927","E000",-8,159,175,"MEAN FOR CONUS (West of Mississippi River)",5,3,3,276 +"D110","North American 1927","E000",-5,135,172,"Alaska",5,9,5,47 +"D111","North American 1927","E000",-4,154,178,"Bahamas (Except San Salvador Island)",5,3,5,11 +"D112","North American 1927","E000",1,140,165,"Bahamas (San Salvador Island)",25,25,25,1 +"D113","North American 1927","E000",-7,162,188,"Canada (Alberta, British Columbia)",8,8,6,25 +"D114","North American 1927","E000",-9,157,184,"Canada (Manitoba, Ontario)",9,5,5,25 +"D115","North American 1927","E000",-22,160,190,"Canada (Atlantic Provinces)",6,6,3,37 +"D116","North American 1927","E000",4,159,188,"Canada (Northwest Territories, Saskatchewan)",5,5,3,17 +"D117","North American 1927","E000",-7,139,181,"Canada (Yukon)",5,8,3,8 +"D118","North American 1927","E000",0,125,201,"Canal Zone",20,20,20,3 +"D119","North American 1927","E000",-9,152,178,"Cuba",25,25,25,1 +"D120","North American 1927","E000",11,114,195,"Greenland (Hayes Peninsula)",25,25,25,2 +"D121","North American 1927","E000",-12,130,190,"Mexico",8,6,6,22 +"D122","North American 1983","E008",0,0,0,"Alaska, Canada, CONUS, Central America, Mexico",2,2,2,354 +"D123","Observatorio Metereo. 1939","E004",-425,-169,81,"Azores (Corvo & Flores Islands)",20,20,20,3 +"D124","Old Egyptian 1907","E904",-130,110,-13,"Egypt",3,6,8,14 +"D125","Old Hawaiian (Clarke 1866)","E000",61,-285,-181,"MEAN FOR Hawaii, Kauai, Maui, Oahu",25,20,20,15 +"D126","Old Hawaiian (Clarke 1866)","E000",89,-279,-183,"Hawaii",25,25,25,2 +"D127","Old Hawaiian (Clarke 1866)","E000",45,-290,-172,"Kauai",20,20,20,3 +"D128","Old Hawaiian (Clarke 1866)","E000",65,-290,-190,"Maui",25,25,25,2 +"D129","Old Hawaiian (Clarke 1866)","E000",58,-283,-182,"Oahu",10,6,6,8 +"D130","Oman","E001",-346,-1,224,"Oman",3,3,9,7 +"D131","Ord. Survey G. Britain 1936","E009",375,-111,431,"MEAN Solution",10,10,15,38 +"D132","Ord. Survey G. Britain 1936","E009",371,-112,434,"England",5,5,6,21 +"D133","Ord. Survey G. Britain 1936","E009",371,-111,434,"England, Isle of Man, Wales",10,10,15,25 +"D134","Ord. Survey G. Britain 1936","E009",384,-111,425,"Scotland, Shetland Islands",10,10,10,13 +"D135","Ord. Survey G. Britain 1936","E009",370,-108,434,"Wales",20,20,20,3 +"D136","Pico de las Nieves","E004",-307,-92,127,"Canary Islands",25,25,25,1 +"D137","Pitcairn Astro 1967","E004",185,165,42,"Pitcairn Island",25,25,25,1 +"D138","Point 58","E001",-106,-129,165,"MEAN FOR Burkina Faso & Niger",25,25,25,2 +"D139","Pointe Noire 1948","E001",-148,51,-291,"Congo",25,25,25,1 +"D140","Porto Santo 1936","E004",-499,-249,314,"Porto Santo, Madeira Islands",25,25,25,2 +"D141","Provisional S. American 1956","E004",-288,175,-376,"MEAN Solution",17,27,27,63 +"D142","Provisional S. American 1956","E004",-270,188,-388,"Bolivia",5,11,14,5 +"D143","Provisional S. American 1956","E004",-270,183,-390,"Chile (Northern, Near 19dS)",25,25,25,1 +"D144","Provisional S. American 1956","E004",-305,243,-442,"Chile (Southern, Near 43dS)",20,20,20,3 +"D145","Provisional S. American 1956","E004",-282,169,-371,"Colombia",15,15,15,4 +"D146","Provisional S. American 1956","E004",-278,171,-367,"Ecuador",3,5,3,11 +"D147","Provisional S. American 1956","E004",-298,159,-369,"Guyana",6,14,5,9 +"D148","Provisional S. American 1956","E004",-279,175,-379,"Peru",6,8,12,6 +"D149","Provisional S. American 1956","E004",-295,173,-371,"Venezuela",9,14,15,24 +"D150","Provisional S. Chilean 1963","E004",16,196,93,"Chile (South, Near 53dS) (Hito XVIII)",25,25,25,2 +"D151","Puerto Rico","E000",11,72,-101,"Puerto Rico, Virgin Islands",3,3,3,11 +"D152","Qatar National","E004",-128,-283,22,"Qatar",20,20,20,3 +"D153","Qornoq","E004",164,138,-189,"Greenland (South)",25,25,32,2 +"D154","Reunion","E004",94,-948,-1262,"Mascarene Islands",25,25,25,1 +"D155","Rome 1940","E004",-225,-65,9,"Italy (Sardinia)",25,25,25,1 +"D156","Santo (DOS) 1965","E004",170,42,84,"Espirito Santo Island",25,25,25,1 +"D157","Sao Braz","E004",-203,141,53,"Azores (Sao Miguel, Santa Maria Islands)",25,25,25,2 +"D158","Sapper Hill 1943","E004",-355,21,72,"East Falkland Island",1,1,1,5 +"D159","Schwarzeck","E900",616,97,-251,"Namibia",20,20,20,3 +"D160","Selvagem Grande 1938","E004",-289,-124,60,"Salvage Islands",25,25,25,1 +"D161","SGS 85","E905",3,9,-9,"Soviet Geodetic System 1985",10,10,10,1 +"D162","South American 1969","E907",-57,1,-41,"MEAN Solution,",15,6,9,84 +"D163","South American 1969","E907",-62,-1,-37,"Argentina",5,5,5,10 +"D164","South American 1969","E907",-61,2,-48,"Bolivia",15,15,15,4 +"D165","South American 1969 (old)","E907",-60,-2,-41,"Brazil",3,5,5,22 +"D166","South American 1969","E907",-75,-1,-44,"Chile",15,8,11,9 +"D167","South American 1969","E907",-44,6,-36,"Colombia",6,6,5,7 +"D168","South American 1969","E907",-48,3,-44,"Ecuador",3,3,3,11 +"D169","South American 1969","E907",-47,26,-42,"Ecuador (Baltra, Galapagos)",25,25,25,1 +"D170","South American 1969","E907",-53,3,-47,"Guyana",9,5,5,5 +"D171","South American 1969","E907",-61,2,-33,"Paraguay",15,15,15,4 +"D172","South American 1969","E907",-58,0,-44,"Peru",5,5,5,6 +"D173","South American 1969","E907",-45,12,-33,"Trinidad & Tobago",25,25,25,1 +"D174","South American 1969","E907",-45,8,-33,"Venezuela",3,6,3,5 +"D175","South Asia","E013",7,-10,-26,"Singapore",25,25,25,1 +"D176","Tananarive Observatory 1925","E004",-189,-242,-91,"Madagascar",-1,-1,-1,0 +"D177","Timbalai 1948","E903",-679,669,-48,"Brunei, East Malaysia (Sabah, Sarawak)",10,10,12,8 +"D178","Tokyo","E002",-148,507,685,"MEAN FOR Japan, Korea, Okinawa",20,5,20,31 +"D179","Tokyo","E002",-148,507,685,"Japan",8,5,8,16 +"D180","Tokyo (Cycle 1)","E002",-147,506,687,"South Korea",2,2,2,29 +"D181","Tokyo","E002",-158,507,676,"Okinawa",20,5,20,3 +"D182","Tristan Astro 1968","E004",-632,438,-609,"Tristan da Cunha",25,25,25,1 +"D183","Viti Levu 1916","E001",51,391,-36,"Fiji (Viti Levu Island)",25,25,25,1 +"D184","Wake-Eniwetok 1960","E016",102,52,-38,"Marshall Islands",3,3,3,10 +"D185","Wake Island Astro 1952","E004",276,-57,149,"Wake Atoll",25,25,25,2 +"D186","WGS 1972","E005",0,0,0,"Global Definition",3,3,3,1 +"D187","Yacare","E004",-155,171,37,"Uruguay",-1,-1,-1,0 +"D188","Zanderij","E004",-265,120,-358,"Suriname",5,5,8,5 +"D189","American Samoa 1962","E000",-115,118,426,"American Samoa Is",25,25,25,2 +"D190","Arc 1960","E001",-157,-2,-299,"Kenya",4,3,3,24 +"D191","Arc 1960","E001",-175,-23,-303,"Tanzania",6,9,10,12 +"D192","Coordinate System 1937 of Estonia","E002",374,150,588,"Estonia",2,2,3,19 +"D193","Deception Island","E001",260,12,-147,"Deception Is., Antarctica",20,20,20,3 +"D194","European 1950","E004",-112,-77,-145,"Tunisia",25,25,25,4 +"D195","Hermannskogel","E002",682,-203,480,"Yugoslavia (Pre 1990)",-1,-1,-1,0 +"D196","Indian","E201",283,682,231,"Pakistan",-1,-1,-1,0 +"D197","Indian 1960","E006",198,881,317,"Vietnam (near 16dN)",25,25,25,2 +"D198","Indian 1960","E006",182,915,344,"Con Son Island (Vietnam)",25,25,25,1 +"D199","Indonesian 1974","E200",-24,-15,5,"Indonesia",25,25,25,1 +"D200","North American 1927","E000",-2,152,149,"Aleutian Is (E of 180dW)",6,8,10,6 +"D201","North American 1927","E000",2,204,105,"Aleutian Is (W of 180dW)",10,8,10,5 +"D202","North Sahara 1959","E001",-186,-93,310,"Algeria",25,25,25,3 +"D203","Pulkovo 1942","E015",28,-130,-95,"Russia",-1,-1,-1,0 +"D204","S-42 (Pulkovo 1942)","E015",28,-121,-77,"Hungary",2,2,2,5 +"D205","S-42 (Pulkovo 1942)","E015",23,-124,-82,"Poland",4,2,4,11 +"D206","S-42 (Pulkovo 1942)","E015",26,-121,-78,"Czechoslovakia (Prior 1 Jan 1993)",3,3,2,6 +"D207","S-42 (Pulkovo 1942)","E015",24,-124,-82,"Latvia",2,2,2,5 +"D208","S-42 (Pulkovo 1942)","E015",15,-130,-84,"Kazakhstan",25,25,25,2 +"D209","S-42 (Pulkovo 1942)","E015",24,-130,-92,"Albania",3,3,3,7 +"D210","S-42 (Pulkovo 1942)","E015",28,-121,-77,"Romania",3,5,3,4 +"D211","S-JTSK","E002",589,76,480,"Czechoslovakia (1 Jan 1993 on)",4,2,3,6 +"D212","Sierra Leone 1960","E001",-88,4,101,"Sierra Leone",15,15,15,8 +"D213","Voirol 1874","E001",-73,-247,227,"Tunisia, Algeria",-1,-1,-1,0 +"D214","Voirol 1960","E001",-123,-206,219,"Algeria",25,25,25,2 +"D215","Indian 1975 (Cycle 0)","E006",209,818,290,"Thailand",12,10,12,6 +"D216","Korean Geodetic System 1995","E012",0,0,0,"South Korea",1,1,1,29 +"D217","Tokyo (Cycle 0)","E002",-146,507,687,"South Korea",8,5,8,12 +"D218","South American Geocentric Reference System (SIRGAS)","E008",0,0,0,"South America",1,1,1,66 +"D219","Old Hawaiian (Int 1924)","E004",201,-228,-346,"MEAN FOR Hawaii, Kauai, Maui, Oahu",25,20,20,15 +"D220","Old Hawaiian (Int 1924)","E004",229,-222,-348,"Hawaii",25,25,25,2 +"D221","Old Hawaiian (Int 1924)","E004",185,-233,-337,"Kauai",20,20,20,3 +"D222","Old Hawaiian (Int 1924)","E004",205,-233,-355,"Maui",25,25,25,2 +"D223","Old Hawaiian (Int 1924)","E004",198,-226,-347,"Oahu",10,6,6,8 +"D333","Tokyo Datum (Japan By Law)","E333",-147.54,507.26,680.47,"Japan",0,0,0,0 +"D334","Japanese Geodetic Datum 2000 (JGD2000)","E008",0.0,0.0,0.0,"Japan",0,0,0,0 +"D340","WGS 1972BE","E005",0,0,1.9,"Global Definition",3,3,3,1,-0,-0,-0.814,-0.38 +"D350","GRS 1980","E008",0.0,0.0,0.0,"Global Definition",0,0,0,0,0.0,0.0,0.0,1.0 +"D360","Pulkovo 1942","E015",27,-135,-84.5,"Russia",-1,-1,-1,0,-0.0,-0.0,-0.554,-0.2263 +"D400","Greece 1987","E008",-199.695,74.815,246.045,"Greece",0,0,0,0 +"D401","RT90 (Superceded by D403)","E002",-424,80,-613,"Sweden",0,0,0,0,-4.40,1.99,-5.18,1.0 +"D402","Indian 1960","E209",198,881,317,"India",0,0,0,0 +"D403","RT90 (Supercedes D401)","E002",414.1055246174,41.3265500042,603.0582474221,"Sweden",0,0,0,0,0.8551163377,-2.1413174055,7.0227298286,1.0 +"D450","ETRS89 (European Terrestrial Reference System 1989)","E008",0.0,0.0,0.0,"Europe",0,0,0,0 +"D500","Deutsches Hauptdreiecksnetz (DHDN), Potsdam (Rauenburg)","E002",580.0,80.9,395.3,"Germany",0,0,0,0,0.35,-0.10,3.58,1.00001112 +"D501","MGI (Militar-Geographische Institut) (Hermannskogel)","E002",575.0,93.0,466.0,"Austria",0,0,0,0,-5.1,-1.6,-5.2,1.0000025 +"D502","CH1903 (Superceded by D514)","E002",660.08,13.55,369.34,"Switzerland",0,0,0,0,0.805,0.578,0.952,1.00000566 +"D503","Belgian 72","E004",-99.059,53.322,-112.486,"Belgium",0,0,0,0,-0.419,0.830,-1.885,0.999999 +"D504","NTF (Nouvelle Triangulation Francaise)","E202",-166.817,-59.821,318.753,"France",0,0,0,0 +"D505","South American 1969 (new)","E907",-66.87,4.37,-38.52,"Brazil",0.43,0.44,0.40,0 +"D506","Rijksdriehoeks Datum","E002",565.04,49.91,465.84,"Netherlands",0,0,0,0,0.4094,-0.3597,1.8685,1.0000040772 +"D507","KKJ (Kartastokoordinaattijarjestelma)","E004",93.477,103.453,123.431,"Finland",0,0,0,0,4.801,0.345,-1.376,0.999998503 +"D508","Aratu (Brasil)","E004",-158,315,-148,"Brazil",2,3,2,0 +"D509","Hungarian Datum 1972 (HD-72)","E203",56.0,-75.77,-15.31,"Hungary",0,0,0,0,-0.37,-0.20,-0.21,1.00000101 +"D510","NZGD 1949 (7 terms)","E004",59.47,-5.04,187.44,"New Zealand",0,0,0,0,-0.47,0.10,-1.024,0.9999954007 +"D511","NZGD 1949 (3 terms)","E004",54.4,-20.1,183.1,"New Zealand",0,0,0,0 +"D512","NZGD 2000 (7 terms)","E008",0.0,0.0,0.0,"New Zealand",0,0,0,0,0.0,0.0,0.0,1.0 +"D513","NGO 1948","E206", 278.2932, 93.0497, 474.4745,"Norway",0,0,0,0, -7.8885, -0.0499, 6.6098, 6.2050 +"D514","CH1903+ (Supercedes D502)","E002",674.374,15.056,405.346,"Switzerland",0,0,0,0 +"D515","SL datum 95","E006",-2.0553,763.5581,87.6682,"Sri Lanka",0,0,0,0,-0.198003,-1.706361,-3.466120,-0.0315 +"D516","SL datum 1999","E006",-0.2933,766.9499,87.7131,"Sri Lanka",0,0,0,0,-0.1957040,-1.6950677,-3.4730161,-0.0393 +"D517","Cape (Supercedes D040)","E205",-134.73,-110.92,-292.66,"South Africa",0,0,0,0 +"D518","Hartebeesthoek94","E012",0,0,0,"South Africa",0,0,0,0 +"D519","Abidjan 1987","E001",-124.76,53,466.79,"C\uffffte d'Ivoire",0,0,0,0 +"D520","Accra","E204",-199,32,322,"Ghana",0,0,0,0 +"D521","Azores Central 1948","E004",-104,167,-38,"Azores",0,0,0,0 +"D522","Azores Oriental 1940","E004",-203,141,53,"Azores",0,0,0,0 +"D523","Azores Occidental 1939","E004",-422.651,-172.995,84.02,"Azores",0,0,0,0 +"D524","Barbados 1938","E001",31.95,300.99,419.19,"Barbados",0,0,0,0 +"D525","Camacupa","E001",-50.9,-347.6,-231,"Angola",0,0,0,0 +"D526","Chos Malal 1914","E004",5.5,176.7,141.4,"Argentina",0,0,0,0 +"D527","Conakry 1905","E202",-23.0,259.0,-9.0,"Guinea",0,0,0,0 +"D528","Dealul Piscului 1933","E004",103.25,-100.40,-307.19,"Romania",0,0,0,0 +"D529","Dealul Piscului 1970","E015",44.107,-116.147,-54.648,"Romania",0,0,0,0 +"D530","Deir ez Zor","E202",-190.421,8.532,238.69,"Syria",0,0,0,0 +"D531","Dominica 1945","E001",725,685,536,"Dominica",0,0,0,0 +"D532","Kalianpur 1937","E209",214,804,268,"India",0,0,0,0 +"D533","Kalianpur 1962","E210",275.57,676.78,229.6,"Pakistan",0,0,0,0 +"D534","Kalianpur 1975","E216",295,736,257,"India",0,0,0,0 +"D535","SWEREF99","E008",0.0,0.0,0.0,"Sweden",0,0,0,0 +"D536","GDA94 (Geocentric Datum of Australia 1994)","E008",0.0,0.0,0.0,"Australia",0,0,0,0 +"D537","ETRF89 (European Terrestrial Reference Frame 1989)","E012",0.0,0.0,0.0,"Europe",0,0,0,0 +"D538","Bermuda 2000","E012",0.0,0.0,0.0,"Bermuda",0,0,0,0 +"D539","Samboja","E002",-404.78,-685.68,-45.47,"Indonesia",0,0,0,0 +"D540","Australian Antarctic 1998","E008",0.0,0.0,0.0,"Australian Antarctic Territory",0,0,0,0 +"D541","Everest (India and Nepal)","E226",295,736,257,"India",0,0,0,0 +"D542","Korea Datum 1985","E002",-323,309,653,"South Korea",0,0,0,0 +"D543","Israel","E008",-48,55,52,"Israel",0,0,0,0 +"D544","Lao National Datum 1997","E015",46.012,-127.108,-38.131,"Laos",0,0,0,0 +"D545","Hong Kong 1980 Datum","E004",-162.619,-276.959,-161.764,"Hong Kong",0,0,0,0,-0.067753,2.243649,1.158827,-1.094246 +"D546","HITO XVIII","E004",18.38,192.45,96.82,"Argentina",0,0,0,0,-0.056,0.142,0.200,-0.0013 +"D547","GDM 2000MRSO","E008",1.69276,-1.92994,2.07108,"West Malaysia",0,0,0,0,0.03515,-0.02858,-0.00617,0.24859 +"D548","GDM 2000BRSO","E008",-1.04278,-0.30902,0.57544,"East Malaysia",0,0,0,0,0.01102,-0.03471,0.02865,-0.01934 +"D549","Gulshan 303","E209",283.729,735.942,261.143,"Bangladesh",0,0,0,0 +"D551","CHTRF95 (Swiss Terrestrial Reference Frame 1995)","E008",0.0,0.0,0.0,"Switzerland",0,0,0,0 +"D600","D-PAF (Orbits)","E600",0.082,-0.502,-0.224,"Satellite Orbits",0,0,0,0,0.30444,0.04424,0.00609,0.9999999937 +"D601","Test Data Set 1","E601",0.071,-0.509,-0.166,"Test 1",0,0,0,0,0.0179,-0.0005,0.0067,0.999999983 +"D602","Test Data Set 2","E602",580.0,80.9,399.8,"Test 2",0,0,0,0,0.35,0.1,3.026,1.0000113470025 +"D700","MODIS","E700",0,0,0,"Global Definition",0,0,0,0 +"D701","NAD83 (USA, NADCON)","E008","Alabama","alhpgn.los","alhpgn.las" +"D702","NAD83 HARN (USA, NADCON)","E008","Alabama","alhpgn.los","alhpgn.las" +"D703","NAD83 (USA, NADCON)","E008","Arkansas","arhpgn.los","arhpgn.las" +"D704","NAD83 HARN (USA, NADCON)","E008","Arkansas","arhpgn.los","arhpgn.las" +"D705","NAD83 (USA, NADCON)","E008","Arizona","azhpgn.los","azhpgn.las" +"D706","NAD83 HARN (USA, NADCON)","E008","Arizona","azhpgn.los","azhpgn.las" +"D707","NAD83 (USA, NADCON)","E008","California (North of 37dN)","cnhpgn.los","cnhpgn.las" +"D708","NAD83 HARN (USA, NADCON)","E008","California (North of 37dN)","cnhpgn.los","cnhpgn.las" +"D709","NAD83 (USA, NADCON)","E008","California (South of 37dN)","cshpgn.los","cshpgn.las" +"D710","NAD83 HARN (USA, NADCON)","E008","California (South of 37dN)","cshpgn.los","cshpgn.las" +"D711","NAD83 (USA, NADCON)","E008","Colorado","cohpgn.los","cohpgn.las" +"D712","NAD83 HARN (USA, NADCON)","E008","Colorado","cohpgn.los","cohpgn.las" +"D713","NAD83 (USA, NADCON)","E008","Florida","flhpgn.los","flhpgn.las" +"D714","NAD83 HARN (USA, NADCON)","E008","Florida","flhpgn.los","flhpgn.las" +"D715","NAD83 (USA, NADCON)","E008","Georgia","gahpgn.los","gahpgn.las" +"D716","NAD83 HARN (USA, NADCON)","E008","Georgia","gahpgn.los","gahpgn.las" +"D717","Guam 1963 (USA, NADCON)","E000","Guam","guhpgn.los","guhpgn.las" +"D718","NAD83 HARN (USA, NADCON)","E008","Guam","guhpgn.los","guhpgn.las" +"D719","NAD83 (USA, NADCON)","E008","Hawaii","hihpgn.los","hihpgn.las" +"D720","NAD83 HARN (USA, NADCON)","E008","Hawaii","hihpgn.los","hihpgn.las" +"D721","NAD83 (USA, NADCON)","E008","Idaho-Montana (East of 113dW)","emhpgn.los","emhpgn.las" +"D722","NAD83 HARN (USA, NADCON)","E008","Idaho-Montana (East of 113dW)","emhpgn.los","emhpgn.las" +"D723","NAD83 (USA, NADCON)","E008","Idaho-Montana (West of 113dW)","wmhpgn.los","wmhpgn.las" +"D724","NAD83 HARN (USA, NADCON)","E008","Idaho-Montana (West of 113dW)","wmhpgn.los","wmhpgn.las" +"D725","NAD83 (USA, NADCON)","E008","Iowa","iahpgn.los","iahpgn.las" +"D726","NAD83 HARN (USA, NADCON)","E008","Iowa","iahpgn.los","iahpgn.las" +"D727","NAD83 (USA, NADCON)","E008","Illinois","ilhpgn.los","ilhpgn.las" +"D728","NAD83 HARN (USA, NADCON)","E008","Illinois","ilhpgn.los","ilhpgn.las" +"D729","NAD83 (USA, NADCON)","E008","Indiana","inhpgn.los","inhpgn.las" +"D730","NAD83 HARN (USA, NADCON)","E008","Indiana","inhpgn.los","inhpgn.las" +"D731","NAD83 (USA, NADCON)","E008","Kansas","kshpgn.los","kshpgn.las" +"D732","NAD83 HARN (USA, NADCON)","E008","Kansas","kshpgn.los","kshpgn.las" +"D733","NAD83 (USA, NADCON)","E008","Kentucky","kyhpgn.los","kyhpgn.las" +"D734","NAD83 HARN (USA, NADCON)","E008","Kentucky","kyhpgn.los","kyhpgn.las" +"D735","NAD83 (USA, NADCON)","E008","Louisiana","lahpgn.los","lahpgn.las" +"D736","NAD83 HARN (USA, NADCON)","E008","Louisiana","lahpgn.los","lahpgn.las" +"D737","NAD83 (USA, NADCON)","E008","Maryland-Delaware","mdhpgn.los","mdhpgn.las" +"D738","NAD83 HARN (USA, NADCON)","E008","Maryland-Delaware","mdhpgn.los","mdhpgn.las" +"D739","NAD83 (USA, NADCON)","E008","Maine","mehpgn.los","mehpgn.las" +"D740","NAD83 HARN (USA, NADCON)","E008","Maine","mehpgn.los","mehpgn.las" +"D741","NAD83 (USA, NADCON)","E008","Michigan","mihpgn.los","mihpgn.las" +"D742","NAD83 HARN (USA, NADCON)","E008","Michigan","mihpgn.los","mihpgn.las" +"D743","NAD83 (USA, NADCON)","E008","Minnesota","mnhpgn.los","mnhpgn.las" +"D744","NAD83 HARN (USA, NADCON)","E008","Minnesota","mnhpgn.los","mnhpgn.las" +"D745","NAD83 (USA, NADCON)","E008","Mississippi","mshpgn.los","mshpgn.las" +"D746","NAD83 HARN (USA, NADCON)","E008","Mississippi","mshpgn.los","mshpgn.las" +"D747","NAD83 (USA, NADCON)","E008","Missouri","mohpgn.los","mohpgn.las" +"D748","NAD83 HARN (USA, NADCON)","E008","Missouri","mohpgn.los","mohpgn.las" +"D749","NAD83 (USA, NADCON)","E008","Nebraska","nbhpgn.los","nbhpgn.las" +"D750","NAD83 HARN (USA, NADCON)","E008","Nebraska","nbhpgn.los","nbhpgn.las" +"D751","NAD83 (USA, NADCON)","E008","Nevada","nvhpgn.los","nvhpgn.las" +"D752","NAD83 HARN (USA, NADCON)","E008","Nevada","nvhpgn.los","nvhpgn.las" +"D753","NAD83 (USA, NADCON)","E008","New England (CT,MA,NH,RI,VT)","nehpgn.los","nehpgn.las" +"D754","NAD83 HARN (USA, NADCON)","E008","New England (CT,MA,NH,RI,VT)","nehpgn.los","nehpgn.las" +"D755","NAD83 (USA, NADCON)","E008","New Jersey","njhpgn.los","njhpgn.las" +"D756","NAD83 HARN (USA, NADCON)","E008","New Jersey","njhpgn.los","njhpgn.las" +"D757","NAD83 (USA, NADCON)","E008","New Mexico","nmhpgn.los","nmhpgn.las" +"D758","NAD83 HARN (USA, NADCON)","E008","New Mexico","nmhpgn.los","nmhpgn.las" +"D759","NAD83 (USA, NADCON)","E008","New York","nyhpgn.los","nyhpgn.las" +"D760","NAD83 HARN (USA, NADCON)","E008","New York","nyhpgn.los","nyhpgn.las" +"D761","NAD83 (USA, NADCON)","E008","North Carolina","nchpgn.los","nchpgn.las" +"D762","NAD83 HARN (USA, NADCON)","E008","North Carolina","nchpgn.los","nchpgn.las" +"D763","NAD83 (USA, NADCON)","E008","North Dakota","ndhpgn.los","ndhpgn.las" +"D764","NAD83 HARN (USA, NADCON)","E008","North Dakota","ndhpgn.los","ndhpgn.las" +"D765","NAD83 (USA, NADCON)","E008","Ohio","ohhpgn.los","ohhpgn.las" +"D766","NAD83 HARN (USA, NADCON)","E008","Ohio","ohhpgn.los","ohhpgn.las" +"D767","NAD83 (USA, NADCON)","E008","Oklahoma","okhpgn.los","okhpgn.las" +"D768","NAD83 HARN (USA, NADCON)","E008","Oklahoma","okhpgn.los","okhpgn.las" +"D769","NAD83 (USA, NADCON)","E008","Pennsylvania","pahpgn.los","pahpgn.las" +"D770","NAD83 HARN (USA, NADCON)","E008","Pennsylvania","pahpgn.los","pahpgn.las" +"D771","NAD83 (USA, NADCON)","E008","Puerto Rico-Virgin Is","pvhpgn.los","pvhpgn.las" +"D772","NAD83 HARN (USA, NADCON)","E008","Puerto Rico-Virgin Is","pvhpgn.los","pvhpgn.las" +"D773","American Samoa 1962 (USA, NADCON)","E000","Samoa (Eastern Islands)","eshpgn.los","eshpgn.las" +"D774","NAD83 HARN (USA, NADCON)","E008","Samoa (Eastern Islands)","eshpgn.los","eshpgn.las" +"D775","American Samoa 1962 (USA, NADCON)","E000","Samoa (Western Islands)","wshpgn.los","wshpgn.las" +"D776","NAD83 HARN (USA, NADCON)","E008","Samoa (Western Islands)","wshpgn.los","wshpgn.las" +"D777","NAD83 (USA, NADCON)","E008","South Carolina","schpgn.los","schpgn.las" +"D778","NAD83 HARN (USA, NADCON)","E008","South Carolina","schpgn.los","schpgn.las" +"D779","NAD83 (USA, NADCON)","E008","South Dakota","sdhpgn.los","sdhpgn.las" +"D780","NAD83 HARN (USA, NADCON)","E008","South Dakota","sdhpgn.los","sdhpgn.las" +"D781","NAD83 (USA, NADCON)","E008","Tennessee","tnhpgn.los","tnhpgn.las" +"D782","NAD83 HARN (USA, NADCON)","E008","Tennessee","tnhpgn.los","tnhpgn.las" +"D783","NAD83 (USA, NADCON)","E008","Texas (East of 100dW)","ethpgn.los","ethpgn.las" +"D784","NAD83 HARN (USA, NADCON)","E008","Texas (East of 100dW)","ethpgn.los","ethpgn.las" +"D785","NAD83 (USA, NADCON)","E008","Texas (West of 100dW)","wthpgn.los","wthpgn.las" +"D786","NAD83 HARN (USA, NADCON)","E008","Texas (West of 100dW)","wthpgn.los","wthpgn.las" +"D787","NAD83 (USA, NADCON)","E008","Utah","uthpgn.los","uthpgn.las" +"D788","NAD83 HARN (USA, NADCON)","E008","Utah","uthpgn.los","uthpgn.las" +"D789","NAD83 (USA, NADCON)","E008","Virginia","vahpgn.los","vahpgn.las" +"D790","NAD83 HARN (USA, NADCON)","E008","Virginia","vahpgn.los","vahpgn.las" +"D791","NAD83 (USA, NADCON)","E008","Washington-Oregon","wohpgn.los","wohpgn.las" +"D792","NAD83 HARN (USA, NADCON)","E008","Washington-Oregon","wohpgn.los","wohpgn.las" +"D793","NAD83 (USA, NADCON)","E008","West Virginia","wvhpgn.los","wvhpgn.las" +"D794","NAD83 HARN (USA, NADCON)","E008","West Virginia","wvhpgn.los","wvhpgn.las" +"D795","NAD83 (USA, NADCON)","E008","Wisconsin","wihpgn.los","wihpgn.las" +"D796","NAD83 HARN (USA, NADCON)","E008","Wisconsin","wihpgn.los","wihpgn.las" +"D797","NAD83 (USA, NADCON)","E008","Wyoming","wyhpgn.los","wyhpgn.las" +"D798","NAD83 HARN (USA, NADCON)","E008","Wyoming","wyhpgn.los","wyhpgn.las" +"D888","Lebanon Stereographic","E012",154.2668777,107.2190767,-263.01161212,"Lebanon",0,0,0,0,0.310716,0.218736,0.191232,0.99999913 +"D889","Lebanon Lambert","E202",190.9999,133.32473,-232.8391,"Lebanon",0,0,0,0,0.307836,0.216756,0.189036,0.9995341 +"D890","Luxembourg (LUREF)","E004",-192.986,13.673,-39.309,"Luxembourg",0,0,0,0,0.409900,2.933200,-2.688100,1.00000043 +"D891","Datum 73","E004",-223.237,110.193,36.649,"Portugal",0,0,0,0 +"D892","Datum Lisboa","E004",-304.046,-60.576,103.640,"Portugal",0,0,0,0 +"D893","PDO Survey Datum 1993","E001",-180.624,-225.516,173.919,"Oman",0,0,0,0,0.80970,1.89755,-8.33604,16.71006 +"D898","TWD97","E008",0,0,0,"Taiwan",0,0,0,0,0.0,0.0,0.0,0.0 +"D899","TWD67","E899",-752,-358,-179,"Taiwan",0,0,0,0,-0.0000011698,0.0000018398,0.0000009822,0.00002329 +"D886", "Reseau Geodesique Francais 1993", "E899",-752,-358,-179,"Taiwan",0,0,0,0,-0.0000011698,0.0000018398,0.0000009822,0.00002329 +"D887", "Reseau National Belge 1972", "E899",-752,-358,-179,"Taiwan",0,0,0,0,-0.0000011698,0.0000018398,0.0000009822,0.00002329 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/ICSharpCode.TextEditor.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/ICSharpCode.NRefactory.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/pt-BR/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/hdf5dll.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.TableEditor/DotSpatial.Plugins.TableEditor.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/osr_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/x86/SQLite.Interop.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/unit_of_measure.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/unit_of_measure.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/unit_of_measure.csv (revision 2866) @@ -0,0 +1,80 @@ +uom_code,unit_of_meas_name,unit_of_meas_type,target_uom_code,factor_b,factor_c,remarks,information_source,data_source,revision_date,change_id,deprecated +9001,metre,length,9001,1,1,Also known as International metre. SI standard unit.,ISO 1000.,OGP,1995/06/02,,0 +9002,foot,length,9001,0.3048,1,,"ISO 1000; 1958",OGP,1995/06/02,,0 +9003,US survey foot,length,9001,12,39.37,Used in USA.,OGP,OGP,2000/05/07,1999.990,0 +9005,Clarke's foot,length,9001,0.3047972654,1,"Assumes Clarke's 1865 ratio of 1 British foot = 0.3047972654 French legal metres applies to the international metre. Used in older Australian, southern African & British West Indian mapping.",Australian Land Information Group www.auslig.gov.au,OGP,2005/09/06,1997.233 1999.990 2000.050 2005.370 2005.460,0 +9014,fathom,length,9001,1.8288,1,= 6 feet.,,OGP,1995/06/02,,0 +9030,nautical mile,length,9001,1852,1,,,OGP,1996/10/18,1996.240,0 +9031,German legal metre,length,9001,1.0000135965,1,Used in Namibia.,"Chief Directorate Surveys and Land Information; Mowbray; South Africa",OGP,1997/06/16,,0 +9033,US survey chain,length,9001,792,39.37,Used in USA primarily for public lands cadastral work.,Bureau of Land Management technical bulletin 6 (1973) and Standard Field Tables 8th edition (1956).,OGP,2000/05/07,1999.990,0 +9034,US survey link,length,9001,7.92,39.37,Used in USA primarily for public lands cadastral work.,Bureau of Land Management technical bulletin 6 (1973) and Standard Field Tables 8th edition (1956).,OGP,2000/05/07,1999.990,0 +9035,US survey mile,length,9001,63360,39.37,Used in USA primarily for public lands cadastral work.,Bureau of Land Management technical bulletin 6 (1973) and Standard Field Tables 8th edition (1956).,OGP,2000/05/07,1999.990,0 +9036,kilometre,length,9001,1000,1,,ISO 1000.,OGP,1998/11/11,,0 +9037,Clarke's yard,length,9001,0.9143917962,1,"=3 Clarke's feet. Assumes Clarke's 1865 ratio of 1 British foot = 0.3047972654 French legal metres applies to the international metre. Used in older Australian, southern African & British West Indian mapping.",Australian Land Information Group www.auslig.gov.au,OGP,2005/09/06,1997.233 1999.990 2005.370 2005.460,0 +9038,Clarke's chain,length,9001,20.1166195164,1,"=22 Clarke's yards. Assumes Clarke's 1865 ratio of 1 British foot = 0.3047972654 French legal metres applies to the international metre. Used in older Australian, southern African & British West Indian mapping.",Australian Land Information Group www.auslig.gov.au,OGP,2005/09/06,1997.233 1999.990 2005.370 2005.460,0 +9039,Clarke's link,length,9001,0.201166195164,1,"=1/100 Clarke's chain. Assumes Clarke's 1865 ratio of 1 British foot = 0.3047972654 French legal metres applies to the international metre. Used in older Australian, southern African & British West Indian mapping.",Australian Land Information Group www.auslig.gov.au,OGP,2005/09/06,1997.233 1999.990 2005.370 2005.460,0 +9040,British yard (Sears 1922),length,9001,36,39.370147,Uses Sear's 1922 British yard-metre ratio as given by Bomford as 39.370147 inches per metre. Used in East Malaysian and older New Zealand mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9041,British foot (Sears 1922),length,9001,12,39.370147,Uses Sear's 1922 British yard-metre ratio as given by Bomford as 39.370147 inches per metre. Used in East Malaysian and older New Zealand mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9042,British chain (Sears 1922),length,9001,792,39.370147,Uses Sear's 1922 British yard-metre ratio as given by Bomford as 39.370147 inches per metre. Used in East Malaysian and older New Zealand mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9043,British link (Sears 1922),length,9001,7.92,39.370147,Uses Sear's 1922 British yard-metre ratio as given by Bomford as 39.370147 inches per metre. Used in East Malaysian and older New Zealand mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9050,British yard (Benoit 1895 A),length,9001,0.9143992,1,Uses Benoit's 1895 British yard-metre ratio as given by Clark as 0.9143992 metres per yard. Used for deriving metric size of ellipsoid in Palestine.,"J.S.Clark; ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2006/03/21,1997.233 1999.990 2006.260,0 +9051,British foot (Benoit 1895 A),length,9001,0.9143992,3,Uses Benoit's 1895 British yard-metre ratio as given by Clark as 0.9143992 metres per yard. Used for deriving metric size of ellipsoid in Palestine.,"J.S.Clark; ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2006/03/21,1997.233 1999.990 2006.260,0 +9052,British chain (Benoit 1895 A),length,9001,20.1167824,1,Uses Benoit's 1895 British yard-metre ratio as given by Clark as 0.9143992 metres per yard. Used for deriving metric size of ellipsoid in Palestine.,"J.S.Clark; ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2006/03/21,1997.233 1999.990 2006.260,0 +9053,British link (Benoit 1895 A),length,9001,0.201167824,1,Uses Benoit's 1895 British yard-metre ratio as given by Clark as 0.9143992 metres per yard. Used for deriving metric size of ellipsoid in Palestine.,"J.S.Clark; ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2006/03/21,1997.233 1999.990 2006.260,0 +9060,British yard (Benoit 1895 B),length,9001,36,39.370113,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.","G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9061,British foot (Benoit 1895 B),length,9001,12,39.370113,Uses Benoit's 1895 British yard-metre ratio as given by Bomford as 39.370113 inches per metre. Used in West Malaysian mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9062,British chain (Benoit 1895 B),length,9001,792,39.370113,Uses Benoit's 1895 British yard-metre ratio as given by Bomford as 39.370113 inches per metre. Used in West Malaysian mapping.,"G. Bomford ""Geodesy"" 2nd edition 1962; after J.S.Clark ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9063,British link (Benoit 1895 B),length,9001,7.92,39.370113,Uses Benoit's 1895 British yard-metre ratio as given by Bomford as 39.370113 inches per metre. Used in West Malaysian mapping.,"G. Bomford; ""Geodesy""; 3rd edition 1975",OGP,2000/05/07,1997.233 1999.990,0 +9070,British foot (1865),length,9001,0.9144025,3,Uses Clark's estimate of 1853-1865 British foot-metre ratio of 0.9144025 metres per yard. Used in 1962 and 1975 estimates of Indian foot.,"J.S.Clark; ""Remeasurement of the Old Length Standards""; Empire Survey Review no. 90; 1953.",OGP,2000/05/07,1997.233 1999.990,0 +9080,Indian foot,length,9001,12,39.370142,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (= 3 British feet) taken to be J.S.Clark's 1865 value of 0.9144025 metres.,"G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,2000/05/07,1997.231 1999.990,0 +9081,Indian foot (1937),length,9001,0.30479841,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British foot taken to be 1895 Benoit value of 12/39.370113m. Rounded to 8 decimal places as 0.30479841. Used from Bangladesh to Vietnam. Previously used in India and Pakistan but superseded.,"G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,2000/05/07,1997.231 1999.990,0 +9082,Indian foot (1962),length,9001,0.3047996,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (3 feet) taken to be J.S. Clark's 1865 value of 0.9144025m. Rounded to 7 significant figures with a small error as 1 Ind ft=0.3047996m. Used in Pakistan since metrication.,"G. Bomford; ""Geodesy""; 2nd edition 1962",OGP,2007/01/25,1997.231 1999.990 2007.011,0 +9083,Indian foot (1975),length,9001,0.3047995,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (3 feet) taken to be J.S. Clark's 1865 value of 0.9144025m. Rounded to 7 significant figures as 1 Ind ft=0.3047995m. Used in India since metrication.,"G. Bomford; ""Geodesy""; 3rd edition 1975",OGP,2007/01/25,1997.231 1999.990 2007.011,0 +9084,Indian yard,length,9001,36,39.370142,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (= 3 British feet) taken to be J.S.Clark's 1865 value of 0.9144025 metres.,"G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,2000/05/07,1997.231 1999.990,0 +9085,Indian yard (1937),length,9001,0.91439523,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British foot taken to be 1895 Benoit value of 12/39.370113m. Rounded to 8 decimal places as 0.30479841. Used from Bangladesh to Vietnam. Previously used in India and Pakistan but superseded.,"G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,2000/05/07,1997.231 1999.990,0 +9086,Indian yard (1962),length,9001,0.9143988,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (3 feet) taken to be J.S. Clark's 1865 value of 0.9144025m. Rounded to 7 significant figures with a small error as 1 Ind ft=0.3047996m. Used in Pakistan since metrication.,"G. Bomford; ""Geodesy""; 2nd edition 1962",OGP,2007/01/25,1997.231 1999.990 2007.011,0 +9087,Indian yard (1975),length,9001,0.9143985,1,Indian Foot = 0.99999566 British feet (A.R.Clarke 1865). British yard (3 feet) taken to be J.S. Clark's 1865 value of 0.9144025m. Rounded to 7 significant figures as 1 Ind ft=0.3047995m. Used in India since metrication.,"G. Bomford; ""Geodesy""; 3rd edition 1975",OGP,2007/01/25,1997.231 1999.990 2007.011,0 +9093,Statute mile,length,9001,1609.344,1,=5280 feet,OGP,OGP,2000/03/07,,0 +9094,Gold Coast foot,length,9001,6378300,20926201,"Used in Ghana and some adjacent parts of British west Africa prior to metrication, except for the metrication of projection defining parameters when British foot (Sears 1922) used.",Ordnance Survey International,OGP,2001/01/21,2000.861,0 +9095,British foot (1936),length,9001,0.3048007491,1,For the 1936 retriangulation OSGB defines the relationship of 10 feet of 1796 to the International metre through the logarithmic relationship (10^0.48401603 exactly). 1 ft = 0.3048007491…m. Also used for metric conversions in Ireland.,"1. ""The Retriangulation of Great Britain"", Ordnance Survey of Great Britain. +2. ""The Irish Grid - A Description of the Co-ordinate Reference System"" published by Ordnance Survey of Ireland, Dublin and Ordnance Survey of Northern Ireland, Belfast.",OGP,2006/11/27,2002.621 2006.932,0 +9096,yard,length,9001,0.9144,1,=3 international feet.,OGP,OGP,2006/07/14,,0 +9097,chain,length,9001,20.1168,1,=22 international yards or 66 international feet.,OGP,OGP,2006/07/14,,0 +9098,link,length,9001,20.1168,100,=1/100 international chain.,OGP,OGP,2006/07/14,,0 +9099,British yard (Sears 1922 truncated),length,9001,0.914398,1,Uses Sear's 1922 British yard-metre ratio (UoM code 9040) truncated to 6 significant figures.,Defence Geographic Centre,OGP,2006/10/23,2006.901,0 +9101,radian,angle,9101,1,1,SI standard unit.,ISO 1000:1992,OGP,1995/06/02,,0 +9102,degree,angle,9101,3.14159265358979,180,= pi/180 radians,,OGP,2002/11/18,1996.220 2002.860,0 +9103,arc-minute,angle,9101,3.14159265358979,10800,1/60th degree = ((pi/180) / 60) radians,,OGP,2002/11/18,1996.220 2002.860,0 +9104,arc-second,angle,9101,3.14159265358979,648000,1/60th arc-minute = ((pi/180) / 3600) radians,,OGP,2002/11/18,1996.220 2002.860,0 +9105,grad,angle,9101,3.14159265358979,200,=pi/200 radians.,,OGP,2002/11/18,1996.220 1999.050 2002.860,0 +9106,gon,angle,9101,3.14159265358979,200,=pi/200 radians,,OGP,2002/11/18,1996.220 2002.860,0 +9107,degree minute second,angle,9102,,,"Degree representation. Format: signed degrees (integer) - arc-minutes (integer) - arc-seconds (real, any precision). Different symbol sets are in use as field separators, for example º ' "". Convert to degrees using algorithm.",OGP,OGP,2002/11/22,1996.190 2002.070 2002.780,0 +9108,degree minute second hemisphere,angle,9102,,,"Degree representation. Format: degrees (integer) - arc-minutes (integer) - arc-seconds (real) - hemisphere abbreviation (single character N S E or W). Different symbol sets are in use as field separators for example º ' "". Convert to deg using algorithm.",OGP,OGP,2002/11/22,1996.190 2002.070 2002.780,0 +9109,microradian,angle,9101,1,1000000,rad * 10E-6,ISO 1000.,OGP,1996/10/18,1999.050,0 +9110,sexagesimal DMS,angle,9102,,,Pseudo unit. Format: signed degrees - period - minutes (2 digits) - integer seconds (2 digits) - fraction of seconds (any precision). Must include leading zero in minutes and seconds and exclude decimal point for seconds. Convert to degree using formula.,OGP,OGP,2008/03/26,2002.270 2002.780 2008.020,0 +9111,sexagesimal DM,angle,9102,,,Pseudo unit. Format: sign - degrees - decimal point - integer minutes (two digits) - fraction of minutes (any precision). Must include leading zero in integer minutes. Must exclude decimal point for minutes. Convert to deg using algorithm.,OGP,OGP,2002/11/22,2002.070 2002.780,0 +9112,centesimal minute,angle,9101,3.14159265358979,20000,1/100 of a grad and gon = ((pi/200) / 100) radians,http://www.geodesy.matav.hu/,OGP,2005/09/06,1998.480 1999.510 2002.860 2005.460,0 +9113,centesimal second,angle,9101,3.14159265358979,2000000,"1/100 of a centesimal minute or 1/10,000th of a grad and gon = ((pi/200) / 10000) radians",http://www.geodesy.matav.hu/,OGP,2005/09/06,1999.510 2002.860 2005.460,0 +9114,mil_6400,angle,9101,3.14159265358979,3200,Angle subtended by 1/6400 part of a circle. Approximates to 1/1000th radian. Note that other approximations (notably 1/6300 circle and 1/6000 circle) also exist.,http://www.geodesy.matav.hu/,OGP,2005/09/06,1999.510 2005.460,0 +9115,degree minute,angle,9102,,,"Degree representation. Format: signed degrees (integer) - arc-minutes (real, any precision). Different symbol sets are in use as field separators, for example º '. Convert to degrees using algorithm.",OGP,OGP,2002/11/22,2002.780,0 +9116,degree hemisphere,angle,9102,,,"Degree representation. Format: degrees (real, any precision) - hemisphere abbreviation (single character N S E or W). Convert to degrees using algorithm.",OGP,OGP,2002/11/22,,0 +9117,hemisphere degree,angle,9102,,,"Degree representation. Format: hemisphere abbreviation (single character N S E or W) - degrees (real, any precision). Convert to degrees using algorithm.",OGP,OGP,2002/11/22,,0 +9118,degree minute hemisphere,angle,9102,,,"Degree representation. Format: degrees (integer) - arc-minutes (real, any precision) - hemisphere abbreviation (single character N S E or W). Different symbol sets are in use as field separators, for example º '. Convert to degrees using algorithm.",OGP,OGP,2002/11/22,,0 +9119,hemisphere degree minute,angle,9102,,,"Degree representation. Format: hemisphere abbreviation (single character N S E or W) - degrees (integer) - arc-minutes (real, any precision). Different symbol sets are in use as field separators, for example º '. Convert to degrees using algorithm.",OGP,OGP,2002/11/22,,0 +9120,hemisphere degree minute second,angle,9102,,,"Degree representation. Format: hemisphere abbreviation (single character N S E or W) - degrees (integer) - arc-minutes (integer) - arc-seconds (real). Different symbol sets are in use as field separators for example º ' "". Convert to deg using algorithm.",OGP,OGP,2002/11/22,,0 +9121,sexagesimal DMS.s,angle,9102,,,"Pseudo unit. Format: signed degrees - minutes (two digits) - seconds (real, any precision). Must include leading zero in minutes and seconds where value is under 10 and include decimal separator for seconds. Convert to degree using algorithm.",ISO 6709:1983.,OGP,2002/11/22,,0 +9122,degree (supplier to define representation),angle,9101,3.14159265358979,180,"= pi/180 radians. The degree representation (e.g. decimal, DMSH, etc.) must be clarified by suppliers of data associated with this code.",OGP,OGP,2004/01/05,,0 +9201,unity,scale,9201,1,1,,,OGP,1996/09/12,,0 +9202,parts per million,scale,9201,1,1000000,,,OGP,1996/09/12,,0 +9203,coefficient,scale,9201,1,1,Used when parameters are coefficients. They inherently take the units which depend upon the term to which the coefficient applies.,OGP,OGP,2004/09/14,2004.530,0 +9204,Bin width 330 US survey feet,length,9001,3960,39.37,,OGP,OGP,2000/10/19,2000.590,0 +9205,Bin width 165 US survey feet,length,9001,1980,39.37,,OGP,OGP,2000/10/19,2000.590,0 +9206,Bin width 82.5 US survey feet,length,9001,990,39.37,,OGP,OGP,2000/10/19,2000.590,0 +9207,Bin width 37.5 metres,length,9001,37.5,1,,OGP,OGP,2000/10/19,2000.590,0 +9208,Bin width 25 metres,length,9001,25,1,,OGP,OGP,2000/10/19,2000.590,0 +9209,Bin width 12.5 metres,length,9001,12.5,1,,OGP,OGP,2000/10/19,2000.590,0 +9210,Bin width 6.25 metres,length,9001,6.25,1,,OGP,OGP,2000/10/19,2000.590,0 +9211,Bin width 3.125 metres,length,9001,3.125,1,,OGP,OGP,2000/10/19,2000.590,0 +9300,British foot (Sears 1922 truncated),length,9001,0.914398,3,"Uses Sear's 1922 British yard-metre ratio (UoM code 9040) truncated to 6 significant figures; this truncated ratio (0.914398, UoM code 9099) then converted to other imperial units. 3 ftSe(T) = 1 ydSe(T).",Defence Geographic Centre,OGP,2006/10/23,2006.901,0 +9301,British chain (Sears 1922 truncated),length,9001,20.116756,1,"Uses Sear's 1922 British yard-metre ratio (UoM code 9040) truncated to 6 significant figures; this truncated ratio (0.914398, UoM code 9099) then converted to other imperial units. 1 chSe(T) = 22 ydSe(T). Used in metrication of Malaya RSO grid.",Defence Geographic Centre,OGP,2006/10/23,2006.901,0 +9302,British link (Sears 1922 truncated),length,9001,20.116756,100,"Uses Sear's 1922 British yard-metre ratio (UoM code 9040) truncated to 6 significant figures; this truncated ratio (0.914398, UoM code 9099) then converted to other imperial units. 100 lkSe(T) = 1 chSe(T).",Defence Geographic Centre,OGP,2006/10/23,2006.901,0 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/DotSpatial.Data.Rasters.GdalExtension.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/DotSpatial.Plugins.Taudem.Port.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Analysis.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/Readme.txt (revision 2866) @@ -0,0 +1,3 @@ +Important: this plugin does not works at the moment. See https://dotspatial.codeplex.com/workitem/25612 + +LiDAR support. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Localization/Localization.wxl =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Localization/Localization.wxl (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Localization/Localization.wxl (revision 2866) @@ -0,0 +1,3 @@ + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/utils/svn_insert_version.cmd =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/utils/svn_insert_version.cmd (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/utils/svn_insert_version.cmd (revision 2866) @@ -0,0 +1,74 @@ +setlocal enabledelayedexpansion +@ECHO off +ECHO "svn_insert_version.cmd started" + +SET ORG_DIR=%CD% + +SET argcount=0 +FOR %%x IN (%*) DO SET /A argcount+=1 + +IF %argcount%==0 ( + ECHO "invalid arguments: [path] (infile) (outfile)" + ECHO "usage: replace SVNREV text with revision number, SVNROOT with repository" + ECHO "path: execute at specific location" + ECHO "[optional] infile: file to read, defaults to AssemblyInfo.cs.svn" + ECHO "[optional] outfile: file to create, defaults to AssemblyInfo.cs" + GOTO EOF +) + +ECHO "%argcount% arguments received" + +IF %argcount%==1 ( + ECHO "setting default in and out files." + SET INTEXTFILE=AssemblyInfo.cs.svn + SET OUTTEXTFILE=AssemblyInfo.cs +) ELSE ( + ECHO "setting custom in and out files." + SET INTEXTFILE=%2 + SET OUTTEXTFILE=%3 +) + +CD %1 + +ECHO "parsing svn info in directory %CD%" + +REM GET THE SVN VERSION NUMBER AND REVISION PATH +FOR /f "tokens=1,* delims=�" %%A IN ('svn info') DO ( + ECHO %%A | findstr /I "^Revision" && SET REV_BUF=%%A + ECHO %%A | findstr /I "^URL" && SET ROOT_BUF=%%A + ECHO %%A | findstr /I /C:"Repository Root" && SET AFTER_BUF=%%A +) + +IF NOT DEFINED REV_BUF ( + SET SVN_REV=0 + SET SVN_ROOT= +) ELSE ( + SET SVN_REV=%REV_BUF:~10% + SET SVN_ROOT=%ROOT_BUF:~5% + SET "FIND=*%AFTER_BUF:~17% + CALL SET SVN_ROOT=%%SVN_ROOT:!FIND!=%% +) + +ECHO "using rev %SVN_REV% and root %SVN_ROOT%" + +REM SUBSTITUTE THE VERSION NUMBER IN TEMPLATE +ECHO "modifying %OUTTEXTFILE% in directory %1" +SET SEARCHTEXT=SVNREV +SET SEARCHROOT=SVNROOT +SET OUTPUTLINE= + +IF EXIST %OUTTEXTFILE% ( + ECHO "removing %OUTTEXTFILE%" + DEL %OUTTEXTFILE% +) + +ECHO "writing new %OUTTEXTFILE%" + +REM This command can process version files which contain special character "!" +call powershell -Command "(gc %INTEXTFILE%) -replace '%SEARCHTEXT%', '%SVN_REV%' | Out-File -encoding UTF8 %OUTTEXTFILE% + +) + +CD %ORG_DIR% +ECHO "svn_insert_version.cmd done" +:EOF \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/DotSpatial.Plugins.Taudem.Port.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/de-DE/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_netCDF.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_iw.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_iw.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_iw.csv (revision 2866) @@ -0,0 +1,236 @@ +"Code","Attribute","Acronym","Attributetype","Class" +1,Agency responsible for production,AGENCY,A,F +2,Beacon shape,BCNSHP,E,F +3,Building shape,BUISHP,E,F +4,Buoy shape,BOYSHP,E,F +5,Buried depth,BURDEP,F,F +6,Call sign,CALSGN,S,F +7,Category of airport/airfield,CATAIR,L,F +8,Category of anchorage,CATACH,L,F +9,Category of bridge,CATBRG,L,F +10,Category of built-up area,CATBUA,E,F +11,Category of cable,CATCBL,E,F +12,Category of canal,CATCAN,E,F +13,Category of cardinal mark,CATCAM,E,F +14,Category of checkpoint,CATCHP,E,F +15,Category of coastline,CATCOA,E,F +16,Category of control point,CATCTR,E,F +17,Category of conveyor,CATCON,E,F +18,Category of coverage,CATCOV,E,F +19,Category of crane,CATCRN,E,F +20,Category of dam,CATDAM,E,F +21,Category of distance mark,CATDIS,E,F +22,Category of dock,CATDOC,E,F +23,Category of dumping ground,CATDPG,L,F +24,Category of fence/wall,CATFNC,E,F +25,Category of ferry,CATFRY,E,F +26,Category of fishing facility,CATFIF,E,F +27,Category of fog signal,CATFOG,E,F +28,Category of fortified structure,CATFOR,E,F +29,Category of gate,CATGAT,E,F +30,Category of harbour facility,CATHAF,L,F +31,Category of hulk,CATHLK,L,F +32,Category of ice,CATICE,E,F +33,Category of installation buoy,CATINB,E,F +34,Category of land region,CATLND,L,F +35,Category of landmark,CATLMK,L,F +36,Category of lateral mark,CATLAM,E,F +37,Category of light,CATLIT,L,F +38,Category of marine farm/culture,CATMFA,E,F +39,Category of military practice area,CATMPA,L,F +40,Category of mooring/warping facility,CATMOR,E,F +41,Category of navigation line,CATNAV,E,F +42,Category of obstruction,CATOBS,E,F +43,Category of offshore platform,CATOFP,L,F +44,Category of oil barrier,CATOLB,E,F +45,Category of pile,CATPLE,E,F +46,Category of pilot boarding place,CATPIL,E,F +47,Category of pipeline / pipe,CATPIP,L,F +48,Category of production area,CATPRA,E,F +49,Category of pylon,CATPYL,E,F +50,Category of quality of data,CATQUA,E,F +51,Category of radar station,CATRAS,E,F +52,Category of radar transponder beacon,CATRTB,E,F +53,Category of radio station,CATROS,L,F +54,Category of recommended track,CATTRK,E,F +55,Category of rescue station,CATRSC,L,F +56,Category of restricted area,CATREA,L,F +57,Category of road,CATROD,E,F +58,Category of runway,CATRUN,E,F +59,Category of sea area,CATSEA,E,F +60,Category of shoreline construction,CATSLC,E,F +61,"Category of signal station, traffic",CATSIT,L,F +62,"Category of signal station, warning",CATSIW,L,F +63,Category of silo/tank,CATSIL,E,F +64,Category of slope,CATSLO,E,F +65,Category of small craft facility,CATSCF,L,F +66,Category of special purpose mark,CATSPM,L,F +67,Category of Traffic Separation Scheme,CATTSS,E,F +68,Category of vegetation,CATVEG,L,F +69,Category of water turbulence,CATWAT,E,F +70,Category of weed/kelp,CATWED,E,F +71,Category of wreck,CATWRK,E,F +72,Category of zone of confidence data,CATZOC,E,F +73,Character spacing,$SPACE,E,$ +74,Character specification,$CHARS,A,$ +75,Colour,COLOUR,L,F +76,Colour pattern,COLPAT,L,F +77,Communication channel,COMCHA,A,F +78,Compass size,$CSIZE,F,$ +79,Compilation date,CPDATE,A,F +80,Compilation scale,CSCALE,I,F +81,Condition,CONDTN,E,F +82,"Conspicuous, Radar",CONRAD,E,F +83,"Conspicuous, visual",CONVIS,E,F +84,Current velocity,CURVEL,F,F +85,Date end,DATEND,A,F +86,Date start,DATSTA,A,F +87,Depth range value 1,DRVAL1,F,F +88,Depth range value 2,DRVAL2,F,F +89,Depth units,DUNITS,E,F +90,Elevation,ELEVAT,F,F +91,Estimated range of transmission,ESTRNG,F,F +92,Exhibition condition of light,EXCLIT,E,F +93,Exposition of sounding,EXPSOU,E,F +94,Function,FUNCTN,L,F +95,Height,HEIGHT,F,F +96,Height/length units,HUNITS,E,F +97,Horizontal accuracy,HORACC,F,F +98,Horizontal clearance,HORCLR,F,F +99,Horizontal length,HORLEN,F,F +100,Horizontal width,HORWID,F,F +101,Ice factor,ICEFAC,F,F +102,Information,INFORM,S,F +103,Jurisdiction,JRSDTN,E,F +104,Justification - horizontal,$JUSTH,E,$ +105,Justification - vertical,$JUSTV,E,$ +106,Lifting capacity,LIFCAP,F,F +107,Light characteristic,LITCHR,E,F +108,Light visibility,LITVIS,L,F +109,Marks navigational - System of,MARSYS,E,F +110,Multiplicity of lights,MLTYLT,I,F +111,Nationality,NATION,A,F +112,Nature of construction,NATCON,L,F +113,Nature of surface,NATSUR,L,F +114,Nature of surface - qualifying terms,NATQUA,L,F +115,Notice to Mariners date,NMDATE,A,F +116,Object name,OBJNAM,S,F +117,Orientation,ORIENT,F,F +118,Periodic date end,PEREND,A,F +119,Periodic date start,PERSTA,A,F +120,Pictorial representation,PICREP,S,F +121,Pilot district,PILDST,S,F +122,Producing country,PRCTRY,A,F +123,Product,PRODCT,L,F +124,Publication reference,PUBREF,S,F +125,Quality of sounding measurement,QUASOU,L,F +126,Radar wave length,RADWAL,A,F +127,Radius,RADIUS,F,F +128,Recording date,RECDAT,A,F +129,Recording indication,RECIND,A,F +130,Reference year for magnetic variation,RYRMGV,A,F +131,Restriction,RESTRN,L,F +132,Scale maximum,SCAMAX,I,F +133,Scale minimum,SCAMIN,I,F +134,Scale value one,SCVAL1,I,F +135,Scale value two,SCVAL2,I,F +136,Sector limit one,SECTR1,F,F +137,Sector limit two,SECTR2,F,F +138,Shift parameters,SHIPAM,A,F +139,Signal frequency,SIGFRQ,I,F +140,Signal generation,SIGGEN,E,F +141,Signal group,SIGGRP,A,F +142,Signal period,SIGPER,F,F +143,Signal sequence,SIGSEQ,A,F +144,Sounding accuracy,SOUACC,F,F +145,Sounding distance - maximum,SDISMX,I,F +146,Sounding distance - minimum,SDISMN,I,F +147,Source date,SORDAT,A,F +148,Source indication,SORIND,A,F +149,Status,STATUS,L,F +150,Survey authority,SURATH,S,F +151,Survey date - end,SUREND,A,F +152,Survey date - start,SURSTA,A,F +153,Survey type,SURTYP,L,F +154,Symbol scaling factor,$SCALE,F,$ +155,Symbolization code,$SCODE,A,$ +156,Technique of sounding measurement,TECSOU,L,F +157,Text string,$TXSTR,S,$ +158,Textual description,TXTDSC,S,F +159,Tidal stream - panel values,TS_TSP,A,F +160,"Tidal stream, current - time series values",TS_TSV,A,F +161,Tide - accuracy of water level,T_ACWL,E,F +162,Tide - high and low water values,T_HWLW,A,F +163,Tide - method of tidal prediction,T_MTOD,E,F +164,Tide - time and height differences,T_THDF,A,F +165,"Tide, current - time interval of values",T_TINT,I,F +166,Tide - time series values,T_TSVL,A,F +167,Tide - value of harmonic constituents,T_VAHC,A,F +168,Time end,TIMEND,A,F +169,Time start,TIMSTA,A,F +170,Tint,$TINTS,E,$ +171,Topmark/daymark shape,TOPSHP,E,F +172,Traffic flow,TRAFIC,E,F +173,Value of annual change in magnetic variation,VALACM,F,F +174,Value of depth contour,VALDCO,F,F +175,Value of local magnetic anomaly,VALLMA,F,F +176,Value of magnetic variation,VALMAG,F,F +177,Value of maximum range,VALMXR,F,F +178,Value of nominal range,VALNMR,F,F +179,Value of sounding,VALSOU,F,F +180,Vertical accuracy,VERACC,F,F +181,Vertical clearance,VERCLR,F,F +182,"Vertical clearance, closed",VERCCL,F,F +183,"Vertical clearance, open",VERCOP,F,F +184,"Vertical clearance, safe",VERCSA,F,F +185,Vertical datum,VERDAT,E,F +186,Vertical length,VERLEN,F,F +187,Water level effect,WATLEV,E,F +188,Category of Tidal stream,CAT_TS,E,F +189,Positional accuracy units,PUNITS,E,F +300,Information in national language,NINFOM,S,N +301,Object name in national language,NOBJNM,S,N +302,Pilot district in national language,NPLDST,S,N +303,Text string in national language,$NTXST,S,N +304,Textual description in national language,NTXTDS,S,N +400,Horizontal datum,HORDAT,E,S +401,Positional Accuracy,POSACC,F,S +402,Quality of position,QUAPOS,E,S +17000,Category of Anchorage area,catach,L,F +17001,Category of distance mark,catdis,E,F +17002,Category of signal station trafficcatsit,catsit,L,F +17003,Category of signal station warning,catsiw,L,F +17004,Restriction,restrn,L,F +17005,Vertical datum,verdat,E,F +17006,Category of bridge,catbrg,L,F +17007,Category of ferry,catfry,L,F +17008,Category of harbour facilities,cathaf,L,F +17009,"Marks navigational � System of",marsys,E,F +17050,Additional mark,addmrk,L,F +17051,Category of bank,catbnk,E,F +17052,Category of notice mark,catnmk,E,F +17055,Class of dangerous cargo,clsdng,E,F +17056,Direction of impact,dirimp,L,F +17057,Distance from bank,disbk1,F,F +17058,Distance from bank,disbk2,F,F +17059,"Distance of impact, upstream",disipu,F,F +17060,"Distance of impact, downstream",disipd,F,F +17061,Elevation 1,eleva1,F,F +17062,Elevation 2,eleva2,F,F +17063,Function of notice mark,fnctnm,E,F +17064,Waterway distance,wtwdis,F,F +17065,Bunker vessel,bunves,E,F +17066,Category of berth,catbrt,L,F +17067,Category of bunker,catbun,L,F +17068,Category of CEMT class,catccl,L,F +17069,Category of communication,catcom,L,F +17070,Category of harbour area,cathbr,L,F +17071,Category of refuse dump,catrfd,L,F +17072,Category of terminal,cattml,L,F +17073,Communication,comctn,S,F +17074,"Horizontal clearance, length",horcll,F,F +17075,"Horizontal clearance, width",horclw,F,F +17076,Transshipping goods,trshgd,L,F +17077,UN Location Code,unlocd,S,F +17112,Category of waterway mark,catwwm,E,F +40000,Update message,updmsg,S,F Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/de-DE/DotSpatial.Controls.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Help/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Help/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Help/Readme.txt (revision 2866) @@ -0,0 +1 @@ + Allows to view online DotSpatial help. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/it-IT/DotSpatial.Controls.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_GMT.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/msvcp100.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/cfitsio.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/hdf5dll.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/Authorization/x86/dauth.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Analysis.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/packages.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/packages.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/packages.config (revision 2866) @@ -0,0 +1,4 @@ + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/readme.txt (revision 2866) @@ -0,0 +1,48 @@ +Command Line Parser Library 1.9.3.19 Beta +----------------------------------------- +Giacomo Stelluti Scala +(gsscoder@gmail.com) + +Codeplex: http://commandline.codeplex.com/ +GitHub (Latest Sources, Updated Docs): https://github.com/gsscoder/commandline + +Upgrading from 1.8.* versions: +------------------------------ +The major API change is that all attributes that inherits from BaseOptionAttribute now +apply only to properties. Fields are no longer supported. + +Old Code: +--------- +class Options { + [Option("o", "my-option", HelpText="This is an option!")] + public int MyOption = 10; +} + +New Code: +--------- +class Options { + [Option("o", "my-option", DefaultValue=10, HelpText="This is an option!")] + public int MyOption { get; set; } +} + +As you can see I've added the new DefaultValue property to help you initialize properties. + +Shortcut for Help Screen +------------------------ +[HelpOption] +public string GetUsage() +{ + return HelpText.AutoBuild(this, + (HelpText current) => HelpText.DefaultParsingErrorsHandler(this, current)); +} + +Note: +----- +If you don't use mutually exclusive options, now there's a singleton built for common uses: + +if (CommandLineParser.Default.ParseArguments(args, options)) { + // consume values here +} + + +Have fun! \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_StatePlane_extra.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_StatePlane_extra.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_StatePlane_extra.wkt (revision 2866) @@ -0,0 +1,631 @@ +1010,PROJCS["NAD_1983_HARN_StatePlane_Alabama_East_FIPS_0101",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1]] +1011,PROJCS["NAD_1983_StatePlane_Alabama_East_FIPS_0101",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1]] +1012,PROJCS["NAD_1983_StatePlane_Alabama_East_FIPS_0101_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.304800609601219241]] +1014,PROJCS["NAD_1927_StatePlane_Alabama_East_FIPS_0101",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.304800609601219241]] +1020,PROJCS["NAD_1983_HARN_StatePlane_Alabama_West_FIPS_0102",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +1021,PROJCS["NAD_1983_StatePlane_Alabama_West_FIPS_0102",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +1022,PROJCS["NAD_1983_StatePlane_Alabama_West_FIPS_0102_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +1024,PROJCS["NAD_1927_StatePlane_Alabama_West_FIPS_0102",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +2010,PROJCS["NAD_1983_HARN_StatePlane_Arizona_East_FIPS_0201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2011,PROJCS["NAD_1983_StatePlane_Arizona_East_FIPS_0201",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2012,PROJCS["NAD_1983_StatePlane_Arizona_East_FIPS_0201_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2013,PROJCS["NAD_1983_HARN_StatePlane_Arizona_East_FIPS_0201_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2014,PROJCS["NAD_1927_StatePlane_Arizona_East_FIPS_0201",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2015,PROJCS["NAD_1983_HARN_StatePlane_Arizona_East_FIPS_0201_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2016,PROJCS["NAD_1983_StatePlane_Arizona_East_FIPS_0201_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2020,PROJCS["NAD_1983_HARN_StatePlane_Arizona_Central_FIPS_0202",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2021,PROJCS["NAD_1983_StatePlane_Arizona_Central_FIPS_0202",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2022,PROJCS["NAD_1983_StatePlane_Arizona_Central_FIPS_0202_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2023,PROJCS["NAD_1983_HARN_StatePlane_Arizona_Central_FIPS_0202_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2024,PROJCS["NAD_1927_StatePlane_Arizona_Central_FIPS_0202",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2025,PROJCS["NAD_1983_HARN_StatePlane_Arizona_Central_FIPS_0202_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2026,PROJCS["NAD_1983_StatePlane_Arizona_Central_FIPS_0202_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2030,PROJCS["NAD_1983_HARN_StatePlane_Arizona_West_FIPS_0203",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2031,PROJCS["NAD_1983_StatePlane_Arizona_West_FIPS_0203",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +2032,PROJCS["NAD_1983_StatePlane_Arizona_West_FIPS_0203_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2033,PROJCS["NAD_1983_HARN_StatePlane_Arizona_West_FIPS_0203_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2034,PROJCS["NAD_1927_StatePlane_Arizona_West_FIPS_0203",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +2035,PROJCS["NAD_1983_HARN_StatePlane_Arizona_West_FIPS_0203_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +2036,PROJCS["NAD_1983_StatePlane_Arizona_West_FIPS_0203_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot",0.3048]] +3010,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_North_FIPS_0301",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-92.0],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1.0]] +3011,PROJCS["NAD_1983_StatePlane_Arkansas_North_FIPS_0301",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1]] +3012,PROJCS["NAD_1983_StatePlane_Arkansas_North_FIPS_0301_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.304800609601219241]] +3013,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_North_FIPS_0301_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-92.0],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.3048006096012192]] +3014,PROJCS["NAD_1927_StatePlane_Arkansas_North_FIPS_0301",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.304800609601219241]] +3020,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_South_FIPS_0302",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",400000.0],PARAMETER["Central_Meridian",-92.0],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Meter",1.0]] +3021,PROJCS["NAD_1983_StatePlane_Arkansas_South_FIPS_0302",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Meter",1]] +3022,PROJCS["NAD_1983_StatePlane_Arkansas_South_FIPS_0302_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Foot_US",0.304800609601219241]] +3023,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_South_FIPS_0302_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-92.0],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Foot_US",0.3048006096012192]] +3024,PROJCS["NAD_1927_StatePlane_Arkansas_South_FIPS_0302",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Foot_US",0.304800609601219241]] +4010,PROJCS["NAD_1983_HARN_StatePlane_California_I_FIPS_0401",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1]] +4011,PROJCS["NAD_1983_StatePlane_California_I_FIPS_0401",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1]] +4012,PROJCS["NAD_1983_StatePlane_California_I_FIPS_0401_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +4013,PROJCS["NAD_1983_HARN_StatePlane_California_I_FIPS_0401_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122.0],PARAMETER["Standard_Parallel_1",40.0],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.3048006096012192]] +4014,PROJCS["NAD_1927_StatePlane_California_I_FIPS_0401",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +4020,PROJCS["NAD_1983_HARN_StatePlane_California_II_FIPS_0402",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +4021,PROJCS["NAD_1983_StatePlane_California_II_FIPS_0402",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +4022,PROJCS["NAD_1983_StatePlane_California_II_FIPS_0402_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.304800609601219241]] +4023,PROJCS["NAD_1983_HARN_StatePlane_California_II_FIPS_0402_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122.0],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.3048006096012192]] +4024,PROJCS["NAD_1927_StatePlane_California_II_FIPS_0402",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.304800609601219241]] +4030,PROJCS["NAD_1983_HARN_StatePlane_California_III_FIPS_0403",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Meter",1]] +4031,PROJCS["NAD_1983_StatePlane_California_III_FIPS_0403",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Meter",1]] +4032,PROJCS["NAD_1983_StatePlane_California_III_FIPS_0403_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Foot_US",0.304800609601219241]] +4033,PROJCS["NAD_1983_HARN_StatePlane_California_III_FIPS_0403_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Foot_US",0.3048006096012192]] +4034,PROJCS["NAD_1927_StatePlane_California_III_FIPS_0403",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Foot_US",0.304800609601219241]] +4040,PROJCS["NAD_1983_HARN_StatePlane_California_IV_FIPS_0404",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Meter",1]] +4041,PROJCS["NAD_1983_StatePlane_California_IV_FIPS_0404",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Meter",1]] +4042,PROJCS["NAD_1983_StatePlane_California_IV_FIPS_0404_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Foot_US",0.304800609601219241]] +4043,PROJCS["NAD_1983_HARN_StatePlane_California_IV_FIPS_0404_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-119.0],PARAMETER["Standard_Parallel_1",36.0],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Foot_US",0.3048006096012192]] +4044,PROJCS["NAD_1927_StatePlane_California_IV_FIPS_0404",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Foot_US",0.304800609601219241]] +4050,PROJCS["NAD_1983_HARN_StatePlane_California_V_FIPS_0405",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Meter",1]] +4051,PROJCS["NAD_1983_StatePlane_California_V_FIPS_0405",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Meter",1]] +4052,PROJCS["NAD_1983_StatePlane_California_V_FIPS_0405_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Foot_US",0.304800609601219241]] +4053,PROJCS["NAD_1983_HARN_StatePlane_California_V_FIPS_0405_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-118.0],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Foot_US",0.3048006096012192]] +4054,PROJCS["NAD_1927_StatePlane_California_V_FIPS_0405",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Foot_US",0.304800609601219241]] +4060,PROJCS["NAD_1983_HARN_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Meter",1]] +4061,PROJCS["NAD_1983_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Meter",1]] +4062,PROJCS["NAD_1983_StatePlane_California_VI_FIPS_0406_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Foot_US",0.304800609601219241]] +4063,PROJCS["NAD_1983_HARN_StatePlane_California_VI_FIPS_0406_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Foot_US",0.3048006096012192]] +4064,PROJCS["NAD_1927_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Foot_US",0.304800609601219241]] +4074,PROJCS["NAD_1927_StatePlane_California_VII_FIPS_0407",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4186692.58],PARAMETER["False_Northing",4160926.74],PARAMETER["Central_Meridian",-118.3333333333333],PARAMETER["Standard_Parallel_1",33.86666666666667],PARAMETER["Standard_Parallel_2",34.41666666666666],PARAMETER["Latitude_Of_Origin",34.13333333333333],UNIT["Foot_US",0.304800609601219241]] +5010,PROJCS["NAD_1983_HARN_StatePlane_Colorado_North_FIPS_0501",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1]] +5011,PROJCS["NAD_1983_StatePlane_Colorado_North_FIPS_0501",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1]] +5012,PROJCS["NAD_1983_StatePlane_Colorado_North_FIPS_0501_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +5013,PROJCS["NAD_1983_HARN_StatePlane_Colorado_North_FIPS_0501_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.3048006096012192]] +5014,PROJCS["NAD_1927_StatePlane_Colorado_North_FIPS_0501",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +5020,PROJCS["NAD_1983_HARN_StatePlane_Colorado_Central_FIPS_0502",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Meter",1]] +5021,PROJCS["NAD_1983_StatePlane_Colorado_Central_FIPS_0502",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Meter",1]] +5022,PROJCS["NAD_1983_StatePlane_Colorado_Central_FIPS_0502_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Foot_US",0.304800609601219241]] +5023,PROJCS["NAD_1983_HARN_StatePlane_Colorado_Central_FIPS_0502_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Foot_US",0.3048006096012192]] +5024,PROJCS["NAD_1927_StatePlane_Colorado_Central_FIPS_0502",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Foot_US",0.304800609601219241]] +5030,PROJCS["NAD_1983_HARN_StatePlane_Colorado_South_FIPS_0503",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +5031,PROJCS["NAD_1983_StatePlane_Colorado_South_FIPS_0503",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +5032,PROJCS["NAD_1983_StatePlane_Colorado_South_FIPS_0503_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +5033,PROJCS["NAD_1983_HARN_StatePlane_Colorado_South_FIPS_0503_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]] +5034,PROJCS["NAD_1927_StatePlane_Colorado_South_FIPS_0503",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +6000,PROJCS["NAD_1983_HARN_StatePlane_Connecticut_FIPS_0600",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",304800.6096],PARAMETER["False_Northing",152400.3048],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Meter",1]] +6001,PROJCS["NAD_1983_StatePlane_Connecticut_FIPS_0600",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",304800.6096],PARAMETER["False_Northing",152400.3048],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Meter",1]] +6002,PROJCS["NAD_1983_StatePlane_Connecticut_FIPS_0600_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",999999.999996],PARAMETER["False_Northing",499999.999998],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Foot_US",0.304800609601219241]] +6003,PROJCS["NAD_1983_HARN_StatePlane_Connecticut_FIPS_0600_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",999999.999996],PARAMETER["False_Northing",499999.999998],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Foot_US",0.3048006096012192]] +6004,PROJCS["NAD_1927_StatePlane_Connecticut_FIPS_0600",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Foot_US",0.304800609601219241]] +7000,PROJCS["NAD_1983_HARN_StatePlane_Delaware_FIPS_0700",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1]] +7001,PROJCS["NAD_1983_StatePlane_Delaware_FIPS_0700",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1]] +7002,PROJCS["NAD_1983_StatePlane_Delaware_FIPS_0700_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.304800609601219241]] +7003,PROJCS["NAD_1983_HARN_StatePlane_Delaware_FIPS_0700_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38.0],UNIT["Foot_US",0.3048006096012192]] +7004,PROJCS["NAD_1927_StatePlane_Delaware_FIPS_0700",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.304800609601219241]] +9010,PROJCS["NAD_1983_HARN_StatePlane_Florida_East_FIPS_0901",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1]] +9011,PROJCS["NAD_1983_StatePlane_Florida_East_FIPS_0901",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1]] +9012,PROJCS["NAD_1983_StatePlane_Florida_East_FIPS_0901_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.304800609601219241]] +9013,PROJCS["NAD_1983_HARN_StatePlane_Florida_East_FIPS_0901_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-81.0],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.3048006096012192]] +9014,PROJCS["NAD_1927_StatePlane_Florida_East_FIPS_0901",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.304800609601219241]] +9020,PROJCS["NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1]] +9021,PROJCS["NAD_1983_StatePlane_Florida_West_FIPS_0902",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1]] +9022,PROJCS["NAD_1983_StatePlane_Florida_West_FIPS_0902_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.304800609601219241]] +9023,PROJCS["NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.0],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.3048006096012192]] +9024,PROJCS["NAD_1927_StatePlane_Florida_West_FIPS_0902",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.304800609601219241]] +9030,PROJCS["NAD_1983_HARN_StatePlane_Florida_North_FIPS_0903",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Meter",1]] +9031,PROJCS["NAD_1983_StatePlane_Florida_North_FIPS_0903",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Meter",1]] +9032,PROJCS["NAD_1983_StatePlane_Florida_North_FIPS_0903_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Foot_US",0.304800609601219241]] +9033,PROJCS["NAD_1983_HARN_StatePlane_Florida_North_FIPS_0903_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29.0],UNIT["Foot_US",0.3048006096012192]] +9034,PROJCS["NAD_1927_StatePlane_Florida_North_FIPS_0903",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Foot_US",0.304800609601219241]] +10010,PROJCS["NAD_1983_HARN_StatePlane_Georgia_East_FIPS_1001",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +10011,PROJCS["NAD_1983_StatePlane_Georgia_East_FIPS_1001",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +10012,PROJCS["NAD_1983_StatePlane_Georgia_East_FIPS_1001_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +10013,PROJCS["NAD_1983_HARN_StatePlane_Georgia_East_FIPS_1001_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30.0],UNIT["Foot_US",0.3048006096012192]] +10014,PROJCS["NAD_1927_StatePlane_Georgia_East_FIPS_1001",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +10020,PROJCS["NAD_1983_HARN_StatePlane_Georgia_West_FIPS_1002",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +10021,PROJCS["NAD_1983_StatePlane_Georgia_West_FIPS_1002",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]] +10022,PROJCS["NAD_1983_StatePlane_Georgia_West_FIPS_1002_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +10023,PROJCS["NAD_1983_HARN_StatePlane_Georgia_West_FIPS_1002_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30.0],UNIT["Foot_US",0.3048006096012192]] +10024,PROJCS["NAD_1927_StatePlane_Georgia_West_FIPS_1002",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.304800609601219241]] +11010,PROJCS["NAD_1983_HARN_StatePlane_Idaho_East_FIPS_1101",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11011,PROJCS["NAD_1983_StatePlane_Idaho_East_FIPS_1101",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11012,PROJCS["NAD_1983_StatePlane_Idaho_East_FIPS_1101_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +11013,PROJCS["NAD_1983_HARN_StatePlane_Idaho_East_FIPS_1101_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.3048006096012192]] +11014,PROJCS["NAD_1927_StatePlane_Idaho_East_FIPS_1101",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +11020,PROJCS["NAD_1983_HARN_StatePlane_Idaho_Central_FIPS_1102",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11021,PROJCS["NAD_1983_StatePlane_Idaho_Central_FIPS_1102",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11022,PROJCS["NAD_1983_StatePlane_Idaho_Central_FIPS_1102_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +11023,PROJCS["NAD_1983_HARN_StatePlane_Idaho_Central_FIPS_1102_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-114.0],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.3048006096012192]] +11024,PROJCS["NAD_1927_StatePlane_Idaho_Central_FIPS_1102",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +11030,PROJCS["NAD_1983_HARN_StatePlane_Idaho_West_FIPS_1103",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11031,PROJCS["NAD_1983_StatePlane_Idaho_West_FIPS_1103",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +11032,PROJCS["NAD_1983_StatePlane_Idaho_West_FIPS_1103_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +11033,PROJCS["NAD_1983_HARN_StatePlane_Idaho_West_FIPS_1103_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.3048006096012192]] +11034,PROJCS["NAD_1927_StatePlane_Idaho_West_FIPS_1103",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +12010,PROJCS["NAD_1983_HARN_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.9999749999999999],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +12011,PROJCS["NAD_1983_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.9999749999999999],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +12012,PROJCS["NAD_1983_StatePlane_Illinois_East_FIPS_1201_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.9999749999999999],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +12013,PROJCS["NAD_1983_HARN_StatePlane_Illinois_East_FIPS_1201_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.999975],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]] +12014,PROJCS["NAD_1927_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.9999749999999999],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +12020,PROJCS["NAD_1983_HARN_StatePlane_Illinois_West_FIPS_1202",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +12021,PROJCS["NAD_1983_StatePlane_Illinois_West_FIPS_1202",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +12022,PROJCS["NAD_1983_StatePlane_Illinois_West_FIPS_1202_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +12023,PROJCS["NAD_1983_HARN_StatePlane_Illinois_West_FIPS_1202_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]] +12024,PROJCS["NAD_1927_StatePlane_Illinois_West_FIPS_1202",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +13010,PROJCS["NAD_1983_HARN_StatePlane_Indiana_East_FIPS_1301",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +13011,PROJCS["NAD_1983_StatePlane_Indiana_East_FIPS_1301",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +13012,PROJCS["NAD_1983_StatePlane_Indiana_East_FIPS_1301_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +13013,PROJCS["NAD_1983_HARN_StatePlane_Indiana_East_FIPS_1301_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.3048006096012192]] +13014,PROJCS["NAD_1927_StatePlane_Indiana_East_FIPS_1301",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +13020,PROJCS["NAD_1983_HARN_StatePlane_Indiana_West_FIPS_1302",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +13021,PROJCS["NAD_1983_StatePlane_Indiana_West_FIPS_1302",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +13022,PROJCS["NAD_1983_StatePlane_Indiana_West_FIPS_1302_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2952750],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +13023,PROJCS["NAD_1983_HARN_StatePlane_Indiana_West_FIPS_1302_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2952750.0],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.3048006096012192]] +13024,PROJCS["NAD_1927_StatePlane_Indiana_West_FIPS_1302",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +14010,PROJCS["NAD_1983_HARN_StatePlane_Iowa_North_FIPS_1401",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000.0],PARAMETER["False_Northing",1000000.0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Meter",1.0]] +14011,PROJCS["NAD_1983_StatePlane_Iowa_North_FIPS_1401",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Meter",1]] +14012,PROJCS["NAD_1983_StatePlane_Iowa_North_FIPS_1401_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921249.999999999],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.304800609601219241]] +14013,PROJCS["NAD_1983_HARN_StatePlane_Iowa_North_FIPS_1401_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921250.0],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.3048006096012192]] +14014,PROJCS["NAD_1927_StatePlane_Iowa_North_FIPS_1401",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.304800609601219241]] +14020,PROJCS["NAD_1983_HARN_StatePlane_Iowa_South_FIPS_1402",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Meter",1.0]] +14021,PROJCS["NAD_1983_StatePlane_Iowa_South_FIPS_1402",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1]] +14022,PROJCS["NAD_1983_StatePlane_Iowa_South_FIPS_1402_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +14023,PROJCS["NAD_1983_HARN_StatePlane_Iowa_South_FIPS_1402_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Foot_US",0.3048006096012192]] +14024,PROJCS["NAD_1927_StatePlane_Iowa_South_FIPS_1402",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +15010,PROJCS["NAD_1983_HARN_StatePlane_Kansas_North_FIPS_1501",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1]] +15011,PROJCS["NAD_1983_StatePlane_Kansas_North_FIPS_1501",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1]] +15012,PROJCS["NAD_1983_StatePlane_Kansas_North_FIPS_1501_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.304800609601219241]] +15013,PROJCS["NAD_1983_HARN_StatePlane_Kansas_North_FIPS_1501_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-98.0],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.3048006096012192]] +15014,PROJCS["NAD_1927_StatePlane_Kansas_North_FIPS_1501",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.304800609601219241]] +15020,PROJCS["NAD_1983_HARN_StatePlane_Kansas_South_FIPS_1502",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +15021,PROJCS["NAD_1983_StatePlane_Kansas_South_FIPS_1502",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +15022,PROJCS["NAD_1983_StatePlane_Kansas_South_FIPS_1502_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +15023,PROJCS["NAD_1983_HARN_StatePlane_Kansas_South_FIPS_1502_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]] +15024,PROJCS["NAD_1927_StatePlane_Kansas_South_FIPS_1502",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +16000,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_FIPS_1600",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000.0],PARAMETER["False_Northing",1000000.0],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",37.08333333333334],PARAMETER["Standard_Parallel_2",38.66666666666666],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1.0]] +16001,PROJCS["NAD_1983_StatePlane_Kentucky_FIPS_1600",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000.0],PARAMETER["False_Northing",1000000.0],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",37.08333333333334],PARAMETER["Standard_Parallel_2",38.66666666666666],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1.0]] +16002,PROJCS["NAD_1983_StatePlane_Kentucky_FIPS_1600_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921250.0],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",37.08333333333334],PARAMETER["Standard_Parallel_2",38.66666666666666],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.3048006096012192]] +16003,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_FIPS_1600_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921250.0],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",37.08333333333334],PARAMETER["Standard_Parallel_2",38.66666666666666],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.3048006096012192]] +16010,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_North_FIPS_1601",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +16011,PROJCS["NAD_1983_StatePlane_Kentucky_North_FIPS_1601",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1]] +16012,PROJCS["NAD_1983_StatePlane_Kentucky_North_FIPS_1601_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +16013,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_North_FIPS_1601_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.3048006096012192]] +16014,PROJCS["NAD_1927_StatePlane_Kentucky_North_FIPS_1601",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.304800609601219241]] +16020,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_South_FIPS_1602",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1]] +16021,PROJCS["NAD_1983_StatePlane_Kentucky_South_FIPS_1602",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1]] +16022,PROJCS["NAD_1983_StatePlane_Kentucky_South_FIPS_1602_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.304800609601219241]] +16023,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_South_FIPS_1602_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.3048006096012192]] +16024,PROJCS["NAD_1927_StatePlane_Kentucky_South_FIPS_1602",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.304800609601219241]] +17010,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_North_FIPS_1701",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1]] +17011,PROJCS["NAD_1983_StatePlane_Louisiana_North_FIPS_1701",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1]] +17012,PROJCS["NAD_1983_StatePlane_Louisiana_North_FIPS_1701_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.304800609601219241]] +17013,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_North_FIPS_1701_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.3048006096012192]] +17014,PROJCS["NAD_1927_StatePlane_Louisiana_North_FIPS_1701",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.66666666666667],UNIT["Foot_US",0.304800609601219241]] +17020,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_South_FIPS_1702",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Meter",1]] +17021,PROJCS["NAD_1983_StatePlane_Louisiana_South_FIPS_1702",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Meter",1]] +17022,PROJCS["NAD_1983_StatePlane_Louisiana_South_FIPS_1702_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Foot_US",0.304800609601219241]] +17023,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_South_FIPS_1702_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Foot_US",0.3048006096012192]] +17024,PROJCS["NAD_1927_StatePlane_Louisiana_South_FIPS_1702",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.66666666666667],UNIT["Foot_US",0.304800609601219241]] +17031,PROJCS["NAD_1983_StatePlane_Louisiana_Offshore_FIPS_1703",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.5],UNIT["Meter",1.0]] +17032,PROJCS["NAD_1983_StatePlane_Louisiana_Offshore_FIPS_1703_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.5],UNIT["Foot_US",0.3048006096012192]] +17034,PROJCS["NAD_1927_StatePlane_Louisiana_Offshore_FIPS_1703",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Foot_US",0.3048006096012192]] +18010,PROJCS["NAD_1983_HARN_StatePlane_Maine_East_FIPS_1801",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1]] +18011,PROJCS["NAD_1983_StatePlane_Maine_East_FIPS_1801",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1]] +18012,PROJCS["NAD_1983_StatePlane_Maine_East_FIPS_1801_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot_US",0.304800609601219241]] +18014,PROJCS["NAD_1927_StatePlane_Maine_East_FIPS_1801",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.304800609601219241]] +18020,PROJCS["NAD_1983_HARN_StatePlane_Maine_West_FIPS_1802",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Meter",1]] +18021,PROJCS["NAD_1983_StatePlane_Maine_West_FIPS_1802",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Meter",1]] +18022,PROJCS["NAD_1983_StatePlane_Maine_West_FIPS_1802_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2952750],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Foot_US",0.304800609601219241]] +18024,PROJCS["NAD_1927_StatePlane_Maine_West_FIPS_1802",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Foot_US",0.304800609601219241]] +19000,PROJCS["NAD_1983_HARN_StatePlane_Maryland_FIPS_1900",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +19001,PROJCS["NAD_1983_StatePlane_Maryland_FIPS_1900",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +19002,PROJCS["NAD_1983_StatePlane_Maryland_FIPS_1900_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.304800609601219241]] +19003,PROJCS["NAD_1983_HARN_StatePlane_Maryland_FIPS_1900_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-77.0],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.3048006096012192]] +19004,PROJCS["NAD_1927_StatePlane_Maryland_FIPS_1900",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Foot_US",0.304800609601219241]] +20010,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Mainland_FIPS_2001",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",750000],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1]] +20011,PROJCS["NAD_1983_StatePlane_Massachusetts_Mainland_FIPS_2001",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",750000],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1]] +20012,PROJCS["NAD_1983_StatePlane_Massachusetts_Mainland_FIPS_2001_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",2460625],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.304800609601219241]] +20013,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Mainland_FIPS_2001_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",2460625.0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41.0],UNIT["Foot_US",0.3048006096012192]] +20014,PROJCS["NAD_1927_StatePlane_Massachusetts_Mainland_FIPS_2001",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.304800609601219241]] +20020,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Island_FIPS_2002",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1]] +20021,PROJCS["NAD_1983_StatePlane_Massachusetts_Island_FIPS_2002",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1]] +20022,PROJCS["NAD_1983_StatePlane_Massachusetts_Island_FIPS_2002_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.304800609601219241]] +20023,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Island_FIPS_2002_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41.0],UNIT["Foot_US",0.3048006096012192]] +20024,PROJCS["NAD_1927_StatePlane_Massachusetts_Island_FIPS_2002",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.304800609601219241]] +21110,PROJCS["NAD_1983_HARN_StatePlane_Michigan_North_FIPS_2111",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Meter",1]] +21111,PROJCS["NAD_1983_StatePlane_Michigan_North_FIPS_2111",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Meter",1]] +21112,PROJCS["NAD_1983_StatePlane_Michigan_North_FIPS_2111_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",26246666.66666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot_US",0.304800609601219241]] +21113,PROJCS["NAD_1983_HARN_StatePlane_Michigan_North_FIPS_2111_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",26246719.16010498],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-87.0],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot",0.3048]] +21114,PROJCS["NAD_1927_StatePlane_Michigan_North_FIPS_2111",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot_US",0.304800609601219241]] +21115,PROJCS["NAD_1983_HARN_StatePlane_Michigan_North_FIPS_2111_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",26246719.16010498],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-87.0],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot",0.3048]] +21116,PROJCS["NAD_1983_StatePlane_Michigan_North_FIPS_2111_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",26246719.16010498],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-87.0],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot",0.3048]] +21120,PROJCS["NAD_1983_HARN_StatePlane_Michigan_Central_FIPS_2112",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Meter",1]] +21121,PROJCS["NAD_1983_StatePlane_Michigan_Central_FIPS_2112",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",6000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Meter",1]] +21122,PROJCS["NAD_1983_StatePlane_Michigan_Central_FIPS_2112_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",19685000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot_US",0.304800609601219241]] +21123,PROJCS["NAD_1983_HARN_StatePlane_Michigan_Central_FIPS_2112_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",19685039.37007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot",0.3048]] +21124,PROJCS["NAD_1927_StatePlane_Michigan_Central_FIPS_2112",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.33333333333333],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot_US",0.304800609601219241]] +21125,PROJCS["NAD_1983_HARN_StatePlane_Michigan_Central_FIPS_2112_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",19685039.37007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot",0.3048]] +21126,PROJCS["NAD_1983_StatePlane_Michigan_Central_FIPS_2112_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",19685039.37007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot",0.3048]] +21130,PROJCS["NAD_1983_HARN_StatePlane_Michigan_South_FIPS_2113",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Meter",1]] +21131,PROJCS["NAD_1983_StatePlane_Michigan_South_FIPS_2113",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Meter",1]] +21132,PROJCS["NAD_1983_StatePlane_Michigan_South_FIPS_2113_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",13123333.33333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.304800609601219241]] +21133,PROJCS["NAD_1983_HARN_StatePlane_Michigan_South_FIPS_2113_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",13123359.58005249],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot",0.3048]] +21134,PROJCS["NAD_1927_StatePlane_Michigan_South_FIPS_2113",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.33333333333333],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.304800609601219241]] +21135,PROJCS["NAD_1983_HARN_StatePlane_Michigan_South_FIPS_2113_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",13123359.58005249],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot",0.3048]] +21136,PROJCS["NAD_1983_StatePlane_Michigan_South_FIPS_2113_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",13123359.58005249],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot",0.3048]] +22010,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_North_FIPS_2201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000.0],PARAMETER["False_Northing",100000.0],PARAMETER["Central_Meridian",-93.1],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Meter",1.0]] +22011,PROJCS["NAD_1983_StatePlane_Minnesota_North_FIPS_2201",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-93.09999999999999],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Meter",1]] +22012,PROJCS["NAD_1983_StatePlane_Minnesota_North_FIPS_2201_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-93.09999999999999],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Foot_US",0.304800609601219241]] +22013,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_North_FIPS_2201_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-93.1],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Foot_US",0.3048006096012192]] +22014,PROJCS["NAD_1927_StatePlane_Minnesota_North_FIPS_2201",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.09999999999999],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Foot_US",0.304800609601219241]] +22020,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_Central_FIPS_2202",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000.0],PARAMETER["False_Northing",100000.0],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45.0],UNIT["Meter",1.0]] +22021,PROJCS["NAD_1983_StatePlane_Minnesota_Central_FIPS_2202",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45],UNIT["Meter",1]] +22022,PROJCS["NAD_1983_StatePlane_Minnesota_Central_FIPS_2202_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45],UNIT["Foot_US",0.304800609601219241]] +22023,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_Central_FIPS_2202_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45.0],UNIT["Foot_US",0.3048006096012192]] +22024,PROJCS["NAD_1927_StatePlane_Minnesota_Central_FIPS_2202",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45],UNIT["Foot_US",0.304800609601219241]] +22030,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_South_FIPS_2203",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000.0],PARAMETER["False_Northing",100000.0],PARAMETER["Central_Meridian",-94.0],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43.0],UNIT["Meter",1.0]] +22031,PROJCS["NAD_1983_StatePlane_Minnesota_South_FIPS_2203",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-94],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43],UNIT["Meter",1]] +22032,PROJCS["NAD_1983_StatePlane_Minnesota_South_FIPS_2203_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43],UNIT["Foot_US",0.304800609601219241]] +22033,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_South_FIPS_2203_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94.0],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43.0],UNIT["Foot_US",0.3048006096012192]] +22034,PROJCS["NAD_1927_StatePlane_Minnesota_South_FIPS_2203",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43],UNIT["Foot_US",0.304800609601219241]] +23010,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_East_FIPS_2301",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1]] +23011,PROJCS["NAD_1983_StatePlane_Mississippi_East_FIPS_2301",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1]] +23012,PROJCS["NAD_1983_StatePlane_Mississippi_East_FIPS_2301_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.304800609601219241]] +23013,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_East_FIPS_2301_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.3048006096012192]] +23014,PROJCS["NAD_1927_StatePlane_Mississippi_East_FIPS_2301",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Foot_US",0.304800609601219241]] +23020,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_West_FIPS_2302",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1]] +23021,PROJCS["NAD_1983_StatePlane_Mississippi_West_FIPS_2302",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1]] +23022,PROJCS["NAD_1983_StatePlane_Mississippi_West_FIPS_2302_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.304800609601219241]] +23023,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_West_FIPS_2302_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.3048006096012192]] +23024,PROJCS["NAD_1927_StatePlane_Mississippi_West_FIPS_2302",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.304800609601219241]] +24010,PROJCS["NAD_1983_HARN_StatePlane_Missouri_East_FIPS_2401",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1.0]] +24011,PROJCS["NAD_1983_StatePlane_Missouri_East_FIPS_2401",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1]] +24012,PROJCS["NAD_1983_StatePlane_Missouri_East_FIPS_2401_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",820208.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.304800609601219241]] +24014,PROJCS["NAD_1927_StatePlane_Missouri_East_FIPS_2401",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.304800609601219241]] +24020,PROJCS["NAD_1983_HARN_StatePlane_Missouri_Central_FIPS_2402",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1.0]] +24021,PROJCS["NAD_1983_StatePlane_Missouri_Central_FIPS_2402",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1]] +24022,PROJCS["NAD_1983_StatePlane_Missouri_Central_FIPS_2402_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.304800609601219241]] +24024,PROJCS["NAD_1927_StatePlane_Missouri_Central_FIPS_2402",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.304800609601219241]] +24030,PROJCS["NAD_1983_HARN_StatePlane_Missouri_West_FIPS_2403",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",850000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Meter",1.0]] +24031,PROJCS["NAD_1983_StatePlane_Missouri_West_FIPS_2403",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",850000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Meter",1]] +24032,PROJCS["NAD_1983_StatePlane_Missouri_West_FIPS_2403_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2788708.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Foot_US",0.304800609601219241]] +24034,PROJCS["NAD_1927_StatePlane_Missouri_West_FIPS_2403",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Foot_US",0.304800609601219241]] +25000,PROJCS["NAD_1983_HARN_StatePlane_Montana_FIPS_2500",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Meter",1]] +25001,PROJCS["NAD_1983_StatePlane_Montana_FIPS_2500",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Meter",1]] +25002,PROJCS["NAD_1983_StatePlane_Montana_FIPS_2500_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Foot_US",0.304800609601219241]] +25003,PROJCS["NAD_1983_HARN_StatePlane_Montana_FIPS_2500_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45.0],PARAMETER["Standard_Parallel_2",49.0],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Foot",0.3048]] +25005,PROJCS["NAD_1983_HARN_StatePlane_Montana_FIPS_2500_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45.0],PARAMETER["Standard_Parallel_2",49.0],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Foot",0.3048]] +25006,PROJCS["NAD_1983_StatePlane_Montana_FIPS_2500_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45.0],PARAMETER["Standard_Parallel_2",49.0],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Foot",0.3048]] +25014,PROJCS["NAD_1927_StatePlane_Montana_North_FIPS_2501",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",47.85],PARAMETER["Standard_Parallel_2",48.71666666666667],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.304800609601219241]] +25024,PROJCS["NAD_1927_StatePlane_Montana_Central_FIPS_2502",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",46.45],PARAMETER["Standard_Parallel_2",47.88333333333333],PARAMETER["Latitude_Of_Origin",45.83333333333334],UNIT["Foot_US",0.304800609601219241]] +25034,PROJCS["NAD_1927_StatePlane_Montana_South_FIPS_2503",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",44.86666666666667],PARAMETER["Standard_Parallel_2",46.4],PARAMETER["Latitude_Of_Origin",44],UNIT["Foot_US",0.304800609601219241]] +26000,PROJCS["NAD_1983_HARN_StatePlane_Nebraska_FIPS_2600",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",43],PARAMETER["Latitude_Of_Origin",39.83333333333334],UNIT["Meter",1]] +26001,PROJCS["NAD_1983_StatePlane_Nebraska_FIPS_2600",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",43],PARAMETER["Latitude_Of_Origin",39.83333333333334],UNIT["Meter",1]] +26002,PROJCS["NAD_1983_StatePlane_Nebraska_FIPS_2600_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",43],PARAMETER["Latitude_Of_Origin",39.83333333333334],UNIT["Foot_US",0.304800609601219241]] +26014,PROJCS["NAD_1927_StatePlane_Nebraska_North_FIPS_2601",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",41.85],PARAMETER["Standard_Parallel_2",42.81666666666667],PARAMETER["Latitude_Of_Origin",41.33333333333334],UNIT["Foot_US",0.304800609601219241]] +26024,PROJCS["NAD_1927_StatePlane_Nebraska_South_FIPS_2602",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-99.5],PARAMETER["Standard_Parallel_1",40.28333333333333],PARAMETER["Standard_Parallel_2",41.71666666666667],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Foot_US",0.304800609601219241]] +27010,PROJCS["NAD_1983_HARN_StatePlane_Nevada_East_FIPS_2701",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",8000000],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27011,PROJCS["NAD_1983_StatePlane_Nevada_East_FIPS_2701",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",8000000],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27012,PROJCS["NAD_1983_StatePlane_Nevada_East_FIPS_2701_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",26246666.66666666],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +27013,PROJCS["NAD_1983_HARN_StatePlane_Nevada_East_FIPS_2701_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",26246666.66666666],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.3048006096012192]] +27014,PROJCS["NAD_1927_StatePlane_Nevada_East_FIPS_2701",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +27020,PROJCS["NAD_1983_HARN_StatePlane_Nevada_Central_FIPS_2702",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",6000000],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27021,PROJCS["NAD_1983_StatePlane_Nevada_Central_FIPS_2702",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",6000000],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27022,PROJCS["NAD_1983_StatePlane_Nevada_Central_FIPS_2702_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",19685000],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +27023,PROJCS["NAD_1983_HARN_StatePlane_Nevada_Central_FIPS_2702_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",19685000.0],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.3048006096012192]] +27024,PROJCS["NAD_1927_StatePlane_Nevada_Central_FIPS_2702",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +27030,PROJCS["NAD_1983_HARN_StatePlane_Nevada_West_FIPS_2703",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27031,PROJCS["NAD_1983_StatePlane_Nevada_West_FIPS_2703",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1]] +27032,PROJCS["NAD_1983_StatePlane_Nevada_West_FIPS_2703_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +27033,PROJCS["NAD_1983_HARN_StatePlane_Nevada_West_FIPS_2703_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.3048006096012192]] +27034,PROJCS["NAD_1927_StatePlane_Nevada_West_FIPS_2703",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.304800609601219241]] +28000,PROJCS["NAD_1983_HARN_StatePlane_New_Hampshire_FIPS_2800",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1]] +28001,PROJCS["NAD_1983_StatePlane_New_Hampshire_FIPS_2800",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1]] +28002,PROJCS["NAD_1983_StatePlane_New_Hampshire_FIPS_2800_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.304800609601219241]] +28003,PROJCS["NAD_1983_HARN_StatePlane_New_Hampshire_FIPS_2800_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.3048006096012192]] +28004,PROJCS["NAD_1927_StatePlane_New_Hampshire_FIPS_2800",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.304800609601219241]] +29000,PROJCS["NAD_1983_HARN_StatePlane_New_Jersey_FIPS_2900",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1]] +29001,PROJCS["NAD_1983_StatePlane_New_Jersey_FIPS_2900",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1]] +29002,PROJCS["NAD_1983_StatePlane_New_Jersey_FIPS_2900_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492124.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.304800609601219241]] +29003,PROJCS["NAD_1983_HARN_StatePlane_New_Jersey_FIPS_2900_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492125.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.3048006096012192]] +29004,PROJCS["NAD_1927_StatePlane_New_Jersey_FIPS_2900",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.66666666666667],PARAMETER["Scale_Factor",0.9999749999999999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.304800609601219241]] +30010,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_East_FIPS_3001",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",165000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30011,PROJCS["NAD_1983_StatePlane_New_Mexico_East_FIPS_3001",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",165000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30012,PROJCS["NAD_1983_StatePlane_New_Mexico_East_FIPS_3001_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",541337.4999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +30013,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_East_FIPS_3001_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",541337.5],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot_US",0.3048006096012192]] +30014,PROJCS["NAD_1927_StatePlane_New_Mexico_East_FIPS_3001",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +30020,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_Central_FIPS_3002",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30021,PROJCS["NAD_1983_StatePlane_New_Mexico_Central_FIPS_3002",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30022,PROJCS["NAD_1983_StatePlane_New_Mexico_Central_FIPS_3002_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +30023,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_Central_FIPS_3002_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot_US",0.3048006096012192]] +30024,PROJCS["NAD_1927_StatePlane_New_Mexico_Central_FIPS_3002",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +30030,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_West_FIPS_3003",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",830000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30031,PROJCS["NAD_1983_StatePlane_New_Mexico_West_FIPS_3003",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",830000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1]] +30032,PROJCS["NAD_1983_StatePlane_New_Mexico_West_FIPS_3003_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2723091.666666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +30033,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_West_FIPS_3003_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2723091.666666666],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31.0],UNIT["Foot_US",0.3048006096012192]] +30034,PROJCS["NAD_1927_StatePlane_New_Mexico_West_FIPS_3003",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.304800609601219241]] +31010,PROJCS["NAD_1983_HARN_StatePlane_New_York_East_FIPS_3101",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1]] +31011,PROJCS["NAD_1983_StatePlane_New_York_East_FIPS_3101",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1]] +31012,PROJCS["NAD_1983_StatePlane_New_York_East_FIPS_3101_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492124.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.304800609601219241]] +31013,PROJCS["NAD_1983_HARN_StatePlane_New_York_East_FIPS_3101_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492125.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.3048006096012192]] +31014,PROJCS["NAD_1927_StatePlane_New_York_East_FIPS_3101",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.33333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +31020,PROJCS["NAD_1983_HARN_StatePlane_New_York_Central_FIPS_3102",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1]] +31021,PROJCS["NAD_1983_StatePlane_New_York_Central_FIPS_3102",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1]] +31022,PROJCS["NAD_1983_StatePlane_New_York_Central_FIPS_3102_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",820208.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +31023,PROJCS["NAD_1983_HARN_StatePlane_New_York_Central_FIPS_3102_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",820208.3333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Foot_US",0.3048006096012192]] +31024,PROJCS["NAD_1927_StatePlane_New_York_Central_FIPS_3102",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +31030,PROJCS["NAD_1983_HARN_StatePlane_New_York_West_FIPS_3103",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",350000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1]] +31031,PROJCS["NAD_1983_StatePlane_New_York_West_FIPS_3103",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",350000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1]] +31032,PROJCS["NAD_1983_StatePlane_New_York_West_FIPS_3103_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1148291.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +31033,PROJCS["NAD_1983_HARN_StatePlane_New_York_West_FIPS_3103_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1148291.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Foot_US",0.3048006096012192]] +31034,PROJCS["NAD_1927_StatePlane_New_York_West_FIPS_3103",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.304800609601219241]] +31040,PROJCS["NAD_1983_HARN_StatePlane_New_York_Long_Island_FIPS_3104",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Meter",1]] +31041,PROJCS["NAD_1983_StatePlane_New_York_Long_Island_FIPS_3104",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Meter",1]] +31042,PROJCS["NAD_1983_StatePlane_New_York_Long_Island_FIPS_3104_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.304800609601219241]] +31043,PROJCS["NAD_1983_HARN_StatePlane_New_York_Long_Island_FIPS_3104_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-74.0],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.3048006096012192]] +31044,PROJCS["NAD_1927_StatePlane_New_York_Long_Island_FIPS_3104",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.304800609601219241]] +32000,PROJCS["NAD_1983_HARN_StatePlane_North_Carolina_FIPS_3200",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",609601.2192024384],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-79.0],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Meter",1.0]] +32001,PROJCS["NAD_1983_StatePlane_North_Carolina_FIPS_3200",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",609601.22],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Meter",1]] +32002,PROJCS["NAD_1983_StatePlane_North_Carolina_FIPS_3200_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.002616666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Foot_US",0.304800609601219241]] +32003,PROJCS["NAD_1983_HARN_StatePlane_North_Carolina_FIPS_3200_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-79.0],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Foot_US",0.3048006096012192]] +32004,PROJCS["NAD_1927_StatePlane_North_Carolina_FIPS_3200",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Foot_US",0.304800609601219241]] +33010,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_North_FIPS_3301",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1]] +33011,PROJCS["NAD_1983_StatePlane_North_Dakota_North_FIPS_3301",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1]] +33012,PROJCS["NAD_1983_StatePlane_North_Dakota_North_FIPS_3301_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.304800609601219241]] +33013,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_North_FIPS_3301_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47.0],UNIT["Foot",0.3048]] +33014,PROJCS["NAD_1927_StatePlane_North_Dakota_North_FIPS_3301",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.304800609601219241]] +33015,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_North_FIPS_3301_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47.0],UNIT["Foot",0.3048]] +33016,PROJCS["NAD_1983_StatePlane_North_Dakota_North_FIPS_3301_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47.0],UNIT["Foot",0.3048]] +33020,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_South_FIPS_3302",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Meter",1]] +33021,PROJCS["NAD_1983_StatePlane_North_Dakota_South_FIPS_3302",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Meter",1]] +33022,PROJCS["NAD_1983_StatePlane_North_Dakota_South_FIPS_3302_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot_US",0.304800609601219241]] +33023,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_South_FIPS_3302_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot",0.3048]] +33024,PROJCS["NAD_1927_StatePlane_North_Dakota_South_FIPS_3302",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot_US",0.304800609601219241]] +33025,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_South_FIPS_3302_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot",0.3048]] +33026,PROJCS["NAD_1983_StatePlane_North_Dakota_South_FIPS_3302_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968503.937007874],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot",0.3048]] +34004,PROJCS["NAD_1927_StatePlane_Vermont_FIPS_3400",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142857],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.304800609601219241]] +34010,PROJCS["NAD_1983_HARN_StatePlane_Ohio_North_FIPS_3401",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1]] +34011,PROJCS["NAD_1983_StatePlane_Ohio_North_FIPS_3401",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1]] +34012,PROJCS["NAD_1983_StatePlane_Ohio_North_FIPS_3401_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Foot_US",0.304800609601219241]] +34013,PROJCS["NAD_1983_HARN_StatePlane_Ohio_North_FIPS_3401_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Foot_US",0.3048006096012192]] +34014,PROJCS["NAD_1927_StatePlane_Ohio_North_FIPS_3401",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Foot_US",0.304800609601219241]] +34020,PROJCS["NAD_1983_HARN_StatePlane_Ohio_South_FIPS_3402",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1]] +34021,PROJCS["NAD_1983_StatePlane_Ohio_South_FIPS_3402",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1]] +34022,PROJCS["NAD_1983_StatePlane_Ohio_South_FIPS_3402_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.304800609601219241]] +34023,PROJCS["NAD_1983_HARN_StatePlane_Ohio_South_FIPS_3402_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38.0],UNIT["Foot_US",0.3048006096012192]] +34024,PROJCS["NAD_1927_StatePlane_Ohio_South_FIPS_3402",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.304800609601219241]] +35010,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_North_FIPS_3501",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Meter",1]] +35011,PROJCS["NAD_1983_StatePlane_Oklahoma_North_FIPS_3501",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Meter",1]] +35012,PROJCS["NAD_1983_StatePlane_Oklahoma_North_FIPS_3501_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Foot_US",0.304800609601219241]] +35013,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_North_FIPS_3501_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-98.0],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35.0],UNIT["Foot_US",0.3048006096012192]] +35014,PROJCS["NAD_1927_StatePlane_Oklahoma_North_FIPS_3501",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Foot_US",0.304800609601219241]] +35020,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_South_FIPS_3502",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Meter",1]] +35021,PROJCS["NAD_1983_StatePlane_Oklahoma_South_FIPS_3502",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Meter",1]] +35022,PROJCS["NAD_1983_StatePlane_Oklahoma_South_FIPS_3502_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Foot_US",0.304800609601219241]] +35023,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_South_FIPS_3502_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-98.0],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Foot_US",0.3048006096012192]] +35024,PROJCS["NAD_1927_StatePlane_Oklahoma_South_FIPS_3502",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Foot_US",0.304800609601219241]] +36010,PROJCS["NAD_1983_HARN_StatePlane_Oregon_North_FIPS_3601",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1]] +36011,PROJCS["NAD_1983_StatePlane_Oregon_North_FIPS_3601",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1]] +36012,PROJCS["NAD_1983_StatePlane_Oregon_North_FIPS_3601_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8202083.333333332],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot_US",0.304800609601219241]] +36013,PROJCS["NAD_1983_HARN_StatePlane_Oregon_North_FIPS_3601_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8202099.737532808],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46.0],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot",0.3048]] +36014,PROJCS["NAD_1927_StatePlane_Oregon_North_FIPS_3601",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot_US",0.304800609601219241]] +36015,PROJCS["NAD_1983_HARN_StatePlane_Oregon_North_FIPS_3601_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8202099.737532808],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46.0],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot",0.3048]] +36016,PROJCS["NAD_1983_StatePlane_Oregon_North_FIPS_3601_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",8202099.737532808],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46.0],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot",0.3048]] +36020,PROJCS["NAD_1983_HARN_StatePlane_Oregon_South_FIPS_3602",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +36021,PROJCS["NAD_1983_StatePlane_Oregon_South_FIPS_3602",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1]] +36022,PROJCS["NAD_1983_StatePlane_Oregon_South_FIPS_3602_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921249.999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +36023,PROJCS["NAD_1983_HARN_StatePlane_Oregon_South_FIPS_3602_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921259.842519685],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44.0],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot",0.3048]] +36024,PROJCS["NAD_1927_StatePlane_Oregon_South_FIPS_3602",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.304800609601219241]] +36025,PROJCS["NAD_1983_HARN_StatePlane_Oregon_South_FIPS_3602_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921259.842519685],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44.0],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot",0.3048]] +36026,PROJCS["NAD_1983_StatePlane_Oregon_South_FIPS_3602_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",4921259.842519685],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44.0],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot",0.3048]] +37010,PROJCS["NAD_1983_HARN_StatePlane_Pennsylvania_North_FIPS_3701",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Meter",1.0]] +37011,PROJCS["NAD_1983_StatePlane_Pennsylvania_North_FIPS_3701",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Meter",1]] +37012,PROJCS["NAD_1983_StatePlane_Pennsylvania_North_FIPS_3701_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.304800609601219241]] +37013,PROJCS["NAD_1983_HARN_StatePlane_Pennsylvania_North_FIPS_3701_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.3048006096012192]] +37014,PROJCS["NAD_1927_StatePlane_Pennsylvania_North_FIPS_3701",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.304800609601219241]] +37020,PROJCS["NAD_1983_HARN_StatePlane_Pennsylvania_South_FIPS_3702",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1.0]] +37021,PROJCS["NAD_1983_StatePlane_Pennsylvania_South_FIPS_3702",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1]] +37022,PROJCS["NAD_1983_StatePlane_Pennsylvania_South_FIPS_3702_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +37023,PROJCS["NAD_1983_HARN_StatePlane_Pennsylvania_South_FIPS_3702_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.3048006096012192]] +37024,PROJCS["NAD_1927_StatePlane_Pennsylvania_South_FIPS_3702",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.304800609601219241]] +38000,PROJCS["NAD_1983_HARN_StatePlane_Rhode_Island_FIPS_3800",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Meter",1]] +38001,PROJCS["NAD_1983_StatePlane_Rhode_Island_FIPS_3800",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Meter",1]] +38002,PROJCS["NAD_1983_StatePlane_Rhode_Island_FIPS_3800_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Foot_US",0.304800609601219241]] +38003,PROJCS["NAD_1983_HARN_StatePlane_Rhode_Island_FIPS_3800_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Foot_US",0.3048006096012192]] +38004,PROJCS["NAD_1927_StatePlane_Rhode_Island_FIPS_3800",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Foot_US",0.304800609601219241]] +39000,PROJCS["NAD_1983_HARN_StatePlane_South_Carolina_FIPS_3900",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",609600.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-81.0],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Meter",1.0]] +39001,PROJCS["NAD_1983_StatePlane_South_Carolina_FIPS_3900",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",609600],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Meter",1]] +39002,PROJCS["NAD_1983_StatePlane_South_Carolina_FIPS_3900_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1999996],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot_US",0.304800609601219241]] +39003,PROJCS["NAD_1983_HARN_StatePlane_South_Carolina_FIPS_3900_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-81.0],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot",0.3048]] +39005,PROJCS["NAD_1983_HARN_StatePlane_South_Carolina_FIPS_3900_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-81.0],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot",0.3048]] +39006,PROJCS["NAD_1983_StatePlane_South_Carolina_FIPS_3900_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-81.0],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot",0.3048]] +39014,PROJCS["NAD_1927_StatePlane_South_Carolina_North_FIPS_3901",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",33.76666666666667],PARAMETER["Standard_Parallel_2",34.96666666666667],PARAMETER["Latitude_Of_Origin",33],UNIT["Foot_US",0.304800609601219241]] +39024,PROJCS["NAD_1927_StatePlane_South_Carolina_South_FIPS_3902",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",32.33333333333334],PARAMETER["Standard_Parallel_2",33.66666666666666],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot_US",0.304800609601219241]] +40010,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_North_FIPS_4001",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1]] +40011,PROJCS["NAD_1983_StatePlane_South_Dakota_North_FIPS_4001",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1]] +40012,PROJCS["NAD_1983_StatePlane_South_Dakota_North_FIPS_4001_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.304800609601219241]] +40013,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_North_FIPS_4001_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.0],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.3048006096012192]] +40014,PROJCS["NAD_1927_StatePlane_South_Dakota_North_FIPS_4001",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.304800609601219241]] +40020,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_South_FIPS_4002",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Meter",1]] +40021,PROJCS["NAD_1983_StatePlane_South_Dakota_South_FIPS_4002",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Meter",1]] +40022,PROJCS["NAD_1983_StatePlane_South_Dakota_South_FIPS_4002_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Foot_US",0.304800609601219241]] +40023,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_South_FIPS_4002_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Foot_US",0.3048006096012192]] +40024,PROJCS["NAD_1927_StatePlane_South_Dakota_South_FIPS_4002",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Foot_US",0.304800609601219241]] +41000,PROJCS["NAD_1983_HARN_StatePlane_Tennessee_FIPS_4100",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1]] +41001,PROJCS["NAD_1983_StatePlane_Tennessee_FIPS_4100",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1]] +41002,PROJCS["NAD_1983_StatePlane_Tennessee_FIPS_4100_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.304800609601219241]] +41003,PROJCS["NAD_1983_HARN_StatePlane_Tennessee_FIPS_4100_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-86.0],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.3048006096012192]] +41004,PROJCS["NAD_1927_StatePlane_Tennessee_FIPS_4100",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.66666666666666],UNIT["Foot_US",0.304800609601219241]] +42010,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_FIPS_4201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Meter",1]] +42011,PROJCS["NAD_1983_StatePlane_Texas_North_FIPS_4201",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Meter",1]] +42012,PROJCS["NAD_1983_StatePlane_Texas_North_FIPS_4201_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Foot_US",0.304800609601219241]] +42013,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_FIPS_4201_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34.0],UNIT["Foot_US",0.3048006096012192]] +42014,PROJCS["NAD_1927_StatePlane_Texas_North_FIPS_4201",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Foot_US",0.304800609601219241]] +42020,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_Central_FIPS_4202",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Meter",1]] +42021,PROJCS["NAD_1983_StatePlane_Texas_North_Central_FIPS_4202",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Meter",1]] +42022,PROJCS["NAD_1983_StatePlane_Texas_North_Central_FIPS_4202_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Foot_US",0.304800609601219241]] +42023,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_Central_FIPS_4202_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Foot_US",0.3048006096012192]] +42024,PROJCS["NAD_1927_StatePlane_Texas_North_Central_FIPS_4202",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-97.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Foot_US",0.304800609601219241]] +42030,PROJCS["NAD_1983_HARN_StatePlane_Texas_Central_FIPS_4203",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Meter",1]] +42031,PROJCS["NAD_1983_StatePlane_Texas_Central_FIPS_4203",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Meter",1]] +42032,PROJCS["NAD_1983_StatePlane_Texas_Central_FIPS_4203_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",9842499.999999998],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Foot_US",0.304800609601219241]] +42033,PROJCS["NAD_1983_HARN_StatePlane_Texas_Central_FIPS_4203_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",9842500.0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Foot_US",0.3048006096012192]] +42034,PROJCS["NAD_1927_StatePlane_Texas_Central_FIPS_4203",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Foot_US",0.304800609601219241]] +42040,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_Central_FIPS_4204",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333333],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Meter",1]] +42041,PROJCS["NAD_1983_StatePlane_Texas_South_Central_FIPS_4204",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333333],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Meter",1]] +42042,PROJCS["NAD_1983_StatePlane_Texas_South_Central_FIPS_4204_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333333],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Foot_US",0.304800609601219241]] +42043,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_Central_FIPS_4204_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-99.0],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333333],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Foot_US",0.3048006096012192]] +42044,PROJCS["NAD_1927_StatePlane_Texas_South_Central_FIPS_4204",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333333],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Foot_US",0.304800609601219241]] +42050,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_FIPS_4205",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",5000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Meter",1]] +42051,PROJCS["NAD_1983_StatePlane_Texas_South_FIPS_4205",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",5000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Meter",1]] +42052,PROJCS["NAD_1983_StatePlane_Texas_South_FIPS_4205_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",16404166.66666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Foot_US",0.304800609601219241]] +42053,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_FIPS_4205_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",16404166.66666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Foot_US",0.3048006096012192]] +42054,PROJCS["NAD_1927_StatePlane_Texas_South_FIPS_4205",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Foot_US",0.304800609601219241]] +43010,PROJCS["NAD_1983_HARN_StatePlane_Utah_North_FIPS_4301",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Meter",1]] +43011,PROJCS["NAD_1983_StatePlane_Utah_North_FIPS_4301",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Meter",1]] +43012,PROJCS["NAD_1983_StatePlane_Utah_North_FIPS_4301_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot_US",0.304800609601219241]] +43013,PROJCS["NAD_1983_HARN_StatePlane_Utah_North_FIPS_4301_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot_US",0.3048006096012192]] +43014,PROJCS["NAD_1927_StatePlane_Utah_North_FIPS_4301",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot_US",0.304800609601219241]] +43015,PROJCS["NAD_1983_HARN_StatePlane_Utah_North_FIPS_4301_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",3280839.895013123],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot",0.3048]] +43016,PROJCS["NAD_1983_StatePlane_Utah_North_FIPS_4301_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",3280839.895013123],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot",0.3048]] +43020,PROJCS["NAD_1983_HARN_StatePlane_Utah_Central_FIPS_4302",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1]] +43021,PROJCS["NAD_1983_StatePlane_Utah_Central_FIPS_4302",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1]] +43022,PROJCS["NAD_1983_StatePlane_Utah_Central_FIPS_4302_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.304800609601219241]] +43023,PROJCS["NAD_1983_HARN_StatePlane_Utah_Central_FIPS_4302_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.3048006096012192]] +43024,PROJCS["NAD_1927_StatePlane_Utah_Central_FIPS_4302",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.304800609601219241]] +43025,PROJCS["NAD_1983_HARN_StatePlane_Utah_Central_FIPS_4302_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",6561679.790026246],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot",0.3048]] +43026,PROJCS["NAD_1983_StatePlane_Utah_Central_FIPS_4302_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",6561679.790026246],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot",0.3048]] +43030,PROJCS["NAD_1983_HARN_StatePlane_Utah_South_FIPS_4303",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +43031,PROJCS["NAD_1983_StatePlane_Utah_South_FIPS_4303",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1]] +43032,PROJCS["NAD_1983_StatePlane_Utah_South_FIPS_4303_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",9842499.999999998],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +43033,PROJCS["NAD_1983_HARN_StatePlane_Utah_South_FIPS_4303_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",9842500.0],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]] +43034,PROJCS["NAD_1927_StatePlane_Utah_South_FIPS_4303",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.304800609601219241]] +43035,PROJCS["NAD_1983_HARN_StatePlane_Utah_South_FIPS_4303_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",9842519.685039369],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot",0.3048]] +43036,PROJCS["NAD_1983_StatePlane_Utah_South_FIPS_4303_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640419.947506561],PARAMETER["False_Northing",9842519.685039369],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot",0.3048]] +44000,PROJCS["NAD_1983_HARN_StatePlane_Vermont_FIPS_4400",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142857],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1]] +44001,PROJCS["NAD_1983_StatePlane_Vermont_FIPS_4400",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142857],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1]] +44002,PROJCS["NAD_1983_StatePlane_Vermont_FIPS_4400_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142857],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.304800609601219241]] +45010,PROJCS["NAD_1983_HARN_StatePlane_Virginia_North_FIPS_4501",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +45011,PROJCS["NAD_1983_StatePlane_Virginia_North_FIPS_4501",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1]] +45012,PROJCS["NAD_1983_StatePlane_Virginia_North_FIPS_4501_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.304800609601219241]] +45013,PROJCS["NAD_1983_HARN_StatePlane_Virginia_North_FIPS_4501_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.3048006096012192]] +45014,PROJCS["NAD_1927_StatePlane_Virginia_North_FIPS_4501",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.304800609601219241]] +45020,PROJCS["NAD_1983_HARN_StatePlane_Virginia_South_FIPS_4502",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1]] +45021,PROJCS["NAD_1983_StatePlane_Virginia_South_FIPS_4502",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1]] +45022,PROJCS["NAD_1983_StatePlane_Virginia_South_FIPS_4502_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.304800609601219241]] +45023,PROJCS["NAD_1983_HARN_StatePlane_Virginia_South_FIPS_4502_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.3048006096012192]] +45024,PROJCS["NAD_1927_StatePlane_Virginia_South_FIPS_4502",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.304800609601219241]] +46010,PROJCS["NAD_1983_HARN_StatePlane_Washington_North_FIPS_4601",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1]] +46011,PROJCS["NAD_1983_StatePlane_Washington_North_FIPS_4601",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1]] +46012,PROJCS["NAD_1983_StatePlane_Washington_North_FIPS_4601_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.304800609601219241]] +46013,PROJCS["NAD_1983_HARN_StatePlane_Washington_North_FIPS_4601_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47.0],UNIT["Foot_US",0.3048006096012192]] +46014,PROJCS["NAD_1927_StatePlane_Washington_North_FIPS_4601",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.304800609601219241]] +46020,PROJCS["NAD_1983_HARN_StatePlane_Washington_South_FIPS_4602",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Meter",1]] +46021,PROJCS["NAD_1983_StatePlane_Washington_South_FIPS_4602",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Meter",1]] +46022,PROJCS["NAD_1983_StatePlane_Washington_South_FIPS_4602_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Foot_US",0.304800609601219241]] +46023,PROJCS["NAD_1983_HARN_StatePlane_Washington_South_FIPS_4602_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Foot_US",0.3048006096012192]] +46024,PROJCS["NAD_1927_StatePlane_Washington_South_FIPS_4602",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Foot_US",0.304800609601219241]] +47010,PROJCS["NAD_1983_HARN_StatePlane_West_Virginia_North_FIPS_4701",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Meter",1]] +47011,PROJCS["NAD_1983_StatePlane_West_Virginia_North_FIPS_4701",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Meter",1]] +47012,PROJCS["NAD_1983_StatePlane_West_Virginia_North_FIPS_4701_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Foot_US",0.304800609601219241]] +47014,PROJCS["NAD_1927_StatePlane_West_Virginia_North_FIPS_4701",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Foot_US",0.304800609601219241]] +47020,PROJCS["NAD_1983_HARN_StatePlane_West_Virginia_South_FIPS_4702",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Meter",1]] +47021,PROJCS["NAD_1983_StatePlane_West_Virginia_South_FIPS_4702",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Meter",1]] +47022,PROJCS["NAD_1983_StatePlane_West_Virginia_South_FIPS_4702_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Foot_US",0.304800609601219241]] +47024,PROJCS["NAD_1927_StatePlane_West_Virginia_South_FIPS_4702",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Foot_US",0.304800609601219241]] +48010,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_North_FIPS_4801",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Meter",1]] +48011,PROJCS["NAD_1983_StatePlane_Wisconsin_North_FIPS_4801",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Meter",1]] +48012,PROJCS["NAD_1983_StatePlane_Wisconsin_North_FIPS_4801_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Foot_US",0.304800609601219241]] +48013,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_North_FIPS_4801_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.0],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Foot_US",0.3048006096012192]] +48014,PROJCS["NAD_1927_StatePlane_Wisconsin_North_FIPS_4801",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Foot_US",0.304800609601219241]] +48020,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_Central_FIPS_4802",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1]] +48021,PROJCS["NAD_1983_StatePlane_Wisconsin_Central_FIPS_4802",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1]] +48022,PROJCS["NAD_1983_StatePlane_Wisconsin_Central_FIPS_4802_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.304800609601219241]] +48023,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_Central_FIPS_4802_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.0],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.3048006096012192]] +48024,PROJCS["NAD_1927_StatePlane_Wisconsin_Central_FIPS_4802",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.304800609601219241]] +48030,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_South_FIPS_4803",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Meter",1]] +48031,PROJCS["NAD_1983_StatePlane_Wisconsin_South_FIPS_4803",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Meter",1]] +48032,PROJCS["NAD_1983_StatePlane_Wisconsin_South_FIPS_4803_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Foot_US",0.304800609601219241]] +48033,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_South_FIPS_4803_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.0],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42.0],UNIT["Foot_US",0.3048006096012192]] +48034,PROJCS["NAD_1927_StatePlane_Wisconsin_South_FIPS_4803",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Foot_US",0.304800609601219241]] +49010,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_FIPS_4901",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49011,PROJCS["NAD_1983_StatePlane_Wyoming_East_FIPS_4901",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49012,PROJCS["NAD_1983_StatePlane_Wyoming_East_FIPS_4901_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.304800609601219241]] +49013,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_FIPS_4901_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.3048006096012192]] +49014,PROJCS["NAD_1927_StatePlane_Wyoming_East_FIPS_4901",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",40.66666666666666],UNIT["Foot_US",0.304800609601219241]] +49020,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_Central_FIPS_4902",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49021,PROJCS["NAD_1983_StatePlane_Wyoming_East_Central_FIPS_4902",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49022,PROJCS["NAD_1983_StatePlane_Wyoming_East_Central_FIPS_4902_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.304800609601219241]] +49023,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_Central_FIPS_4902_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.3048006096012192]] +49024,PROJCS["NAD_1927_StatePlane_Wyoming_East_Central_FIPS_4902",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",40.66666666666666],UNIT["Foot_US",0.304800609601219241]] +49030,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_Central_FIPS_4903",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49031,PROJCS["NAD_1983_StatePlane_Wyoming_West_Central_FIPS_4903",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49032,PROJCS["NAD_1983_StatePlane_Wyoming_West_Central_FIPS_4903_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.304800609601219241]] +49033,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_Central_FIPS_4903_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1968500.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.3048006096012192]] +49034,PROJCS["NAD_1927_StatePlane_Wyoming_West_Central_FIPS_4903",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",40.66666666666666],UNIT["Foot_US",0.304800609601219241]] +49040,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_FIPS_4904",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49041,PROJCS["NAD_1983_StatePlane_Wyoming_West_FIPS_4904",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1]] +49042,PROJCS["NAD_1983_StatePlane_Wyoming_West_FIPS_4904_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.304800609601219241]] +49043,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_FIPS_4904_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.3048006096012192]] +49044,PROJCS["NAD_1927_StatePlane_Wyoming_West_FIPS_4904",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",40.66666666666666],UNIT["Foot_US",0.304800609601219241]] +50011,PROJCS["NAD_1983_StatePlane_Alaska_1_FIPS_5001",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Natural_Origin"],PARAMETER["False_Easting",5000000],PARAMETER["False_Northing",-5000000],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",-36.86989764583333],PARAMETER["Longitude_Of_Center",-133.6666666666667],PARAMETER["Latitude_Of_Center",57],UNIT["Meter",1]] +50012,PROJCS["NAD_1983_StatePlane_Alaska_1_FIPS_5001_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Natural_Origin"],PARAMETER["False_Easting",16404166.66666666],PARAMETER["False_Northing",-16404166.66666666],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",-36.86989764583333],PARAMETER["Longitude_Of_Center",-133.6666666666667],PARAMETER["Latitude_Of_Center",57],UNIT["Foot_US",0.304800609601219241]] +50014,PROJCS["NAD_1927_StatePlane_Alaska_1_FIPS_5001",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Natural_Origin"],PARAMETER["False_Easting",16404166.666667],PARAMETER["False_Northing",-16404166.666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",-36.86989764583333],PARAMETER["Longitude_Of_Center",-133.6666666666667],PARAMETER["Latitude_Of_Center",57],UNIT["Foot_US",0.304800609601219241]] +50021,PROJCS["NAD_1983_StatePlane_Alaska_2_FIPS_5002",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-142],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50022,PROJCS["NAD_1983_StatePlane_Alaska_2_FIPS_5002_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-142],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50024,PROJCS["NAD_1927_StatePlane_Alaska_2_FIPS_5002",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-142],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50031,PROJCS["NAD_1983_StatePlane_Alaska_3_FIPS_5003",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-146],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50032,PROJCS["NAD_1983_StatePlane_Alaska_3_FIPS_5003_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-146],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50034,PROJCS["NAD_1927_StatePlane_Alaska_3_FIPS_5003",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-146],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50041,PROJCS["NAD_1983_StatePlane_Alaska_4_FIPS_5004",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-150],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50042,PROJCS["NAD_1983_StatePlane_Alaska_4_FIPS_5004_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-150],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50044,PROJCS["NAD_1927_StatePlane_Alaska_4_FIPS_5004",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-150],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50051,PROJCS["NAD_1983_StatePlane_Alaska_5_FIPS_5005",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-154],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50052,PROJCS["NAD_1983_StatePlane_Alaska_5_FIPS_5005_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-154],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50054,PROJCS["NAD_1927_StatePlane_Alaska_5_FIPS_5005",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-154],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50061,PROJCS["NAD_1983_StatePlane_Alaska_6_FIPS_5006",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50062,PROJCS["NAD_1983_StatePlane_Alaska_6_FIPS_5006_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50064,PROJCS["NAD_1927_StatePlane_Alaska_6_FIPS_5006",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50071,PROJCS["NAD_1983_StatePlane_Alaska_7_FIPS_5007",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-162],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50072,PROJCS["NAD_1983_StatePlane_Alaska_7_FIPS_5007_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-162],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50074,PROJCS["NAD_1927_StatePlane_Alaska_7_FIPS_5007",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-162],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50081,PROJCS["NAD_1983_StatePlane_Alaska_8_FIPS_5008",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-166],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50082,PROJCS["NAD_1983_StatePlane_Alaska_8_FIPS_5008_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-166],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50084,PROJCS["NAD_1927_StatePlane_Alaska_8_FIPS_5008",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-166],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50091,PROJCS["NAD_1983_StatePlane_Alaska_9_FIPS_5009",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-170],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Meter",1]] +50092,PROJCS["NAD_1983_StatePlane_Alaska_9_FIPS_5009_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-170],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50094,PROJCS["NAD_1927_StatePlane_Alaska_9_FIPS_5009",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-170],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.304800609601219241]] +50101,PROJCS["NAD_1983_StatePlane_Alaska_10_FIPS_5010",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-176],PARAMETER["Standard_Parallel_1",51.83333333333334],PARAMETER["Standard_Parallel_2",53.83333333333334],PARAMETER["Latitude_Of_Origin",51],UNIT["Meter",1]] +50102,PROJCS["NAD_1983_StatePlane_Alaska_10_FIPS_5010_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-176],PARAMETER["Standard_Parallel_1",51.83333333333334],PARAMETER["Standard_Parallel_2",53.83333333333334],PARAMETER["Latitude_Of_Origin",51],UNIT["Foot_US",0.304800609601219241]] +50104,PROJCS["NAD_1927_StatePlane_Alaska_10_FIPS_5010",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",3000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-176],PARAMETER["Standard_Parallel_1",51.83333333333334],PARAMETER["Standard_Parallel_2",53.83333333333334],PARAMETER["Latitude_Of_Origin",51],UNIT["Foot_US",0.304800609601219241]] +51010,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_1_FIPS_5101",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Meter",1]] +51011,PROJCS["NAD_1983_StatePlane_Hawaii_1_FIPS_5101",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Meter",1]] +51012,PROJCS["NAD_1983_StatePlane_Hawaii_1_FIPS_5101_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Foot_US",0.304800609601219241]] +51013,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_1_FIPS_5101_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Foot_US",0.3048006096012192]] +51014,PROJCS["Old_Hawaiian_StatePlane_Hawaii_1_FIPS_5101",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Foot_US",0.304800609601219241]] +51020,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_2_FIPS_5102",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Meter",1]] +51021,PROJCS["NAD_1983_StatePlane_Hawaii_2_FIPS_5102",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Meter",1]] +51022,PROJCS["NAD_1983_StatePlane_Hawaii_2_FIPS_5102_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Foot_US",0.304800609601219241]] +51023,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_2_FIPS_5102_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Foot_US",0.3048006096012192]] +51024,PROJCS["Old_Hawaiian_StatePlane_Hawaii_2_FIPS_5102",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Foot_US",0.304800609601219241]] +51030,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_3_FIPS_5103",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Meter",1]] +51031,PROJCS["NAD_1983_StatePlane_Hawaii_3_FIPS_5103",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Meter",1]] +51032,PROJCS["NAD_1983_StatePlane_Hawaii_3_FIPS_5103_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Foot_US",0.304800609601219241]] +51033,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_3_FIPS_5103_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-158.0],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Foot_US",0.3048006096012192]] +51034,PROJCS["Old_Hawaiian_StatePlane_Hawaii_3_FIPS_5103",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Foot_US",0.304800609601219241]] +51040,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_4_FIPS_5104",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Meter",1]] +51041,PROJCS["NAD_1983_StatePlane_Hawaii_4_FIPS_5104",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Meter",1]] +51042,PROJCS["NAD_1983_StatePlane_Hawaii_4_FIPS_5104_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Foot_US",0.304800609601219241]] +51043,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_4_FIPS_5104_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Foot_US",0.3048006096012192]] +51044,PROJCS["Old_Hawaiian_StatePlane_Hawaii_4_FIPS_5104",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.99999],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Foot_US",0.304800609601219241]] +51050,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_5_FIPS_5105",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Meter",1]] +51051,PROJCS["NAD_1983_StatePlane_Hawaii_5_FIPS_5105",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Meter",1]] +51052,PROJCS["NAD_1983_StatePlane_Hawaii_5_FIPS_5105_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Foot_US",0.304800609601219241]] +51053,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_5_FIPS_5105_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Foot_US",0.3048006096012192]] +51054,PROJCS["Old_Hawaiian_StatePlane_Hawaii_5_FIPS_5105",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Foot_US",0.304800609601219241]] +52000,PROJCS["NAD_1983_HARN_StatePlane_Puerto_Rico_Virgin_Islands_FIPS_5200",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",200000],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Meter",1]] +52001,PROJCS["NAD_1983_StatePlane_Puerto_Rico_Virgin_Islands_FIPS_5200",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",200000],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Meter",1]] +52002,PROJCS["NAD_1983_StatePlane_Puerto_Rico_Virgin_Islands_FIPS_5200_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",656166.6666666665],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Foot_US",0.3048006096012192]] +52014,PROJCS["NAD_1927_StatePlane_Puerto_Rico_FIPS_5201",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Foot_US",0.304800609601219241]] +52020,PROJCS["Puerto_Rico_StatePlane_Virgin_Islands_St_Croix_FIPS_5202",GEOGCS["GCS_Puerto_Rico",DATUM["D_Puerto_Rico",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Foot_US",0.304800609601219241]] +52024,PROJCS["Puerto_Rico_StatePlane_Virgin_Islands_St_Croix_FIPS_5202",GEOGCS["GCS_Puerto_Rico",DATUM["D_Puerto_Rico",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333333],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Foot_US",0.304800609601219241]] +54000,PROJCS["NAD_1983_StatePlane_Guam_FIPS_5400",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Polyconic"],PARAMETER["False_Easting",50000],PARAMETER["False_Northing",50000],PARAMETER["Central_Meridian",144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Meter",1]] +54001,PROJCS["NAD_1983_StatePlane_Guam_FIPS_5400",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Polyconic"],PARAMETER["False_Easting",50000],PARAMETER["False_Northing",50000],PARAMETER["Central_Meridian",144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Meter",1]] +54002,PROJCS["NAD_1983_StatePlane_Guam_FIPS_5400_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Polyconic"],PARAMETER["False_Easting",164041.6666666666],PARAMETER["False_Northing",164041.6666666666],PARAMETER["Central_Meridian",144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Foot_US",0.304800609601219241]] +54004,PROJCS["NAD_1927_StatePlane_Guam_FIPS_5400",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199432955]],PROJECTION["Polyconic"],PARAMETER["False_Easting",164041.6666666667],PARAMETER["False_Northing",164041.6666666667],PARAMETER["Central_Meridian",144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Foot_US",0.304800609601219241]] +102964,PROJCS["NAD_1927_Alaska_Albers_Feet",GEOGCS["GCS_North_American_1927",DATUM["D_North_American_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Albers"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-154.0],PARAMETER["Standard_Parallel_1",55.0],PARAMETER["Standard_Parallel_2",65.0],PARAMETER["Latitude_Of_Origin",50.0],UNIT["Foot_US",0.3048006096012192]] +102991,PROJCS["NAD_1983_Oregon_Statewide_Lambert",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",43.0],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",41.75],UNIT["Meter",1.0]] +102993,PROJCS["NAD_1983_HARN_Oregon_Statewide_Lambert",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",43.0],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",41.75],UNIT["Meter",1.0]] +102994,PROJCS["NAD_1983_HARN_Oregon_Statewide_Lambert_Feet_Intl",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312335.958005249],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",43.0],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",41.75],UNIT["Foot",0.3048]] +102996,PROJCS["NAD_1983_Oregon_Statewide_Lambert_Feet_Intl",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1312335.958005249],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",43.0],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",41.75],UNIT["Foot",0.3048]] Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/CommandLineParser/CommandLine.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/Readme.txt (revision 2866) @@ -0,0 +1 @@ +SpatiaLite support. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/DotSpatial.Plugins.Taudem.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/pdal_swig_cpp.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ClickOnceUpdater/DotSpatial.Plugins.ClickOnceUpdater.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.xml (revision 2866) @@ -0,0 +1,5879 @@ + + + + DotSpatial.Projections + + + + + AuthorityCodeHandler + + + + + Creates an instance of this class + + + + + Adds the specified authority. + + The authority. + The code. + The proj4 string. + + + + Adds the specified authority. + + The authority. + The code. + The proj4 string. + if set to true [replace]. + + + + Adds the specified authority. + + The authority. + The code. + The name. + The proj4 string. + + + + Adds a new projection info to the store, replaces the old one + + The authority, e.g. EPSG + The code assigned by the authority + A declarative name + the proj4 definition string + a value indicating if a previously defined projection should be replaced or not. + + + + The one and only + + + + + Gets the + + + + + + + AuxiliarySphereTypes + + + + + Use semimajor axis or radius of the geographic coordinate system + + + + + Use semiminor axis or radius + + + + + Calculate and use authalic radius + + + + + Use authalic radius and convert geodetic latitudes to authalic latitudes + + + + + This indicates that this parameter should not appear in the projection string. + + + + + Handles the specific case of dat files like the ntv1 file format. + + + + + NadRecord is a single entry from an lla file + + + + + Converts degree values into radians + + + + + I think this converts micro-seconds of arc to radians + + + + + The delta lambda and delta phi for a single cell + + + + + The set of conversion matrix coefficients for lambda + + + + + The lower left coordinate + + + + + The character based id for this record + + + + + The total count of coordinates in the lambda direction + + + + + The total count of coordinates in the phi direction + + + + + Creates a blank nad Table + + + + + This initializes a new table with the assumption that the offset is 0 + + The resource location + + + + This initializes a new table with the assumption that the offset is 0 + + The resource location + Indicates if grid file is in embedded resource or external file + + + + This initializes a new table with the assumption that the offset needs to be specified + because in gsb files, more than one table is listed, and this is a subtable. + + The resource location + The offset marking the start of the header in the file + + + + This initializes a new table with the assumption that the offset needs to be specified + because in gsb files, more than one table is listed, and this is a subtable. This also allows + specifying if the grid file is included as an embedded resource. + + The resource (or file) location + The offset marking the start of the header in the file + Indicates if embedded resource or external file + + + + Given the resource setup, this causes the file to read the + + + + + + + + + + This method parses the extension of a resource location or + path and creates the new NadTable type. + + + + + + + This method parses the extension of a resource location or + path and creates the new NadTable type. + + + + + + + + Reads a double in BigEndian format (consistent with ntv1 and ntv2 formats.) + + The binary reader + The double value parsed from the binary in big endian byte order. + + + + Gets the double value from the specified position in the byte array + Using BigEndian format. + + + + + + + + Get the stream to the grid + + + + + + Gets or sets the string name for this record + + + + + Gets or sets the lower left corner in radians + + + + + Gets or sets the angular cell size in radians + + + + + Gets or sets the integer count of phi coefficients + + + + + Gets or sets the integer count of lambda coefficients + + + + + These represent smaller, higher resolution subgrids that should fall within the extents + of the larger grid. If this list exists, and there is a fit here, it should be used + in preference to the low-resolution main grid. + + + + + Gets or sets the array of lambda coefficients organized + in a spatial Table (phi major) + + + + + Gets or sets a boolean indicating whether or not the values have been filled. + + + + + Gets or sets the location this table should look for source data. + + + + + Gets or sets the long integer data offset where the stream should skip to to begin reading data + + + + + Gets or sets the format being used. + + + + + True if grid file is an embedded resource + + + + + If FileIsEmbedded is false, this contains the full path to the grid file + + + + + Creates a new instance of GsbNadTable + + + + + Creates a new instance of GsbNadTable + + + + + + + + + + + IDatumTransform + + + + + IDatumTransform + + + + + Transform function + + + + + + + + + + Arc-seconds to radians conversion factor + + + + + + + + + + datum tranform method + + + + + + + + + + + Returns an interface to the stage at the specified index + + + + + + + + + + + + + + + + + Returns the number of datum transform stages for this datum transform + + + + + source datum + + + + + destination datum + + + + + Datum Transform Type: GridShift, Param3, or Param7 + + + + Grid shift table + + + 3-parameter geocentric transform: delat x, delta y, and delta z + + + 7-parameter geocentric tranform: delta x,y,z, plus rotataion of x,y,z axes, and delta scale + + + + DatumTransfromStage implementation + + + + + DatumTransformStage interface + + + + + String identifier of the datum from which the transform proceeds + + + + + String identifier of the datum to which the transform proceeds + + + + + Transform method; one of: GeoCentric, Coordinate_Frame, Position_Vector, NADCON, HARN, NTv2 + + + + + Detla X of geocentric origin, in meters + + + + + Delta Y of geocentric origin, in meters + + + + + Delta Z of geocentric origin, in meters + + + + + Rotation about the geocentric X-axis, in arc-seconds + + + + + Rotation about the geocentric Y-axis, in arc-seconds + + + + + Rotation about the geocentric Z-axis, in arc-seconds + + + + + Delta scale in parts-per-million. Actaul scale is 1+DS/1000000. + + + + + If Method is one of: NADCON, HARN, or NTv2, this field contains the name of the grid shift table + + + + + True if the table must be used in the direction opposite that specified by the From/To Datum properties + + + + + Spheriod on which the From datum is based + + + + + Spheriod on which the To datum is based + + + + True if the table must be used in the direction opposite that specified by the From/To Datum properties + + + Delta scale in parts-per-million. Actaul scale is 1+DS/1000000. + + + Detla X of geocentric origin, in meters + + + Delta Y of geocentric origin, in meters + + + Delta Z of geocentric origin, in meters + + + String identifer of datum from which the transform proceeds + + + Spheriod on which the From datum is based + + + Rotation about the geocentric X-axis, in arc-seconds + + + Rotation about the geocentric Y-axis, in arc-seconds + + + Rotation about the geocentric Z-axis, in arc-seconds + + + If Method is one of: NADCON, HARN, or NTv2, this field contains the name of the grid shift table + + + Transform method; one of: GridShift, Param3, or Param7 + + + String identifier of the datum to which the transform proceeds + + + Spheriod on which the To datum is based + + + + DatumTranformStage constructor for a geocentric transform + + + + + Parmeterless constructor + + + + + DatumTranformStage constructor for a gridshift transform + + + + + DatumTranformStage constructor for a 7-parameter transform + + + + + DatumTransfromStage copy constructor + + + + + + Source datum + + + + + Destination datum + + + + + TranformMethod to be used + + + + + geocentric X offset + + + + + geocentric Y offset + + + + + geocentric Z offset + + + + + rotation about X axis in arc-seconds + + + + + rotation about Y axis in arc-seconds + + + + + rotation about Z axis in arc-seconds + + + + + delta scale in ppm + + + + + if type is one of: NADCON, HARN, or NTv2, GridShiftTable is the file base name + + + + + If false, use inverse of table + + + + + Spheroid of source datum + + + + + Spheroid of destination datum + + + + + GridShiftTableFormats + + + + + The data format used by ntv1 + + + + + The data format used by ntv2 and many others + + + + + The data format use by several other grid types + + + + + The data format used by National Geodetic Survey (NGS). Note + there is always a matching LAS file. + + + + + This is a special case of a NadTable and has specific reading techniques that need to be handled + + + + + Creates a new instance of GsbNadTable + + + + + Creates a new instance of GsbNadTable + + + + + + + + This handles the creation of the + + + + + + + + Gets the double value from the specified position in the byte array + Using BigEndian format. + + + + + + + + Given the string name, this will return the specified coordinate category + + Category name + Coordinate system category + + + + Gets an array of all the names of the coordinate system categories + in this collection of systems. + + + + + Overrides the NadTable methods in the context of an las/los file pair. + + + + + An LasLosNadTable constructor + + The Manifest Assembly resource location + + + + An LasLosNadTable constructor + + The resource location or grid file path + Indicates if grid is an embedded resource + + + + + + + + + + LasLosNadTables are constructs from a pair of input files: .los AND .las + + + + + + Overrides the NadTable methods in the context of an lla resource file. + + + + + An LlaNadTable constructor + + The Manifest Assembly resource location + + + + An LlaNadTable constructor + + The Manifest Assembly resource location or file path + Indicates if grid file is embedded resource or external file + + + + + + + + + + CloneableEM + + + + + The type parameter T is optional, so the intended use would be like: + ObjectType copy = myObject.Copy(); + + The type of the object + The original object + A new object of the same type as the type being copied. + + + + IDescriptor + + + + + Matching is defined as being a different object, but having properties + that would make it indistinguishable from the comparision property. + This is an alternative to overriding the equals behavior in cases + where you might ALSO need to see if the object reference is the same. + + + + + Tests this object against the comparison object. If any of the + value type members are different, or if any of the properties + are IMatchable and do not match, then this returns false. + + The other IMatcheable object of the same type + The list of property names that do not match + Boolean, true if the properties are comparably equal. + + + + IRandomizable + + + + + This method will set the values for this class with random values that are + within acceptable parameters for this class. + + An existing random number generator so that the random seed can be controlled + + + + This copies the public descriptor properties from the specified object to + this object. + + An object that has properties that match the public properties on this object. + + + + MatchableEM + + + + + This tests the public properties from the two objects. If any properties implement + the IMatchable interface, and do not match, this returns false. If any public + properties are value types, and they are not equal, then this returns false. + + This matchable item + The other item to compare to this item + Boolean, true if there is a match + + + + Unit + + + + + Descriptors are simple classes that are used for storing symbology or other basic characteristics. + They are presumed to be made up of value types and other descriptors, and are expected to be serializable. + This being said, some basic capabilities are supported for randomizing, copying and comparing the + properties of descriptors. + + + + + CopyBase + + + + + Creates a new instance of CopyBase + + + + + Creates a duplicate of this descriptor using MemberwiseClone + + A clone of this object as a duplicate + + + + PropertyInfo returns overridden members as separate entries. We would rather work with each members + only one time. + + All the properties, including duplicates created by overridden members + An Array of PropertyInfo members + + + + This occurs during the Copy method and is overridable by sub-classes + + The duplicate descriptor + + + + Creates a new instance of MatchableObject + + + + + For each of the publicly accessible properties found on this object, this attempts + to copy a public property from the source object of the same name, if it can find it. + For each matching property name/type, it will attempt to copy the value. + + The + + + + Compares the properties of this object with the specified IMatchable other. + This does not test every property of other, but does test every property + of this item. As long as the other item has corresponding properties + for every property on this item, the items are said to match. + The IMatchable interface allows custom definitions of matching. + For collections to match, all of their sub-members must match. + + + + + + + + The default behavior is to cycle through all the properties of this + object, and call Randomize on any that implement the IRandomizable interface. + + The Random seed generator for controling how the random content is created + + + + This occurs while copying properties from the specified source, and + is the default handling for subclasses + + + + + + This gives sub-classes the chance to directly override, control or otherwise tamper + with the matching process. This is also where normal matching is performed, + so to replace it, simply don't call the base.OnMatch method. To tweak the results, + the base method should be performed first, and the results can then be modified. + + + + + + + + This allows overrideable behavior that can replace or extend the basic behavior, + which is to call Randomize on any public properties that are listed as randomizeable. + This does nothing to normal properties or non public members and needs to be overriden + to provide the special case functionality for sub-classes. + + The random number generator to be used during randomization + + + + EsriString + + + + + Writes the value in the format that it would appear in within a prj file + + The a nested portion of the total esri string. + + + + This reads the string and attempts to parse the relavent values. + + The string to read + + + + Creates a new instance of Unit + + + + + Generates the Esri string from the values in this class + + The resulting esri string + + + + Reads an esri string to determine the angular unit + + The esri string to read + + + + Gets or sets the name of this + + + + + Gets or sets the constant to multiply against this unit to get radians. + + + + + CoordinateSystem + + + + + Creates a new instance of CoordinateSystem + + + + + Retrieves the specified projection given the specified name. + + The string name of the projection to obtain information for + + + + + Obtains all the members of this category, building a single + array of the projection info classes. This returns the + original classes, not a copy. + + The array of projection info classes + + + + Obtains all the members of this category. This returns the + original classes, not a copy. + + The enumerable of projection info classes with field names + + + + Gets the list of names of all the members on this object + + + + + Datum + + + + + Creates a new instance of Datum + + + + + uses a string name of a standard datum to create a new instance of the Datum class + + The string name of the datum to use + + + + Uses a Proj4Datums enumeration in order to specify a known datum to + define the spheroid and to WGS calculation method and parameters + + The Proj4Datums enumeration specifying the known datum + + + + Returns a representaion of this object as a Proj4 string. + + + + + + Compares two datums to see if they are actually describing the same thing and + therefore don't need to be transformed. + + The other datum to compare against + The boolean result of the operation. + + + + Creates an esri well known text string for the datum part of the string + + The datum portion of the esri well known text + + + + parses the datum from the esri string + + The string to parse values from + + + + Initializes to WGS84. + + The values. + + + + Gets or sets the name of the datum defining the spherical characteristics of the model of the earth + + + + + The spheroid of the earth, defining the maximal radius and the flattening factor + + + + + Gets or sets the set of double parameters, (this can either be 3 or 7 parameters) + used to transform this + + + + + Gets or sets the datum type, which clarifies how to perform transforms to WGS84 + + + + + Gets or sets an english description for this datum + + + + + Gets or sets the array of string nadGrid + + + + + Lookups the proj4 datum based on the stored name. + + + + + DatumTypes + + + + + The datum type is not with a well defined ellips or grid-shift + + + + + The datum transform to WGS84 can be defined using 3 double parameters + + + + + The datum transform to WGS84 can be defined using 7 double parameters + + + + + The transform requires a special nad gridshift + + + + + The datum is already the WGS84 datum + + + + + Wenzel, H.-G.(1985): Hochauflösende Kugelfunktionsmodelle für + das Gravitationspotential der Erde. Wiss. Arb. Univ. Hannover + Nr. 137, p. 130-131. + + + + + Creates a new instance of GeocentricGeodetic + + + + + Converts lon, lat, height to x, y, z where lon and lat are in radians and everything else is meters + + + + + + + + + Converts x, y, z to lon, lat, height + + + + + + + + + Converts geocentric x, y, z coords to geodetic lon, lat, h + + + + + Africa + + + + + Abidjan 1987 + + + + + Creates a new instance of Africa + + + + + Antarctica + + + + + Creates a new instance of Antarctica + + + + + Asia + + + + + Creates a new instance of Asia + + + + + Australia + + + + + Creates a new instance of Australia + + + + + CountySystems + + + + + Creates a new instance of CountySystems + + + + + Europe + + + + + Creates a new instance of Europe + + + + + NorthAmerica + + + + + Creates a new instance of NorthAmerica + + + + + Oceans + + + + + Creates a new instance of Oceans + + + + + SolarSystem + + + + + Creates a new instance of SolarSystem + + + + + SouthAmerica + + + + + Creates a new instance of SouthAmerica + + + + + SpheroidBased + + + + + Creates a new instance of SpheroidBased + + + + + World + + + + + Creates a new instance of World + + + + + GeographicInfo + + + + + Creates a new instance of GeographicInfo + + + + + Generates an esri string from the information in this geographic info class, including the name, datum, meridian, and unit. + + + + + + Reads an esri string in order to parse the datum, meridian and unit as well as the name. + + The string to parse + + + + Returns a representaion of this object as a Proj4 string. + + + + + + Gets or sets the datum + eg: D_WGS_1984 + + + + + Gets or sets the prime meridian longitude of the 0 mark, relative to Greenwitch + + + + + Gets or sets the geographic coordinate system name + eg: GCS_WGS_1984 + + + + + Gets or sets the units + + + + + GeographicSystems + + + + + Given the string name, this will return the specified coordinate category + + + + + + + Gets an array of all the names of the coordinate system categories + in this collection of systems. + + + + + GridShift + + + + + Applies either a forward or backward gridshift based on the specified name + + + + + + + + + + + + + + + + + + Checks the edges to make sure that we are not attempting to interpolate + from cells that don't exist. + + The cell index in the phi direction + The cell index in the lambda direction + The Table with the values + A PhiLam that has the shift coefficeints. + + + + Load grids from the default GeogTransformsGrids subfolder + + + + + Load grids from the specified folder + + + + + + + IProjectionCategory + + + + + Gets or sets the main category for this projection + + + + + Gets or sets the category for this projection + + + + + Gets or sets the string name + + + + + Gets or sets the proj4 string that defines this projection + + + + + This interface defines how reprojection classes should be accessed + + + + + Reprojects the specified points. The first is the projection info to start from, while the destination + is the projection to end with. + + + + + + + + + + KnownCoordinateSystems + + + + + Geographic systems operate in angular units, but can use different + spheroid definitions or angular offsets. + + + + + Projected systems are systems that use linear units like meters or feet + rather than angular units like degrees or radians + + + + + Projected systems are systems that use linear units like meters or feet + rather than angular units like degrees or radians + + + + + Geographic systems operate in angular units, but can use different + spheroid definitions or angular offsets. + + + + + Unit + + + + + Creates a new instance of Unit + + + + + Generates the part of the Esri well known text for this linear unit + + A string that contains the name and conversion factor to meters + + + + Parses the UNIT member of Esri well known text into a linear unit + + + + + + Interprets a UOM code. For instance 9001 = meters. + These codes and ratios were from GDAL unit_of_measure.csv, and I'm not + sure if the numeric code is used outside of GDAL internal references. + + + + + + Gets or sets the name of this + + + + + Gets or sets the constant to multiply with maps distances to get the distances in meters + + + + + Meridian + + + + + Creates a new instance of Meridian + + + + + Generates a custom meridian given a name and a longitude + + The longitude to use + The string name for this meridian + + + + Creates a new meridian from one of the known, proj4 meridian locations. + Presumably the longitudes here correspond to various standard meridians + rather than some arbitrary longitudes of capital cities. + + One of the enumerations listed + + + + Creates a new meridian from one of the known, proj4 meridian locations. + + The string name of the meridian to use + + + + Reads the integer code (possibly only an internal GDAL code) for the Meridian. + The value can be from 8901 (Greenwich) to 8913 (Oslo). This will also alter + the name and longitude for this meridian. + + The integer meridian code. + + + + Changes the longitude to correspond with the specified standard meridian + + + + + + Writes the longitude and prime meridian content to the esri string + + A string that is formatted for an esri prj file + + + + Reads content from an esri string, learning information about the prime meridian + + + + + + Returns a representaion of this object as a Proj4 string. + + + + + + Gets or sets the code. Setting this will not impact the longitude or name. + In order to read a standard code (8901-8913) use the ReadCode method. + + + + + Gets or sets the string name + + + + + Gets or sets the longitude where the prime meridian for this geographic coordinate occurs. + + + + + Gets or sets the pm. + + + Alternate prime meridian (typically a city name). + + + + + MeridinalDistance + + + + + Formerly pj_enfn from Proj4 + + + + + + + Formerly pj_mlfn + Given geodetic angular displacement phi, this calculates the equivalent meridional distance + + The geodetic angular displacement + + + + + + + + Formerly pj_inv_mlfn + Given the linear distance, this calculates the equivalent geodetic angular displacement + + + + + + + + + NadTables + + + + + Creates a new instance of NadTables + + + + + Load grids from the default GeogTransformsGrids subfolder + + + + + Load grids from the specified folder + + + + + + + Gets an array of the lla tables that have been added as a resource + + + + + PhiLam has two double values and is used like a coordinate. + + + + + Geodetic Lambda coordinate (longitude) + + + + + Geodetic Phi coordinate (latitude) + + + + + Proj4Datums + + + + + World Geodetic System 1984 + + + + + Greek Geodetic Reference system 1987 + + + + + North American Datum 1983 + + + + + North American Datum 1927 + + + + + Potsdam Rauenburg 1950 DHDN + + + + + Carthage 1934 Tunisia + + + + + Hermannskogel + + + + + Ireland 1965 + + + + + New Zealand Grid + + + + + Airy 1830 + + + + + Proj4Ellipsoids + + + + + Custom will use the a parameter for the major axis and the + rf parameter for the flattening divisor + + + + + MERIT 1983 + + + + + Soviet Geodetic System 85 + + + + + Geodetic Reference System 1980(IUGG, 1980) + + + + + International Astronomical Union 1976 + + + + + Sir George Biddell Airy 1830 (Britain) + + + + + App. Physics. 1965 + + + + + Naval Weapons Lab., 1965 + + + + + Modified Airy + + + + + Andrae 1876 (Den., Iclnd.) + + + + + Austrailian National and South American 1969 + + + + + Geodetic Reference System 67 (IUGG 1967) + + + + + Bessel 1841 + + + + + Bessel 1841 (Namibia) + + + + + Clarke 1866 + + + + + Clarke 1880 Modified + + + + + Comm. des Poids et Mesures 1799 + + + + + Delambre 1810 (Belgium) + + + + + Engelis 1985 + + + + + Everest 1830 + + + + + Everest 1948 + + + + + Everest 1956 + + + + + Everest 1969 + + + + + Everest (Sabah and Sarawak) + + + + + Everest (Pakistan) + + + + + Fischer (Mercury Datum) 1960 + + + + + Modified Fischer 1960 + + + + + Fischer 1968 + + + + + Helmert 1906 + + + + + Hough + + + + + Indonesian 1974 + + + + + International 1909 + + + + + Krassovsky 1942 + + + + + Kaula 1961 + + + + + Lerch 1979 + + + + + Maupertius 1738 + + + + + New International 1967 + + + + + Plessis 1817 (France) + + + + + Southeast Asia + + + + + Walbekc (Germany) + + + + + World Geodetic System 1960 + + + + + World Geodetic System 1966 + + + + + World Geodetic System 1972 + + + + + World Geodetic System 1984 + + + + + Normal Sphere + + + + + Proj4Meridians + + + + + Greenwich, England + + + + + Lisbon, Portugal + + + + + Paris, France + + + + + Bogota, Colombia + + + + + Madrid, Spain + + + + + Rome, Italy + + + + + Berne, Switzerland + + + + + Jakarta, Indonesia + + + + + Brasil + + + + + Brussels, Belgiuum + + + + + Stockholm, Sweden + + + + + Athens, Greece + + + + + Oslo, Norway + + + + + Africa + + + + + Creates a new instance of Africa + + + + + Asia + + + + + Creates a new instance of Asia + + + + + Europe + + + + + Creates a new instance of Europe + + + + + GaussKrugerBeijing1954 + + + + + Creates a new instance of GaussKrugerBeijing1954 + + + + + GaussKrugerOther + + + + + Creates a new instance of GaussKrugerOther + + + + + GaussKrugerPulkovo1942 + + + + + Creates a new instance of GaussKrugerPulkovo1942 + + + + + GaussKrugerPulkovo1995 + + + + + Creates a new instance of GaussKrugerPulkovo1995 + + + + + KrugerZian1980 + + + + + Creates a new instance of KrugerZian1980 + + + + + Not sure why we have all these county based Minnesota and Wisconsin projections + + + + + Creates a new instance of Minnesota + + + + + Nad1983IntlFeet + + + + + Creates a new instance of Nad1983IntlFeet + + + + + NationalGrids + + + + + Creates a new instance of NationalGrids + + + + + NatGridsAustralia + + + + + Creates a new instance of NatGridsAustralia + + + + + NationalGridsCanada + + + + + Creates a new instance of NationalGridsCanada + + + + + IndianSubcontinent + + + + + Creates a new instance of IndianSubcontinent + + + + + NationalGridsJapan + + + + + Creates a new instance of NationalGridsJapan + + + + + NationalGridsNewZealand + + + + + Creates a new instance of NationalGridsNewZealand + + + + + NationalGridsNorway + + + + + Creates a new instance of NationalGridsNorway + + + + + NationalGridsSweden + + + + + Creates a new instance of NationalGridsSweden + + + + + NorthAmerica + + + + + Creates a new instance of NorthAmerica + + + + + Polar + + + + + Creates a new instance of Polar + + + + + SouthAmerica + + + + + Creates a new instance of SouthAmerica + + + + + SpheroidBased + + + + + Lambert 2 (Central France) + + + + + Lambert 2 (Étendu) + + + + + Creates a new instance of SpheroidBased + + + + + StatePlaneNad1927 + + + + + Creates a new instance of StatePlaneNad1927 + + + + + StatePlaneNad1983 + + + + + Michigan Geo Ref 2008 + + + + + + + + + Creates a new instance of StatePlaneNad1983 + + + + + StatePlaneNad1983Feet + + + + + Creates a new instance of StatePlaneNad1983Feet + + + + + StatePlaneNad1983Harn + + + + + Creates a new instance of StatePlaneNad1983Harn + + + + + StatePlaneNad1983HarnFeet + + + + + Creates a new instance of StatePlaneNad1983HarnFeet + + + + + StatePlaneOther + + + + + Creates a new instance of StatePlaneOther + + + + + StateSystems + + + + + Creates a new instance of StateSystems + + + + + TransverseMercator + + + + + Creates a new instance of TransverseMercator + + + + + UtmNad1927 + + + + + Creates a new instance of UtmNad1927 + + + + + UtmNad1983 + + + + + Creates a new instance of UtmNad1983 + + + + + UtmOther + + + + + Creates a new instance of UtmOther + + + + + UtmWgs1972 + + + + + Creates a new instance of UtmWgs1972 + + + + + UtmWgs1984 + + + + + Creates a new instance of UtmWgs1984 + + + + + Wisconsin + + + + + Creates a new instance of Wisconsin + + + + + World + + + + + Creates a new instance of World + + + + + WorldSpheroid + + + + + Creates a new instance of WorldSpheroid + + + + + Projected + + + + + Given the string name, this will return the specified coordinate category + + + + + + + Gets an array of all the names of the coordinate system categories + in this collection of systems. + + + + + ProjectionErrorCodes + + + + + Creates a new projection exception with the appropriate message code + + + + + + Creates a new projection exception with the specified message + + + + + + Returns a string message given the correct numeric code. + + + + + + + Gets the error code that was used when this exception was created + + + + + Parameters based on http://trac.osgeo.org/proj/wiki/GenParms. Also, see http://home.comcast.net/~gevenden56/proj/manual.pdf + + + + + Initializes a new instance of the class. + + + + + Expresses the entire projection as the Esri well known text format that can be found in .prj files + + + The generated string + + + + + Using the specified code, this will attempt to look up the related reference information + from the appropriate pcs code. + + + The epsg Code. + + Throws when there is no projection for given epsg code + + + + Using the specified code, this will attempt to look up the related reference information from the appropriate authority code. + + The authority. + The code. + ProjectionInfo + Throws when there is no projection for given authority and code + + + + Parses the entire projection from an Esri string. In some cases, this will have + default projection information since only geographic information is obtained. + + + The Esri string to parse + + + + + Creates a new projection and automatically reads in the proj4 string + + + The proj4String to read in while defining the projection + + + + + Open a given prj fileName + + + + + + + Gets a boolean that is true if the Esri WKT string created by the projections matches. + There are multiple ways to write the same projection, but the output Esri WKT string + should be a good indicator of whether or not they are the same. + + + The other projection to compare with. + + + Boolean, true if the projections are the same. + + + + + If this is a geographic coordinate system, this will show decimal degrees. Otherwise, + this will show the linear unit units. + + + The quantity. + + + The get unit text. + + + + + Exports this projection info by saving it to a *.prj file. + + + The prj file to save to + + + + + Returns a representaion of this object as a Proj4 string. + + + The to proj 4 string. + + + + + This overrides ToString to get the Esri name of the projection. + + + The to string. + + + + + Attempts to parse known parameters from the set of proj4 parameters + + + + + This will try to read the string, but if the validation fails, then it will return false, + rather than throwing an exception. + + + The string to test and define this projection if possible. + + + Boolean, true if at least the GEOGCS tag was found. + + + + + Re-sets the parameters of this projection info by parsing the esri projection string + + The projection information string in Esri WKT format + + + + Gets or sets the athority, for example EPSG + + + + + Gets or sets the athority code + + + + + Gets or sets the auxiliary sphere type. + + + + + The horizontal 0 point in geographic terms + + + + + Gets or sets the Reference Code + + + + + The false easting for this coordinate system + + + + + The false northing for this coordinate system + + + + + Gets or sets a boolean indicating a geocentric latitude parameter + + + + + The geographic information + + + + + Gets or sets a boolean that indicates whether or not this + projection is geocentric. + + + + + True if this coordinate system is expressed only using geographic coordinates + + + + + Gets or sets a boolean indicating whether this projection applies to the + southern coordinate system or not. + + + + + True if the transform is defined. That doesn't really mean it accurately represents the named + projection, but rather it won't throw a null exception during transformation for the lack of + a transform definition. + + + + + The zero point in geographic terms + + + + + The longitude of center for this coordinate system + + + + + Gets or sets the M. + + + The M. + + + + + Gets or sets the name of this projection information + + + + + A boolean that indicates whether to use the /usr/share/proj/proj_def.dat defaults file (proj4 parameter "no_defs"). + + + + + Gets or sets a boolean for the over-ranging flag + + + + + The scale factor for this coordinate system + + + + + The line of latitude where the scale information is preserved. + + + + + The standard parallel 2. + + + + + Gets or sets the transform that converts between geodetic coordinates and projected coordinates. + + + + + The unit being used for measurements. + + + + + Gets or sets the w. + + + The w. + + + + + Gets or sets the integer zone parameter if it is specified. + + + + + Gets or sets the alpha/ azimuth. + + + ? Used with Oblique Mercator and possibly a few others. For our purposes this is exactly the same as azimuth + + + + + Gets or sets the BNS. + + + The BNS. + + + + + Gets or sets the czech. + + + The czech. + + + + + Gets or sets the guam. + + + The guam. + + + + + Gets or sets the h. + + + The h. + + + + + Gets or sets the lat_ts. + + + Latitude of true scale. + + + + + Gets or sets the lon_1. + + + The lon_1. + + + + + Gets or sets the lon_2. + + + The lon_2. + + + + + Gets or sets the lonc. + + + The lonc. + + + + + Gets or sets the m. Named mGeneral to prevent CLS conflicts. + + + The m. + + + + + Gets or sets the n. + + + The n. + + + + + Gets or sets the no_rot. + + + The no_rot. Seems to be used as a boolean. + + + + + Gets or sets the no_uoff. + + + The no_uoff. Seems to be used as a boolean. + + + + + Gets or sets the rot_conv. + + + The rot_conv. Seems to be used as a boolean. + + + + + Gets or sets the to_meter. + + + Multiplier to convert map units to 1.0m + + + + + Gets the lon_1 parameter in radians + + + The get lam 1. + + + + + Gets the lon_2 parameter in radians + + + The get lam 2. + + + + + Gets the lat_1 parameter multiplied by radians + + + The get phi 1. + + + + + Gets the lat_2 parameter multiplied by radians + + + The get phi 2. + + + + + Sets the lambda 0, or central meridian in radial coordinates + + + The value of Lambda 0 in radians + + + + + Sets the phi 0 or latitude of origin in radial coordinates + + + + + + + Validation exception for Esri string. + + + + + Initializes a new instance of an invlaidEsriFormatException. + + The text string that failed validation. + + + + Gets the string that had the invalid format. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The name %S was found for more than one lla Table in the Nad folder.. + + + + + Looks up a localized string similar to No arguments in initialization list. + + + + + Looks up a localized string similar to The reciprocal flattening (1/f) = 0. + + + + + Looks up a localized string similar to The Latitude was greater than 90 or less than -90. + + + + + Looks up a localized string similar to The square of eccentricity cannot be a negative value.. + + + + + Looks up a localized string similar to The given semi-major axis was 0 or not given.. + + + + + Looks up a localized string similar to The Latitude or Longitude exceeded limits. + + + + + Looks up a localized string similar to The cartesian X or Y coordinate was invalid. + + + + + Looks up a localized string similar to The Degree Minute Second value is formed imporperly. + + + + + Looks up a localized string similar to The inverse meridinal distance was non-convergent. + + + + + Looks up a localized string similar to The inverse Phi2 value was non-converngent. + + + + + Looks up a localized string similar to The ArcCosign or ArcSign value was too large.. + + + + + Looks up a localized string similar to No options found in 'init' file. + + + + + Looks up a localized string similar to Tolerance Condition Error. + + + + + Looks up a localized string similar to The conic lat_1 value cannot be its -lat_2. + + + + + Looks up a localized string similar to Latitude 1 cannot be greater than or equal to 90. + + + + + Looks up a localized string similar to Latitude 2 cannot be equal to 0. + + + + + Looks up a localized string similar to The lat_ts parameter cannot be greater than or equal to 90. + + + + + Looks up a localized string similar to There was no distance between the control points. + + + + + Looks up a localized string similar to Projection not selected to be rotated. + + + + + Looks up a localized string similar to W <= 0 or M <= 0. + + + + + Looks up a localized string similar to lsat not in 1-5 range. + + + + + Looks up a localized string similar to Path not in range. + + + + + Looks up a localized string similar to No colon in init= string. + + + + + Looks up a localized string similar to H was negative or 0. + + + + + Looks up a localized string similar to K was less than 0. + + + + + Looks up a localized string similar to The central latitude was 0 or 90 or alpha = 90. + + + + + Looks up a localized string similar to Lat_1 = lat_2 or lat_1 = 0 or lat_2 = 90. + + + + + Looks up a localized string similar to Elliptical Usage Required. + + + + + Looks up a localized string similar to The UTM zone parameter was invalid. + + + + + Looks up a localized string similar to The arguments were out of range for Tcheby eval. + + + + + Looks up a localized string similar to Projection Not Found. + + + + + Looks up a localized string similar to Failed to load NAD27-83 correction file. + + + + + Looks up a localized string similar to Both n and m must be specified and > 0. + + + + + Looks up a localized string similar to Projection not named. + + + + + Looks up a localized string similar to N<= 0, n > 1 or not specified. + + + + + Looks up a localized string similar to lat_1 or lat_2 not specified. + + + + + Looks up a localized string similar to |lat_1| =|lat_2| . + + + + + Looks up a localized string similar to lat_0 is pi/2 from mean lat. + + + + + Looks up a localized string similar to Failed to parse coordinate system definition. + + + + + Looks up a localized string similar to Geocentric transformation missing z or ellips. + + + + + Looks up a localized string similar to Uknown prime meridian conversion ID. + + + + + Looks up a localized string similar to UnknownProjectionId. + + + + + Looks up a localized string similar to Effective eccentricity = 1. + + + + + Looks up a localized string similar to Unkown unit conversion ID. + + + + + Looks up a localized string similar to Invalid boolean parameter argument. + + + + + Looks up a localized string similar to The elliptical parameter ellps= was unkown. + + + + + Looks up a localized string similar to There was an index mismatch problem with the specified file.. + + + + + Looks up a localized string similar to Inverse grid shift iteration faield, presumably at grid edge. Using first approximation.. + + + + + Looks up a localized string similar to Inverse grid shift iterator failed to converge.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Michigan GeoRef (2008). + + + + + Reproject + + + + + This method reprojects the affine transform coefficients. This is used for projection on the fly, + where image transforms can take advantage of an affine projection, but does not have the power of + a full projective transform and gets less and less accurate as the image covers larger and larger + areas. Since most image layers represent small rectangular areas, this should not be a problem in + most cases. the affine array should be ordered as follows: + X' = [0] + [1] * Column + [2] * Row + Y' = [3] + [4] * Column + [5] * Row + + The array of double affine coefficients. + The number of rows to use for the lower bounds. Value of 0 or less will be set to 1. + The number of columns to use to get the right bounds. Values of 0 or less will be set to 1. + + + The transformed coefficients + + + + + + The xy array should be in interleaved set of xy coordinates like [x1, y1, x2, y2, ... xn, yn] + The z array is the array of all the z values + + + + + + + + + + The xy array should be in interleaved set of xy coordinates like [x1, y1, x2, y2, ... xn, yn] + The z array is the array of all the z values + + + + + + + + + + + Spheroid (Defaults to WGS84) + + + + + Creates a new instance of Spheroid + + + + + Creates a new spheroid using an the equatorial radius in meters and + a flattening coefficient that is the inverse flattening factor. + eg. for WGS84 (6378137.0, 298.257223563) + + The semi-major axis + The inverse of the flattening factor + + + + For perfect spheres, you just need to specify one radius, which will be + applied to both radii. You can then directly change the polar or + equatorial radius if necessary using the properties. + + The radius of the sphere + + + + The ellps parameter in a proj4 string will only work with certain + pre-defined spheroids, enumerated in the Proj4Ellipsoids enumeration. + Custom spheroids can be specified but will use the a and b parameters + when creating a proj4 parameter instead of using the ellps parameter. + + Any of several predefined geographic ellipses + + + + Given the proj4 code, this will set the radii correctly. + + + + + + Assigns a known projection that is defined by a two character SEDRIS code, + using nothing but that code. + + The two character SEDRIS code defining 22 distinct ellipsoids. + + + + Given the enumeration of known ellipsoids, this will redefine this spheroid + so that it matches the A and B coefficients for the known ellipsoids. + + The known Ellipse + + + + Calculates the flattening factor, (a - b) / a. + + + + + + Uses the current known ellipsoid to return a code name for the proj4 string if possible. + Otherwise, this returns the radial parameters a and b. + + + + + + Calculates the eccentrity according to e = sqrt(2f - f^2) where f is the flattening factor. + + + + + + Calculates the square of eccentricity according to es = (2f - f^2) where f is the flattening factor. + + + + + + Calculates the inverse of the flattening factor, commonly saved to Esri projections, + or else provided as the "rf" parameter for Proj4 strings. This is simply calculated + as a / (a - b) where a is the semi-major axis and b is the semi-minor axis. + + + + + + Gets a boolean that is true if the spheroid has been flattened. + + Boolean, true if the spheroid is oblate (or flattened) + + + + Converts the spheroid parameters into a valid esri expression that uses the semi-major axis + and the reciprocal flattening factor + + + + + + Reads the Esri string to define the spheroid, which controls how flattened the earth's radius is + + + + + + Gets or sets the two character Synthetic Environment Data + Representation and Interchange Specification (SEDRIS) code + eg. AA represents Airy 1830. Setting this will not modify the values, + To read a SEDRIS Code use the constructor or AssignKnownEllipsoid overload. + + + + + Each of the enumerated known ellipsoids is encoded by an ellps parameter specified by + the corresponding string value. Ellipsoids that are not found here or are specified + as "Custom" in the enuemration will be replaced with an 'a' and a 'b' parameter instead. + + + + + Sets the value by using the current semi-major axis (Equatorial Radius) in order to + calculate the semi-minor axis (Polar Radius). + + + + + Gets or sets the string name of the spheroid. + e.g.: WGS_1984 + + + + + A spheroid is a pole flattened (oblate) sphere, with the radii of two axes being equal and longer + than the third. This is the radial measure of one of these major axes in meters. + e.g. 6, 378, 137 for WGS 84 + + + + + A spheroid is a pole flattened (oblate) sphere, with the radii of two axes being equal and longer + than the third. This is the radial measure of the smaller polar axis in meters. One option is + to specify this directly, but it can also be calculated using the major axis and the flattening factor. + + + + + + + + + + Aitoff + + + + + TransverseMercator is a class allowing the transverse mercator transform as transcribed + from the 4.6 version of the Proj4 library (pj_tmerc.c) + + + + + ITransform + + + + + Initializes the parameters from the projection info + + The projection information used to control this transform + + + + Transforms all the coordinates by cycling through them in a loop, + transforming each one. Only the 0 and 1 values of each coordinate will be + transformed, higher dimensional values will be copied. + + + + + Transforms all the coordinates by cycling through them in a loop, + transforming each one. Only the 0 and 1 values of each coordinate will be + transformed, higher dimensional values will be copied. + + + + + Special factor calculations for a factors calculation + + + + + + + + Gets or sets the string name of this projection. This should uniquely define the projection, + and controls what appears in the .prj files. This name is required. + + + + + Gets or sets the string name of this projection as it is known to proj4, or should appear + in a proj4 string. This name is required to read and write to proj4 strings. + + + + + This is the list of alternate names to check besides the Proj4Name. This will not be used + for writing Proj4 strings, but may be helpful for reading them. + + + + + Pi/2 + + + + + Math.Pi / 4 + + + + + 2 * Math.Pi + + + + + 1E-10 + + + + + Analytic Hk + + + + + Analytic Conv + + + + + Analytic Xl Yl + + + + + Analytic Xp Yp + + + + + Radians to Degrees + + + + + Degrees to Radians + + + + + The integer index representing lambda values in arrays representing geodetic coordinates + + + + + The integer index representing phi values in arrays representing geodetic coordinates + + + + + The integer index representing X values in arrays representing linear coordinates + + + + + The integer index representing Y values in arrays representing linear coordinates + + + + + The integer index representing real values in arrays representing complex numbers + + + + + The integer index representing immaginary values in arrays representing complex numbers + + + + + Initializes the parameters from the projection info + + The projection information used to control this transform + + + + Transforms all the coordinates by cycling through them in a loop, + transforming each one. Only the 0 and 1 values of each coordinate will be + transformed, higher dimensional values will be copied. + + + + + Transforms all the coordinates by cycling through them in a loop, + transforming each one. Only the 0 and 1 values of each coordinate will be + transformed, higher dimensional values will be copied. + + + + + Special factor calculations for a factors calculation + + lambda-phi + The projection + The Factors + + + + Uses an enumeration to generate a new instance of a known transform class + + The member of the KnownTransforms to instantiate + A new ITransform interface representing the specific transform + + + + Allows for some custom code during a process method + + lambda-phi + The projection coordinate system information + The Factors + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Transforms cartesian x, y to geodetic lambda, phi + + in -> the lambda, phi coordinates + out -> the cartesian x, y + The zero based starting point index. If this is 1, for instance, reading will skip the x and y of the first point and start at the second point. + The integer count of the pairs of xy values to consider. + + + + The inverse transform from linear units to geodetic units + + The double values for the input x and y values stored in an array + The double values for the output lambda and phi values stored in an array + The zero based starting point index. If this is 1, for instance, reading will skip the x and y of the first point and start at the second point. + The integer count of the pairs of xy values to consider + + + + + + + + + + The major axis + + + + + 1/a + + + + + 1 - e^2; + + + + + 1/OneEs + + + + + Eccentricity + + + + + True if the spheroid is flattened + + + + + Eccentricity Squared + + + + + Central Latitude + + + + + Central Longitude + + + + + False Easting + + + + + False Northing + + + + + Scaling Factor + + + + + Scaling to meter + + + + + Scaling from meter + + + + + The B parameter, which should be consisten with the semi-minor axis + + + + + Gets or sets the string name of this projection as it appears in .prj files and + Esri wkt. This can also be several names separated by a semicolon. + + + + + Gets or sets the string name of this projection as it should appear in proj4 strings. + This can also be several names deliminated by a semicolon. + + + + + Gets or sets a list of optional aliases that can be used in the place of the Proj4Name. + This will only be used during reading, and will not be used during writing. + + + + + For transforms that distinguish between polar, oblique and equitorial modes + + + + + North Pole + + + + + South Pole + + + + + Equitorial + + + + + Oblique + + + + + Creates a new instance of Aitoff + + + + + + + + AlbersConicEqualArea + + + + + AlbersEqualArea + + + + + Creates a new instance of AlbersEqualArea + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Internal code handling the setup operations for the transform + + + + + Gets or sets the Phi1 parameter + + + + + Gets or sets the Phi2 parameter + + + + + Creates a new instance of AlbersConicEqualArea + + + + + AnalyticCodes + + + + + Derivatives of lon analytic + + + + + Derivatives of lat analytic + + + + + h and k are analytic + + + + + convergence analytic + + + + + AzimuthalEquidistant + + + + + Elliptical Transform supports a built in framework for assuming a + separate function occurs if the spheroid is elliptical + + + + + + + + Calculates the forward transformation from geodetic lambda and phi coordinates to + linear xy coordinates for projections that have elliptical earth models. + + The input interleaved lambda-phi coordinates where lambda is longitude in radians and phi is latitude in radians. + The resulting interleaved x-y coordinates + The zero based integer start index in terms of coordinate pairs + The integer number of xy pairs to evaluate. + + + + Calculates the forward transformation from geodetic lambda and phi coordinates to + linear xy coordinates for projections that have spherical earth models. + + The input interleaved lambda-phi coordinates where lambda is longitude in radians and phi is latitude in radians. + The resulting interleaved x-y coordinates + The zero based integer start index in terms of coordinate pairs + The integer number of xy pairs to evaluate. + + + + + + + Calculates the inverse transformation from linear xy coordinates to geodetic lambda and phi coordinates + for projections that have elliptical earth models. + + The input interleaved x-y coordinates + The output interleaved lambda-phi coordinates where lambda is longitude in radians and phi is latitude in radians. + The zero based integer start index in terms of coordinate pairs + The integer number of xy pairs to evaluate. + + + + Calculates the inverse transformation from linear xy coordinates to geodetic lambda and phi coordinates + for projections that have spherical earth models. + + The input interleaved x-y coordinates + The output interleaved lambda-phi coordinates where lambda is longitude in radians and phi is latitude in radians. + The zero based integer start index in terms of coordinate pairs + The integer number of xy pairs to evaluate. + + + + Creates a new instance of AzimuthalEquidistant + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + + + + + + + BipolarObliqueConformalConic + + + + + Creates a new instance of BipolarObliqueConformalConic + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Bonne + + + + + Creates a new instance of Bonne + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Cassini + + + + + Creates a new instance of Cassini + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + DoubleStereographic + + + + + Creates a new instance of DoubleStereographic + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Extensions can be used after the namespace is included as follows. _w = projInfo.W.ToRadians(); + + + + + Obtains the double valued parameter after converting from degrees to radians. + + The value. + + The double valued parameter in radians. + + + + + Obtains the double valued parameter after converting from degrees to radians. + + The value. + + The double valued parameter in radians. + + + + + Gauss Kruger is basically transverse mercator + + + + + TransverseMercator + + + + + Creates a new instance of TransverseMercator + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + The forward transform in the special case where there is no flattening of the spherical model of the earth. + + The input lambda and phi geodetic values organized in an array + The output x and y values organized in an array + The zero based integer start index + The integer count of the number of xy pairs in the lp and xy arrays + + + + The forward transform where the spheroidal model of the earth has a flattening factor, + matching more closely with the oblique spheroid of the actual earth + + The double values for geodetic lambda and phi organized into a one dimensional array + The double values for linear x and y organized into a one dimensional array + The zero based integer start index + The integer count of the number of xy pairs in the lp and xy arrays + + + + Performs the inverse transform from a single coordinate of linear units to the same coordinate in geodetic lambda and + phi units in the special case where the shape of the earth is being approximated as a perfect sphere. + + The double linear input x and y values organized into a 1 dimensional array + The double geodetic output lambda and phi values organized into a 1 dimensional array + The zero based integer start index + The integer count of the number of xy pairs in the lp and xy arrays + + + + Performs the inverse transfrom from a single coordinate of linear units to the same coordinate in geodetic units + + The double linear input x and y values organized into a 1 dimensional array + The double geodetic output lambda and phi values organized into a 1 dimensional array + The zero based integer start index + The integer count of the number of xy pairs in the lp and xy arrays + + + + Creates a new instance of GaussKruger + + + + + OrthogonalMercator + + + + + Creates a new instance of OrthogonalMercator + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Mercator + + + + + Creates a new instance of Mercator + + + + + + + + + + + + + + + + + n' is a calculation based on the eccentricity + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + CrasterParabolic + + + + + Creates a new instance of CrasterParabolic + + + + + + + + + + + CylindricalEqualArea + + + + + Creates a new instance of CylindricalEqualArea + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Eckert1 + + + + + Creates a new instance of Eckert1 + + + + + + + + + + + Eckert2 + + + + + Creates a new instance of Eckert2 + + + + + + + + + + + Eckert3 + + + + + Creates a new instance of Eckert3 + + + + + + + + + + + Eckert4 + + + + + Creates a new instance of Eckert4 + + + + + + + + + + + Eckert5 + + + + + Creates a new instance of Eckert5 + + + + + + + + + + + Eckert6 + + + + + Sinusoidal + + + + + Creates a new instance of Sinusoidal + + + + + + + + + + + + + + + + + Handles the original configuration of sinusoidal transforms + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Gets or sets the double M value + + + + + Gets or sets the N value + + + + + Creates a new instance of Eckert6 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + EquidistantConic + + + + + Creates a new instance of EquidistantConic + + + + + + + + + + + This exists in the case that we ever develop code to perform the special proj4 calculations + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + EquidistantCylindrical + + + + + Creates a new instance of EquidistantCylindrical + + + + + + + + + + + + + + Factors + + + + + max scale error + + + + + min scale error + + + + + Info as to analytics + + + + + Convergence + + + + + Meridinal scale + + + + + parallel scale + + + + + Angular distortion + + + + + Areal scale factor + + + + + theta prime + + + + + derivatives of x for lambda + + + + + derivatives of x for phi + + + + + derivatives of y for lambda + + + + + derivatives of y for phi + + + + + Foucaut is a tweaked version of QuarticAuthalic that uses tan mode. + + + + + QuarticAuthalic + + + + + Creates a new instance of QuarticAuthalic + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Setup + + + + + + + + Creates a new instance of Foucaut + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + GallStereographic + + + + + Creates a new instance of GallStereographic + + + + + + + + + + + Gauss + + + + + Creates a new instance of Gauss + + + + + + + + + + + GeneralSinusoidal + + + + + Creates a new instance of GeneralSinusoidal + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + GeostationarySatellite + + + + + Creates a new instance of GeostationarySatellite + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Gnomonic + + + + + Creates a new instance of Gnomonic + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + GoodeHomolosine + + + + + Creates a new instance of GoodeHomolosine + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + HammerAitoff + + + + + Creates a new instance of HammerAitoff + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + HotineObliqueMercatorAzimuthalCenter - Used to properly direct the Swiss Oblique Mercator + when it appears as Hotine Oblique Mercator Azimuth Center. At current, the Azimuth + parameter is ignored as I don't know how to send it into Proj4. + + + + + OrthogonalMercator + + + + + Creates a new instance of OrthogonalMercator + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Creates a new instance of HotineObliqueMercatorAzimuthalCenter + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Kavraisky5 is just a tweaked version of Quartic Authalic + + + + + Creates a new instance of Kavraisky5 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Kavraisky6 + + + + + Creates a new instance of Kavraisky6 + + + + + + + + + + + KnownTransforms + + + + + Aitoff + + + + + Albers Equal Area + + + + + Azimuthal Equidistant + + + + + Bipolar Oblique Conformal Conic + + + + + Bonne + + + + + Cassini + + + + + Craster Parabolic + + + + + Cylindrical Equal Area + + + + + Eckert 1 + + + + + Eckert 2 + + + + + Eckert 3 + + + + + Eckert 4 + + + + + Eckert 5 + + + + + Eckert 6 + + + + + Elliptical Transform + + + + + Equidistant Conic + + + + + Equidistant_Cylindrical + + + + + Foucaut + + + + + Gall Stereographic + + + + + General Sinusoidal + + + + + Geostationary Satellite + + + + + Gnomonic + + + + + Goode Homolosine + + + + + Hammer Aitoff + + + + + Kavraisky 5 + + + + + Kavraisky 7 + + + + + Krovak + + + + + Lambert Azimuthal Equal Area + + + + + Lambert Conformal Conic + + + + + Lambert Equal Area Conic + + + + + Latitude / Longitude + + + + + Loximuthal + + + + + McBryde Thomas Flat Polar Sine + + + + + Mercator + + + + + Miller Cylindrical + + + + + Mollweide + + + + + New Zealand Map Grid + + + + + Oblique Cylindrical Equal Area + + + + + Oblique Mercator + + + + + Oblique Stereographic Alternative + + + + + Orthographic + + + + + Polyconic + + + + + PutinsP1 + + + + + Quartic Authalic + + + + + Robinson + + + + + Sinusoidal + + + + + Stereographic + + + + + Swiss Oblique Mercator + + + + + Transverse Mercator + + + + + Two Point Equidistant + + + + + Universal Polar Stereographic + + + + + Universal Transverse Mercator + + + + + Vander Grinten 1 + + + + + Wagner 4 + + + + + Wagner 5 + + + + + Wagner 6 + + + + + Winkel 1 + + + + + Winkel 2 + + + + + Winkel Tripel + + + + + Krovak + NOTES: According to EPSG the full Krovak projection method should have + the following parameters. Within PROJ.4 the azimuth, and pseudo + standard parallel are hardcoded in the algorithm and can't be + altered from outside. The others all have defaults to match the + common usage with Krovak projection. + + lat_0 = latitude of centre of the projection + + lon_0 = longitude of centre of the projection + + ** = azimuth (true) of the centre line passing through the centre of the projection + + ** = latitude of pseudo standard parallel + + k = scale factor on the pseudo standard parallel + + x_0 = False Easting of the centre of the projection at the apex of the cone + + y_0 = False Northing of the centre of the projection at the apex of the cone + + _czech = specifies the EAST-NORTH GIS usage where the axis are reversed: + X [S-JTSK KROVAK EAST NORTH] = -Y [KROVAK] + Y [S-JTSK KROVAK EAST NORTH] = -X [KROVAK] + + + + + Creates a new instance of Krovak + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + The default value of CZECH is true: The X and Y axis are reversed and multiplied by -1 as typically used in GIS applications of Krovak + + + + LambertAzimuthalEqualArea + + + + + Creates a new instance of LambertAzimuthalEqualArea + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + LambertConformalConic + + + + + Creates a new instance of the Lambert Conformal Conic projection + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Special factor calculations for a factors calculation + + lambda-phi + The projection + The Factors + + + + LambertEqualAreaConic + + + + + Creates a new instance of LambertEqualAreaConic + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + LongLat + + + + + Creates a new instance of LongLat + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Loximuthal + + + + + Creates a new instance of Loximuthal + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + McBrydeThomasFlatPolarSine is a tweaked version of Qaurtic Authalic + + + + + Creates a new instance of McBrydeThomasFlatPolarSine + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Mercator + + + + + Creates a new instance of Mercator + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + MillerCylindrical + + + + + Creates a new instance of MillerCylindrical + + + + + + + + + + + Mollweide also acts as the base for Wag4 and Wag5 + + + + + Creates a new instance of Mollweide + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Finalizes the setup based on the provided P paraemter + + + + + + Gets or sets the x coefficient + + + + + Gets or sets the y coefficient value + + + + + Gets or sets the P coefficient + + + + + NewZealandMapGrid + + + + + Creates a new instance of NewZealandMapGrid + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + ObliqueCylindricalEqualArea + + + + + Creates a new instance of ObliqueCylindricalEqualArea + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + ObliqueStereographicAlternative + + + + + Creates a new instance of ObliqueStereographicAlternative + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Orthographic + + + + + Creates a new instance of Orthographic + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Polygconic + + + + + Creates a new instance of Polygconic + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + + + + + + + Proj contains frequently used static helper methods for doing projection calculations + + + + + Effectively 1 but with a tolerance of 1E-14 + + + + + 1E-50 + + + + + Tolerant Arcsin + + + + + + + Tolerant ArcCosine + + + + + + + Tollerant Sqrt + + + + + + + Tollerant Math.Atan method. + + + + + + + + Calculates the hypotenuse of a triangle: Sqrt(x*x + y*y); + + The length of one orthogonal leg of the triangle + The length of the other orthogonal leg of the triangle + The length of the diagonal. + + + + + + + + + + + Determines latitude from authalic latitude + + Epsilon squared + The array of double values for the apa parameter + + + + Obtains the authalic latitude + + + + + + + + Obtains the EN parameters for the Meridional distance + + + + + + + Meridonal length function + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PutinsP1 + + + + + Creates a new instance of PutinsP1 + + + + + + + + + + + Robinson + + + + + Creates a new instance of Robinson + + + + + + + + + + + Stereographic + + + + + Creates a new instance of Stereographic + + + + + + + + + + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + StereographicNorthPole + + + + + Creates a new instance of StereographicNorthPole + + + + + SwissObliqueMercator + + + + + Creates a new instance of SwissObliqueMercator + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + TransformManager + + + + + Creates a new instance of TransformManager + + + + + Given the proj4 string, returns the matching transform eg: tmerc. + + The string name + The ITransform that has the matching proj4 name + + + + Given the .prj name (Esri wkt), returns the matching transform + + The string name for the trnasform eg. Transverse_Mercator + The ITransform that has the matching Esri wkt name + + + + The entire list of transforms + + + + + Gets the default instance of the transform manager + + + + + TwoPointEquidistant + + + + + Creates a new instance of TwoPointEquidistant + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + UniversalPolarStereographic + + + + + Creates a new instance of UniversalPolarStereographic + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + UniversalTransverseMercator + + + + + Creates a new instance of UniversalTransverseMercator. The only difference + for this one is that the proj4 name is a little different and when reading + from proj4, we have to parse the zone and south parameters in order to + create the transverse mercator projection. + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + VanderGrinten1 + + + + + Creates a new instance of VanderGrinten1 + + + + + + + + + + + Wagner4 + + + + + Creates a new instance of Wagner4 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Wagner5 + + + + + Creates a new instance of Wagner5 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Wagner6 + + + + + Creates a new instance of Wagner6 + + + + + + + + + + + Winkel1 + + + + + Creates a new instance of Winkel1 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + + + + Winkel2 + + + + + Creates a new instance of Winkel2 + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + + + + WinkelTripel + + + + + Creates a new instance of WinkelTripel + + + + + + + + Initializes the transform using the parameters from the specified coordinate system information + + A ProjectionInfo class contains all the standard and custom parameters needed to initialize this transform + + + + Gets the first member in the enumerable collection of property info with the specified name. + + + + + Determines whether there is a member with the specified name + + + + + Normally, cloning an object starts with MemberwiseClone, which + creates a shallow copy of the object. For any members that + derive from the Descriptor, however, any public properties + or fields that implement ICloneable are copied (deep copy behavior). + This is not always desirable, even if the member CAN be copied. + This attribute causes the deep copy behavior to skip over + properties marked with this attribute. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_HDF5.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/DotSpatial.Plugins.Taudem.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-CN/DotSpatial.Modeling.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/DotSpatial.Tools.XML =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/DotSpatial.Tools.XML (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Tools/DotSpatial.Tools.XML (revision 2866) @@ -0,0 +1,3056 @@ + + + + DotSpatial.Tools + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + This tool provides access to buffer functionality native to DotSpatial.Features. + DotSpatial tools are intended to be used through the DotSpatial toolbox or modeler. + To perform buffer analysis through code, consider using DotSpatial.Feature.Buffer directly. + + + + + Create a new instance of the buffer tool + + + + + Once the parameters have been configured, the Execute command can be called, it returns true if succesful + + + + + Inititalize input and output arrays with parameter types and default values. + + + + + Gets or Sets the input paramater array. + Number of parameter and parameter types are defined during initialize. + + + + + Gets or Sets the input paramater array. + Number of parameter and parameter types are defined during initialize. + + + + + Clip With Polygon + + + + + Initializes a new instance of the ClipRasterWithPolygon class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + This tool provides access to the random geometry functionality in DotSpatial.Analysis.RandomGeometry. + DotSpatial tools are intended to be used through the DotSpatial toolbox or modeler. + To perform buffer analysis through code, consider using DotSpatial.Analysis.RandomGeometry directly. + + + + + Create a new instance of the RandomGeometry tool + + + + + Executes the random geometry tool, returning true when it has completed. + + + + + + + Inititalize input and output arrays with parameter types and default values. + + + + + Gets or Sets the input paramater array. + Number of parameter and parameter types are defined during initialize. + + + + + Gets or Sets the output paramater array. + Number of parameter and parameter types are defined during initialize. + + + + + Raster Slope + + + + + Initializes a new instance of the RasterBinTool class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the slope generation raster. + + The input altitude raster. + The double precision base value. + The double size of the output bin. + The output slope raster. + The progress handler. + True if the method worked. + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the parameters value has been changed, usually when a user changes a input or output Parameter value, this can be used to populate input2 Parameter default values. + + + + + Gets or Sets the input parameter array + + + + + Gets or Sets the output parameter array + + + + + Raster Add + + + + + Initializes a new instance of the RasterFromLAS class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if successful + + + + + Executes the RasterFromLAS tool. + + The string filename of the LAS file to convert. + The extent of the output raster. + The integer number of rows of the output raster. + The integer number of columns. + The output raster. + The progress handler. + Boolean, true if the method was successful. + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the parameters value has been changed, usually when a user changes a input or + output Parameter value, this can be used to populate input2 Parameter default values. + + + + + Gets or Sets the input parameter array + + + + + Gets or Sets the output parameter array + + + + + Used to consolidate duplicate code across multiple tools. + + + + + Initializes a new instance of the RasterMagic class. + + + + + Initializes a new instance of the RasterMagic class. + + + + + Expands the first envelope to include the second. + + The first input raster to union the envelope for. + The second input raster to union the envelope for. + The expanded envelope. + + + + Class for creating voronoi (Thiessen) polygons + + + + + Creates a new instance of the voronoi polygon tool + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster to Polygon tool + + + + + Initializes a new instance of the RasterToPolygon class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Create polygons from raster. + + The Polygon Raster(Grid file). + The Polygon shapefile path. + The progress handler. + + + + Create polygons from raster. + + The Polygon Raster(Grid file). + Connection Grid. + The Polygon shapefile path. + The progress handler. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Reproject Feature Set + + + + + Initializes a new instance of the ReprojectFeatureSet class. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if successful + + + + + Executes the ReprojectFeatureSet Operation tool programaticaly. + + The input FeatureSet. + The input Expression string to select features to Delete. + The target projected coordinate system to reproject the featureset to + The output FeatureSet. + The progress handler. + Ping deleted "static" for external testing + + + + + The parameters array should be populated with default values here + + + + + Fires when one of the parameters value has been changed, usually when a user changes a input or output + parameters value, this can be used to populate input2 parameters default values. + + + + + Gets or Sets the input parameter array + + + + + Gets or Sets the output parameter array + + + + + A tool for finding the average slope + + + + + Initializes a new instance of the FindAverageSlope class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Finds the average slope in the given polygons. + + The dem Raster(Grid file). + The scaler factor + The flow poly shapefile path. + The resulting DEM of slopes + The progress handler. + + + + The Parameter array should be populated with default values here + + + + + Executes the slope generation raster. + + The input altitude raster. + The multiplicitive scaling factor for elveation. + Boolean that is true if the slope values should be returned as percentages. + The output slope raster. + The progress handler. + Boolean, true if the method was successful. + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Find the slope + + + + + Initializes a new instance of the FindAverageSlopeExtented class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Finds the average slope in the given polygons with more user preferences. + + The dem Raster(Grid file). + The scaler factor + The slope in percentage. + The flow poly shapefile path. + The field name to store average slope in the attribute. + The Featureset where we have the area of interest + The index of featureset which give paticular area of interest. + The path to save created slope Feature set. + The progress handler. + + + + + The Parameter array should be populated with default values here + + + + + Executes the slope generation raster. + + The input altitude raster. + A multiplicative scaling factor to be applied to the elevation values before calculating the slope. + If this is true, the slope is returned as a percentage. + The output slope raster. + The progress handler. + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to This will add all features of input with attributes.. + + + + + Looks up a localized string similar to Add Feature. + + + + + Looks up a localized string similar to This will add Feature in the Feature Set.. + + + + + Looks up a localized string similar to Add Feature in the FeatureSet. + + + + + Looks up a localized string similar to Add Raster Layers. + + + + + Looks up a localized string similar to This will Add Two Raster Layer cell by cell. + + + + + Looks up a localized string similar to Add two Raster Layers. + + + + + Looks up a localized string similar to Aggregate. + + + + + Looks up a localized string similar to Aggregate features combines all the features in the featureset to form a single feature.. + + + + + Looks up a localized string similar to Analysis. + + + + + Looks up a localized string similar to Area. + + + + + Looks up a localized string similar to This tool calculates the area of each polygon in a polygon feature set and appends the results to the Output feature sets attribute table.. + + + + + Looks up a localized string similar to Calculates the area of polygons. + + + + + Looks up a localized string similar to The average slope will calculate and add in every polygon in its arribute. + + + + + Looks up a localized string similar to Ave_Slope. + + + + + Looks up a localized string similar to Base Feature Set. + + + + + Looks up a localized string similar to This bins the values of a raster so that there will be large regions of equal values.. + + + + + Looks up a localized string similar to box Slope In Percentage. + + + + + Looks up a localized string similar to Buffer. + + + + + Looks up a localized string similar to This will add the buffer Polygon FeatureSet with Specified Distance. + + + + + Looks up a localized string similar to Buffer Distance. + + + + + Looks up a localized string similar to Buffer with distance around input.. + + + + + Looks up a localized string similar to Calculate Areas. + + + + + Looks up a localized string similar to Calculates the euclidean distance from each raster cell to the nearest target cell. + + + + + Looks up a localized string similar to Calculate Average Slope for given polygons.. + + + + + Looks up a localized string similar to Calculates the distance (proximity) from each cell to the nearest target cell. By default, all. + + + + + Looks up a localized string similar to Cel lSize. + + + + + Looks up a localized string similar to Change Cell Size. + + + + + Looks up a localized string similar to Child Feature Set. + + + + + Looks up a localized string similar to Clip bounds. + + + + + Looks up a localized string similar to Clip Feature Set With Polygon. + + + + + Looks up a localized string similar to This will Clip Grids with Polygon Shape File. + + + + + Looks up a localized string similar to Clipped feature set. + + + + + Looks up a localized string similar to Clip Polygon with Line. + + + + + Looks up a localized string similar to Clip Raster Layer. + + + + + Looks up a localized string similar to Clip Raster Layer with Polygon. + + + + + Looks up a localized string similar to Clips a layer with another layer. + + + + + Looks up a localized string similar to This too uses the Fortune algorithm to compute the voronoi diagram for a given set of points. In this diagram, every polygon represents the region where any point inside that polygon is closer to the original point in that polygon than it is to any other point.. + + + + + Looks up a localized string similar to Conversion. + + + + + Looks up a localized string similar to Converted feature set. + + + + + Looks up a localized string similar to Converting LAS points from. + + + + + Looks up a localized string similar to Create Voronoi Polygons. + + + + + Looks up a localized string similar to Delete Features. + + + + + Looks up a localized string similar to This will delete Features from FeatureSet.. + + + + + Looks up a localized string similar to Delete Features from FeatureSet. + + + + + Looks up a localized string similar to This will delete user selected Features from FeatureSet. + + + + + Looks up a localized string similar to Desired Cell Size or 0 to automatically calculate cell size. + + + + + Looks up a localized string similar to Desired Output Projection. + + + + + Looks up a localized string similar to Displaying is the Old Cell Hight. input New value for 'change' or leave that for 'no change'. + + + + + Looks up a localized string similar to DotSpatial Development Team. + + + + + Looks up a localized string similar to DotSpatial RasterFromLAS. + + + + + Looks up a localized string similar to This tool reduces the number of points on polylines using the Douglas-Peucker line simplification algorithm. + + + + + Looks up a localized string similar to DP line simplification. + + + + + Looks up a localized string similar to This will eliminate Second featureset from first featureset. + + + + + Looks up a localized string similar to Erase. + + + + + Looks up a localized string similar to Erase 2nd input from 1st input. + + + + + Looks up a localized string similar to Erased Result Feature Set. + + + + + Looks up a localized string similar to Exception in Executer the polygon cliping with line. + + + + + Looks up a localized string similar to Expression to Select the Features from Featureset. + + + + + Looks up a localized string similar to This feature set contain the area of interest where the average slope want to calculate.. + + + + + Looks up a localized string similar to The feature set created from converting the raster. + + + + + Looks up a localized string similar to Feature set to clip. + + + + + Looks up a localized string similar to Feature To Raster. + + + + + Looks up a localized string similar to This will generate a new raster from given Polygon.. + + + + + Looks up a localized string similar to Field name for average slope which will add new colom in the attribute. + + + + + Looks up a localized string similar to Field name for average slope.. + + + + + Looks up a localized string similar to Find Average Slope. + + + + + Looks up a localized string similar to This will Generate the average slope in the given polygons.. + + + + + Looks up a localized string similar to Calculate Average Slope for given polygons with more user preference. + + + + + Looks up a localized string similar to Find Average Slope Extented... + + + + + Looks up a localized string similar to Fixed Count. + + + + + Looks up a localized string similar to Fixed Distance. + + + + + Looks up a localized string similar to Fixed Distance: When using fixed distance if the minimum number of points is not found within the search radius it is increased until the minimum is found. Enter 0 for no minimum count.\n\nFixedCount: When using fixed count the maximum number of points will be used as long as they fall within the maximum search radius.. + + + + + Looks up a localized string similar to Generalization. + + + + + Looks up a localized string similar to This will Generate the average slope in the given polygons with more user preferences.. + + + + + Looks up a localized string similar to Generate Centroid. + + + + + Looks up a localized string similar to This will generate centroid FeatureSet from input FeatureSet.. + + + + + Looks up a localized string similar to This will generate centroid FeatureSet from input FeatureSet.. + + + + + Looks up a localized string similar to Generate Centroid from input FeatureSet. + + + + + Looks up a localized string similar to This will Generate Raster from given Polygon.. + + + + + Looks up a localized string similar to Generate slope Raster Layer. + + + + + Looks up a localized string similar to The geographic extent for the output raster.. + + + + + Looks up a localized string similar to Given a feature set, this will combine all of the features into a single shape. Polygons that touch will lose the separation boundaries.. + + + + + Looks up a localized string similar to Converts the point elevations in a LAS file to a Raster.. + + + + + Looks up a localized string similar to This tool creates a raster from a point feature set using Inverse Distance Weighting.. + + + + + Looks up a localized string similar to Index. + + + + + Looks up a localized string similar to Index No to Overwrite Feature. + + + + + Looks up a localized string similar to Index of area of interest feature. + + + + + Looks up a localized string similar to This is the index which give the specific area of interest feature. + + + + + Looks up a localized string similar to input1 altitude Raster. + + + + + Looks up a localized string similar to input1 Feature Set. + + + + + Looks up a localized string similar to input1 polygon feature set. + + + + + Looks up a localized string similar to input1 Polygon Shape file.. + + + + + Looks up a localized string similar to input1 polygon to Raster.. + + + + + Looks up a localized string similar to Raster. + + + + + Looks up a localized string similar to Feature Set to Add. + + + + + Looks up a localized string similar to Feature Set to Overwrite. + + + + + Looks up a localized string similar to Line for Clipping. + + + + + Looks up a localized string similar to Polygon for Clipping. + + + + + Looks up a localized string similar to Second Raster. + + + + + Looks up a localized string similar to Input Feature Set. + + + + + Looks up a localized string similar to Input FeatureSet which has new features to add. + + + + + Looks up a localized string similar to Input FeatureSet which has new feature to be overwrite. + + + + + Looks up a localized string similar to Input FeatureSet to delete features. + + + + + Looks up a localized string similar to Input FeatureSet to generate Centroid features. + + + + + Looks up a localized string similar to Input FeatureSet to reproject. + + + + + Looks up a localized string similar to Input First Raster. + + + + + Looks up a localized string similar to Input line for cliping. + + + + + Looks up a localized string similar to Input new cell Hight. + + + + + Looks up a localized string similar to Input new cell Width. + + + + + Looks up a localized string similar to Input Polygon for Cliping. + + + + + Looks up a localized string similar to Input Polygon for cliping to Raste. + + + + + Looks up a localized string similar to Input Polygon to change to Raster featureset. + + + + + Looks up a localized string similar to input Raster. + + + + + Looks up a localized string similar to Input Raster containing the target cells. + + + + + Looks up a localized string similar to Input Raster for average slope calculation. + + + + + Looks up a localized string similar to Input Raster for Cliping. + + + + + Looks up a localized string similar to Input the Raster for No Data Value Change. + + + + + Looks up a localized string similar to The input raster to convert into a polygon featureset. + + + + + Looks up a localized string similar to Input Second Raster for Adding. + + + + + Looks up a localized string similar to Input Second Raster for Merging. + + + + + Looks up a localized string similar to Input Second Raster for Multiply. + + + + + Looks up a localized string similar to Input Second Raster for Subtract. + + + + + Looks up a localized string similar to input the area of interest. + + + + + Looks up a localized string similar to Input the Raster for Cell size Change. + + + + + Looks up a localized string similar to input Z factor. + + + + + Looks up a localized string similar to Input Z factor for slope display. + + + + + Looks up a localized string similar to Interpolation. + + + + + Looks up a localized string similar to Inverse Distance Weighting. + + + + + Looks up a localized string similar to ISU. + + + + + Looks up a localized string similar to lasFilename. + + + + + Looks up a localized string similar to Enter the full path value of the LAS filename.. + + + + + Looks up a localized string similar to The field in the input point feature set layer that contains the values to interpolate.. + + + + + Looks up a localized string similar to Line Feature Set. + + + + + Looks up a localized string similar to Main Feature set. + + + + + Looks up a localized string similar to MapWindow.Tools. + + + + + Looks up a localized string similar to MapWindow Add Feature. + + + + + Looks up a localized string similar to MapWindow Aggregate. + + + + + Looks up a localized string similar to MapWindow Buffer. + + + + + Looks up a localized string similar to MapWindow Calculate Areas. + + + + + Looks up a localized string similar to MapWindow Change Cell Size. + + + + + Looks up a localized string similar to MapWindow Change No Data Values. + + + + + Looks up a localized string similar to MapWindow Clip. + + + + + Looks up a localized string similar to MapWindow Delete Features. + + + + + Looks up a localized string similar to MapWindow Erase. + + + + + Looks up a localized string similar to MapWindow FeatureToRaster. + + + + + Looks up a localized string similar to MapWindow FindAverageSlope. + + + + + Looks up a localized string similar to MapWindow FindAverageSlope Extented... + + + + + Looks up a localized string similar to MapWindow Generate Centroid. + + + + + Looks up a localized string similar to MapWindow Inverse Distance Weighting. + + + + + Looks up a localized string similar to MapWindow Line Simplification. + + + + + Looks up a localized string similar to MapWindow OverWrite Feature. + + + + + Looks up a localized string similar to MapWindow Polygon Clip With Line. + + + + + Looks up a localized string similar to MapWindow Raster Add. + + + + + Looks up a localized string similar to MapWindow Raster Clip. + + + + + Looks up a localized string similar to MapWindow Raster Euclidean Distance. + + + + + Looks up a localized string similar to MapWindow Raster Merge. + + + + + Looks up a localized string similar to MapWindow Raster Multiply. + + + + + Looks up a localized string similar to MapWindow Raster Slope. + + + + + Looks up a localized string similar to MapWindow Raster Subtraction. + + + + + Looks up a localized string similar to MapWindow Reproject Features. + + + + + Looks up a localized string similar to MapWindow SimpeRasterToPolygon. + + + + + Looks up a localized string similar to MapWindow Theissen Polygons. + + + + + Looks up a localized string similar to MapWindow Union. + + + + + Looks up a localized string similar to Voronoi. + + + + + Looks up a localized string similar to Maximum distance. + + + + + Looks up a localized string similar to Maximum distance to be calculated. Cells with a distance to nearest target greater than 'Maximum distance' will be assigned a 'no data' value.";. + + + + + Looks up a localized string similar to This will Merge Two Raster Layer cell by cell. + + + + + Looks up a localized string similar to Merge Raster Layers. + + + + + Looks up a localized string similar to Merge two Raster Layers. + + + + + Looks up a localized string similar to Min / Max distance. + + + + + Looks up a localized string similar to Min / Max number of points. + + + + + Looks up a localized string similar to Multiply Raster Layers. + + + + + Looks up a localized string similar to This will Multiply two rasters values cell by cell. + + + + + Looks up a localized string similar to Neighborhood Type. + + + + + Looks up a localized string similar to New number of points:. + + + + + Looks up a localized string similar to The new raster will put on the Output raster name. + + + + + Looks up a localized string similar to Creates a new raster based on the specified featureset using the specified field to determine distinct polygons and assign the raster values. + + + + + Looks up a localized string similar to No Data Value Change . + + + + + Looks up a localized string similar to This will Change the No Data Values. + + + + + Looks up a localized string similar to The number of columns to create in the output raster.. + + + + + Looks up a localized string similar to The number of rows to create in the output image.. + + + + + Looks up a localized string similar to NumColumns. + + + + + Looks up a localized string similar to NumRows. + + + + + Looks up a localized string similar to One of the parameter layers in null. + + + + + Looks up a localized string similar to Optional - leave default for NoDataValue or input Exsisting Value. + + + + + Looks up a localized string similar to This is Optional where User want to change the Value to other Value. Defalt will be No Data Value change. + + + + + Looks up a localized string similar to Original number of points:. + + + + + Looks up a localized string similar to Output FeatureSet. + + + + + Looks up a localized string similar to Output feature set with average slope.. + + + + + Looks up a localized string similar to Output Polygon Feature Set. + + + + + Looks up a localized string similar to Output Raster.. + + + + + Looks up a localized string similar to Output Shapefile. + + + + + Looks up a localized string similar to Output slope Raster. + + + + + Looks up a localized string similar to Output feature set with average slope.. + + + + + Looks up a localized string similar to OverWrite Feature. + + + + + Looks up a localized string similar to This will OverWrite Feature in the FeatureSet reference by index. + + + + + Looks up a localized string similar to This will OverWrite Feature in the FeatureSet.. + + + + + Looks up a localized string similar to OverWrite Feature in the FeatureSet. + + + + + Looks up a localized string similar to Pass 1:. + + + + + Looks up a localized string similar to Pass 2:. + + + + + Looks up a localized string similar to Point Feature Set. + + + + + Looks up a localized string similar to Polygon Feature Set. + + + + + Looks up a localized string similar to Power. + + + + + Looks up a localized string similar to % progress completed. + + + + + Looks up a localized string similar to toraster. + + + + + Looks up a localized string similar to Random Points. + + + + + Looks up a localized string similar to Generate any number of randomly placed points within a specified area of the map.. + + + + + Looks up a localized string similar to The number of points to generate.. + + + + + Looks up a localized string similar to Select an area from the map and specify the number of points to generate inside of it.. + + + + + Looks up a localized string similar to Raster. + + + + + Looks up a localized string similar to Raster Distance. + + + + + Looks up a localized string similar to Raster Distance (proximity). + + + + + Looks up a localized string similar to Raster Extent. + + + + + Looks up a localized string similar to Raster From LAS. + + + + + Looks up a localized string similar to This will Multiply two rasters values cell by cell. + + + + + Looks up a localized string similar to Raster Overlay. + + + + + Looks up a localized string similar to This will Generate slope raster from given altitude raster.. + + + + + Looks up a localized string similar to This will Subtract second raster from first raster cell by cell. + + + + + Looks up a localized string similar to Raster To Polygon. + + + + + Looks up a localized string similar to This will generate a polygon featureset from a raster. + + + + + Looks up a localized string similar to Remove Feature Set. + + + + + Looks up a localized string similar to Reproject Features. + + + + + Looks up a localized string similar to This will reproject the specified featureset to a new coordinate system. + + + + + Looks up a localized string similar to Reprojects all the coordinates in the featureset to the specified coordinate system. + + + + + Looks up a localized string similar to This will Change the cell size. + + + + + Looks up a localized string similar to Select the Result of Output feature set with average slope in the attribute.. + + + + + Looks up a localized string similar to Select the Result Raster Directory and Name. + + + + + Looks up a localized string similar to Result Shapefile. + + + + + Looks up a localized string similar to This will eliminate Second featureset from first featureset. + + + + + Looks up a localized string similar to Second Feature set. + + + + + Looks up a localized string similar to The second input layer must be a polygon feature set. + + + + + Looks up a localized string similar to Select Features to Delete. + + + + + Looks up a localized string similar to Select the Result FeatureSet Directory and Name. + + + + + Looks up a localized string similar to Select the result raster file name. + + + + + Looks up a localized string similar to Select the Result Shapefile Directory and Name. + + + + + Looks up a localized string similar to Select the Result of Output feature set with average slope in the attribute.. + + + + + Looks up a localized string similar to Select the type of neighborhood to use when searching for point. \n\nFixed Distance: Searches a set distance from a cell for points and uses all of the points that are found to compute a cells value. If there are less points collected then the minimum specified the search radius is expanded until there are suffcient points found. \n\nFixed Count: Searches for the closest points to the cell until the max number of points specified is reached or the maximum distance is reached.. + + + + + Looks up a localized string similar to Simplify Lines. + + + + + Looks up a localized string similar to Slope grid file is null.. + + + + + Looks up a localized string similar to slope in percentage. + + + + + Looks up a localized string similar to slope in percentage true otherwise it will be in Degree. + + + + + Looks up a localized string similar to Slope Raster Layer. + + + + + Looks up a localized string similar to Source Projection. + + + + + Looks up a localized string similar to If the source projection should be different from what is already on the feature set. + + + + + Looks up a localized string similar to Spatial Reference. + + + + + Looks up a localized string similar to Statistics. + + + + + Looks up a localized string similar to The string name of the field to use in the data table. + + + + + Looks up a localized string similar to Subtract Raster Layer. + + + + + Looks up a localized string similar to Terrain Analysis. + + + + + Looks up a localized string similar to The cellsize in the geographic units of the input layer. If 0 the width is calculate as the extent of the input layer divided by 255. + + + + + Looks up a localized string similar to The destination projection.. + + + + + Looks up a localized string similar to The influence of distance points. A higher power reduces the influences of distant points, a lower value increases it.. + + + + + Looks up a localized string similar to The maximum number of rows/columns is 8000, so a cell size that is too small will be adjusted. A zero value calculates the values so that the shorter dimension between width and height will measure 256 cells.. + + + + + Looks up a localized string similar to The value of each cell will either be assigned the value from this field or will attept to parse the string field member as a number. + + + + + Looks up a localized string similar to Thiessen Polygons. + + + + + Looks up a localized string similar to Tolerance. + + + + + Looks up a localized string similar to This tool combines many different polygons into a single, all encompassing shape, though the shape may have mutliple parts.. + + + + + Looks up a localized string similar to This tool will read in LAS point files and produce raster representations for an area. + + + + + Looks up a localized string similar to This tool takes a feature set and a polygon feature set and clips the first feature set to the are defined by the polygon feature set.. + + + + + Looks up a localized string similar to Union. + + + + + Looks up a localized string similar to This will add all features of input with attributes.. + + + + + Looks up a localized string similar to Union Feature Set. + + + + + Looks up a localized string similar to Unioning Shapes. + + + + + Looks up a localized string similar to Union of inputs. + + + + + Looks up a localized string similar to User Can input New Value to replace Old Value. + + + + + Looks up a localized string similar to User New Values. + + + + + Looks up a localized string similar to Vector Overlay. + + + + + Looks up a localized string similar to This tool computes voronoi polygons around each of the points, defining the regions that are closer to that point than any other points.. + + + + + Looks up a localized string similar to Z-value. + + + + + An add feature tool + + + + + Initializes a new instance of the AddFeature class. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the add features Opaeration tool programaticaly. + Ping deleted "static" for external Testing + + The input FeatureSet. + The input2 featureSet which has the new features to add. + The output FeatureSet. + The progress handler. + + + + + The parameters array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + A tool for deleting the features + + + + + Initializes a new instance of the DeleteFeatures class. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Erase Opaeration tool programaticaly. + Ping deleted static for external testing 01/2010 + + The input FeatureSet. + The input Expression string to select features to Delete. + The output FeatureSet. + The progress handler. + + + + + The parameters array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output parameters value, this can be used to populate input2 parameters default values. + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + An Erase tool + + + + + Initializes a new instance of the Erase class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Clip Polygon with line tool + + + + + Intersection tolerance for comparing to near 0.0 + + + + + Initializes a new instance of the ClipPolygonWithLine class. + + + + + Accurate Clip Polygon with Line + + + + + + + + + This will clip MultiPart Polygon with line. + + Input Polygon. + Input Line. + Output Featureset. + The speed optimizer. + + + + + Returns the portions of the polygons in polySF that lie within polygon as a + new shapefile of polygons: resultPolySF. + + The shapefile of polygons that are to be clipped. + The polygon used for clipping. + The result shapefile for the resulting polygons to be saved (in-memory). + True if copying attrs + False if an error was encountered, true otherwise. + + + + Takes an array of simple polygons and combines them into one multi-part shape. + + The array of polygons. + The resulting multi-part shape. + + + + Takes a MapWinGIS polygon shape and stores all x/y coordinates into a vertex array. + + The polygon to be converted. + The array[numParts][] that will contain the polygon vertices. + + + + Divides a polygon into multiple sections depending on where a line crosses it. Saves the resulting + polygon sections to a new polygon shapefile. + + The polygon to be divided. + The line that will be used to divide the polgyon. + The in-memory shapefile where resulting polygons should be saved. + False if an error was encountered, true otherwise. + + + + Removes portions of the input polygon shapefile that are within the erase polygons. + + The input polygon shapefile. + The erase polygon shapefile. + The resulting shapefile, with portions removed. + + + + For faster clipping of polygons with lines. Limits the finding of intersections to + outside->inside or inside->outside 2pt segments. Assumes only one intersections exists + per segment, that a segment of two inside points or two outside points will not intersect + the polygon. + + The polygon that will be sectioned by the line. + The line that will clip the polygon into multiple parts. + The in-memory shapefile where the polygon sections will be saved. + False if errors are encountered, true otherwise. + + + + Sorts all valid intersects in the array intersectPts. + + Expected number of valid intersects. + Array of all possible intersect points. + Array that will contain only the valid intersect points in sorted order. + The reference point to sort the valid intersect points by. + + + + Find the intersection points of lines that cross a polygon + + The line features + The polygon feature + Output array of intersection counts + Output array of intersection points + Output array of intersection locations in reference to polygon vertex indices + + + + + Determines which shapes are holes and which shapes are islands in + a multi-part polygon and fixes their orientations accordingly. + + The multi-part polygon whose parts need to be checked. + + + + Calculates the distance between two points. + + The first point. + The second point. + The distance between pt0 and pt1. + + + + Separate Parts + + + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the ClipPolygonWithLine Operation tool programaticaly. + Ping deleted static for external testing 01/2010 + + The input Polygon FeatureSet. + The input Polyline FeatureSet. + The output Polygon FeatureSet. + The progress handler. + + + + + The parameters array should be populated with default values here + + + + + Given a line that contains portion both inside and outside of the polygon, this + function will split the polygon based only on the segments that completely bisect + the polygon. It assumes: out->out, and in->in 2pt segments do not intersect the + polygon, and out->in, in->out 2pt segments have only one point of intersection. + + A boolean array indicating if a point is inside the polygon or not. + The line that intersects the polygon. + The polygon that will be split by the intersecting line. + The shapefile that the polygon sections will be saved to. + False if errors were encountered or an assumption violated, true otherwise. + + + + Sorts all valid intersects in the array intersectPts, along with corresponding polygon locations in array polyLoc. + + Expected number of valid intersects. + Array of all possible intersect points. + Array that will contain only the valid intersect points in sorted order. + The reference point to sort the valid intersect points by. + Array with corresponding indicies to where an intersect pt occurs in polygon. + + + + For lines where every point lies within the polygon, this function will + find if any 2pt segment crosses through the polygon. If so, it will split + the polygon into mutliple parts using the intersecting line segments. + + The line whose points are all inside the polygon. + The polygon being checked for intersection. + The file where new polygon sections should be saved to. + False if errors were encountered, true otherwise. + + + + For lines where every point lies outside the polygon, this function will + find if any 2pt segment crosses through the polygon. If so, it will split + the polygon into mutliple parts using the intersecting line segments. + + The line whose points are all inside the polygon. + The polygon being checked for intersection. + The file where new polygon sections should be saved to. + False if errors were encountered, true otherwise. + + + + Given a line that contains portions both inside and outside of the polygon, this + function will split the polygon based only on the segments that completely bisect + the polygon. The possibility of mutliple intersections for any 2pt segment is taken + into account. + + A boolean array indicating if a point is inside the polygon or not. + The line that intersects the polygon. + The polygon that will be split by the intersecting line. + The shapefile that the polygon sections will be saved to. + False if errors were encountered or an assumption violated, true otherwise. + + + + Sections a polygon into multiple parts depending on where line crosses it and if previous sectioning has occured. + + The line that splits the polygon. First and last points are intersect points. + The polygon that is to be split by the line. + Index to polygon segment where the first intersect point is found. + Index to polygon segment where last intersect point is found. + Reference to result shapefile where new polygon sections will be saved. + False if an error occurs, true otherwise. + + + + Given a reference point to the line, and an array of points that + lie along the line, this method sorts the array of points from the point + closest to the reference pt to the pt farthest away. It also sorts the corresponding + polygon location array so that the indicies refer to the correct intersection point. + + Point in line segment used as reference. + Array of points that lie on the same line as startPt. + Array indexing where in polygon an intersect occurs. + + + + Given a reference point to the line, and an array of points that + lie along the line, this method sorts the array of points from the point + closest to the reference pt to the pt farthest away. + + Point in line segment used as reference. + Array of points that lie on the same line as startPt. + + + + Splits original polygon into two portions depending on where line crosses it. + + The line the crosses the polygon. First and last points are intersects. + The polygon that is split by the line. + The section of the polygon where the first intersect point is found. + The section of the polygon where the last intersect point is found. + First portion of polygon returned after splitting. + Second portion of polygon returned after splitting. + + + + Calculates the determinant of a 3X3 matrix, where the first two rows + represent the x, y values of two lines, and the third row is (1 1 1). + + The first element of the first row in the matrix. + The second element of the first row in the matrix. + The third element of the first row in the matrix. + The first element of the second row in the matrix. + The second element of the second row in the matrix. + The third element of the second row in the matrix. + The determinant of the matrix. + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster Slope + + + + + Initializes a new instance of the RasterSlope class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the slope generation raster. + + The input altitude raster. + A multiplicative scaling factor to be applied to the elevation values before calculating the slope. + If this is true, the resulting slopes are returned as percentages. + The output slope raster. + The progress handler. + True if the method worked. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Union all of the features from one polygon feature set into a single polygon. + + + + + Initializes a new instance of the class. + + + + + Once the Parameters have been configured, the Execute command can be called, it returns true if succesful. + + + + + Executes the Union Opaeration tool programaticaly + + The source FeatureSet to aggregate the features for.. + The result FeatureSet of aggregated features.. + The progress handler. + Boolean if the result is true. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Merge Grids + + + + + Initializes a new instance of the MergeGrids class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Erase Opaeration tool programaticaly + Ping deleted static for external testing 01/2010. + + The first input raster. + The second input raster. + The output raster. + The progress handler. + Boolean, true if the merge is successful. + + + + The Parameter array should be populated with default values here + + + + + Execute the union region for output envelope. + + the first input raster to union the envelope for. + input second input raster to union the envelope for. + The combined envelope. + + + + Help text to be displayed when no input field is selected + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + No Data Value Change + + + + + Initializes a new instance of the NoDataValueChange class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Erase Opaeration tool programaticaly + Ping Yang deleted static for external testing 01/2010 + + The input raster + The original double value representing no-data + The new double value representing no-data + The output raster + The progress handler + + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output Parameter value, this can be used to populate input2 Parameter default values. + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster Distance tool + + + + + Initializes a new instance of the RasterDistance class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Raster distance calculation + Ping Yang deleted static for external testing 10/2010 + + The input raster + The output raster + The maximum distance value. Cells with a larger distance to nearest + target cell than maxDistance will be assigned 'no data' value. + The progress handler + true if execution successful, false otherwise + + + + The Parameter array should be populated with default values here + + + + + Reads and converts the specified row from input raster to an array of integer + It assigns noDataVal to 'noData' values and assigns dataVal to other values + + + + The array where the row is saved. This array must be correctly dimensioned. + New value which will be assigned to value cells + New value which will be assigned to 'no data value' cells + + + + Writes the integer row array to the output raster. The square distance is + converted to a normal distance. Unknown distance is converted to 'no data' value + + + + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Grid Resample + + + + + Creates a new instance of the resample grid tool + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the ReSample Opaeration tool programaticaly + Ping deleted the static property for external testing. + + The input raster. + The size of the cell's hight. + The size of the cell's width. + The output raster. + The progress handler. + Boolean, true if the method was successful. + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output Parameter value, this can be used to populate input2 Parameter default values. + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster Multiply + + + + + Initializes a new instance of the RasterMultiply class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes RastersMultiply Opaeration tool programaticaly + Ping Yang deleted static property for external testing 01/2010. + + The original input input raster for raster multiplication. + The second input raster with values to multiply by. + The output raster. + The progress handler. + Boolean, true if the execute was successful. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster subtract + + + + + Initializes a new instance of the RasterSubract class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Erase Opaeration tool programaticaly + Ping Yang deleted static for external testing 01/2010. + + The original input raster. + The second input raster. + The output raster + The progress handler. + Boolean, true if the method was successful. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Raster Add + + + + + Initializes a new instance of the class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Erase Operation tool programaticaly, 01/10 Ping Yang changed it for external testing. + + The first input raster. + The input raster. + The output raster. + The progress handler. + Boolean, true if the method was successful. + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Fixed Count or Distance + + + + + Returns as many neighbors as fall within the specified range + + + + + Returns the nearest x values, regardless of how close. + + + + + Inverse distance weighting tool + + + + + Creates a new instance of the inverse distance weighting interpolation tool + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Area tool with programatic input + Ping delete static for external testing + + The input raster + The field name containing the values to interpolate + The double geographic size of the raster cells to create + The double power representing the inverse + Fixed distance of fixed number of neighbors + The number of neighbors to include if the neighborhood type + is Fixed + Points further from the raster cell than this distance are not included + in the calculation if the neighborhood type is Fixed Distance. + The output raster where values are stored. The fileName is used, but the number + of rows and columns will be computed from the cellSize and input featureset + A progress handler for receiving progress messages + A boolean, true if the IDW process worked correctly + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output Parameter value, this can be used to populate other Parameter default values. + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Area + + + + + Creates a new instance of the area calculation tool + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + + + + + + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Line-simplification using Douglas-Peucker algorithm + + + + + Initializes a new instance of the DpSimplification class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the DP line simplefy tool programaticaly + Ping Yang Added it for external Testing + + The input polygon feature set + The tolerance to use when simplefiying + The output polygon feature set + + + + + Executes the DP line simplefy tool programaticaly + + The input polygon feature set + The tolerance to use when simplefiying + The output polygon feature set + The progress handler + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Clip Polygon with Polygon + + + + + Initializes a new instance of the ClipPolygonWithPolygon class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the ClipPolygonWithPolygon tool with programatic input + + The input feature set to clip + The input polygon feature set to clip with + The output feature set + The progress handler for progress message updates + + Ping delete "static" for external testing + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Generate Centroid tool + + + + + Creates a new instance of the centroid tool + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the generate centroid FeatureSet Opaeration tool programaticaly. + Ping deleted static for external testing 01/2010 + + The input FeatureSet. + The output FeatureSet. + The progress handler. + + + + + The parameters array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Overwrite feature + + + + + Initializes a new instance of the OverWriteFeature class. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the overwrite feature Opaeration tool programaticaly. + + The input FeatureSet. + The Index to overwrite + The input2 featureSet which has the new feature to overwrite. + The output FeatureSet. + The progress handler. + + + + + The parameters array should be populated with default values here + + + + + Help text to be displayed when no input field is selected + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + This tool creates a raster by drawing the specified feature onto the raster. + + + + + Initializes a new instance of the FeatureToRaster class. + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Generates a new raster given the specified featureset. Values will be given to + each cell that coincide with the values in the specified field of the attribute + table. If the cellSize is 0, then it will be automatically calculated so that + the smaller dimension (between width and height) is 256 cells. + Ping Yang delete static for external testing 01/2010 + + The featureset to convert into a vector format + A double giving the geographic cell size. + The string fieldName to use + The raster that will be created + A progress handler for handling progress messages + + + + + The Parameter array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output Parameter value, this can be used to populate input2 Parameter default values. + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + Union the features + + + + + Creates a new instance of the Union tool + + + + + Once the Parameter have been configured the Execute command can be called, it returns true if succesful + + + + + Executes the Union Opaeration tool programaticaly + + The input are feature set + The second input feature set + The output feature set + The progress handler + + + + + The Parameter array should be populated with default values here + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/msvcp100.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdalconst_csharp.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/openjpeg.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Forms.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Forms.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Forms.xml (revision 2866) @@ -0,0 +1,2577 @@ + + + + DotSpatial.Positioning.Forms + + + + Represents a user control used to display altitude. + + Altimeters are used to visually represent some form of altitude, typically the + user's current altitude above sea level. Altitude is measured using three needles which + represent (from longest to shortest) hundreds, thousands and tens-of-thousands. The + display of the Altimeter is controlled via the Value property. + + + + + Represents a base class for round controls painted using polar + coordinates. + + + + + Represents a base class for designing flicker-free, multithreaded user + controls. + + + This powerful and versatile class provides a framework upon which to create + high-performance owner-drawn controls. Common rendering challenges such as + multithreading, thread synchronization, double-buffering, performance tuning, + platform tuning and animation are all handled by this class. + Controls which inherit from this class perform all paint operations by + overriding the OnPaintOffScreen method, and optionally the + OnPaintOffScreenBackground and + OnPaintOffScreenAdornments methods. Controls which demand higher + performance should perform all rendering on a separate thread. This is done by + setting the IsPaintingOnSeparateThread property to + True. Since the actual painting of the control is handled by this + class, the OnPaint method should not be overridden. + When all off-screen paint operations have completed, this class will copy the + contents of the off-screen bitmap to the on-screen bitmap which is visibly + displayed on the control. By deferring all rendering operations to another thread, + the user interface remains very responsive even during time-consuming paint + operations. + Performance tuning is another major feature of this class. The + OptimizationMode property gives developers the ability to tune + rendering performance for animation speed, rendering quality, low CPU usage, or a + balance between all three. + While thread synchronization has been implemented wherever possible in this + class, and the class is almost entirely thread-safe, some care should be taken when + accessing base Control properties from a separate thread. Even + basic properties like Visible can fail, especially on the Compact + Framework. For minimal threading issues, avoid reading control properties during + paint events. + This class has been tuned to deliver the best performance on all versions of + the .NET Framework (1.0, 1.1 and 2.0) as well as the .NET Compact Framework (1.0 + and 2.0). Compatibility is also managed internally, which simplifies the process of + porting controls to the Compact Framework. + + + This example demonstrates how little code is required to use features like + double-buffering and multithreading. IsPaintingOnSeparateThread + enables multithreading, and all paint operations take place in the + OnPaintOffScreen method instead of OnPaint. To + prevent memory leaks, all GDI objects are disposed of during the + Dispose method. + + Public Class MyControl + Inherits DoubleBufferedControl + Dim MyBrush As New SolidBrush(Color.Blue) + + Sub New() + IsPaintingOnSeparateThread = True + End Sub + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + End Sub + + Public Overrides Sub Dispose(ByVal disposing As Boolean) + MyBrush.Dispose() + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + SolidBrush MyBrush = new SolidBrush(Color.Blue); + + MyControl() + { + IsPaintingOnSeparateThread = true; + } + + protected override void OnPaintOffScreen(PaintEventArgs e) + { + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)); + } + + public override void Dispose(bool disposing) + { + MyBrush.Dispose(); + } + } + + + + + Creates a new instance. + + + Creates a new instance using the specified thread name. + + The name associated with the rendering thread when rendering is multithreaded. + This name appears in the Output window when the thread exits and can be useful during + debugging. The name should also contain a company or support URL. + + + + + Allows the control to be repainted after a call to SuspendPainting. + + + + + Temporarily pauses all painting operations. + + + + + Repaints the control either directly or via the painting thread. + + + + + Redraws the control off-screen. + + + + Occurs when an exception occurs during a multithreaded paint operation. + + Exceptions caught during rendering iterations are channeled through this + method instead of being re-thrown. This allows developers the ability to silently + handle rendering problems without letting them interrupt the user interface. This + method invokes the ExceptionOccurred event. + + + This example demonstrates how to be notified of rendering failures using the + OnPaintException method. + + Public Class MyControl + Inherits DoubleBufferedControl + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' Cause an error by using a null pen + e.Graphics.DrawRectangle(Nothing, Rectangle.Empty) + End Sub + + Protected Overrides Sub OnPaintException(ByVal e As ExceptionEventArgs) + Throw e.Exception + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // Cause an error by using a null pen + e.Graphics.DrawRectangle(null, Rectangle.Empty); + } + + protected override void OnPaintException(ExceptionEventArgs e) + { + throw e.Exception; + } + } + + + An Exception object describing the rendering error. + + + + + + + + + Occurs when the desired frame rate has changed. + + This virtual method is called whenever the TargetFrameRate + property has changed. This method gives controls the opportunity to adjust animation + effects to achieve the frame rate as closely as possible. + + + An Integer specifying the ideal or desired frame rate for the + control. + + + + Performs all major painting operations for the control. + + This method must be overridden. All painting operations for the control take + place during this method. After this method completes, the + OnPaintOffScreenAdornments method is called. When all painting + operations have completed, the task of repainting the control visually takes place + automatically. + Developers seeking to upgrade their existing controls to use this control + must move all code from OnPaint into + OnPaintOffScreen. For best performance, the + OnPaint method would not be overridden at all. + + + A CancelablePaintEventArgs object used for all painting + operations, as well as to signal when a rendering iteration has been aborted. + + + + + Optional. Performs painting operations which draw the control's + background. + + + This method provides the ability to prepare the background of the control + before major painting operations take place. By default, this method calls the + Graphics.Clear method to erase the control to the background + color. + This method can be overridden to perform certain visual effects. For example, + the PolarControl class, which inherits from this class, uses this + method to apply a fading circular gradient to create a 3D illusion. Then, the + OnPaintOffScreenAdornments method is also overridden to apply a + second effect which gives the appearance of glass over the control. For more + information on glass effects, see the Effect property of the + PolarControl class. + + + A CancelablePaintEventArgs object used for all painting + operations, as well as to signal when a rendering iteration has been aborted. + + + + + Optional. Performs any additional painting operations after the main portions of + the control are painted. + + + By default, this method does nothing. This method can be overridden to apply + certain details, however, such as a watermark, company logo, or glass. For example, the + PolarControl class overrides this method to apply a glass effect on + top of anything that has already been painted. For more information on glass effects, + see the Effect property of the PolarControl + class. + + + A CancelablePaintEventArgs object used for all painting + operations, as well as to signal when a rendering iteration has been aborted. + + + + + + + + + + + Occurs when the control is about to be rendered for the first time. + + + This virtual method provides the ability to prepare any local variables + before the control is painted for the first time. This method is typically used to + create GDI objects such as Pen, Brush, and + Font immediately before they are needed. It is recommended that + this event be used to create any such GDI objects. Additionally, it is also + recommended that GDI objects get created outside of the + OnPaintOffScreen method if they are used repeatedly. + For desktop framework applications, this method is called when the control's + handle is created. For Compact Framework 1.0 applications, there is no handle + creation event, so this method is called when the first call to + OnPaint occurs. + + + + Occurs when the control is to be redrawn on-screen. + + In the DoubleBufferedControl class, the process of painting + the control on-screen is handled automatically. As a result, this method does not + have to be overloaded to paint the control. In fact, this method should not be + overridden to perform any painting operations because it would defeat the purpose + of the control and re-introduce flickering problems. + Ideally, well-written controls will move any and all painting operations from + the OnPaint method into the OnPaintOffScreen + method, and avoid overriding OnPaint entirely. By keeping the + OnPaint method as lightweight as possible, user interfaces remain + responsive and free from flickering problems. + + + This example demonstrates how a user control is upgraded from Control to the + DoubleBufferedControl class. Upgrading is straightforward: All + painting operations are moved from OnPaint to + OnPaintOffScreen and OnPaint is no longer + overridden. + + Public Class MyControl + Inherits Control + Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs) + Dim MyBrush As New SolidBrush(Color.Blue) + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + MyBrush.Dispose(); + End Sub + End Class + + + public class MyControl : Control + { + protected override void OnPaint(PaintEventArgs e) + { + SolidBrush MyBrush = new SolidBrush(Color.Blue); + e.Graphics.FillRectangle(MyBrush, new Rectangle(50, 50, 50, 50)); + MyBrush.Dispose(); + } + } + + + Public Class MyControl + Inherits DoubleBufferedControl + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + Dim MyBrush As New SolidBrush(Color.Blue) + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + MyBrush.Dispose(); + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + protected override void OnPaintOffScreen(PaintEventArgs e) + { + SolidBrush MyBrush = new SolidBrush(Color.Blue); + e.Graphics.FillRectangle(MyBrush, new Rectangle(50, 50, 50, 50)); + MyBrush.Dispose(); + } + } + + + + + + Finalizes an instance of the DoubleBufferedControl class. + + + + Releases memory and GDI resources created by the control. + + This method is very important to implement properly when working with + controls. Any Brush, Pen, Font, + Matrix, GraphicsPath, Region or + other GDI+ object containing a Dispose method must be disposed of + before they are destructed by the garbage collector. + Well-written controls will create unmanaged GDI+ objects outside of the + OnPaintOffScreen method, then dispose of them during the + Dispose method. This practice improves performance by creating as + new new objects and resources as possible while minimizing problems which may occur + due to resources which are not properly released. + Failure to call the Dispose method on GDI+ objects will + cause memory leaks which will slowly eat up available memory until the application + can no longer function. Use the "GDI Objects" column of the Windows Task Manager to + monitor the number of GDI objects allocated. Memory leaks will cause the GDI Object + count to increase continuously, whereas well-written controls will experience a GDI + Object count that remains fairly constant over a longer period of time. + To view the GDI Objects column in the Windows Task Manager: + + + Open the Windows Task Manager + Select the "Processes" tab. + Select "Choose Columns..." from the View menu. + Check the "GDI Objects" box and click OK. + + + + This example demonstrates how a control might create subtle problems when the + Dispose method is not used on every GDI+ object. + + Public Class MyControl + Inherits DoubleBufferedControl + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + Dim MyBrush As New SolidBrush(Color.Blue) + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + End Sub + + ' Notice: MyBrush is never disposed. A memory leak + ' will occur! + End Class + + + public class MyControl : DoubleBufferedControl + { + protected override void OnPaintOffScreen(PaintEventArgs e) + { + SolidBrush MyBrush = new SolidBrush(Color.Blue); + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)); + } + + // Notice: MyBrush is never disposed. A memory leak + // will occur! + } + + + Public Class MyControl + Inherits DoubleBufferedControl + ' 1. GDI objects are created outside of the OnPaintOffScreen + ' methods whenever possible. + Dim MyBrush As New SolidBrush(Color.Blue) + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' 2. The paint method is as lightweight as possible, + ' improving rendering performance + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + End Sub + + Public Overrides Sub Dispose(ByVal disposing As Boolean) + ' 3. Any GDI+ objects are disposed of properly + MyBrush.Dispose() + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + // 1. GDI objects are created outside of the OnPaintOffScreen + // methods whenever possible. + SolidBrush MyBrush = new SolidBrush(Color.Blue); + + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // 2. The paint method is as lightweight as possible, + // improving rendering performance + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)); + } + + public override void Dispose(bool disposing) + { + // 3. Any GDI+ objects are disposed of properly + MyBrush.Dispose(); + } + } + + + + + + Converts a color from HSB (hue, saturation, brightness) to RGB. + + + + + + + + + Occurs when an exception is thrown during off-screen painting operations. + + When the control is rendering on a separate thread, exceptions cannot be + caught by a regular Try..Catch statement. Exceptions are instead + channeled through this event. The control will also attempt to display exception + information on-screen to inform developers of the code which failed. + It is important to capture this event or override the + OnPaintException method in order to be properly notified of + problems. Without doing this, the control could fail to paint properly yet give no + indication that there is a problem. + + + This example hooks into the ExceptionOccurred event of a control + in order to handle painting exceptions. + + Public Class MyControl + Inherits DoubleBufferedControl + + Sub New() + ' Receive notifications of paint problems + AddHandler ExceptionOccurred, AddressOf HandleExceptions + End Sub + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' Try to paint with a null Pen + e.Graphics.DrawRectangle(Nothing, Rectangle.Empty) + End Sub + + Private Sub HandleExceptions(ByVal sender As Object, ByVal e As ExceptionEventArgs) + ' Write the error to the Debug window + Debug.WriteLine(e.Exception.ToString()) + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + MyControl() + { + // Receive notifications of paint problems + ExceptionOccurred += new ExceptionEventHandler(HandleExceptions); + } + + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // Try to paint with a null Pen. + e.Graphics.DrawRectangle(null, Rectangle.Empty); + } + + private sub HandleExceptions(object sender, ExceptionEventArgs e) + { + // Write the error to the Console + Console.WriteLine(e.Exception.ToString()); + } + } + + + + + + Occurs when the control is to be redrawn in the background. + + In the DoubleBufferedControl class, all painting occurs off-screen. Then, the off-screen bitmap is quickly + drawn on-screen when painting completes. This event is called immediately after the PaintOffScreenBackground event. + + + + Occurs when the control's background is to be redrawn before the main graphics of the control. + + In the DoubleBufferedControl class, all painting occurs off-screen. Then, the off-screen bitmap is quickly + drawn on-screen when painting completes. This event is called to paint any background graphics before the main elements of the + control are drawn. Some painting effects, such as glass or plastic, use this event along with PaintOffScreenAdornments + to add annotations to the control. This event is called immediately before the PaintOffScreen event. + + + + Occurs when additional graphics or annotations must be added to the control. + + In the DoubleBufferedControl class, all painting occurs off-screen. Then, the off-screen bitmap is quickly + drawn on-screen when painting completes. This event is called to paint any additional graphics after the main elements of the + control are drawn. Some painting effects, such as glass, adding text or logos, use this event to draw on the control. This event is called immediately after the PaintOffScreen event. + + + + Indicates whether the control is currently running inside of a Windows Forms designer. + + + + Indicates if the control and its resources have been disposed. + + + + Indicates if all off-screen rendering takes place on a separate thread. + + + This powerful property controls whether or not rendering operations are + multithreaded. When set to True, a new thread is launched and all + subsequent calls to OnPaintOffScreen, + OnPaintOffScreenBackground and + OnPaintOffScreenAdornments occur on that thread. Thread + synchronization features are enabled so that painting operations never interfere + with rendering operations. The priority of the rendering thread is controlled via + the ThreadPriority property. + When this property is False, the rendering thread is torn + down and all rendering occurs on the owner's thread. Controls which perform + significant painting operations should enable this property to allow the user + interface to be more responsive. As a general rule, any intense processing should + be moved away from the user interface thread. + + + This example instructs the control to perform all rendering on a separate thread. + Notice that all thread management is handled automatically -- the only operation + required is enabling the property. + + Public Class MyControl + Inherits DoubleBufferedControl + + Sub New() + ' Enable multithreading + IsPaintingOnSeparateThread = True + End Sub + + ' This method is now called from another thread + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + Dim MyBrush As New SolidBrush(Color.Blue) + e.Graphics.FillRectangle(MyBrush, New Rectangle(50, 50, 50, 50)) + MyBrush.Dispose() + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + MyControl() + { + // Enable multithreading + IsPaintingOnSeparateThread = true; + } + + // This method is now called from another thread + protected overrides void OnPaintOffScreen(PaintEventArgs e) + { + SolidBrush MyBrush = new SolidBrush(Color.Blue); + e.Graphics.FillRectangle(MyBrush, new Rectangle(50, 50, 50, 50)); + MyBrush.Dispose(); + } + } + + + + + + Controls the upper-left portion of the off-screen bitmap to paint + on-screen. + + + A Point structure indicating the corner of the off-screen bitmap + to draw on-screen. Default is Empty. + + + If the size of the off-screen bitmap is different than the on-screen bitmap, + a control may need to draw different portions of the off-screen bitmap. For + example, if an off-screen bitmap is 200x200 pixels but the visible portion of the + control is only 50x50 pixels, an offset of (10, 10) instructs the control to paint + the off-screen bitmap from (10, 10)-(60, 60). + for most controls, this property does not need to be overridden. Controls + which override this property also override the OffScreenBitmapSize + property to specify a size defferent than the visible portion of the + control. + + + + Returns the bitmap used for off-screen painting operations. + A Bitmap containing off-screen painted data. + + This control maintains two separate bitmaps: an "off-screen" bitmap, where + all painting operations take place, and an "on-screen" bitmap which is displayed + visually to the user. When an off-screen painting operation completes successfully, + the off-screen bitmap is copies to the on-screen bitmap, then painted on the + display. This property returns the off-screen bitmap created during the most recent + paint iteration. + + + + Controls the relative priority of multithreaded painting operations. + + A ThreadPriority value. Default is + Normal. + + + Painting operations may require more CPU time if they represent the majority of + a user interface, or if painting operations are more complicated. Performance can be + improved by increasing the priority of the rendering thread. Likewise, if a control is + of minor importance to an application, a lower thread priority can improve performance + in more important areas of the application. + + + This example enables multithreaded painting then changes the priority of the + rendering thread to Lowest to give the rest of the application + more CPU time. + + Public Class MyControl + Inherits DoubleBufferedControl + + Sub New() + ' Enable multithreading + IsPaintingOnSeparateThread = True + ' Set a low thread priority + ThreadPriority = ThreadPriority.Lowest + End Sub + + ' This method is now called from another thread + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' ...etc. + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + MyControl() + { + // Enable multithreading + IsPaintingOnSeparateThread = true; + // Set a low thread priority + ThreadPriority = ThreadPriority.Lowest; + } + + // This method is now called from another thread + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // ...etc. + } + } + + + + + Controls the background color of the control. + A Color structure representing the background color. + + The default BackColor property of the Control + class cannot be accessed from a thread other than the UI thread. As a result, this + property was shadowed in order to make it thread-safe. + + + + + Controls whether exception messages are displayed on the control. + + In some situations, an exception can occur during a paint operation. To notify + developers of the problem, the error text is written directly to the control. This behavior + may not be suitable for some developers, however, who want to trap errors more gracefully. + Setting this property to False causes error messages to never be drawn on the control. The + ExceptionOccurred event should instead be used to gracefully handle errors when they occur. + + + Returns the width of the control in pixels. + An Integer indicating the width of the control in pixels. + + The default Width property of the Control class + cannot be accessed from a thread other than the UI thread. As a result, this property + was shadowed in order to make it thread-safe. + + + + + Returns the horizontal and vertical length of the control in pixels. + + + + + The default Height property of the Control + class cannot be accessed from a thread other than the UI thread. As a result, this + property was shadowed in order to make it thread-safe. + + Returns the height of the control in pixels. + An Integer indicating the width of the control in pixels. + + + Returns the bitmap used to paint the visible portion of the control. + A Bitmap containing data to be painted on the display. + + This control maintains two separate bitmaps: an "off-screen" bitmap, where + all painting operations take place, and an "on-screen" bitmap which is displayed + visually to the user. When an off-screen painting operation completes successfully, + the off-screen bitmap is copies to the on-screen bitmap, then painted on the + display. This property returns the on-screen bitmap matching what is actually seen + in the control. + + + + Controls the desired frame rate for rendering operations. + + An Integer indicating the desired frame rate. Default is + 30. + + + This property is used by controls which make use of animation effects. + Typically, this property tells a control how long to delay between repaint + operations, or how many frames to allocate for a certain time period. Controls + which do not do any custom animation effects ignore this property and it has no + effect. When this property changes, the OnTargetFrameRateChanged + virtual method is called. + If a control is able to repaint itself very quickly, smooth animation effects + can be achieved. A refresh rate of 30 frames per second or above is necessary to + give the human eye the illusion of motion. Refresh rates of 60 or even 120 are + possible for extremely fast controls and can result in very nice, smooth animation + effects. + This property can be a bit confusing for developers because it does not + control the rate at which the control is actually repainted. (The control is only + repainted when necessary, whenever that occurs.) This property is used only to tune + custom effects implemented by controls inheriting from this class. + + + This example animates a green rectangle. The default target frame rate is set to 60 + frames per second, which causes the interval of a timer to change. The timer + changes the position of the rectangle. + + Public Class MyControl + Inherits DoubleBufferedControl + Dim AnimatedRectangle As Rectangle + + Sub New() + ' Set a 60 frames per second target + TargetFramesPerSecond = 60 + End Sub + + Protected Overrides Sub OnTargetFrameRateChanged() + ' Change the timer to fire 60 times per second + MyTimer.Interval = 1000 / TargetFramesPerSecond + End Sub + + Private Sub MyTimer_Tick(ByVal sender As Object, ByVal e As EventArgs) + ' Change the location of an animated thing + AnimatedRectangle = New Rectangle((AnimatedRectangle.X + 1) Mod Width, + (AnimatedRectangle.Y + 1) Mod Height, + 50, 50) + ' And cause the control to repaint + InvokeRepaint() + End Sub + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + Dim MyBrush As New SolidBrush(Color.Green) + e.Graphics.FillRectangle(MyBrush, AnimatedRectangle) + MyBrush.Dispose() + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + Rectangle AnimatedRectangle; + + MyControl() + { + // Set a 60 frames per second target + TargetFramesPerSecond = 60; + } + + protected override void OnTargetFrameRateChanged() + { + // Change the timer to fire 60 times per second + MyTimer.Interval = 1000 / TargetFramesPerSecond + } + + private void MyTimer_Tick(object sender, EventArgs e) + { + // Change the location of an animated thing + AnimatedRectangle = New Rectangle((AnimatedRectangle.X + 1) ^ Width, + (AnimatedRectangle.Y + 1) ^ Height, + 50, 50); + // And cause the control to repaint + InvokeRepaint(); + } + + protected override void OnPaintOffScreen(PaintEventArgs e) + { + SolidBrush MyBrush = new SolidBrush(Color.Green); + e.Graphics.FillRectangle(MyBrush, AnimatedRectangle); + MyBrush.Dispose(); + } + } + + + + + + Controls the graphics quality settings for the control. + + + + + Indicates the point at the center of the control. + + This property is typically used for centering items in the control. This property + is updated automatically as the control is resized. + + A Point structure representing the pixel at the center of the + control. + + + This example uses the Center property to center a rectangle in the + middle of the control. + + Public Class MyControl + Inherits DoubleBufferedControl + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' Center a rectangle in the middle of the control + Dim MyShape As New Rectangle(Center.X - 25, Center.Y - 25, 50, 50) + ' Now paint it + Dim MyBrush As New SolidBrush(Color.Green) + e.Graphics.FillRectangle(MyBrush, MyShape) + MyBrush.Dispose() + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // Center a rectangle in the middle of the control + Rectangle MyShape = new Rectangle(Center.X - 25, Center.Y - 25, 50, 50); + // Now paint it + SolidBrush MyBrush = new SolidBrush(Color.Green); + e.Graphics.FillRectangle(MyBrush, MyShape); + MyBrush.Dispose(); + } + } + + + + + + Glass reflection + + + + + Glass reflection rectangle + + + + + Creates a new instance. + + + + + Creates a new instance using the specified thread name. + + A String representing the friendly name of the control. + The thread name is dusplayed in the Visual Studio "Threads" debugging window. Multithreaded debugging + can be simplified when threads are clearly and uniquely named. + + + Cleans up any unmanaged GDI+ resources used during painting. + + + + + + + Make Brushes + + + + Occurs when the control's effect has changed. + + + Occurs when the control's size has changed. + + + Occurs when the control's rotation has changed. + + + Occurs when the compass direction associated with 0° has changed. + + + Occurs when the control's orientation has changed. + + + + Create Graphics + + + + + + Create Polar Graphics + + + + + + Occurs when the control's background is painted. + + + + Occurs when additional painting is performed on top of the control's main + content. + + + + Rotates the entire control to the specified value. + + + Occurs when the desired animation frame rate has changed. + + + Occurs when the rotation amount has changed. + + + Occurs when the compass direction associated with 0° has changed. + + + Occurs when the control's coordinate orientation has changed. + + + Controls the special painting effect applied to the control. + + + Controls the amount of rotation applied to the entire control. + + + Returns the current amount of rotation during an animation. + + + Controls the acceleration and deceleration technique used during rotation. + + + + Returns the compass direction which matches zero degrees. + + + + Returns the radius corresponding to the edge of the control. + + + Controls the background color of the control. + + + Returns the radius corresponding to the center of the control. + + + + Returns whether positive values are applied in a clockwise or counter-clockwise direction. + + + + Creates a new instance. + + + + + + + + + + + + + Occurs when the Value property has changed. + + + + + Indicates if the control should automatically display the current + altitude. + + + A Boolean, True if the control automatically + displays the current altitude. + + + When this property is enabled, the control will examine the + CurrentAltitude property of the + DotSpatial.Positioning.Gps.Devices class and update itself when the property + changes. When disabled, the Value property must be set manually to + change the control. + + + + Controls the font used for displaying altitude text. + + This property controls the font used to display altitude text on the control. To + control the font of numbers drawn around the edge of the control, see the + AltitudeLabelFont property. + + AltitudeLabelFont Property + + + Controls the color of altitude text. + + This property controls the color of the altitude text on the control. To change + the color of numbers drawn around the edge of the control, see the + AltitudeLabelColor property. + + AltitudeLabelColor Property + + + + Controls how the control smoothly transitions from one value to another. + + + + Controls the format of altitude values. + + A String which is compatible with the ToString + method of the Distance class. + + + This property controls how text is output on the control. By default, the format + is "v uu" where v represents the numeric portion of + the altitude, and uu represents units. + + + + Controls the altitude to display on the control. + A Distance structure measuring the altitude to display. + + Changing this property causes the needles on the control to move so that they + represent the value. + + + + Controls the color of numbers around the edge of the control. + + This property controls the color of numbers around the edge of the control. To + control the color of altitude text, see the ValueColor + property. + + ValueColor Property + + + Controls the font of numbers drawn around the edge of the control. + + This property controls the font used to draw numbers around the edge of the + control. To control the font used to draw altitude text, see the + ValueFont property. + + ValueFont Property + + + + Controls the color of smaller tick marks drawn around the edge of the + control. + + + Minor tick marks are drawn between major tick marks around the control. These + tick marks can be made invisible by changing the color to + Transparent. + + + + + There are ten major tick marks in an altimeter, drawn next to numbers on the + control. These tick marks can be made invisible by changing the color to + Transparent. + + + + Controls the interior color of the tens-of-thousands needle. + + The tens-of-thousands needle is the smallest needle of the control. The interior + can be made invisible by setting this property to Transparent. + + + + + Controls the color of the interior of the thousands needle. + + + + + Controls the color of the interior of the hundreds needle. + + + + + Controls the color of the edge of the tens-of-thousands needle. + + + + + Controls the color of the edge of the thousands needle. + + + + + Controls the color of the edge of the hundreds needle. + + + + + Controls the color of the shadow cast by the altitude needles. + + + + + Controls the size of the shadow cast by the altitude needles. + + + + + Indicates which time is displayed by the clock control. + + + + + GPS satellite signals are used to display the current time. + + + + + The computer's system clock is used to display the current time. + + + + + A custom time will be displayed by setting the Value property manually. + + + + + Represents a user control which displays the local or satellite-derived time. + + + + + The constructor provides a name for the control. This name is used as the name of the thread if multithreading is enabled. + + + + + Dispose + + + + + + This method is called whenever the control must be rendered. All rendering takes + place off-screen, which prevents flickering. The "PolarControl" base class automatically + handles tasks such as resizing and smoothing. All you have to be concerned with is + calculating the polar coordinates to draw. + + + + + + Occurs when the value changes + + + + + Controls the color of smaller tick marks drawn around the edge of the + control. + + + Minor tick marks are drawn between major tick marks around the control. These + tick marks can be made invisible by changing the color to + Transparent. + + + + + There are ten major tick marks in an altimeter, drawn next to numbers on the + control. These tick marks can be made invisible by changing the color to + Transparent. + + + + + Controls the font used to draw the hour labels around the edge of the clock. + + + + + Controls the color of the shortest hand on the clock, representing hours. + + + + + Controls the color of the minutes hand on the clock. + + + + + Controls the color of the seconds hand on the clock. + + + + + Controls the technique used to display the current time. + + + + + Controls the amount of time allowed to elapse before the clock is refreshed with the latest time report. This property works only when the control is set to display the local machine's time. + + + + + Controls the time being displayed by the device. + + + + + Controls the color used to paint numeric labels for hours. + + + + Calculates intermediate colors between two other colors. + + This class is used to create a smooth transition from one color to another. + After specifying a start color, end color, and number of intervals, the indexer + will return a calculated Color. Specifying a greater number of + intervals creates a smoother color gradient. + Instances of this class are guaranteed to be thread-safe because the class + uses thread synchronization. + On the .NET Compact Framework, the alpha channel is not supported. + + + This example uses a ColorInterpolator to calculate ten colors + between (and including) Blue and Red . + + ' Create a New color interpolator + Dim Interpolator As New ColorInterpolator(Color.Blue, Color.Red, 10) + ' Output Each calculated color + Dim i As Integer + For i = 0 To 9 + ' Get the Next color In the sequence + Dim NewColor As Color = Interpolator(i) + ' Output RGB values of this color + Debug.Write(NewColor.R.ToString() + ",") + Debug.Write(NewColor.G.ToString() + ",") + Debug.WriteLine(NewColor.B.ToString()) + Next i + + + // Create a new color interpolator + ColorInterpolator Interpolator = new ColorInterpolator(Color.Blue, Color.Red, 10); + // Output each calculated color + for (int i = 0; i < 10; i++) + { + // Get the next color in the sequence + Color NewColor = Interpolator[i]; + // Output RGB values of this color + Console.Write(NewColor.R.ToString() + ","); + Console.Write(NewColor.G.ToString() + ","); + Console.WriteLine(NewColor.B.ToString()); + } + + + + + Creates a new instance. + A Color at the start of the sequence. + A Color at the end of the sequence. + + The total number of colors in the sequence, including the start and end + colors. + + + + Returns a calculated color in the sequence. + A Color value representing a calculated color. + + This example creates a new color interpolator between blue and red, then accesses + the sixth item in the sequence. + + ' Create a New color interpolator + Dim Interpolator As New ColorInterpolator(Color.Blue, Color.Red, 10) + ' Access the sixth item + Color CalculatedColor = Interpolator(5); + + + // Create a New color interpolator + ColorInterpolator Interpolator = new ColorInterpolator(Color.Blue, Color.Red, 10); + // Access the sixth item + Color CalculatedColor = Interpolator[5]; + + + + An Integer between 0 and Count minus + one. + + + + + Controls the interpolation technique used to calculate intermediate + colors. + + + An InterpolationMethod value indicating the interpolation + technique. Default is Linear. + + + This property controls the rate at which the start color transitions to the end + color. Values other than Linear can "accelerate" and/or "decelerate" towards the end + color. + + + + Controls the first color in the sequence. + + A Color object representing the first color in the + sequence. + + Changing this property causes the entire sequence to be recalculated. + + This example changes the start color from Green to Orange. + + + + + A Color object representing the last color in the + sequence. + + Controls the last color in the sequence. + Changing this property causes the entire sequence to be recalculated. + + + Controls the number of colors in the sequence. + Changing this property causes the entire sequence to be recalculated. + + An Integer indicating the total number of colors, including the + start and end colors. + + + + + Represents a user control used to display the current direction of travel. + + + + + A compass control + + + + + + + + + + + + + + Occurs when the value changes + + + + + Controls the direction that the needle points to. + + + + + Controls how the control smoothly transitions from one value to another. + + + + + Controls the number of degrees in between each label around the control. + + + + + Controls the color of degree labels drawn around the control. + + + + + Controls the font of degree labels drawn around the control. + + + + + Controls the number of degrees in between each compass direction (i.e. \"N\", \"NW\") around the control. + + + + + Controls the color of compass labels on the control. + + + + + Controls the color of tick marks next to each direction label on the control. + + + + + Controls whether the Value property is set manually, or automatically read from any available GPS device. + + + + + Controls the font used to draw direction labels on the control. + + + + + Controls the output format of labels drawn around the control. (i.e. h°m's\")" + + + + + Controls the number of degrees in between each small tick mark around the control. + + + + + Controls the color of smaller tick marks drawn around the control. + + + + + Controls the number of degrees in between each larger tick mark around the control. + + + + + Controls the color of larger tick marks drawn around the control. + + + + + Controls the color of the interior of the needle which points North. + + + + + Controls the color of the edge of the needle which points North. + + + + + Controls the color of the interior of the needle which points South. + + + + + Controls the color of the edge of the needle which points South. + + + + + Controls the color of the shadow cast by the compass needle. + + + + + Controls the size of the shadow cast by the compass needle. + + + + Represents information about a cancelable paint iteration. + + This class is used primarily by the OnPaintOffScreen method of + the DoubleBufferedControl class when paint operations need to be + performed. This class behaves the same as PaintEventArgs, but includes + an extra IsCanceled property to indicate when a rendering iteration + should be aborted. + + + + + Creates a new instance using the specified Graphics object and + clipping rectangle. + + + A Graphics object used for all painting within the + control. + + + A Rectangle that defines the area that should be painted. + Typically the size of the entire control. + + + + Indicates if the painting operation should be completely aborted. + + A Boolean, True if painting was aborted. + Default is False. + + + This property is used by controls which allow their paint operations to be + cancelled. When set to True, the entire painting iteration is stopped and + restarted. This property is useful if a control always needs to display the very + latest information. + Setting this property to True can have some undesirable + affects. For example, if a paint iteration is cancelled repeatedly, the control + will never get far enough in a paint operation to paint on-screen. Some care should + be taken when using this property. + + + This example demonstrates how to write a cancelable paint operation. It's typically + a good idea to check for conditions which should cause a paint to cancel before + beginning a time-consuming painting task. In this case, the + IsPaintingAborted property is examined before entering a large + loop. IsPaintingAborted becomes True when a new + request to paint the control is made after starting the current paint iteration. + + Public Class MyControl + Inherits DoubleBufferedControl + + Sub New() + IsPaintingOnSeparateThread = True + End Sub + + Protected Overrides Sub OnPaintOffScreen(ByVal e As CancelablePaintEventArgs) + ' Should painting be cancelled? + If IsPaintingAborted + ' Yes. Abort all painting + e.IsCanceled = True + Exit Sub + End If + + ' Otherwise, A big paint operation begins + Dim Count As Integer + For Count = 1 To 20000 + Dim MyBrush As New SolidBrush(Color.Green) + e.Graphics.DrawRectangle(MyBrush, New Rectangle(Count, Count, 5, 5)) + MyBrush.Dispose() + Next Count + End Sub + End Class + + + public class MyControl : DoubleBufferedControl + { + MyControl() + { + IsPaintingOnSeparateThread = true; + } + + protected override void OnPaintOffScreen(PaintEventArgs e) + { + // Should painting be cancelled? + if (IsPaintingAborted) + { + // Yes. Abort all painting + e.IsCanceled = true; + return; + } + + // Otherwise, A big paint operation begins + for (int Count = 1; Count <= 20000; Count++) + { + SolidBrush MyBrush = new SolidBrush(Color.Green); + e.Graphics.DrawRectangle(MyBrush, new Rectangle(Count, Count, 5, 5)); + MyBrush.Dispose(); + } + } + } + + + + + + Represents a collection of rendering performance and quality settings. + + + This class is used to control the quality of all painting operations in + GIS.NET. Settings are biased either towards rendering performance, quality, or a + compromise between the two. The HighPerformance static member is + used to paint quickly at the cost of quality; the HighQuality + member paints better-looking results but painting operations require more time. The + Balanced member provides minimal quality improvements while + preserving moderate rendering speed. + + + + + Represents graphics settings balanced between quality and rendering performance. + + A GraphicsSettings object. + + When this setting is used, painting operations will enable a few + quality-improving features while still allowing for faster rendering performance. + This quality setting is recommended for "draft" quality, where a more responsive + map is preferable to quality. + + + + + Represents graphics settings which maximize quality. + + A GraphicsSettings object. + + This is the default setting used by the GIS.NET rendering engine. All possible + smoothing features are enabled, including anti-aliasing, bicubic image interpolation, + and ClearText. With this setting, the smallest geographic features and even most text + are readable. This setting is recommended for production use, as well as + printing. + + + + + Represents graphics settings which maximize rendering performance. + + A GraphicsSettings object. + + When this setting is used, all quality enhancement features are disabled. The + resulting map will render more quickly, but the resulting quality will be hardly + suitable for production use. This setting is best suited for situations where panning + and zooming performance must have all possible speed. + + + + + Creates a new instance. + + + + + Creates a new instance using the specified settings. + + + + + + + + + + + Applies the graphics settings to the specified grahpics container. + + A Graphics object. + + + + Controls the technique used to merge bitmap images. + + + + + Controls the method used to calculate color values between pixels. + + + + + Controls the amount of shift for each pixel to improve anti-aliasing. + + + + + Controls the technique used to blend edges. + + + + + Controls the technique used to smoothen the edges of text. + + + + + Controls the amount of gamma correction applied to text. + + + + Indicates the special effect applied to polar controls during painting. + + + No effect is applied. + + + + Additional painting is performed during + OnPaintOffScreenBackground and + OnPaintOffScreenAdornments to give the appearance of lighting and + glass. + + + + Represents a coordinate measured relative to the center of a circle. + + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + Represents a polar coordinate with no value. + + + Represents a polar coordinate at the center of a circle. + + + + Creates a new instance using the specified radius and angle. + + A Double indicating a radius. Increasing values represent a distance further away from the center of a circle. + An Angle representing a direction from the center of a circle. + The radius "r," when combined with an angle "theta" will create a coordinate relative to + the center of a circle. By default, an angle of zero represents the top of the circle ("North") and + increasing angles wind clockwise around the circle. + + + + Creates a new instance using the specified radius and angle. + + A Double indicating a radius. Increasing values represent a distance further away from the center of a circle. + An Angle representing a direction from the center of a circle. + The radius "r," when combined with an angle "theta" will create a coordinate relative to + the center of a circle. By default, an angle of zero represents the top of the circle ("North") and + increasing angles wind clockwise around the circle. + + + + Creates a new instance using the specified radius, angle, origin and winding direction. + + A Double indicating a radius. Increasing values represent a distance further away from the center of a circle. + An Angle representing a direction from the center of a circle. + An Azimuth indicating which compass direction is associated with zero degrees. (Typically North.) + A PolarCoordinateOrientation value indicating whether increasing Theta values wind clockwise or counter-clockwise. + The radius "r," when combined with an angle "theta" will create a coordinate relative to + the center of a circle. The BearingOrigin will associate a compass direction with zero degrees (0°), but this value is typically "North". + + + + Creates a new Polar Coordinate + + + + + + + + + Creates a new instance by converting the specified string. + + A String describing a polar coordinate in the current culture. + + + + Creates a new instance by converting the specified string. + + A String describing a polar coordinate in any culture. + A CultureInfo object describing how to parse the specified string. + + + Converts the current instance to a pixel coordinate. + + + Converts the current instance to a precise pixel coordinate. + + + Converts the current instance to a highly-precise pixel coordinate. + + + Converts the current instance to a highly-precise Cartesian coordinate. + + + + Applies rotation to the existing coordinate. + + The amount of rotation to apply (above zero for clockwise). + A PolarCoordinate adjusted by the specified rotation amount. + + + + Sets the rotation of the angle + + The angle to set + the PolarCoordinate + + + + Returns the current instance adjusted to the specified orientation and + origin. + + + + + Parses the value as a PolarCoordinate + + + + + + + Parses the value in the specified culter as a polar coordinate + + + + + + + + + + + Customizes the string with a format provider + + + + + + + + Polar Coordinate + + + + + + + string + + + + + + + Point + + + + + + + PointF + + + + + + + PointD + + + + + + + Returns Theta, the amount of clockwise rotation of the + coordinate. + + + + + Returns R, the distance away from the center of an imaginary + circle. + + + + + Returns the compass direction which matches zero degrees. + + + + + Returns whether positive values are applied in a clockwise or counter-clockwise direction. + + + + + Controls the winding direction of increasing angular values. + + This enumeration is used by the PolarCoordinate class + to determine where a coordinate is on a circle. + + + + Increasing angles are further clockwise around the circle. + + + + + Increasing angles are further counter-clockwise around the circle. + + + + + Polar Coordinate Orientation Event Args + + + + + Creates a new instance of the Polar coordinate orientation event arguments + + + + + + The orientation + + + + + Encapsulates a GDI+ drawing surface using polar coordinates instead of pixel coordinates. + + + + Converts a polar coordinate to a pixel coordinate. + + + Converts a polar coordinate to a highly-precise pixel coordinate. + + + + To Polar Coordinate + + + + + + + To Polar Coordinate + + + + + + + To Polar coordinate + + + + + + Converts the current instance into a polar coordinate. + + + Converts a polar coordinate to a precise pixel coordinate. + + + + To PointF + + + + + + Erases the control's background to the specified color. + + + Draws a single straight line. + + + + DrawString + + + + + + + + + + Draw String + + + + + + + + + Draw Centered String + + + + + + + + + + Draw Centered String + + + + + + + + Draws a square or rectangular shape. + + + Fills the interior of a circular shape. + + + Draws a circular shape. + + + Fills the interior of a closed shape. + + + + Converts an array of polar coordinates into a GraphicsPath + object. + + + + Fills and outlines a polygon using the specified style. + + + Draws a closed shape. + + + Draws text rotated by the specified amount. + + + Converts an array of polar coordinates to an array of pixel coordinates. + + + + Converts an array of polar coordinates to an array of precise pixel + coordinates. + + + + + Converts an array of polar coordinates to an array of highly-precise pixel + coordinates. + + + + Draws a rounded line. + + + Draws a rounded line that travels through several points. + + + Draws multiple rounded lines that travels through several points. + + + + Draw Closed Curve + + + + + + + Draw Closed Curve + + + + + + + + + Draw Curve + + + + + + + Draw Curve + + + + + + + + + + Returns the compass direction which matches zero degrees. + + + + + Returns whether positive values are applied in a clockwise or counter-clockwise direction. + + + + Returns the value of R associated with the center of the control. + + + Returns the value of R associated with the edge of the control. + + + Returns the GDI+ drawing surface used for painting. + + + Returns the amount of rotation applied to the entire control. + + + + Represents a control used to display satellite signal strengths. + + + + + Satellite Signal Bar + + + + + + + + + + + + + + + + + + + + + + + Controls the satellites which are currently being viewed in the control. + + + + + Controls the number of pixels in between vertical satellite signal bars. + + + + + Controls the color inside of satellite icons with no signal. + + + + + Controls the color inside of satellite icons with a weak signal. + + + + + Controls the color inside of satellite icons with a moderate signal. + + + + + Controls the color inside of satellite icons with a strong signal. + + + + + Controls the color inside of satellite icons with a very strong signal. + + + + + Controls the color around satellite icons with no signal. + + + + + Controls the color around satellite icons with a weak signal. + + + + + Controls the color around satellite icons with a moderate signal. + + + + + Controls the color around satellite icons with a strong signal. + + + + + Controls the color around satellite icons with a very strong signal. + + + + + Controls the color of the ellipse drawn around fixed satellites. + + + + + Controls whether the Satellites property is set manually, or automatically read from any available GPS device. + + + + + Controls the font used to draw the strength of each satellite. + + + + + Controls the color used to draw the strength of each satellite. + + + + + Controls the font used to draw the ID of each satellite. + + + + + Controls the color used to draw the ID of each satellite. + + + + + Controls whether controls are rotated to show the current bearing straight up. + + + + + The control will be rotated so that North always points to the top of the screen. + + + + + The control will be rotated so the the current bearing points to the top of the screen. + + + + + Represents a user control used to display the location and signal strength of GPS satellites. + + + + + Creates a new instance. + + + + + + + + + + + + + + + + + + + + Controls the amount of rotation applied to the entire control to indicate the current direction of travel. + + + + + Controls whether the Satellites property is set manually, or automatically read from any available GPS device. + + + + + Controls the number of degrees in between each smaller tick mark around the control. + + + + + Controls the format of compass directions drawn around the control. + + + + + Controls the number of degrees in between each larger tick mark around the control. + + + + + Controls the color used to draw smaller tick marks around the control. + + + + + Controls the color used to draw larger tick marks around the control. + + + + + Controls the number of degrees in between each compass label around the control. + + + + + Controls the color used to display compass direction letters around the control. + + + + + Controls the font used to draw compass labels around the control. + + + + + Controls the color inside of satellite icons with no signal. + + + + + Controls the color inside of satellite icons with a weak signal. + + + + + Controls the color inside of satellite icons with a moderate signal. + + + + + Controls the color inside of satellite icons with a strong signal. + + + + + Controls the color inside of satellite icons with a very strong signal. + + + + + Controls the color around satellite icons with no signal. + + + + + Controls the color around satellite icons with a weak signal. + + + + + Controls the color around satellite icons with a moderate signal. + + + + + Controls the color around satellite icons with a strong signal. + + + + + Controls the color around satellite icons with a very strong signal. + + + + + Controls the color of the ellipse drawn around fixed satellites. + + + + + Controls which bearing points straight up on the screen. + + + + + Contains the list of satellites drawn inside of the control. + + + + + The Origin Azimuth angle + + + + + The rotation angle + + + + + Controls the color of the shadow cast by satellite icons. + + + + + Controls the font used to display the ID of each satellite. + + + + + Controls the color used to display the ID of each satellite. + + + + + Represents a user control used to measure speed graphically. + + + + + Speedometer + + + + + + + + + + + + + + Occurs when the value changed + + + + + The azimuth angle of hte origin + + + + + The rotation angle + + + + + Gets or sets the spedometer needle color of the edge + + + + + Gets or sets the needle fill color. + + + + + The Needle Shadow Brush color intially semitransparent black. + + + + + + + + + + Controls the amount of speed being displayed in the control + + + + + Controls how the control smoothly transitions from one value to another. + + + + + Controls the fastest speed allowed by the control. + + + + + Controls the amount of speed in between each label around the control. + + + + + Controls the number of degrees in between each smaller tick mark around the control. + + + + + Controls the number of degrees in between each larger tick mark around the control. + + + + + the color of the minor ticks. + + + + + Controls whether the speed label is drawn in the center of the control. + + + + + Controls whether the Value property is set manually, or automatically read from any available GPS device. + + + + + Gets or sets the Major Tick Color + + + + + Controls the display format used for speed labels drawn around the control. + + + + + + + + Gets or sets the Speed Label font color + + + + + Controls the angle associated with the smallest possible speed. + + + + + Controls the angle associated with the largest possible speed. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DemoMap.exe.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DemoMap.exe.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DemoMap.exe.config (revision 2866) @@ -0,0 +1,19 @@ + + + + +
+ + + + + + + + + + + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/splash_screen.jpg =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/pt-BR/DotSpatial.Plugins.Measure.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Modeling.Forms.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xsd =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xsd (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/nitf_spec.xsd (revision 2866) @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-CN/DotSpatial.Controls.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/README.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/README.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/README.txt (revision 2866) @@ -0,0 +1,7 @@ +This project is currently hosted here: + +https://github.com/FObermaier/DotSpatial.Plugins (version for DotSpatial 1.7) + +https://github.com/Adriaanse/DotSpatial.Plugins (upgraded to DotSpatial 1.8) + +Note that no NuGet packages have been released yet For DotSpatial 1.8 so you need to reference them from Lib manually Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.Forms.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.xml (revision 2866) @@ -0,0 +1,29664 @@ + + + + DotSpatial.Positioning + + + + + Represents an angular measurement around a circle. + + Azimuth Class + + Elevation Class + + Latitude Class + + Longitude Class + + + These examples create new instances of Angle objects. + + Dim MyAngle As New Angle(90) + + + Angle MyAngle = new Angle(90); + + + Angle MyAngle = new Angle(90); + + + Dim MyAngle1 As New Angle(105, 30, 21.4) + + + Angle MyAngle = new Angle(105, 30, 21.4); + + + Angle MyAngle = new Angle(105, 30, 21.4); + + + This class serves as the base class for angular measurement classes within + the framework, such as the Azimuth, Elevation, + Latitude and Longitude classes. An "angular + measurement" is a measurement around a circle. Typically, angular measurements are + between 0° and 360°. + Angles can be represented in two forms: decimal and sexagesimal. In decimal + form, angles are represented as a single number. In sexagesimal form, angles are + represented in three components: hours, minutes, and seconds, very much like a + clock. + Upon creating an Angle object, other properties such as + DecimalDegrees, DecimalMinutes, + Hours, Minutes and Seconds are + calculated automatically. + Instances of this class are guaranteed to be thread-safe because they are + immutable (properties can only be modified via constructors). + + + + Facilitates the creation of a deep copy of an object. + + The destination type for the ICloneable interface. + + + + Creates a deep copy of the object. + + + + + + + + + + + + + + + + Represents the minimum value of an angle in one turn of a circle. + + + This example creates an angle representing the minimum allowed value. + + Dim MyAngle As Angle = Angle.Minimum + + + Angle MyAngle = Angle.Minimum; + + + Angle MyAngle = Angle.Minimum; + + + + An Angle with a value of -359.999999°. + + + + Represents an angle with no value. + + An Angle containing a value of zero (0°). + + IsEmpty Property + + + + Represents an angle with infinite value. + + + + + Represents the maximum value of an angle in one turn of a circle. + + + This example creates an angle representing the maximum allowed value of 359.9999°. + + Dim MyAngle As Angle = Angle.Maximum + + + Angle MyAngle = Angle.Maximum; + + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance with the specified decimal degrees. + + The decimal degrees. + + This example demonstrates how to create an angle with a measurement of 90°. + + Dim MyAngle As New Angle(90) + + + Angle MyAngle = new Angle(90); + + + + An Angle containing the specified value. + + + + Creates a new instance with the specified degrees. + + The hours. + An Angle containing the specified value. + + + + Creates a new instance with the specified hours, minutes and + seconds. + + The hours. + The minutes. + The seconds. + + This example demonstrates how to create an angular measurement of 34°12'29.2 in + hours, minutes and seconds. + + Dim MyAngle As New Angle(34, 12, 29.2) + + + Angle MyAngle = new Angle(34, 12, 29.2); + + + + An Angle containing the specified value. + + + + Creates a new instance with the specified hours and decimal minutes. + + The hours. + The decimal minutes. + + This example demonstrates how an angle can be created when only the hours and + minutes (in decimal form) are known. This creates a value of 12°42.345'. + + Dim MyAngle As New Angle(12, 42.345) + + + Angle MyAngle = new Angle(12, 42.345); + + + An Angle containing the specified value. + + + + Creates a new instance by converting the specified string. + + The value. + Parse Method + + + This example creates a new instance by parsing a string. (Notice The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyAngle As New Angle("123°45'67.8""") + + + Angle MyAngle = new Angle("123°45'67.8\""); + + + + An Angle containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This constructor parses the specified string into an Angle + object using the current culture. This constructor can parse any strings created via + the ToString method. + + + + Creates a new instance by converting the specified string using the specified + culture. + + The value. + The culture. + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This constructor parses the specified string into an Angle + object using a specific culture. This constructor can parse any strings created via the + ToString method. + + + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Returns the object with the largest value. + + An Angle object to compare to the current instance. + An Angle containing the largest value. + + + + Returns the object with the smallest value. + + An Angle object to compare to the current instance. + The Angle containing the smallest value. + + + + Returns an angle opposite of the current instance. + + An Angle representing the mirrored value. + + This example creates a new Angle of 45° then calculates its mirror + of 225°. (45 + 180) + + Dim Angle1 As New Angle(45) + Dim Angle2 As Angle = Angle1.Mirror() + Debug.WriteLine(Angle2.ToString()) + ' Output: 225 + + + Angle Angle1 = new Angle(45); + Angle Angle2 = Angle1.Mirror(); + Console.WriteLine(Angle2.ToString()); + // Output: 225 + + + This method returns the "opposite" of the current instance. The opposite is + defined as the point on the other side of an imaginary circle. For example, if an angle + is 0°, at the top of a circle, this method returns 180°, at the bottom of the + circle. + + + + Modifies a value to its equivalent between 0° and 360°. + + An Angle representing the normalized angle. + Normalize(Angle) Method + + + This example demonstrates how normalization is used. The Stop statement is hit. + This example demonstrates how the Normalize method can ensure that an angle fits + between 0° and 359.9999°. This example normalizes 725° into 5°. + + Dim MyAngle As New Angle(720) + MyAngle = MyAngle.Normalize() + + + Angle MyAngle = new Angle(720); + MyAngle = MyAngle.Normalize(); + + + Dim MyValue As New Angle(725) + MyValue = MyValue.Normalize() + + + Angle MyValue = new Angle(725); + MyValue = MyValue.Normalize(); + + + This function is used to ensure that an angular measurement is within the + allowed bounds of 0° and 360°. If a value of 360° or 720° is passed, a value of 0° + is returned since 360° and 720° represent the same point on a circle. For the Angle + class, this function is the same as "value Mod 360". + + + + Converts the current instance into radians. + + A Radian object. + Radian Class + + Converts an angular measurement into radians before further processing. + + + This example converts a measurement of 90° into radians. + + Dim MyAngle As New Angle(90) + Dim MyRadians As Radian = MyAngle.ToRadians() + + + Angle MyAngle = new Angle(90); + Radian MyRadians = MyAngle.ToRadians(); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Outputs the angle as a string using the specified format. + + The format. + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyAngle As New Angle(45, 16.772) + Debug.WriteLine(MyAngle.ToString("h°m.mm")) + ' Output: 45°16.78 + + + Dim MyAngle As New Angle(45, 16.772); + Debug.WriteLine(MyAngle.ToString("h°m.mm")); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd°" is used. Any + string output by this method can be converted back into an Angle object using the + Parse method or Angle(string) constructor. + + + + Returns the smallest integer greater than the specified value. + + + + + + Returns the largest integer which is smaller than the specified value. + + + + + + Returns a new instance whose Seconds property is evenly divisible by 15. + + An Angle containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns a new instance whose value is rounded the specified number of decimals. + + An Integer specifying the number of decimals to round off to. + + + + + Returns a new angle whose Seconds property is evenly divisible by the specified amount. + + A Double between 0 and 60 indicating the interval to round + to. + An Angle containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Compares the current value to another Angle object's value. + + An Angle, Double, or Integer + to compare with. + A Boolean, True if the object's DecimalDegrees + properties match. + This + + + + Returns a unique code for this instance. + + An Integer representing a unique code for the current + instance. + Since the Angle class is immutable, this property may be used + safely with hash tables. + + + + Outputs the angle as a string using the default format. + + A String created using the default format. + Parse Method + + + This example outputs a value of 90 degrees in the default format of ###.#°. + + Dim MyAngle As New Angle(90) + Debug.WriteLine(MyAngle.ToString) + ' Output: "90°" + + + Angle MyAngle = new Angle(90); + Debug.WriteLine(MyAngle.ToString()); + // Output: "90°" + + + This method formats the current instance using the default format of + "d.dddd°." Any string output by this method can be converted back into an Angle + object using the Parse method or Angle(string) + constructor. + + + + Converts the specified value to its equivalent between 0° and 360°. + + A Double value to be normalized. + An Angle containing a value equivalent to the value specified, but between 0° and + 360°. + + + + Converts an angular measurement into radians. + + The value. + A Radian object. + + This example shows a quick way to convert an angle of 90° into radians. + + Dim MyRadian As Radian = Angle.ToRadians(90) + + + Radian MyRadian = Angle.ToRadians(90); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Converts a value in radians into an angular measurement. + + The radians. + + ToRadians + + Radian Class + + + This example uses the FromRadians method to convert a value of one + radian into an Angle of 57°. + + ' Create a new angle equal to one radian + Dim MyRadians As New Radian(1) + Dim MyAngle As Angle = Angle.FromRadians(MyRadians) + Debug.WriteLine(MyAngle.ToString()) + ' Output: 57° + + + // Create a new angle equal to one radian + Radian MyRadians = new Radian(1); + Angle MyAngle = Angle.FromRadians(MyRadians); + Console.WriteLine(MyAngle.ToString()); + // Output: 57° + + + This function is typically used in conjunction with the + ToRadians + method after a trigonometric function has completed. The converted value is stored in + the DecimalDegrees property. + + + + Froms the radians. + + The radians. + + + + + Convers a sexagesimal number into an Angle. + + A Double value, a number in the form of DDD.MMSSSSS format + An Angle object. + + + + Returns the object with the smallest value. + + A Angle object to compare to value2. + A Angle object to compare to value1. + The Angle containing the smallest value. + + + + Returns the object with the largest value. + + A Angle object to compare to value2. + A Angle object to compare to value1 + A Angle containing the largest value. + + + + Returns a random angle between 0° and 360°. + + An Angle containing a random value. + + + + Returns a random Angle between 0° and 360° + + A Random object used to ogenerate random values. + An Angle containing a random value. + + + + Converts a decimal degree measurement as a Double into an Angle. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Single into an Angle. + + The value. + The result of the conversion. + + + + Converts a measurement in Radians into an Angle. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Angle into an Double. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Angle into a Single. + + The value. + The result of the conversion. + + + + Converts a measurement in degrees as an Integer into an Angle. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in the form of a formatted String into an Angle. + + The value. + The result of the conversion. + + + + Converts an Angle into a String. + + The value. + The result of the conversion. + This operator calls the ToString() method using the current culture. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Returns the current instance increased by one. + + An Angle object. + + This example uses the Increment method to increase an angle's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Angle1 As New Angle(89) + Angle1 = Angle1.Increment() + ' Incorrect use of Increment + Dim Angle1 = New Angle(89) + Angle1.Increment() + ' Notice: Angle1 will still be 89°! + + + // Correct use of Increment + Angle Angle1 = new Angle(89); + Angle1 = Angle1.Increment(); + // Incorrect use of Increment + Angle Angle1 = new Angle(89); + Angle1.Increment(); + // Notice: Angle1 will still be 89°! + + + This method increases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Angle class is immutable, this + method cannot be used to modify an existing instance. + + + + Increases the current instance by the specified value. + + A Double to add to the current instance. + A new Angle containing the summed values. + + This example adds 45° to the current instance of 45°, returning 90°. + + Dim Angle1 As New Angle(45) + Angle1 = Angle1.Add(45) + + + Angle Angle1 = new Angle(45); + Angle1 = Angle1.Add(45); + + + + + + Adds the specified angle. + + The angle. + + + + + Returns the current instance decreased by one. + + An Angle object. + + This example uses the Decrement method to decrease an angle's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Decrement + Dim Angle1 As New Angle(91) + Angle1 = Angle1.Decrement() + ' Incorrect use of Decrement + Dim Angle1 = New Angle(91) + Angle1.Increment() + ' NOTE: Angle1 will still be 91°! + + + // Correct use of Decrement + Angle Angle1 = new Angle(91); + Angle1 = Angle1.Decrement(); + // Incorrect use of Decrement + Angle Angle1 = new Angle(91); + Angle1.Decrement(); + // NOTE: Angle1 will still be 91°! + + + This method decreases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Angle class is immutable, this + method cannot be used to modify an existing instance. + + + + Decreases the current instance by the specified value. + + A Double to subtract from the current instance. + A new Angle containing the new value. + + This example subtracts 30° from the current instance of 90°, returning 60°. + + Dim Angle1 As New Angle(90) + Angle1 = Angle1.Subtract(30) + + + Angle Angle1 = new Angle(90); + Angle1 = Angle1.Subtract(30); + + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the current instance by the specified value. + + A Double to multiply with the current instance. + A new Angle containing the product of the two numbers. + + This example multiplies 30° with three, returning 90°. + + Dim Angle1 As New Angle(30) + Angle1 = Angle1.Multiply(3) + + + Angle Angle1 = new Angle(30); + Angle1 = Angle1.Multiply(3); + + + + + + Multiplies the specified value. + + The value. + + + + + Divides the current instance by the specified value. + + A Double representing a denominator to divide by. + An Angle containing the new value. + + This example divides 90° by three, returning 30°. + + Dim Angle1 As New Angle(90) + Angle1 = Angle1.Divide(3) + + + Angle Angle1 = new Angle(90); + Angle1 = Angle1.Divide(3); + + + + + + Divides the specified angle. + + The angle. + + + + + Indicates if the current instance is smaller than the specified value. + + An Angle to compare with the current instance. + A Boolean, True if the current instance is + smaller than the specified value. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Angle to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the specified value. + This method compares the DecimalDegrees property with the + specified value. This method is the same as the "<=" operator. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified value. + + An Angle to compare with the current instance. + A Boolean, True if the current instance is + greater than the specified value. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Angle to compare with the current instance. + A Boolean, True if the current instance is + greater than or equal to the specified value. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Converts the specified string into an Angle object. + + The value. + A new Angle object populated with the specified + values. + ToString Method + + + This example creates a new angular measurement using the Parse + method. + + Dim NewAngle As Angle = Angle.Parse("123.45°") + + + Angle NewAngle = Angle.Parse("123.45°"); + + + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This method parses the specified string into an Angle object + using the current culture. This constructor can parse any strings created via the + ToString method. + + + + Converts the specified string into an Angle object using the + specified culture. + + A String describing an angle in the form of decimal degrees or a + sexagesimal. + A CultureInfo object describing the numeric format to use during + conversion. + A new Angle object equivalent to the specified string. + This powerful method is typically used to process data from a data store or a + value input by the user in any culture. This function can accept any format which + can be output by the ToString method. + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + A Double containing the decimal degree version of the specified + values. + DecimalDegrees Property + + Normalize Method + + + This example converts a value of 10°30'0" into decimal degrees (10.5). + + Dim MyValue As Double = Latitude.ToDecimalDegrees(10, 30, 0) + + + double MyValue = Latitude.ToDecimalDegrees(10, 30, 0); + + + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts an hour value into decimal degrees. + + The hours. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to a double value. + + + + Creates a copy of the current instance. + + An Angle of the same value as the current instance. + + + + Returns a value indicating the relative order of two objects. + + An Angle object to compare with. + A value of -1, 0, or 1 as documented by the IComparable interface. + This method allows collections of Azimuth objects to be sorted. + The DecimalDegrees property of each instance is compared. + + + + Compares the current instance to another instance using the specified + precision. + + The angle. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + Equals Method + + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Angle1 As New Angle(90.15); + Dim Angle2 As New Angle(90.12); + If Angle1.Equals(Angle2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Angle1 As New Angle(90.15); + Dim Angle2 As New Angle(90.12); + If Angle1.Equals(Angle2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Angle Angle1 = new Angle(90.15); + Angle Angle2 = new Angle(90.12); + if (Angle1.Equals(Angle2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Angle Angle1 = new Angle(90.15); + Angle Angle2 = new Angle(90.12); + if (Angle1.Equals(Angle2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + NOTE: This method compares objects by value, not by + reference. + + + + Compares the current instance to another instance using the specified + precision. + + The angle. + The decimals. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + Equals Method + + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Angle1 As New Angle(90.15); + Dim Angle2 As New Angle(90.12); + If Angle1.Equals(Angle2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Angle1 As New Angle(90.15); + Dim Angle2 As New Angle(90.12); + If Angle1.Equals(Angle2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Angle Angle1 = new Angle(90.15); + Angle Angle2 = new Angle(90.12); + if (Angle1.Equals(Angle2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Angle Angle1 = new Angle(90.15); + Angle Angle2 = new Angle(90.12); + if (Angle1.Equals(Angle2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + NOTE: This method compares objects by value, not by + reference. + + + + Outputs the angle as a string using the specified format. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyAngle As New Angle(45, 16.772) + Debug.WriteLine(MyAngle.ToString("h°m.mm", CultureInfo.CurrentCulture)) + ' Output: 45°16.78 + + + Dim MyAngle As New Angle(45, 16.772); + Debug.WriteLine(MyAngle.ToString("h°m.mm", CultureInfo.CurrentCulture)); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd" is used. Any string + output by this method can be converted back into an Angle object using the + Parse method or Angle(string) constructor. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the value of the angle as decimal degrees. + + A Double value. + Hours Property + + Minutes Property + + Seconds Property + + + This example demonstrates how the + DecimalDegrees property is + calculated automatically when creating an angle using hours, minutes and seconds. + + ' Create an angle of 20°30' + Dim MyAngle As New Angle(20, 30) + ' Setting the DecimalMinutes recalculated other properties + Debug.WriteLine(MyAngle.DecimalDegrees) + ' Output: "20.5" the same as 20°30' + + + // Create an angle of 20°30' + Angle MyAngle = New Angle(20, 30); + // Setting the DecimalMinutes recalculated other properties + Console.WriteLine(MyAngle.DecimalDegrees) + // Output: "20.5" the same as 20°30' + + + This property returns the value of the angle as a single number. + + + + Returns the minutes and seconds as a single numeric value. + + A Double value. + Minutes Property + + DecimalDegrees Property + + + This example demonstrates how the DecimalMinutes property is + automatically calculated when creating a new angle. + + ' Create an angle of 20°10'30" + Dim MyAngle As New Angle(20, 10, 30) + ' The DecimalMinutes property is automatically calculated + Debug.WriteLine(MyAngle.DecimalMinutes) + ' Output: "10.5" + + + // Create an angle of 20°10'30" + Angle MyAngle = new Angle(20, 10, 30); + // The DecimalMinutes property is automatically calculated + Console.WriteLine(MyAngle.DecimalMinutes) + // Output: "10.5" + + + This property is used when minutes and seconds are represented as a single + decimal value. + + + + Returns the integer hours (degrees) portion of an angular + measurement. + + An Integer value. + Minutes Property + + Seconds Property + + + This example creates an angle of 60.5° then outputs the value of the + Hours property, 60. + + Dim MyAngle As New Angle(60.5) + Debug.WriteLine(MyAngle.Hours) + ' Output: 60 + + + Angle MyAngle = new Angle(60.5); + Console.WriteLine(MyAngle.Hours); + // Output: 60 + + + This property is used in conjunction with the Minutes + and Seconds properties to create a full angular measurement. + This property is the same as DecimalDegrees without any fractional + value. + + + + Returns the integer minutes portion of an angular measurement. + + An Integer. + Hours Property + + Seconds Property + + + This example creates an angle of 45.5° then outputs the value of the + Minutes property, 30. + + Dim MyAngle As New Angle(45.5) + Debug.WriteLine(MyAngle.Minutes) + ' Output: 30 + + + Angle MyAngle = new Angle(45.5); + Console.WriteLine(MyAngle.Minutes); + // Output: 30 + + + This property is used in conjunction with the Hours and + Seconds properties to create a sexagesimal + measurement. + + + + Returns the seconds minutes portion of an angular measurement. + + A Double value. + Hours Property + + Minutes Property + + + This example creates an angle of 45°10.5' then outputs the value of the + Seconds property, 30. + + Dim MyAngle As New Angle(45, 10.5) + Debug.WriteLine(MyAngle.Seconds) + ' Output: 30 + + + Dim MyAngle As New Angle(45, 10.5); + Console.WriteLine(MyAngle.Seconds); + // Output: 30 + + + This property is used in conjunction with the Hours and + Minutes properties to create a sexagesimal + measurement. + + + + Indicates if the current instance has a non-zero value. + + A Boolean, True if the + DecimalDegrees property is zero. + Empty Field + + + + Indicates if the current instance represents an infinite value. + + + + + Indicates whether the value is invalid or unspecified. + + + + + Indicates whether the value has been normalized and is within the + allowed bounds of 0° and 360°. + + + + + Represents the measurement of surface area of a polygon on Earth's + surface. + + + This example demonstrates how to create an Area structure and + convert it to another unit type. + + ' Declare a Area of 50 meters + Dim Area1 As New Area(50, AreaUnit.SquareMeters) + ' Convert it into acres + Dim Area2 As Area = Area2.ToAcres() + + + // Declare a Area of 50 meters + Area Area1 = new Area(50, AreaUnit.SquareMeters); + // Convert it into acres + Area Area2 = Area2.ToAcres(); + + + This structure is used to represent measurements of arbitrary polygons on + Earth's surface. Measurements can be converted to different unit types, such as + acres, square kilometers, and square miles. + Instances of this structure are guaranteed to be thread-safe because they are + immutable (properties can only be modified via constructors). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an area with no value. + + + + + Represents an area of infinite value. + + + + + Represents the largest possible area which can be stored. + + + + + Represents the smallest possible area which can be stored. + + + + + Represents an invalid or unspecified area. + + + + + Creates a new instance using the specified value and unit type. + + The value. + The units. + + This example uses a constructor to create a new Area of fifty + square kilometers. + + Dim MyArea As New Area(50, AreaUnit.SquareKilometers) + + + Area MyArea = new Area(50, AreaUnit.SquareKilometers); + + + + + + Creates a new instance using the specified string. + + The value. + Parse method requires a valid Area measurement. + + 1. The numeric portion of the Area measurement was not recognized.
+ 2. The Area unit type was not recognized or not specified.
+ + + This example demonstrates how the to use this constructor. + + Dim MyArea As Area + ' Create a Area of 50 square kilometers + MyArea = New Area("50 sq. km") + ' Create a Area of 14, 387 miles, then convert it into square inches + MyArea = New Area("14, 387 sq. statute miles").ToSquareInches() + ' Create a Area of 50 square feet + MyArea = New Area(" 50 sq ' ") + + + Area MyArea; + ' Create a Area of 50 square kilometers + MyArea = new Area("50 sq. km"); + ' Create a Area of 14, 387 miles, then convert it into square inches + MyArea = new Area("14, 387 sq. statute miles").ToSquareInches(); + ' Create a Area of 50 square feet + MyArea = new Area(" 50 sq ' "); + + + + An Area object. + + Parse(string) Method + This powerful constructor is used to convert an area measurement in the form of a + string into an object, such as one entered by a user or read from a file. This + constructor can accept any output created via the ToString + method. +
+ + + Creates a new instance using the specified string and culture. + + The value. + The culture. + Parse method requires a valid Area measurement. + + 1. The numeric portion of the Area measurement was not recognized.
+ 2. The Area unit type was not recognized or not specified.
+ + + This example demonstrates how the to use this constructor. + + Dim MyArea As Area + ' Create a Area of 50 square kilometers + MyArea = New Area("50 sq. km", CultureInfo.CurrentCulture) + ' Create a Area of 14, 387 miles, then convert it into square inches + MyArea = New Area("14, 387 sq. statute miles", CultureInfo.CurrentCulture).ToSquareInches() + ' Create a Area of 50 square feet + MyArea = New Area(" 50 sq ' ", CultureInfo.CurrentCulture) + + + Area MyArea; + ' Create a Area of 50 square kilometers + MyArea = new Area("50 sq. km", CultureInfo.CurrentCulture); + ' Create a Area of 14, 387 miles, then convert it into square inches + MyArea = new Area("14, 387 sq. statute miles", CultureInfo.CurrentCulture).ToSquareInches(); + ' Create a Area of 50 square feet + MyArea = new Area(" 50 sq ' ", CultureInfo.CurrentCulture); + + + + An Area object. + + Parse(string) Method + This powerful constructor is used to convert an area measurement in the form of a + string into an object, such as one entered by a user or read from a file. This + constructor can accept any output created via the ToString + method. +
+ + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Converts the current measurement into square feet. + + A new Area object containing the converted + value. + ToSquareInches Method + + ToSquareKilometers Method + + ToSquareMeters Method + + ToSquareNauticalMiles Method + + ToSquareStatuteMiles Method + + + This example converts various three Area objects, each with a + different unit type, into square feet. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareInches) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareKilometers) + ' Convert the Area measurements to square feet and output the result + Debug.WriteLine(Area1.ToSquareFeet().ToString()) + Debug.WriteLine(Area2.ToSquareFeet().ToString()) + Debug.WriteLine(Area3.ToSquareFeet().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareInches); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareKilometers); + // Convert the Area measurements to square feet and output the result + Console.WriteLine(Area1.ToSquareFeet().ToString()); + Console.WriteLine(Area2.ToSquareFeet().ToString()); + Console.WriteLine(Area3.ToSquareFeet().ToString()); + + + This method will perform a conversion regardless of the current unit type. You + may convert from any unit type to any other unit type. + + + + Converts the current measurement into square inches. + + A new Area object containing the converted + value. + + This example converts various three Area objects, each with a + different unit type, into square inches. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareKilometers) + ' Convert the Area measurements to square inches and output the result + Debug.WriteLine(Area1.ToSquareInches().ToString()) + Debug.WriteLine(Area2.ToSquareInches().ToString()) + Debug.WriteLine(Area3.ToSquareInches().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareKilometers); + // Convert the Area measurements to square inches and output the result + Console.WriteLine(Area1.ToSquareInches().ToString()); + Console.WriteLine(Area2.ToSquareInches().ToString()); + Console.WriteLine(Area3.ToSquareInches().ToString()); + + + + ToSquareFeet Method + + ToSquareKilometers Method + + ToSquareMeters Method + + ToSquareNauticalMiles Method + + ToSquareStatuteMiles Method + This method will perform a conversion regardless of the current unit type. You + may convert from any unit type to any other unit type. + + + + Converts the current measurement into square kilometers. + + A new Area object containing the converted + value. + + This example converts various three Area objects, each with a + different unit type, into square kilometers. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to square kilometers and output the result + Debug.WriteLine(Area1.ToSquareKilometers().ToString()) + Debug.WriteLine(Area2.ToSquareKilometers().ToString()) + Debug.WriteLine(Area3.ToSquareKilometers().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to square kilometers and output the result + Console.WriteLine(Area1.ToSquareKilometers().ToString()); + Console.WriteLine(Area2.ToSquareKilometers().ToString()); + Console.WriteLine(Area3.ToSquareKilometers().ToString()); + + + + ToSquareFeet Method + + ToSquareInches Method + + ToSquareMeters Method + + ToSquareNauticalMiles Method + + ToSquareStatuteMiles Method + This method will perform a conversion regardless of the current unit type. You + may convert from any unit type to any other unit type. + + + + Converts the current measurement into square meters. + + A new Area object containing the converted + value. + + This example converts various three Area objects, each with a + different unit type, into square meters. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to square meters and output the result + Debug.WriteLine(Area1.ToSquareMeters().ToString()) + Debug.WriteLine(Area2.ToSquareMeters().ToString()) + Debug.WriteLine(Area3.ToSquareMeters().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to square meters and output the result + Console.WriteLine(Area1.ToSquareMeters().ToString()); + Console.WriteLine(Area2.ToSquareMeters().ToString()); + Console.WriteLine(Area3.ToSquareMeters().ToString()); + + + + ToSquareFeet Method + + ToSquareInches Method + + ToSquareKilometers Method + + ToSquareNauticalMiles Method + + ToSquareStatuteMiles Method + This method will perform a conversion regardless of the current unit type. You + may convert from any unit type to any other unit type. + + + + Converts the current measurement into square nautical miles. + + A new Area object containing the converted + value. + + This example converts various three Area objects, each with a + different unit type, into square nautical miles. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to square nautical miles and output the result + Debug.WriteLine(Area1.ToSquareNauticalMiles().ToString()) + Debug.WriteLine(Area2.ToSquareNauticalMiles().ToString()) + Debug.WriteLine(Area3.ToSquareNauticalMiles().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to square nautical miles and output the result + Console.WriteLine(Area1.ToSquareNauticalMiles().ToString()); + Console.WriteLine(Area2.ToSquareNauticalMiles().ToString()); + Console.WriteLine(Area3.ToSquareNauticalMiles().ToString()); + + + + ToSquareFeet Method + + ToSquareInches Method + + ToSquareKilometers Method + + ToSquareMeters Method + + ToSquareStatuteMiles Method + This method will perform a conversion regardless of the current unit type. You + may convert from any unit type to any other unit type. + + + + Converts the current measurement into square miles. + + A new Area object containing the converted + value. + + This example converts various three Area objects, each with a + different unit type, into square miles. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to square statute miles and output the result + Debug.WriteLine(Area1.ToSquareStatuteMiles().ToString()) + Debug.WriteLine(Area2.ToSquareStatuteMiles().ToString()) + Debug.WriteLine(Area3.ToSquareStatuteMiles().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to square statute miles and output the result + Console.WriteLine(Area1.ToSquareStatuteMiles().ToString()); + Console.WriteLine(Area2.ToSquareStatuteMiles().ToString()); + Console.WriteLine(Area3.ToSquareStatuteMiles().ToString()); + + + + ToSquareFeet Method + + ToSquareInches Method + + ToSquareKilometers Method + + ToSquareMeters Method + + ToSquareNauticalMiles Method + This method will perform a conversion regardless of the current unit type. A + "statute mile" is frequently referred to as "mile" by itself. + + + + Converts the current measurement into acres. + + A new Area object containing the converted value. + + This example converts various three Area objects, each with a + different unit type, into acres. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to acres and output the result + Debug.WriteLine(Area1.ToAcres().ToString()) + Debug.WriteLine(Area2.ToAcres().ToString()) + Debug.WriteLine(Area3.ToAcres().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to acres and output the result + Console.WriteLine(Area1.ToAcres().ToString()); + Console.WriteLine(Area2.ToAcres().ToString()); + Console.WriteLine(Area3.ToAcres().ToString()); + + + This method will perform a conversion regardless of the current unit type. + + + + Converts the current measurement into square centimeters. + + A new Area object containing the converted value. + + This example converts various three Area objects, each with a + different unit type, into square centimeters. + + ' Create Areas of different unit types + Dim Area1 As New Area(10, AreaUnit.SquareFeet) + Dim Area2 As New Area(20, AreaUnit.SquareStatuteMiles) + Dim Area3 As New Area(50, AreaUnit.SquareInches) + ' Convert the Area measurements to square centimeters and output the result + Debug.WriteLine(Area1.ToSquareCentimeters().ToString()) + Debug.WriteLine(Area2.ToSquareCentimeters().ToString()) + Debug.WriteLine(Area3.ToSquareCentimeters().ToString()) + + + // Create Areas of different unit types + Area Area1 = new Area(10, AreaUnit.SquareFeet); + Area Area2 = new Area(20, AreaUnit.SquareStatuteMiles); + Area Area3 = new Area(50, AreaUnit.SquareInches); + // Convert the Area measurements to square centimeters and output the result + Console.WriteLine(Area1.ToSquareCentimeters().ToString()); + Console.WriteLine(Area2.ToSquareCentimeters().ToString()); + Console.WriteLine(Area3.ToSquareCentimeters().ToString()); + + + This method will perform a conversion regardless of the current unit type. + + + + Converts the current instance to an Imperial unit type which minimizes numeric + value. + + An Area converted to Imperial units. (i.e. feet, inches, + miles) + + This example converts a measurement of 10560 feet into 1 square statute mile using + the ToMetricUnitType method. + + Dim Area1 As New Area(27878400, AreaUnit.SquareFeet) + Dim Area2 As Area = Area1.ToImperialUnitType() + Debug.WriteLine(Area2.ToString()) + ' Output: 1 square statute mile + + + Area Area1 = new Area(27878400, AreaUnit.SquareFeet); + Area Area2 = Area1.ToImperialUnitType(); + Console.WriteLine(Area2.ToString()); + // Output: 1 square statute mile + + + This method is used to make an area measurement easier to read by choosing + another unit type. For example, "27, 878, 400 square feet" would be easier to + understand as "1 square statute mile." This method converts the current instance to + Metric unit which brings the Value closest to 1, then returns the + new value. This method will perform a conversion regardless of the current unit + type. + + + + Converts the current instance to a Metric unit type which minimizes numeric + value. + + An Area converted to Metric units. (i.e. centimeter, meter, + kilometer) + + This example converts a measurement of 0.0001 kilometers into 1 meter using the + ToMetricUnitType method. + + Dim Area1 As New Area(0.0001, AreaUnit.SquareKilometers) + Dim Area2 As Area = Area1.ToMetricUnitType() + Debug.WriteLine(Area2.ToString()) + ' Output: 1 square meter + + + Area Area1 = new Area(0.0001, AreaUnit.SquareKilometers); + Area Area2 = Area1.ToMetricUnitType(); + Console.WriteLine(Area2.ToString()); + // Output: 1 square meter + + + This method is used to make an area measurement easier to read by choosing + another unit type. For example, "0.0002 kilometers" would be easier to read as "2 + meters." This method converts the current instance to Metric unit which brings the + Value closest to 1, then returns the new value. This method will + perform a conversion regardless of the current unit type. + + + + Converts the current instance to a Metric or Imperial unit type depending on the + local culture. + + An Area converted to Metric or Imperial units, depending on the + local culture. + + See + ToImperialUnitType and + ToMetricUnitType methods + for examples. + + This method is used to make an area measurement easier to read by choosing + another unit type. For example, "0.0002 kilometers" would be easier to read as "2 + meters." This method converts the current instance to either a Metric or an Imperial + unit (depending on the local culture) which brings the Value closest + to 1. This method will perform a conversion regardless of the current unit type. + + + + Converts the current instance into the specified unit type. + + An AreaUnit value specifying the unit type to convert to. + A new Area object containing the converted value. + + This example uses the ToUnitType method to convert an area + measurement of 27, 878, 400 square feet into 1 square statute mile. + + Dim Area1 As New Area(27878400, AreaUnit.SquareFeet) + Dim Area2 As Area = Area1.ToUnitType(AreaUnit.SquareStatuteMiles) + Debug.WriteLine(Area2.ToString()) + ' Output: 1 square statute mile + + + Area Area1 As New Area(27878400, AreaUnit.SquareFeet); + Area Area2 As Area = Area1.ToUnitType(AreaUnit.SquareStatuteMiles); + Console.WriteLine(Area2.ToString()); + // Output: 1 square statute mile + + + This method will perform a conversion regardless of the current unit type. + + + + Outputs the current instance as a string using the specified format. + + The format. + A String containing the Area in the specified format. + + This example uses the ToString method to populate a TextBox with a Area measurement + using a custom format. + + ' Declare a area of 75 square statute miles + Dim MyArea As New Area(75, AreaUnit.SquareStatuteMiles) + ' Output the result using the default format + Debug.WriteLine(MyArea.ToString("v.v uuu")) + ' Output: 75.0 square statute miles + + + // Declare a area of 75 square statute miles + Area MyArea As New Area(75, AreaUnit.SquareStatuteMiles); + // Output the result using the default format + Console.WriteLine(MyArea.ToString("v.v uuu")); + // Output: 75.0 square statute miles + + + This method allows a custom format to be applied to the ToString method. Numeric formats + will be adjusted to the machine's local UI culture. + + + + Adds the specified area to the current instance. + + The value. + A new Area structure containing the summed values. + + This example demonstrates how two areas of different unit types can be safely added + together. A value of 144 square inches (which is the same as one square foot) is + added to one square foot, producing two square feet. + + Dim Area1 As New Area(1, AreaUnit.SquareFeet) + Dim Area2 As New Area(144, AreaUnit.SquareInches) + Dim Area3 As Area = Area1.Add(Area2) + Debug.WriteLine(Area3.ToString()) + ' Output: 2 square feet + + + Area Area1 = new Area(1, AreaUnit.SquareFeet); + Area Area2 = new Area(144, AreaUnit.SquareInches); + Area Area3 = Area1.Add(Area2); + Console.WriteLine(Area3.ToString()); + // Output: 2 square feet + + + This method can add any Area object to the current instance. If + the unit type of the Value parameter does not match that of the + current instance, the value is converted to the unit type of the current instance + before adding. + + + + Subtracts the specified area from the current instance. + + The value. + A new Area structure containing the new value. + + This example demonstrates how two areas of different unit types can be safely + subtracted. A value of 144 square inches (which is the same as one square foot) is + subtracted from one square foot, producing a result of zero. + + Dim Area1 As New Area(1, AreaUnit.SquareFeet) + Dim Area2 As New Area(144, AreaUnit.SquareInches) + Dim Area3 As Area = Area1.Subtract(Area2) + Debug.WriteLine(Area3.ToString()) + ' Output: 0 square feet + + + Area Area1 = new Area(1, AreaUnit.SquareFeet); + Area Area2 = new Area(144, AreaUnit.SquareInches); + Area Area3 = Area1.Subtract(Area2); + Console.WriteLine(Area3.ToString()); + // Output: 0 square feet + + + This method will subtract any Area object from the current + instance. If the unit type of the Value parameter does not match that + of the current instance, the value is converted to the unit type of the current + instance before subtracting. + + + + Multiplies the specified area with the current instance. + + The value. + A new Area structure containing the product of the two + values. + + This example demonstrates how two areas can be multiplied together. A value of 50 + square inches is multiplied by two square inches, producing a result of 100 square + inches. + + Dim Area1 As New Area(50, AreaUnit.SquareInches) + Dim Area2 As New Area(2, AreaUnit.SquareInches) + Dim Area3 As Area = Area1.Multiply(Area2) + Debug.WriteLine(Area3.ToString()) + ' Output: 100 square inches + + + Area Area1 = new Area(50, AreaUnit.SquareInches); + Area Area2 = new Area(2, AreaUnit.SquareInches); + Area Area3 = Area1.Multiply(Area2); + Console.WriteLine(Area3.ToString()); + // Output: 100 square inches + + + This method will multiply any Area object from the current + instance. If the unit type of the Value parameter does not match that + of the current instance, the value is converted to the unit type of the current + instance before multiplication. + + + + Divides the current instance by the specified area. + + The value. + A new Area structure containing the new value. + + This example demonstrates how two areas can be divided. A value of 100 square + inches is divided by two square inches, producing a result of 50 square inches. + + Dim Area1 As New Area(100, AreaUnit.SquareInches) + Dim Area2 As New Area(2, AreaUnit.SquareInches) + Dim Area3 As Area = Area1.Divide(Area2) + Debug.WriteLine(Area3.ToString()) + ' Output: 50 square inches + + + Area Area1 = new Area(100, AreaUnit.SquareInches); + Area Area2 = new Area(2, AreaUnit.SquareInches); + Area Area3 = Area1.Divide(Area2); + Debug.WriteLine(Area3.ToString()); + // Output: 50 square inches + + + This method will devide the current instance by any Area object. + If the unit type of the Value parameter does not match that of the + current instance, the value is converted to the unit type of the current instance + before devision. + + + + Returns the current instance increased by one. + + A new Area structure containing the new value. + + This example uses the Increment method to increase an area's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Area1 As New Area(1, AreaUnit.SquareMeters) + Area1 = Area1.Increment() + ' Incorrect use of Increment + Dim Area1 As New Area(1, AreaUnit.SquareMeters) + Area1.Increment() + ' NOTE: Area1 will still be 1 square meter, not 2! + + + // Correct use of Increment + Area Area1 = new Area(1, AreaUnit.SquareMeters); + Area1 = Area1.Increment(); + // Incorrect use of Increment + Area Area1 = new Area(1, AreaUnit.SquareMeters); + Area1.Increment(); + // NOTE: Area1 will still be 1 square meter, not 2! + + + This method increases the Value property by 1.0, returned as + a new instance. The Units property is preserved. + NOTE: Since the Area + class is immutable, this method will not modify the current + instance. + + + + Returns the current instance decreased by one. + + A new Area structure containing the new value. + + This example uses the Decrement method to decrease an area's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Increment + Dim Area1 As New Area(1, AreaUnit.SquareMeters) + Area1 = Area1.Increment() + ' Incorrect use of Increment + Dim Area1 As New Area(1, AreaUnit.SquareMeters) + Area1.Increment() + ' NOTE: Area1 will still be 1 square meter, not 0! + + + // Correct use of Increment + Area Area1 = new Area(1, AreaUnit.SquareMeters); + Area1 = Area1.Decrement(); + // Incorrect use of Increment + Area Area1 = new Area(1, AreaUnit.SquareMeters); + Area1.Decrement(); + // NOTE: Area1 will still be 1 square meter, not 0! + + + This method decreases the Value property by 1.0, returned as + a new instance. The Units property is preserved. + NOTE: Since the Area class is immutable, + this method will not modify the current instance. + + + + Indicates if the current instance is smaller than the specified value. + + An Area to compare with the current instance. + A Boolean, True if the current instance is + smaller than the Value parameter. + If the Value parameter's unit type does not match the current + instance, it will be converted to the current instance's unit type before performing + the comparison. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Area to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the Value parameter. + If the Value parameter's unit type does not match the current + instance, it will be converted to the current instance's unit type before performing + the comparison. + + + + Indicates if the current instance is larger than the specified value. + + An Area to compare with the current instance. + A Boolean, True if the current instance is + larger than the Value parameter. + If the Value parameter's unit type does not match the current + instance, it will be converted to the current instance's unit type before performing + the comparison. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Area to compare with the current instance. + A Boolean, True if the current instance is + larger than or equal to the Value parameter. + If the Value parameter's unit type does not match the current + instance, it will be converted to the current instance's unit type before performing + the comparison. + + + + Creates a new instance using the specified string. + + The value. + A new Area object containing the parsed value and + unit type. + Parse method requires a valid Area measurement. + + 1. The numeric portion of the Area measurement was not recognized.
+ 2. The Area unit type was not recognized or not specified.
+ + + This example demonstrates how the Parse method can convert several string formats + into a Area object. + + Dim NewArea As Area + ' Create a Area of 50 kilometers + NewArea = Area.Parse("50 km") + ' Create a Area of 14, 387 miles, then convert it into square inches + NewArea = Area.Parse("14, 387 statute miles").ToSquareInches() + ' Parse an untrimmed measurement into 50 feet + NewArea = Area.Parse(" 50 ' ") + + + Area NewArea; + // Create a Area of 50 kilometers + NewArea = Area.Parse("50 km"); + // Create a Area of 14, 387 miles, then convert it into square inches + NewArea = Area.Parse("14, 387 statute miles").ToInches(); + // Parse an untrimmed measurement into 50 feet + NewArea = Area.Parse(" 50 ' "); + + + This powerful method is typically used to convert a string-based Area + measurement, such as one entered by a user or read from a file, into a + Area object. This method will accept any output created via the + ToString method. +
+ + + Creates a new instance using the specified string and culture. + + A String describing an area measurement. + A CultureInfo object specifying which numeric and text formats to use during parsing. + + + + Dim NewArea As Area + ' Create a Area of 50 kilometers + NewArea = Area.Parse("50 km", CultureInfo.CurrentCulture) + ' Create a Area of 14, 387 miles, then convert it into inches + NewArea = Area.Parse("14, 387 statute miles", CultureInfo.CurrentCulture).ToSquareInches() + ' Parse an untrimmed measurement into 50 feet + NewArea = Area.Parse(" 50 ' ", CultureInfo.CurrentCulture) + + + Area NewArea; + // Create a Area of 50 kilometers + NewArea = Area.Parse("50 km", CultureInfo.CurrentCulture); + // Create a Area of 14, 387 miles, then convert it into square inches + NewArea = Area.Parse("14, 387 statute miles", CultureInfo.CurrentCulture).ToInches(); + // Parse an untrimmed measurement into 50 feet + NewArea = Area.Parse(" 50 ' ", CultureInfo.CurrentCulture); + + + This powerful method is typically used to convert a string-based Area + measurement, such as one entered by a user or read from a file, into a + Area object. This method will accept any output created via the + ToString method. + + + + Returns a random distance between 0 and 1, 000 square meters. + + A Distance containing a random value, converted to local units. + + + + Returns a random distance between 0 and 1, 000 square meters. + + A Random object used to ogenerate random values. + A Distance containing a random value, converted to local units. + + + + Compares the current instance with the specified object. + + An Area object to compare with. + A Boolean, True if the two objects have the + same value. + + + + Returns a unique code for the current instance. + + An Integer representing a unique code for the current + instance. + Since the Area class is immutable, this property may be used + safely with hash tables. + + + + Outputs the current instance as a string using the default format. + + A String containing the current Area in the default format. + + This example uses the ToString method to populate a TextBox with a Area + measurement. + + ' Declare a area of 75 square statute miles + Dim MyArea As New Area(75, AreaUnit.SquareStatuteMiles) + ' Output the result using the default format + Debug.WriteLine(MyArea.ToString()) + ' Output: 75 sq. statute miles + + + // Declare a area of 75 square statute miles + Area MyArea = nre Area(75, AreaUnit.SquareStatuteMiles); + // Output the result using the default format + Console.WriteLine(MyArea.ToString()); + // Output: 75 sq. statute miles + + + The default format used is "v uu" where v + represents the numerical portion of the area and uu is the unit + type. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Compares the current instance to the specified area. + + An Area object to compare with. + An Integer: 0 if the object's values are equivalent, -1 if the + current instance is smaller, or 1 if the current instance is larger. + If the Value parameter's unit type does not match the current + instance, it will be converted to the current instance's unit type before performing + the comparison. + + + + Compares the current instance to the specified Area + object. + + A Area object to compare with. + A Boolean, True if the values are equivalent. + This method will compare the value of the current instance against + the Value parameter. If the Value parameter's + unit type does not match the current instance, it will be converted to the current + instance's unit type before performing the comparison. + NOTE: This method compares objects by value, not by + reference. + + + + Compares the current instance to the specified Area + object. + + A Area object to compare with. + An integer specifies the precision for the comparison. + A Boolean, True if the values are equivalent. + This method will compare the value of the current instance against + the Value parameter. If the Value parameter's + unit type does not match the current instance, it will be converted to the current + instance's unit type before performing the comparison. + NOTE: This method compares objects by value, not by + reference. + + + + Outputs the current instance as a string using the specified format and local culture. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A String containing the Area in the specified format. + + This example uses the ToString method to populate a TextBox with a Area measurement + using a custom format and culture information. + + ' Declare a area of 75 square statute miles + Dim MyArea As New Area(75, AreaUnit.SquareStatuteMiles) + ' Output the result using the default format + Debug.WriteLine(MyArea.ToString("v.v uuu", CultureInfo.CurrentCulture)) + ' Output: 75.0 square statute miles + + + // Declare a area of 75 square statute miles + Area MyArea As New Area(75, AreaUnit.SquareStatuteMiles); + // Output the result using the default format + Console.WriteLine(MyArea.ToString("v.v uuu", CultureInfo.CurrentCulture)); + // Output: 75.0 square statute miles + + + This method allows a custom format to be applied to the ToString method. Numeric formats + will be adjusted to the machine's local UI culture. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the units portion of an area measurement. + + An AreaUnit value. Default is Meters. + Value Property + Each area measurement consists of a numeric value paired with a unit type + describing the value. It is not possible to create an area measurement without also + specifying a value. + + + + Returns the numeric portion of an area measurement. + + A Double value. + Units Property + This property is paired with the Units property to form a + complete area measurement. + + + + Indicates if the value of the current instance is zero. + + A Boolean, True if the Value + property is zero. + + + + Indicates if the current instance is using a Metric unit. + + A Boolean, True if the Units + property is SquareCentimeters, SquareMeters or + SquareKilometers. + This property is typically used to see if an area measurement is in a unit type + used by a specific culture. Area measurements can be adjusted to either Metric or + Imperial units using the ToMetricUnitType and + ToImperialUnitType methods. + + + + Indicates if the current instance represents an infinite value. + + A Boolean, True if the current instance + represents an infinite value. + + + + Indicates the unit of measure for area measurements. + + Value Property (Area Class) + + Units Property (Area Class) + + + This example uses the AreaUnit enumeration to create a new + Area object. + + Dim Area1 As New Area(1, AreaUnit.SquareKilometers) + + + Area Area1 = new Area(1, AreaUnit.SquareKilometers); + + + This enumeration is most frequently used by the Units property of the Area + structure to describe an area measurement. + + + Metric System. Kilometers (thousands of meters). + + + Metric System. 1/1000th of a square kilometer. + + + Metric System. 1/100th of a square meter. + + + Imperial System. A statute mile, most often referred to just as "mile." + + + Nautical miles, also known as "sea miles". + + + Imperial System. Feet. + + + Imperial System. Inches. + + + Imperial System. Inches. + + + + Represents an angular measurement around the horizon between 0° and + 360°. + + + These examples create new instances of an Azimuth object using different + techniques. + + Dim MyAzimuth As New Azimuth(45) + + + Azimuth MyAzimuth = new Azimuth(45); + + + Dim MyAzimuth As New Azimuth(45, 30, 15) + + + Azimuth MyAzimuth = new Azimuth(45, 30, 15); + + + Dim MyAzimuth As Azimuth = Azimuth.NorthNorthwest + + + Azimuth MyAzimuth = Azimuth.NorthNorthwest; + + + This class is used to indicate a horizontal direction of travel, such as the + bearing from one point on Earth to another. This class can also be combined with an + Elevation object to form a three-dimensional direction towards an object in space, + such as a GPS satellite. + + + + Controls the number of digits of precision supported by the class. + + + + + + + + + + Creates a new instance with the specified decimal degrees. + + The decimal degrees. + + This example demonstrates how to create an angle with a measurement of 90°. + + Dim MyAzimuth As New Azimuth(90) + + + Azimuth MyAzimuth = new Azimuth(90); + + + + An Azimuth containing the specified value. + + + + Creates a new instance with the specified degrees. + + The hours. + An Azimuth containing the specified value. + + + + Creates a new instance with the specified hours, minutes and + seconds. + + The hours. + The minutes. + The seconds. + + This example demonstrates how to create an angular measurement of 34°12'29.2 in + hours, minutes and seconds. + + Dim MyAzimuth As New Azimuth(34, 12, 29.2) + + + Azimuth MyAzimuth = new Azimuth(34, 12, 29.2); + + + + An Azimuth containing the specified value. + + + + Creates a new instance with the specified hours and decimal minutes. + + The hours. + The decimal minutes. + + This example demonstrates how an angle can be created when only the hours and + minutes (in decimal form) are known. This creates a value of 12°42.345'. + + Dim MyAzimuth As New Azimuth(12, 42.345) + + + Azimuth MyAzimuth = new Azimuth(12, 42.345); + + + An Azimuth containing the specified value. + + + + Creates a new instance by converting the specified string. + + The value. + Parse Method + + + This example creates a new instance by parsing a string. (Notice The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyAzimuth As New Azimuth("123°45'67.8""") + + + Azimuth MyAzimuth = new Azimuth("123°45'67.8\""); + + + + + This example creates a new Azimuth object by converting the string + "NW," short for Northwest. or 315°. + + Dim NewAzimuth As New Azimuth("NW") + + + Azimuth NewAzimuth = new Azimuth("NW"); + + + + An Azimuth containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This constructor parses the specified string into an Azimuth + object using the current culture. This constructor can parse any strings created via + the ToString method. + + + + Creates a new instance by converting the specified string using the specified + culture. + + The value. + The culture. + + This example creates a new Azimuth object by converting the string + "NW," short for Northwest. or 315°. + + Dim NewAzimuth As New Azimuth("NW", CultureInfo.CurrentCulture) + + + Azimuth NewAzimuth = new Azimuth("NW", CultureInfo.CurrentCulture); + + + This constructor parses the specified string into an Azimuth + object using the specified culture. This constructor can parse any strings created via + the ToString method. + + + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Represents the minimum value of an angle in one turn of a circle. + + + This example creates an angle representing the minimum allowed value. + + Dim MyAzimuth As Azimuth = Azimuth.Minimum + + + Azimuth MyAzimuth = Azimuth.Minimum; + + + Azimuth MyAzimuth = Azimuth.Minimum; + + + + An Azimuth with a value of -359.999999°. + + + + Represents an angle with no value. + + An Azimuth containing a value of zero (0°). + + IsEmpty Property + + + + Represents an angle with infinite value. + + + + + Represents the maximum value of an angle in one turn of a circle. + + + This example creates an angle representing the maximum allowed value of 359.9999°. + + Dim MyAzimuth As Azimuth = Azimuth.Maximum + + + Azimuth MyAzimuth = Azimuth.Maximum; + + + + + + Represents a direction of travel of 0°. + + + This example creates an Azimuth representing North. + + Dim MyAzimuth As Azimuth = Azimuth.North + + + Azimuth MyAzimuth = Azimuth.North; + + + + + + Represents a direction of travel of 22.5°, between north and northeast. + + + + Dim MyAzimuth As Azimuth = Azimuth.NorthNortheast + + + Azimuth MyAzimuth = Azimuth.NorthNortheast; + + + + + + Represents a direction of travel of 45°. + + + + Dim MyAzimuth As Azimuth = Azimuth.Northeast + + + Azimuth MyAzimuth = Azimuth.Northeast; + + + + + + Represents a direction of travel of 67.5°. + + + + Dim MyAzimuth As Azimuth = Azimuth.EastNortheast + + + Azimuth MyAzimuth = Azimuth.EastNortheast; + + + + + + Represents a direction of travel of 90°. + + + + Dim MyAzimuth As Azimuth = Azimuth.East + + + Azimuth MyAzimuth = Azimuth.East; + + + + + + Represents a direction of travel of 112.5°, between east and southeast. + + + + Dim MyAzimuth As Azimuth = Azimuth.EastSoutheast + + + Azimuth MyAzimuth = Azimuth.EastSoutheast; + + + + + + Represents a direction of travel of 135°. + + + + Dim MyAzimuth As Azimuth = Azimuth.Southeast + + + Azimuth MyAzimuth = Azimuth.Southeast; + + + + + + Represents a direction of travel of 157.5°, between south and southeast. + + + + Dim MyAzimuth As Azimuth = Azimuth.SouthSoutheast + + + Azimuth MyAzimuth = Azimuth.SouthSoutheast; + + + + + + Represents a direction of travel of 180°. + + + + Dim MyAzimuth As Azimuth = Azimuth.South + + + Azimuth MyAzimuth = Azimuth.South; + + + + + + Represents a direction of travel of 202.5°, between south and southwest. + + + + Dim MyAzimuth As Azimuth = Azimuth.SouthSouthwest + + + Azimuth MyAzimuth = Azimuth.SouthSouthwest; + + + + + + Represents a direction of travel of 225°. + + + + Dim MyAzimuth As Azimuth = Azimuth.Southwest + + + Azimuth MyAzimuth = Azimuth.Southwest; + + + + + + Represents a direction of travel of 247.5°, between west and southwest. + + + + Dim MyAzimuth As Azimuth = Azimuth.WestSouthwest + + + Azimuth MyAzimuth = Azimuth.WestSouthwest; + + + + + + Represents a direction of travel of 270°. + + + + Dim MyAzimuth As Azimuth = Azimuth.West + + + Azimuth MyAzimuth = Azimuth.West; + + + + + + Represents a direction of travel of 292.5°, between west and northwest. + + + + Dim MyAzimuth As Azimuth = Azimuth.WestNorthwest + + + Azimuth MyAzimuth = Azimuth.WestNorthwest; + + + + + + Represents a direction of travel of 315°. + + + + Dim MyAzimuth As Azimuth = Azimuth.Northwest + + + Azimuth MyAzimuth = Azimuth.Northwest; + + + + + + Represents a direction of travel of 337.5°, between north and northwest. + + + + Dim MyAzimuth As Azimuth = Azimuth.NorthNorthwest + + + Azimuth MyAzimuth = Azimuth.NorthNorthwest; + + + + + + Represents an invalid or unspecified value. + + + + + Modifies a value to its equivalent between 0° and 360°. + + An Azimuth representing the normalized angle. + Normalize(Azimuth) Method + + + This example demonstrates how normalization is used. The Stop statement is hit. + This example demonstrates how the Normalize method can ensure that an angle fits + between 0° and 359.9999°. This example normalizes 725° into 5°. + + Dim MyAzimuth As New Azimuth(720) + MyAzimuth = MyAzimuth.Normalize() + + + Azimuth MyAzimuth = new Azimuth(720); + MyAzimuth = MyAzimuth.Normalize(); + + + Dim MyValue As New Azimuth(725) + MyValue = MyValue.Normalize() + + + Azimuth MyValue = new Azimuth(725); + MyValue = MyValue.Normalize(); + + + This function is used to ensure that an angular measurement is within the + allowed bounds of 0° and 360°. If a value of 360° or 720° is passed, a value of 0° + is returned since 360° and 720° represent the same point on a circle. For the Azimuth + class, this function is the same as "value Mod 360". + + + + Returns whether the current value is between the specified values. + + An Azimuth marking the start of a range. + An Azimuth marking the end of a range. + A Boolean value. + This property is used to determine whether a value is within a specified range. If the + starting value is less than the end value, a basic greater-than or less-than comparison is performed. + If, however, the end value is greater than the start, it is assumed that the range crosses the 0/360 + boundary. For example, if the start is 270 and the end is 90, a value of True is + returned if the current value is between 270 and 360, or 0 and 90. + + + + Returns the smallest integer greater than the specified value. + + + + + + Returns the largest integer which is smaller than the specified value. + + + + + + Returns a new instance whose value is rounded the specified number of decimals. + + An Integer specifying the number of decimals to round off to. + + + + + Returns a new instance whose Seconds property is evenly divisible by 15. + + An Azimuth containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns a new angle whose Seconds property is evenly divisible by the specified amount. + + A Double between 0 and 60 indicating the interval to round + to. + An Azimuth containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Outputs the azimuth as a string using the specified format. + + A String consisting of any number of the following + codes: + + + + c + The object is output as an abbreviated direction. + N, NE, + NNW + + + cc + The object is output as a full direction. + North, Northeast, + North-Northwest + + + d + Represents one digit from the + DecimalDegrees property. + + + h + Represents one digit from the + Hours property. + + + m + Represents one digit from the Minutes + property. + + + s + Represents one digit from the Seconds + property. + + + + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an azimuth in a + custom format. The " d.dd " code represents decimal degrees + rounded to two digits, and " cc " represents the direction in + verbose form. + + Dim MyAzimuth As New Azimuth(90.946) + Debug.WriteLine(MyAzimuth.ToString("d.dd (cc)")) + ' Output: 90.95 (East) + + + Azimuth MyAzimuth = new Azimuth(90.946); + Console.WriteLine(MyAzimuth.ToString("d.dd (cc)")); + // Output: 90.95 (East) + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "cc" is used. Any string + output by this method can be converted back into an Azimuth object using the + Parse method or Azimuth(string) + constructor. + + + + Returns the object with the smallest value. + + An Azimuth object to compare to the current instance. + The Azimuth containing the smallest value. + + + + Returns the object with the largest value. + + An Azimuth object to compare to the current instance. + An Azimuth containing the largest value. + + + + Returns an angle opposite of the current instance. + + An Azimuth representing the mirrored value. + + This example creates a new Azimuth of 45° then calculates its mirror + of 225°. (45 + 180) + + Dim Azimuth1 As New Azimuth(45) + Dim Azimuth2 As Azimuth = Azimuth1.Mirror() + Debug.WriteLine(Azimuth2.ToString()) + ' Output: 225 + + + Azimuth Azimuth1 = new Azimuth(45); + Azimuth Azimuth2 = Azimuth1.Mirror(); + Console.WriteLine(Azimuth2.ToString()); + // Output: 225 + + + This method returns the "opposite" of the current instance. The opposite is + defined as the point on the other side of an imaginary circle. For example, if an angle + is 0°, at the top of a circle, this method returns 180°, at the bottom of the + circle. + + + + Converts the current instance into radians. + + A Radian object. + Radian Class + + Converts an angular measurement into radians before further processing. + + + This example converts a measurement of 90° into radians. + + Dim MyAzimuth As New Azimuth(90) + Dim MyRadians As Radian = MyAzimuth.ToRadians() + + + Azimuth MyAzimuth = new Azimuth(90); + Radian MyRadians = MyAzimuth.ToRadians(); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Compares the current value to another Azimuth object's value. + + An Azimuth, Double, or Integer + to compare with. + A Boolean, True if the object's DecimalDegrees + properties match. + This + + + + Returns a unique code for this instance. + + An Integer representing a unique code for the current + instance. + Since the Azimuth class is immutable, this property may be used + safely with hash tables. + + + + Outputs the current instance as a string using the default format. + + A String representing the current instance. + Parse Method + + + This example outputs a value of 90 degrees in the default format of ###.#°. + + Dim MyAzimuth As New Azimuth(90) + Debug.WriteLine(MyAzimuth.ToString) + ' Output: "90°" + + + Azimuth MyAzimuth = new Azimuth(90); + Debug.WriteLine(MyAzimuth.ToString()); + // Output: "90°" + + + This method formats the current instance using the default format of "cc." Any + string output by this method can be converted back into an Azimuth object using the + Parse method or Azimuth(string) constructor. + + + + Converts the specified value to its equivalent between 0° and 360°. + + A Double value to be normalized. + An Azimuth containing a value equivalent to the value specified, but between 0° and + 360°. + + + + Converts a Direction value into an Azimuth + object. + + A value from the Direction enumeration to convert. + An Azimuth equivalent to the specified direction. + + + + Returns a random angle between 0° and 360°. + + An Azimuth containing a random value. + + + + Returns a random Azimuth between 0° and 360° using the specified random number + seed. + + A Random object used to generate random values. + An Azimuth containing a random value. + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + A Double containing the decimal degree version of the specified + values. + DecimalDegrees Property + + Normalize Method + + + This example converts a value of 10°30'0" into decimal degrees (10.5). + + Dim MyValue As Double = Latitude.ToDecimalDegrees(10, 30, 0) + + + double MyValue = Latitude.ToDecimalDegrees(10, 30, 0); + + + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts an hour value into decimal degrees. + + The hours. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to a double value. + + + + Returns the object with the smallest value. + + A Azimuth object to compare to value2. + A Azimuth object to compare to value1. + The Azimuth containing the smallest value. + + + + Returns the object with the largest value. + + A Azimuth object to compare to value2. + A Azimuth object to compare to value1. + A Azimuth containing the largest value. + + + + Converts the specified string into an Azimuth object. + + The value. + A new Azimuth object populated with the specified + values. + ToString Method + + + This example creates a new angular measurement using the Parse + method. + + Dim NewAzimuth As Azimuth = Azimuth.Parse("123.45°") + + + Azimuth NewAzimuth = Azimuth.Parse("123.45°"); + + + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This method parses the specified string into an Azimuth object + using the current culture. This constructor can parse any strings created via the + ToString method. + + + + Converts the specified string into an Azimuth object using the + specified culture. + + A String describing an angle in the form of decimal degrees or a + sexagesimal. + A CultureInfo object describing the numeric format to use during + conversion. + A new Azimuth object equivalent to the specified string. + + This example creates a new Azimuth object by converting the string + "NW," short for Northwest. or 315°. + + Dim NewAzimuth As Azimuth = Azimuth.Parse("NW", CultureInfo.CurrentCulture) + + + Azimuth NewAzimuth = Azimuth.Parse("NW", CultureInfo.CurrentCulture); + + + This method parses the specified string into an Azimuth + object using the specified culture. This method can parse any string created via + the ToString method. + + + + Converts an angular measurement into radians. + + The value. + A Radian object. + + This example shows a quick way to convert an angle of 90° into radians. + + Dim MyRadian As Radian = Azimuth.ToRadians(90) + + + Radian MyRadian = Azimuth.ToRadians(90); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Converts a value in radians into an angular measurement. + + The radians. + + ToRadians + + Radian Class + + + This example uses the FromRadians method to convert a value of one + radian into an Azimuth of 57°. + + ' Create a new angle equal to one radian + Dim MyRadians As New Radian(1) + Dim MyAzimuth As Azimuth = Azimuth.FromRadians(MyRadians) + Debug.WriteLine(MyAzimuth.ToString()) + ' Output: 57° + + + // Create a new angle equal to one radian + Radian MyRadians = new Radian(1); + Azimuth MyAzimuth = Azimuth.FromRadians(MyRadians); + Console.WriteLine(MyAzimuth.ToString()); + // Output: 57° + + + This function is typically used in conjunction with the + ToRadians + method after a trigonometric function has completed. The converted value is stored in + the DecimalDegrees property. + + + + Froms the radians. + + The radians. + + + + + Converts a measurement in Radians into an Azimuth. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Azimuth. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Azimuth. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Azimuth. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Azimuth. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in degrees as an Integer into an Azimuth. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in the form of a formatted String into an Azimuth. + + The value. + The result of the conversion. + + + + Converts an Azimuth into a String. + + The value. + The result of the conversion. + This operator calls the ToString() method using the current culture. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Returns the current instance increased by one. + + An Azimuth object. + + This example uses the Increment method to increase an Azimuth's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Azimuth1 As New Azimuth(89) + Azimuth1 = Azimuth1.Increment() + ' Incorrect use of Increment + Dim Azimuth1 = New Azimuth(89) + Azimuth1.Increment() + ' NOTE: Azimuth1 will still be 89°! + + + // Correct use of Increment + Azimuth Azimuth1 = new Azimuth(89); + Azimuth1 = Azimuth1.Increment(); + // Incorrect use of Increment + Azimuth Azimuth1 = new Azimuth(89); + Azimuth1.Increment(); + // NOTE: Azimuth1 will still be 89°! + + + This method increases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Azimuth class is immutable, this + method cannot be used to modify an existing instance. + + + + Increases the current instance by the specified value. + + A Double to add to the current instance. + A new Azimuth containing the summed values. + + This example adds 45° to the current instance of 45°, returning 90°. + + Dim Azimuth1 As New Azimuth(45) + Azimuth1 = Azimuth1.Add(45) + + + Azimuth Azimuth1 = new Azimuth(45); + Azimuth1 = Azimuth1.Add(45); + + + + + + Adds the specified value. + + The value. + + + + + Returns the current instance decreased by one. + + An Azimuth object. + + This example uses the Decrement method to decrease an Azimuth's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Decrement + Dim Azimuth1 As New Azimuth(91) + Azimuth1 = Azimuth1.Decrement() + ' Incorrect use of Decrement + Dim Azimuth1 = New Azimuth(91) + Azimuth1.Increment() + ' NOTE: Azimuth1 will still be 91°! + + + // Correct use of Decrement + Azimuth Azimuth1 = new Azimuth(91); + Azimuth1 = Azimuth1.Decrement(); + // Incorrect use of Decrement + Azimuth Azimuth1 = new Azimuth(91); + Azimuth1.Decrement(); + // NOTE: Azimuth1 will still be 91°! + + + This method decreases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Azimuth class is immutable, this + method cannot be used to modify an existing instance. + + + + Decreases the current instance by the specified value. + + A Double to subtract from the current instance. + A new Azimuth containing the new value. + + This example subtracts 30° from the current instance of 90°, returning 60°. + + Dim Azimuth1 As New Azimuth(90) + Azimuth1 = Azimuth1.Subtract(30) + + + Azimuth Azimuth1 = new Azimuth(90); + Azimuth1 = Azimuth1.Subtract(30); + + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the current instance by the specified value. + + A Double to multiply with the current instance. + A new Azimuth containing the product of the two numbers. + + This example multiplies 30° with three, returning 90°. + + Dim Azimuth1 As New Azimuth(30) + Azimuth1 = Azimuth1.Multiply(3) + + + Azimuth Azimuth1 = new Azimuth(30); + Azimuth1 = Azimuth1.Multiply(3); + + + + + + Multiplies the specified value. + + The value. + + + + + Divides the current instance by the specified value. + + A Double representing a denominator to divide by. + An Azimuth containing the new value. + + This example divides 90° by three, returning 30°. + + Dim Azimuth1 As New Azimuth(90) + Azimuth1 = Azimuth1.Divide(3) + + + Azimuth Azimuth1 = new Azimuth(90); + Azimuth1 = Azimuth1.Divide(3); + + + + + + Divides the specified value. + + The value. + + + + + Indicates if the current instance is smaller than the specified value. + + An Azimuth to compare with the current instance. + A Boolean, True if the current instance is + smaller than the specified value. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Azimuth to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the specified value. + This method compares the DecimalDegrees property with the + specified value. This method is the same as the "<=" operator. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified value. + + An Azimuth to compare with the current instance. + A Boolean, True if the current instance is + greater than the specified value. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Azimuth to compare with the current instance. + A Boolean, True if the current instance is + greater than or equal to the specified value. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Creates a copy of the current instance. + + An Azimuth of the same value as the current instance. + + + + Returns a value indicating the relative order of two objects. + + An Azimuth object to compare with. + A value of -1, 0, or 1 as documented by the IComparable interface. + This method allows collections of Azimuth objects to be sorted. + The DecimalDegrees property of each instance is compared. + + + + Compares the current instance to another instance using the specified + precision. + + The value. + The decimals. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Azimuth1 As New Azimuth(90.15); + Dim Azimuth2 As New Azimuth(90.12); + If Azimuth1.Equals(Azimuth2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Azimuth1 As New Azimuth(90.15); + Dim Azimuth2 As New Azimuth(90.12); + If Azimuth1.Equals(Azimuth2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Azimuth Azimuth1 = new Azimuth(90.15); + Azimuth Azimuth2 = new Azimuth(90.12); + if (Azimuth1.Equals(Azimuth2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Azimuth Azimuth1 = new Azimuth(90.15); + Azimuth Azimuth2 = new Azimuth(90.12); + if (Azimuth1.Equals(Azimuth2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + NOTE: This method compares objects by value, not by + reference. + + + + Equalses the specified value. + + The value. + + + + + Compares the current instance to the specified compass direction. + + A Direction value to compare with the current instance. + A Boolean, True if the current instance's + Direction property matches the specified value. + This method is typically used to approximate if two directions are equivalent. + For example, if two objects are traveling at a bearing of 41° and 46°, they both could + be considered to be traveling Northeast even though their bearings are not precisely + the same. + + + + Outputs the azimuth as a string using the specified format. + + A String consisting of any number of the following + codes: + + + + c + The object is output as an abbreviated direction. + N, NE, + NNW + + + cc + The object is output as a full direction. + North, Northeast, + North-Northwest + + + d + Represents one digit from the + DecimalDegrees property. + + + h + Represents one digit from the + Hours property. + + + m + Represents one digit from the Minutes + property. + + + s + Represents one digit from the Seconds + property. + + + + A CultureInfo object used to properly format numeric + information. + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an azimuth in a + custom format. The " d.dd " code represents decimal degrees + rounded to two digits, and " cc " represents the direction in + verbose form. + + Dim MyAzimuth As New Azimuth(90.946) + Debug.WriteLine(MyAzimuth.ToString("d.dd (cc)", CultureInfo.CurrentCulture)) + ' Output: 90.95 (East) + + + Azimuth MyAzimuth = new Azimuth(90.946); + Console.WriteLine(MyAzimuth.ToString("d.dd (cc)", CultureInfo.CurrentCulture)); + // Output: 90.95 (East) + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "cc" is used. Any string + output by this method can be converted back into an Azimuth object using the + Parse method or Azimuth(string) + constructor. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the value of the angle as decimal degrees. + + A Double value. + Hours Property + + Minutes Property + + Seconds Property + + + This example demonstrates how the + DecimalDegrees property is + calculated automatically when creating an angle using hours, minutes and seconds. + + ' Create an angle of 20°30' + Dim MyAzimuth As New Azimuth(20, 30) + ' Setting the DecimalMinutes recalculated other properties + Debug.WriteLine(MyAzimuth.DecimalDegrees) + ' Output: "20.5" the same as 20°30' + + + // Create an angle of 20°30' + Azimuth MyAzimuth = New Azimuth(20, 30); + // Setting the DecimalMinutes recalculated other properties + Console.WriteLine(MyAzimuth.DecimalDegrees) + // Output: "20.5" the same as 20°30' + + + This property returns the value of the angle as a single number. + + + + Returns the minutes and seconds as a single numeric value. + + A Double value. + Minutes Property + + DecimalDegrees Property + + + This example demonstrates how the DecimalMinutes property is + automatically calculated when creating a new angle. + + ' Create an angle of 20°10'30" + Dim MyAzimuth As New Azimuth(20, 10, 30) + ' The DecimalMinutes property is automatically calculated + Debug.WriteLine(MyAzimuth.DecimalMinutes) + ' Output: "10.5" + + + // Create an angle of 20°10'30" + Azimuth MyAzimuth = new Azimuth(20, 10, 30); + // The DecimalMinutes property is automatically calculated + Console.WriteLine(MyAzimuth.DecimalMinutes) + // Output: "10.5" + + + This property is used when minutes and seconds are represented as a single + decimal value. + + + + Returns the integer hours (degrees) portion of an angular + measurement. + + An Integer value. + Minutes Property + + Seconds Property + + + This example creates an angle of 60.5° then outputs the value of the + Hours property, 60. + + Dim MyAzimuth As New Azimuth(60.5) + Debug.WriteLine(MyAzimuth.Hours) + ' Output: 60 + + + Azimuth MyAzimuth = new Azimuth(60.5); + Console.WriteLine(MyAzimuth.Hours); + // Output: 60 + + + This property is used in conjunction with the Minutes + and Seconds properties to create a full angular measurement. + This property is the same as DecimalDegrees without any fractional + value. + + + + Returns the integer minutes portion of an angular measurement. + + An Integer. + Hours Property + + Seconds Property + + + This example creates an angle of 45.5° then outputs the value of the + Minutes property, 30. + + Dim MyAzimuth As New Azimuth(45.5) + Debug.WriteLine(MyAzimuth.Minutes) + ' Output: 30 + + + Azimuth MyAzimuth = new Azimuth(45.5); + Console.WriteLine(MyAzimuth.Minutes); + // Output: 30 + + + This property is used in conjunction with the Hours and + Seconds properties to create a sexagesimal + measurement. + + + + Returns the seconds minutes portion of an angular measurement. + + A Double value. + Hours Property + + Minutes Property + + + This example creates an angle of 45°10.5' then outputs the value of the + Seconds property, 30. + + Dim MyAzimuth As New Azimuth(45, 10.5) + Debug.WriteLine(MyAzimuth.Seconds) + ' Output: 30 + + + Dim MyAzimuth As New Azimuth(45, 10.5); + Console.WriteLine(MyAzimuth.Seconds); + // Output: 30 + + + This property is used in conjunction with the Hours and + Minutes properties to create a sexagesimal + measurement. + + + + Returns the current instance expressed as a compass direction. + + A Direction value. + + This example outputs the direction associated 272°, which is West. + + Dim MyAzimuth As New Azimuth(272) + Debug.WriteLine(MyAzimuth.Direction.ToString()) + ' Output: West + + + Azimuth MyAzimuth = new Azimuth(272); + Console.WriteLine(MyAzimuth.Direction.ToString()); + // Output: West + + + This property converts an azimuth to the nearest of sixteen compass directions. + For example, an azimuth of 89° points almost east, therefore a value of + East would be returned. This property is typically used for user + interfaces to express an azimuth in a form that is easy to understand. + + + + Indicates if the current instance has a non-zero value. + + A Boolean, True if the + DecimalDegrees property is zero. + Empty Field + + + + Indicates if the current instance represents an infinite value. + + + + + Indicates whether the value is invalid or unspecified. + + + + + Indicates whether the value has been normalized and is within the + allowed bounds of 0° and 360°. + + + + + Represents an approximate direction of motion. + + + This example outputs the direction associated 272°, which is West + . + + Dim MyAzimuth As New Azimuth(272) + Debug.WriteLine(MyAzimuth.Direction.ToString()) + ' Output: West + + + Azimuth MyAzimuth = new Azimuth(272); + Console.WriteLine(MyAzimuth.Direction.ToString()); + // Output: West + + + This enumeration is used primarily by the Azimuth class when + converting a numeric angle measurement into a compass direction. + + + An azimuth of approximately 0° + + + Between north and northeast + + + Between north and east + + + Between east and northeast + + + An azimuth of approximately 90° + + + Between east and southeast + + + Between south and east + + + Between south and southeast + + + An azimuth of approximately 180° + + + Between south and southwest + + + Between south and west + + + Between west and southwest + + + An azimuth of approximately 270° + + + Between west and northwest + + + Between north and west + + + Between north and northwest + + + + Represents a base class for designing GPS packets which store binary data. + + + + + Represents a base class for designing GPS data packets. + + + + + Converts the packet into an array of bytes. + + + + + + Returns a string representation of the packet + + A that represents this instance. + + + + Returns a string representing the packet + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Returns whether the pack data is well-formed. + + + + + + + + + + Creates a BinaryPacket + + + + + BinaryPacket with the specified capacity + + The capacity. + + + + Creates a BinaryPacket from an IEnumerable + + The bytes. + + + + Returns the index of the specified byte + + The object to locate in the . + The index of if found in the list; otherwise, -1. + + + + Inserts a byte at the specified index + + The zero-based index at which should be inserted. + The object to insert into the . + is not a valid index in the . + + + + The is read-only. + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + is not a valid index in the . + + + + The is read-only. + + + + + Adds an item to the . + + The object to add to the . + + The is read-only. + + + + + Removes all items from the . + + + The is read-only. + + + + + Determines whether the contains a specific value. + + The object to locate in the . + true if is found in the ; otherwise, false. + + + + Copies to. + + The array. + Index of the array. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + The is read-only. + + + + + Returns an enumerator that iterates through the collection. + + A that can be used to iterate through the collection. + + + + Returns an enumerator that iterates through a collection. + + An object that can be used to iterate through the collection. + + + + Gets or sets the element at the specified index. + + + The element at the specified index. + + + is not a valid index in the . + + + + The property is set and the is read-only. + + + + + Gets the number of elements contained in the . + + + The number of elements contained in the . + + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Represents an address used to identify a unique Bluetooth device. + + Each Bluetooth device has a unique address, in the form of a six-byte address. + + + + + + + + + Creates a new instance from the specified byte array. + + The address. + + + + Creates a new instance using the specified unsigned 64-bit integer. + + The address. + + + + Creates a new instance using the specified 64-bit integer. + + The address. + + + + Creates a new instance using the specified string. + + The address. + + + + Returns the address as a 64-bit integer. + + + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Converts the specified string into an address. + + The address. + + + + + Bluetooth Address + + The address. + The result of the conversion. + + + + Bluetooth address + + The address. + The result of the conversion. + + + + Bluetooth address + + The address. + The result of the conversion. + + + + Bluetooth address + + The address. + The result of the conversion. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns the bytes of the address. + + + + + Represents a service on a Bluetooth(tm) device. + + Bluetooth GPS devices often provide access to data using sockets. In order to establish a connection + to a Bluetooth GPS device, + + + + Represents a GPS device which is accessed via a socket connection. + + + + + Represents a device on the local machine. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged resources and performs other cleanup operations before the is reclaimed by garbage collection. + + + + + Occurs when a connection is about to be attempted. + + + + + Occurs when a connection has been successfully established. + + + + + Occurs when an open connection is about to be closed. + + + + + Occurs when an open connection has been successfully closed. + + + + + Updates the date a connection was last opened. + + The date. + + + + Updates the date the device was last confirmed as a GPS device. + + The date. + + + + Updates the total time spent connecting to this device. + + The time. + + + + Updates the number of times detection has failed. + + The count. + + + + Updates the number of times detection has succeeded. + + The count. + + + + Creates a new Stream object for the device. + + The access. + The sharing. + A Stream object. + Developers who design their own GPS device classes will need to override this method and use it to establish + a new connection. This method is called by the Open method. The Stream returned by + this method will be assigned to the BaseStream property, it it will be used for all device communications, + including GPS protocol detection. + + + + Records information about this device to the registry. + + In order to organize and maximize performance of GPS device detection, information about devices + is saved to the registry. This method, when overridden, serializes the device to the registry. All registry + keys should be saved under the branch HKLM\Software\DotSpatial.Positioning\GPS.NET\3.0\Devices\[Type]\[ID], where + [Type] is the name of the technology used by the device (e.g. Serial, Bluetooth, etc.), and [ID] + is a unique ID for the device (e.g. "COM3", an address, etc.). Enough information should be written to be able to + establish a connection to the device after reading registry values. + + + + Reads information about this device from the registry. + + In order to organize and maximize performance of GPS device detection, information about devices + is saved to the registry. This method, when overridden, reads information for this device from the registry. All registry + values should have been previously saved via the OnCacheWrite method. + + + + Removes previously cached information for this device from the registry. + + In some cases, the information about previously detected devices may interfere with system changes such as adding + a replacement GPS device. This method will remove the entire registry key for a device, causing GPS.NET 3.0 to start over when + GPS devices need to be detected. + + + + Performs a test on the device to confirm that it transmits GPS data. + + A Boolean value, True if the device is confirmed. + This method will open a connection if necessary via the Open method, then proceed to + examine it for GPS data. This method will always be called on a separate thread to keep detection from slowing + down or blocking the main application. + Developers who override this method should ensure that the method can clean up any resources used, even if a + ThreadAbortException is raised, as a result of the detection thread being aborted. This can be done by wrapping all code in a + try..catch block, and placing all clean-up code in a finally block. + + + + Opens a new connection to the device. + + This method will create a new connection to the device. The connection will be created in the form of a + Stream object. If a connection is already open, this method has no effect. + + + + Opens a new connection to the device. + + The access. + The sharing. + This method will create a new connection to the device. The connection will be created in the form of a + Stream object. If a connection is already open, this method has no effect. + + + + Forces a device to a closed state without disposing the underlying stream. + + + + + Cancels detection and removes any cached information about the device. + Use the method to re-detect the device and re-add it to the device cache. + + + + + Performs an analysis of the device and its capabilities. + + + + + + Starts a new thread which checks the device for GPS data in the background. + + + + + Closes any open connection to the device. + + This method will close any open connection to the device. Any associated Stream object + will be disposed. If no open connection exists, this method has no effect. This method is called automatically + when the device is disposed, either manually or automatically via the finalizer. + + + + Waits for the device to be checked for GPS data. + + + + + + Waits for the device to be checked for GPS data, up to the specified timeout period. + + The timeout. + + + + + Stops any GPS protocol detection in progress. + + + + + Detections the thread proc. + + + + + Sets the is GPS device. + + if set to true [value]. + + + + Esitmates device prcision based on the fix quality. + + The current fix quality of a device or emulation + The estimated error of latitude/longitude coordinates attributed to the device. + If a the fix quality is unknown or NoFix, this method returns the value stored + in the DillutionOfPrecision.CurrentAverageDevicePrecision property. + + + + Compares two devices for the purpose of finding the device most likely to provide a successful connection. + + The left. + The right. + An Integer value. + This method is used during Sort methods to choose the device most likely to respond. + The date the device last successfully opened a connection is examined, along with historical connection statistics. + The "best" device is the device which has most recently opened a connection successfully, with the fewest amount of + connection failures. + + + + Disposes of any managed or unmanaged resources used by the device. + + Since the Device class implements the IDisposable interface, all managed or + unmanaged resources used by the class will be disposed. Any open connection will be closed. The Dispose + method is also called (if necessary) during the finalizer for this class. + + + + Disposes of any unmanaged (or optionally, managed) resources used by the device. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + This method is called when the object is no longer needed. Typically, this happens during the shutdown of the parent + application. If device detection is in progress, it will be immediately cancelled. If any connection is open, it will immediately + be closed and disposed. This method is called via the finalizer if necessary, thus removing the need for explicit calls. Developers + who prefer to call this method explicitly, however, may do so. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Compares two devices for the purpose of finding the device most likely to provide a successful connection. + + An object to compare with this object. + An Integer value. + This method is used during Sort methods to choose the device most likely to respond. + The date the device last successfully opened a connection is examined, along with historical connection statistics. + The "best" device is the device which has most recently opened a connection successfully, with the fewest amount of + connection failures. + + + + Occurs when a connection is about to be opened. + + + + + Occurs when a new connection has opened successfully. + + + + + Occurs when an open connection is about to be closed. + + + + + Occurs when an open connection has been closed. + + + + + Returns a natural language name for the device. + + + + + Returns a reset event used to determine when GPS detection has completed. + + + + + Returns whether a connection is established with the device. + + + + + Returns the stream associated with this device. + + This property is provided solely for more advanced developers who need to interact directly with a device. + During normal operations, the stream returned by this property is managed by this class. As a result, it is not necessary + to dispose of this stream. If no connection is open, this property will return null. + + + + Returns the date and time the device was last confirmed as a GPS device. + + + + + Returns the date and time the device last opened a connection. + + + + + Returns whether the device is currently being examined for GPS data. + + + + + Controls whether the device can be queried for GPS data. + + true if [allow connections]; otherwise, false. + In some cases, an attempt to open a connection to a device can cause problems. For example, + a serial port may be assigned to a barcode reader, or a Bluetooth device may represent a downstairs neighbor's + computer. This property allows a device to be left alone; no connection will be attempted to the device + for any reason. + + + + Returns whether GPS protocol detection has been completed. + + + + + Returns whether the device has been confirmed as a GPS device. + + + + + Controls the number of times this device has been confirmed as a GPS device. + + In order to maximize the performance of detecting GPS devices, statistics are maintained for each device. This + property indicates how many times the device has been confirmed as a GPS device. It will be incremented automatcially if + a call to DetectProtocol has been successful. + + + + Controls the number of times this device has failed to identify itself as a GPS device. + + In order to prioritize and maximize performance of GPS device detection, statistics are kept for each device. + These statistics control how detection is performed in the future. For example, a device with a success rate of 100 and a failure + rate of 1 would be tested before a device with a success rate of zero. This property is updated automatically based on the + results of a call to DetectProtocol. + + + + Returns the chance that a connection to the device will be successful. + + + + + Returns the average amount of time required to open a connection. + + + + + Returns the total amount of time spent so far opening a connection. + + + + + Controls the amount of time to wait before aborting a read operation. + + The default read timeout. + + + + Controls the amount of time to wait before aborting a write operation. + + The default write timeout. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a NetworkDevice from the specified parameters + + The address family. + Type of the socket. + Type of the protocol. + + + + Creates a NetworkDevice from the specified parameters + + The address family. + Type of the socket. + Type of the protocol. + The end point. + + + + Creates a new connection to the specified endpoint. + + The end point. + + + + Occurs immediately before a socket is opened. + + + + + Creates a new Stream object for the device. + + The access. + The sharing. + A Stream object. + + + + + Disposes of any unmanaged (or optionally, managed) resources used by the device. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Removes previously cached information for this device from the registry. + + + + + Records information about this device to the registry. + + + + + Reads information about this device from the registry. + + + + + Returns the addressing scheme the socket can use. + + + + + Returns the type of protocol used by the socket. + + + + + Returns the protocol supported by the socket. + + + + + Returns the network address for the device. + + The end point. + + + + Returns the socket associated with this device. + + + + + Controls the amount of time allowed for a connection to be successfully opened. + + The default connect timeout. + + + + Returns a natural language name for the device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a GUID which represents the RFComm service. + + + + + Creates a new instance using the specified address. + + The address. + + + + Creates a new instance using the specified address and name. + + The address. + The name. + + + + Creates a new instance using the specified endpoint and friendly name. + + The end point. + The name. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Performs a test on the device to confirm that it transmits GPS data. + + A Boolean value, True if the device is confirmed. + + + + Called when [cache remove]. + + + + + Called when [cache write]. + + + + + Called when [cache read]. + + + + + Searches the room for Bluetooth devices. + + This method will perform discovery of nearby Bluetooth devices. Discovery will take place on a separate thread, + and the DeviceDiscovered event will be raised for each device service discovered. If a device publishes multiple + services, multiple events will be raised for each service. + + + + Searches the room for Bluetooth devices. + + A Boolean indicating whether the cache of Bluetooth information should be cleared. + This method will perform discovery of nearby Bluetooth devices. Discovery will take place on a separate thread, + and the DeviceDiscovered event will be raised for each device service discovered. If a device publishes multiple + services, multiple events will be raised for each service. + If the IsCacheFlushed parameter is True, any cached information will be cleared, and a + wireless scan of devices will be performed. This kind of scan is preferable since it can detect which devices are actually responding + right now, even though the query will take several seconds to occur. A value of False is typically used if a + device scan was recently performed and responsiveness is necessary. + + + + Wait for discovery + + boolean + + + + Waits for discovery, specifying a timeout + + The TimeSpan specifying the timeout where waiting ends. + + + + + Discovers the devices thread proc. + + + + + Refreshes this instance. + + + + + Loads the Bluetooth devices that have been cached by GPS.Net. This list contains previously-detected GPS devices, + along with devices which were tested but found to NOT be GPS devices. By keeping these statistics, + the detection system can become faster over time by first testing devices which have a better success rate. + + The list to which the cached devices are added. + + + + Loads the Bluetooth devices that have already been discovered by Windows. This list includes non-GPS devices. + + The list to which the devices are added. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Occurs when a new Bluetooth device has been detected. + + + + + Returns the address of the device. + + + + + Returns the primary purpose of the device. + + + + + Returns a sub-category describing the purpose of the device. + + + + + Returns the major type of device. + + + + + Returns a serial device which has been linked to this device. + + + + + Returns the name of the Bluetooth device. + + + If the device has been identified, the actual name of the device will be returned. Otherwise, the + device's address will be returned. + + + + Controls whether the device can be queried for GPS data. + + true if [allow connections]; otherwise, false. + + + + Controls the maximum allowed detection failures before a device is excluded from detection. + + The maximum allowed failures. + Some devices involved with device detection are not GPS devices. For example, a Bluetooth search + could return wireless headphones, or the neighbor's computer. This property controls how many times a device will be + tested before it is no longer included for searches. If a device's failure count goes beyond this number, attempts + will no longer be made to connect to the device. + + + + Returns a list of known Bluetooth devices. + + To maximize performance, GPS.NET will record information about each device it encounters for the purposes of organizing + and speeding up the GPS device detection process. This property returns a list of all known Bluetooth devices. + Since this list is managed automatically, it should not be modified. + + + + Controls the amount of time spent searching for Bluetooth devices. + + The discovery timeout. + + + + Indicates the classification of a Bluetooth device. + + + + + Misc + + + + + Computer + + + + + Phone + + + + + Lan + + + + + Audio + + + + + Peripheral + + + + + Imaging + + + + + Unclassified + + + + + Indicates the kind of service provided by a Bluetooth device. + + + + + None + + + + + Limited Disoverable mode + + + + + Positioning + + + + + Networking + + + + + Rendering + + + + + Capturing + + + + + Object Transfer + + + + + Audio + + + + + Telephony + + + + + Information + + + + + all + + + + + Represents a Bluetooth service on a device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance using the specified address. + + The address. + + + + Creates a new instance using the specified address and service GUID. + + The address. + The service. + + + + Creates a new instance using the specified address, service GUID, and remote port number. + + The address. + The service. + The port. + + + + Creates a new instance from the specified socket address. + + The socket address. + + + + Sets the name. + + The name. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Determines whether the specified is equal to this instance. + + The to compare with the current . + true if the specified is equal to this instance; otherwise, false. + + + + Creates an instance from a instance. + + The socket address that serves as the endpoint for a connection. + A new instance that is initialized from the specified instance. + Any attempt is made to access the method when the method is not overridden in a descendant class. + + + + + + + + Serializes endpoint information into a instance. + + A instance that contains the endpoint information. + Any attempt is made to access the method when the method is not overridden in a descendant class. + + + + + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Returns a GUID indentifying the service. + + + + + Returns the port used for opening connections. + + + + + Returns a friendly name for the endpoint. + + + + + Returns the unique address of the device, used for connections. + + + + + Controls the number of times this endpoint has been identified as a GPS service. + + The successful detection count. + + + + Controls the number of times this endpoint has failed to identify itself as a GPS service. + + The failed detection count. + + + + Gets the address family to which the endpoint belongs. + + One of the values. + + Any attempt is made to get or set the property when the property is not overridden in a descendant class. + + + + + + + + Represents a Bluetooth radio. + + Most computers have a single Bluetooth radio attached to them. The radio is responsible for wireless communications + with all Bluetooth devices. This class provides the ability to enable or disable the radio, as well as to access devices which + the radio can detect. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The handle. + + + + Controls whether the radio can accept incoming connections. + + + + + + Controls whether the radio can accept incoming connections. + + if set to true [value]. + + + + Determines whether the specified is equal to this instance. + + The to compare with the current . + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns the current Bluetooth radio if one is installed. + + + + + Gets the handle. + + + + + Returns the name of the radio. + + + + + Returns the primary purpose of the device. + + + + + Returns a sub-category describing the purpose of the device. + + + + + Returns the major type of device. + + + + + Represents an Earth-centered, Earth-fixed (ECEF) Cartesian coordinate. + + + + + + + + + + + + + + + + + + + + Creates a new instance using the specified X, Y and Z values. + + The x. + The y. + The z. + + + + Creates a new instance from the specified block of GML. + + The reader. + + + + Returns a cartesian coordinate with empty values. + + + + + Returns a cartesian point with infinite values. + + + + + Represents an invalid or unspecified value. + + + + + Converts the current instance to a geodetic (latitude/longitude) coordinate. + + A Position object containing the converted result. + The conversion formula will convert the Cartesian coordinate to + latitude and longitude using the WGS1984 ellipsoid (the default ellipsoid for + GPS coordinates). + + + + Converts the current instance to a geodetic (latitude/longitude) coordinate using the specified ellipsoid. + + The ellipsoid. + A Position object containing the converted result. + The conversion formula will convert the Cartesian coordinate to + latitude and longitude using the WGS1984 ellipsoid (the default ellipsoid for + GPS coordinates). The resulting three-dimensional coordinate is accurate to within two millimeters + (2 mm). + + + + Returns the distance from the current instance to the specified cartesian point. + + A CartesianPoint object representing the end of a segment. + + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Implements the operator +. + + A. + The b. + The result of the operator. + + + + Implements the operator -. + + A. + The b. + The result of the operator. + + + + Implements the operator *. + + A. + The b. + The result of the operator. + + + + Implements the operator /. + + A. + The b. + The result of the operator. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns the horizontal (longitude) portion of a Cartesian coordinate. + + + + + Returns the vertical (latitude) portion of a Cartesian coordinate. + + + + + Returns the altitude portion of a Cartesian coordinate. + + + + + Indicates whether the current instance has no value. + + + + + Indicates whether the current instance is invalid or unspecified. + + + + + Represents information about a GPS device when a device-related event is raised. + + + + + + + + + + A default instance + + + + + Creates a new instance of the event args + + The device. + + + + The device + + + + + Represents an examination of a GPS device for its capabilities and health. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The device. + if set to true [is working properly]. + The log. + The supported sentences. + if set to true [is position supported]. + if set to true [is altitude supported]. + if set to true [is bearing supported]. + if set to true [is precision supported]. + if set to true [is speed supported]. + if set to true [is satellites supported]. + + + + Sends this analysis anonymously to DotSpatial.Positioning for further study. + + A Boolean value, True if the HTTP response indicates success. + DotSpatial.Positioning collects device detection information for the purposes of improving + software, widening support for devices, and providing faster technical support. This method + will cause an HTTP POST to be sent to the DotSpatial.Positioning web server with the values in this class. + The information is collected anonymously. + One benefit of sending an analysis is that it can instantly update statistics for supported + GPS devices. The anonymous results will be compiled into an RSS feed which developers can use to + instantly be notified of both healthy and problematic devices. + The DotSpatial.Positioning server can handle repeated calls to this method, though requests should not + be sent more than every few seconds. Duplicate reports are automatically ignored by our system. So + long as customers are aware of the implications of an HTTP request (such as possible cell phone charges), + you are welcome to use this functionality in your application. + + + + Sends this analysis anonymously to the specified Uri for further study. + + The URI. + A Boolean value, True if the HTTP response indicates success. + Developers may wish to generate detection logs from customers for the purposes of + improving technical support. This can also be used to collect statistics about GPS devices which + customers use. This method will create an HTTP POST to the specified address with the information in this + class. + The actual fields sent will vary depending on the type of object being reported. Currently, this + feature works for SerialDevice, BluetoothDevice, and GpsIntermediateDriver device objects. + + + + Returns a log of activity while the device was tested. + + + + + Returns whether the device is healthy + + + + + Returns NMEA sentences discovered during analysis. + + + + + Returns whether real-time latitude and longitude are reported by the device. + + + + + Returns whether the distance above sea level is reported by the device. + + + + + Returns whether the real-time direction of travel is reported by the device. + + + + + Returns whether dilution of precision information is reported by the device. + + + + + Returns whether the real-time rate of travel is reported by the device. + + + + + Returns whether real-time satellite information is reported by the device. + + + + + Encapsulates GPS device detection features and information about known devices. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Aborts the process of finding GPS devices and blocks until the cancellation is complete. + + + + + Aborts the process of finding GPS devices and optionally blocks until the cancellation is complete. + + If set to , then the method will return immediately rather than waiting + for the cancellation to complete. + + + + Starts looking for GPS devices on a separate thread. + + + + + Cancels detection and removes any cached information about known devices. + Use the method to re-detect devices and re-create the device cache. + + + + + Waits for any GPS device to be detected. + + + + + + Waits for any GPS device to be detected up to the specified timeout period. + + The timeout. + + + + + Waits for device detection to complete. + + + + + + Waits for device detection to complete up to the specified timeout period. + + The timeout. + + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Handles the DeviceDiscovered event of the BluetoothDevice control. + + The source of the event. + The instance containing the event data. + + + + Detections the thread proc. + + + + + This method, spawned by the ThreadPool, monitors detection and aborts it if it's taking too long. + + The over9000. + + + + Begins detecting all bluetooth devices to determine if they are GPS devices. + All detection is done asynchronously, so this method returns immediately. + Use the method if you need to block until detection is completed. + + + + + Begins detecting all serial devices to determine if they are GPS devices. + All detection is done asynchronously, so this method returns immediately. + Use the method if you need to block until detection is completed. + + If set to , the colon character (":") will be omitted from the port names. + This is required on some systems in order for the device to be detected properly. + + + + Discovers any new bluetooth devices. + + + + + Waits for device detection to complete. + + + + + Renames the specified serial device, only if there is not already another serial device with the specified name. + + The device to be renamed. + The new name for the device. + + + + Clears the , , and lists. + This will cause the lists to be rebuilt the next time the or + methods are called. + + + + + Called when [device detection attempted]. + + The device. + + + + Called when [device detection attempt failed]. + + The exception. + + + + Called when [device detection started]. + + + + + Called when [device detection completed]. + + + + + Called when [device discovered]. + + The device. + + + + Adds a GPS device to the list of known GPS devices. + + The device. + + + + Occurs when the process of finding GPS devices has begun. + + + + + Occurs immediately before a device is about to be tested for GPS data. + + + + + Occurs when a device has failed to transmit recognizable GPS data. + + + + + Occurs when a device is responding and transmitting GPS data. + + + + + Occurs when a Bluetooth device has been found. + + + + + Occurs when the process of finding GPS devices has been interrupted. + + + + + Occurs when the process of finding GPS devices has finished. + + + + + Occurs when any interpreter detects a change in the current location. + + + + + Occurs when any interpreter detects a change in the distance above sea level. + + + + + Occurs when any interpreter detects a change in the current rate of travel. + + + + + Occurs when any interpreter detects a change in GPS satellite information. + + + + + Occurs when any interpreter detects a change in the direction of travel. + + + + + Occurs when any interpreter detects a change in the direction of heading. + + + + + Occurs when any interpreter detects when a GPS device can no longer calculate the current location. + + + + + Occurs when any interpreter detects when a GPS device becomes able to calculate the current location. + + + + + Occurs when any interpreter detects a change in the satellite-derived date and time. + + + + + Returns a GPS device which is connectable and is reporting data. + + + + + Controls whether Bluetooth devices are included in the search for GPS devices. + + true if [allow bluetooth connections]; otherwise, false. + + + + Controls whether serial devices are included in the search for GPS devices. + + true if [allow serial connections]; otherwise, false. + + + + Controls whether a complete range of serial devices is searched, regardless of which device appear to actually exist. + + true if [allow exhaustive serial port scanning]; otherwise, false. + + + + Controls the maximum serial port to test when exhaustive detection is enabled. + + The maximum serial port number. + + + + Returns a list of confirmed GPS devices. + + + + + Returns a list of known wireless Bluetooth devices (not necessarily GPS devices). + + + + + Returns a list of known serial devices (not necessarily GPS devices). + + + + + Controls the amount of time allowed for device detection to complete before it is aborted. + + The device detection timeout. + + + + Controls whether detection is aborted once one device has been found. + + true if this instance is only first device detected; otherwise, false. + + + + Controls whether the system clock should be synchronized to GPS-derived date and time. + + true if this instance is clock synchronization enabled; otherwise, false. + + + + Controls whether the Bluetooth receiver is on and accepting connections. + + true if this instance is bluetooth enabled; otherwise, false. + + + + Returns whether the Bluetooth stack on the local machine is supported by GPS.NET. + + + + + Returns whether a GPS device has been found. + + + + + Returns whether the process of finding a GPS device is still working. + + + + + Controls the current location on Earth's surface. + + The position. + + + + Controls the current rate of travel. + + The speed. + + + + Controls the current list of GPS satellites. + + The satellites. + + + + Controls the current satellite-derived date and time. + + The UTC date time. + + + + Controls the current satellite-derived date and time. + + The date time. + + + + Controls the current distance above sea level. + + The altitude. + + + + Controls the current direction of travel. + + The bearing. + + + + Controls the current direction of heading. + + The heading. + + + + Gets a value indicating whether this instance is stream needed. + + + + + Represents a problem which has occured during device detection. + + + + + + + + + + Creates a new instance of a DeviceDetectionException + + The device. + The inner exception. + + + + Creates a new instance of a DeviceDetectionException + + The device. + The message. + + + + Creates a new instance of a DeviceDetectionException + + The device. + The message. + The inner exception. + + + + The device that caused the exception + + + + + Represents information about a device detection problem during detection-related events. + + + + + + + + + + Creates a new instance of the DeviceDetectionException event arguments. + + The exception. + + + + The device that is involved in the event + + + + + The exception + + + + + Represents a confidence level in the precision of GPS data. + + Dilution of Precision (or "DOP" for short) is a very important concept for GPS software + developers. When GPS devices calculate the current location on Earth's surface, inaccuracies + can cause the calculated position to be incorrect by as much as an American football field! To + help minimize these effects, the GPS device also reports DOP values. A low DOP value (such as 2) + indicates excellent precision, whereas a high value (such as 50) indicates that precision is very + poor. + As a rule of thumb, a DOP value can be multiplied by the average precision of a GPS device + to get a measurable amount of error. Most consumer GPS devices are capable of about four to six meters + of precision at their best, or as low as one to three meters if DGPS services such as WAAS or EGNOS are + being utilized. Or, an average of five meters without DGPS, and an average of two meters with DGPS. + So, if the current Dilution of Precision is four, and WAAS is in effect, the current precision is + "2 meters * four = 8 meters" of precision. + GPS.NET includes features to help you monitor and control the precision of your GPS devices. Properties + such as MaximumHorizontalDilutionOfPrecision will cause a GPS.NET interpreter to throw out + any real-time data until the DOP is at or below a specific number. To help you determine this maximum number for + your application, an article is available to help you. You can find it online at the DotSpatial.Positioning web site here: + http://dotspatial.codeplex.com/Articles/WritingApps2_1.aspx. + + + + + + + + + Represents the typical precision of a consumer-grade GPS device: six meters. + + + + + Represents the typical precision of a consumer-grade GPS device with WAAS, MSAS or EGNOS: two meters. + + + + + Represents the worst possible DOP value of fifty. + + + + + Represents the best possible DOP value of one. + + + + + Represents a DOP reading signifying nearly-ideal precision. + + + + + Represents a DOP reading signifying inaccurate positional measurements. + + + + + Represents a FOP reading signifying grossly inaccurate positional + measurements. + + + + + Represents a value of 1, where the GPS device is making the most accurate + measurements possible. + + + + + Represents a DOP reading signifying inaccurate positional measurements. + + + + + Represents a DOP reading signifying fairly accurate positional + measurements. + + + + + Represents an invalid or unspecified DOP value. + + + + + + + + + + Creates a new instance using the specified value. + + The value. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Returns the numeric value of the rating. + + + + + Returns whether the value is zero. + + + + + Returns whether the value is invalid or unspecified. + + + + + Returns the estimated precision as a measurable distance. + + The precision estimate is a product of this value and the value of the + CurrentAverageDevicePrecision static property. + + + + Returns a friendly name for the level of precision. + + + + + Controls the estimated average precision possible by the current GPS device. + + The current average device precision. + Most consumer GPS devces are capable of about six meters of precision without DGPS features + such as WAAS or EGNOS. When DGPS features are utilized, a typical cunsumer device is capable of about + two meters of precision. If you know of a specific amount for your device, you can set this property to + assist GPS.NET in calculating the current estimated measurable amount of error in latitude/longitude reports. + + + + Indicates an interpretation of the accuracy of a measurement made by the GPS + device. + + This enumeration is used by the + Rating property of the + + DilutionOfPrecision class. This interpretation is subject to discussion as to + what precisely constitutes a "good" versus "bad" DOP. Use your own best judgement based + on the needs of your application. Generally speaking, a DOP of six or less is + recommended for en-route navigation, and three or less for highly-precise measurements. + A rating of Moderate corresponds with six or better, a rating of + Excellent means three or less, and a rating of Ideal + means the best value of one. + + + The rating is unknown or not yet available. + + + + Represents a value of 1, where the GPS device is making the most accurate + measurements possible. + + + + + The GPS device is making high-quality measurements, good enough for applications + requiring higher levels of precision. Represents a value of 2 or 3. + + + + + The GPS device is making measurements accurate enough for en-route navigation. + Represents a value between 4 and 6. + + + + + The GPS device is making measurements good enough to indicate the approximate + location, but should be ignored by applications requiring high accuracy. Represents a + value of 7 or 8. + + + + + The GPS device is making measurements with an accuracy which should only be used + to indicate the approximate location, but is not accurate enough for en-route + navigation. Represents a value between 9 and 20. + + + + + The GPS device is calculating the current location, but the accuracy is extremely + low and may be off by a factor of fifty. Represents a value between 21 and the maximum + possible of 50. + + + + + Represents information about a DOP measurement when an DOP-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyDilutionOfPrecisionEvent As EventHandler + ' Create a DilutionOfPrecision of 30 horizontal + Dim MyDilutionOfPrecision As New DilutionOfPrecision(DilutionOfPrecisionType.Horizontal, 30.0) + Sub Main() + ' Raise our custom event + RaiseEvent MyDilutionOfPrecisionEvent(Me, New DilutionOfPrecisionEventArgs(MyDilutionOfPrecision)) + End Sub + + + // Declare a new event + EventHandler MyDilutionOfPrecisionEvent; + // Create a DilutionOfPrecision of 30 horizontal + DilutionOfPrecision MyDilutionOfPrecision = new DilutionOfPrecision(DilutionOfPrecisionType.Horizontal, 30.0); + void Main() + { + // Raise our custom event + MyDilutionOfPrecisionEvent(this, New DilutionOfPrecisionEventArgs(MyDilutionOfPrecision)); + } + + + + DilutionOfPrecision Class + + EventHandler Delegate + This class is typically used for events in the DilutionOfPrecision class to + provide notification when hours, minutes, decimal minutes or seconds properties have changed. + + + + + + + + + Creates a new instance with the specified DOP measurement. + + The dilution of precision. + + + + A DilutionOfPrecision object which is the target of the event. + + + + + Represents a simulated GPS device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + An Excpetion occured + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The name. + + + + Open + + + + + Emulators the thread proc. + + + + + Called when [emulation]. + + + + + Toggles the IsRandom flag. + + The state to toggle the flag. + + + + Randomizes the emulation by changing speed and direction + + GPS coordinate emulation can be randomized by any number of factors, depending on the emulator type used. + Any emulation can have it's direction and speed randomized within specified tolerances. By default, speed is + limited to between 0 (low) and 5 (high) meters/second and bearing changes are limited to +/- 45 degrees + (a 90 degree arc) from North (0) degrees. + + + + Randomizes the emulation by changing speed and direction + + The randomizer to use. + The minimum travel speed. + The maximum travel speed. + The initial direction of travel. + The arc in which random directional changes will occur. + GPS coordinate emulation can be randomized by any number of factors, depending on the emulator type used. + Any emulation can have it's direction and speed randomized within specified tolerances. By default, speed is + limited to between 0 (low) and 5 (high) meters/second and bearing changes are limited to +/- 45 degrees + (a 90 degree arc) from North (0) degrees. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + + When overridden in a derived class, clears all buffers for this stream and causes any buffered data to be written to the underlying device. + + An I/O error occurs. + + + + When overridden in a derived class, sets the position within the current stream. + + A byte offset relative to the parameter. + A value of type indicating the reference point used to obtain the new position. + The new position within the current stream. + An I/O error occurs. + + The stream does not support seeking, such as if the stream is constructed from a pipe or console output. + + Methods were called after the stream was closed. + + + + When overridden in a derived class, sets the length of the current stream. + + The desired length of the current stream in bytes. + An I/O error occurs. + + The stream does not support both writing and seeking, such as if the stream is constructed from a pipe or console output. + + Methods were called after the stream was closed. + + + + When overridden in a derived class, reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read. + + An array of bytes. When this method returns, the buffer contains the specified byte array with the values between and ( + - 1) replaced by the bytes read from the current source. + The zero-based byte offset in at which to begin storing the data read from the current stream. + The maximum number of bytes to be read from the current stream. + The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero (0) if the end of the stream has been reached. + The sum of and is larger than the buffer length. + + + is null. + + + or is negative. + + An I/O error occurs. + + The stream does not support reading. + + Methods were called after the stream was closed. + + + + Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream. + + The unsigned byte cast to an Int32, or -1 if at the end of the stream. + The stream does not support reading. + + Methods were called after the stream was closed. + + + + When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written. + + An array of bytes. This method copies bytes from to the current stream. + The zero-based byte offset in at which to begin copying bytes to the current stream. + The number of bytes to be written to the current stream. + The sum of and is greater than the buffer length. + + + is null. + + + or is negative. + + An I/O error occurs. + + The stream does not support writing. + + Methods were called after the stream was closed. + + + + Writes a byte to the current position in the stream and advances the position within the stream by one byte. + + The byte to write to the stream. + An I/O error occurs. + + The stream does not support writing, or the stream is already closed. + + Methods were called after the stream was closed. + + + + Closes the emulation stream, but doesn't dispose of it. + + The Emulator.Close() method simply terminates the thread that feeds data to + a virtual Device. This allows the emulator to be reused indefinately. + + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Default Read Buffer Size + + The default size of the read buffer. + + + + + Default Write Buffer Size + + The default size of the write buffer. + + + + + Default Read Timeout + + The default read timeout. + + + + The Timespan of before the write operation times out. + + The default write timeout. + + + + Gets a value indicating whether this instance is emulation thread alive. + + + + + Returns the current randomizer for emulation. + + + + + Returns the amount of time the emulator waits before processing new data. + + The interval. + + + + Indicates whether enough satellite signals exist to determine the current location. + + + + + Gets a value indicating whether or not the emulator is generating data that + changes in random manner. + + + + + the string Name ofhte emulator + + + + + The string altitude + + The altitude. + + + + the speed + + The speed. + + + + The Directional azimuth angle + + The bearing. + + + + The integer count of fixed satellites + + + + + The quality of the GPS signal + + The fix quality. + + + + The mode of the signal fix + + The fix mode. + + + + the fix method + + The fix method. + + + + The status of the fix + + The fix status. + + + + the Horizontal Dilution of Precision (HPDOP) + + The horizontal dilution of precision. + + + + The Vertical Dilution of Precision (VPDOP) + + The vertical dilution of precision. + + + + The average of the Dilution of precision values. + + The mean dilution of precision. + + + + Gets the list of satellites. + + + + + Gets the list of positions that make up this route + + + + + Gets the Position structure for the current position + + The current position. + + + + Gets or sets the position with the new destination + + The current destination. + + + + Gets the DateTime structure for Now + + + + + Gets the UtcCorrected value for Now + + + + + When overridden in a derived class, gets a value indicating whether the current stream supports reading. + + true if the stream supports reading; otherwise, false. + + + + When overridden in a derived class, gets a value indicating whether the current stream supports seeking. + + true if the stream supports seeking; otherwise, false. + + + + Gets a value that determines whether the current stream can time out. + + A value that determines whether the current stream can time out. + + + + Gets the read buffer. + + + + + Gets the read data available wait handle. + + + + + Gets the write buffer. + + + + + Gets the write data available wait handle. + + + + + When overridden in a derived class, gets or sets the position within the current stream. + + The position. + The current position within the stream. + + An I/O error occurs. + + The stream does not support seeking. + + Methods were called after the stream was closed. + + + + When overridden in a derived class, gets the length in bytes of the stream. + + A long value representing the length of the stream in bytes. + + A class derived from Stream does not support seeking. + + Methods were called after the stream was closed. + + + + When overridden in a derived class, gets a value indicating whether the current stream supports writing. + + true if the stream supports writing; otherwise, false. + + + + Gets or sets a value, in miliseconds, that determines how long the stream will attempt to read before timing out. + + The read timeout. + A value, in miliseconds, that determines how long the stream will attempt to read before timing out. + + The method always throws an . + + + + Gets or sets a value, in miliseconds, that determines how long the stream will attempt to write before timing out. + + The write timeout. + A value, in miliseconds, that determines how long the stream will attempt to write before timing out. + + The method always throws an . + + + + Indicates which devices are being used to obtain a fix, other than the GPS device + itself. + + + + ' Declare a new receiver + Private WithEvents MyReceiver As New Receiver() + ' Raised when the fix quality has changed + Private Sub OnFixQualityChanged(ByVal sender As Object, ByVal e As FixQualityEventArgs) + ' What is the new fix quality° + Select Case e.FixQuality + Case FixQuality.NoFix + ' No fix is obtained + Debug.WriteLine("No fix is currently obtained.") + Case FixQuality.GpsFix + ' A fix is present + Debug.WriteLine("A fix has been obtained using only GPS satellites.") + Case FixQuality.DifferentialGpsFix + ' A differential fix is present + Debug.WriteLine("A fix has been obtained using GPS satellites and correction information from DGPS/WAAS ground stations.") + Case FixQuality.Estimated + ' A fix is being estimated (not an actual fix) + Debug.WriteLine("A fix is currently being estimated. ") + End Select + End Sub + + + // Declare a new receiver + Receiver MyReceiver = new Receiver(); + // Raised when the fix quality has changed + void OnFixQualityChanged(Object sender, FixQualityEventArgs e) + { + // What is the new fix quality° + switch (e.FixQuality) + { + case FixQuality.NoFix: + // No fix is obtained + Debug.WriteLine("No fix is currently obtained."); + case FixQuality.GpsFix: + // A fix is present + Debug.WriteLine("A fix has been obtained using only GPS satellites."); + case FixQuality.DifferentialGpsFix: + // A differential fix is present + Debug.WriteLine("A fix has been obtained using GPS satellites and correction information from DGPS/WAAS ground stations."); + case FixQuality.Estimated: + // A fix is being estimated (not an actual fix) + Debug.WriteLine("A fix is currently being estimated. "); + } + } + + + This enumeration is typically used by the + + + + Not enough information is available to specify the current fix quality. + + + + No fix is currently obtained. + + + A fix is currently obtained using GPS satellites only. + + + A fix is obtained using both GPS satellites and DGPS/WAAS ground + stations. Position error is as low as 0.5-5 meters. + + + + A PPS or pulse-per-second fix. PPS signals very accurately indicate the start of a second. + + + + + Used for surveying. A fix is obtained with the assistance of a reference station. Position error is as low as 1-5 centimeters. + + + + + Used for surveying. A fix is obtained with the assistance of a reference station. Position error is as low as 20cm to 1 meter. + + + + + The fix is being estimated. + + + + + The fix is being input manually. + + + + + The fix is being simulated. + + + + + Indicates whether a fix is present and if altitude can be calculated along with + latitude and longitude. + + + This example demonstrates how to use the FixMethod enumeration to tell if altitude + measurements can be made. Notice: Some devices have built-in altimeters. These devices + can report altitude even when there is no fix present. To support such devices, avoid + using this property entirely and use any non-zero altitude measurement. + + Private WithEvents MyReceiver As New Receiver() + ' Raised whenever the fix method has changed + Private Sub OnFixMethodChanged(ByVal sender As Object, ByVal e As FixMethodEventArgs) + ' What is the new fix method° + Select Case e.FixMethod + Case FixMethod.NoFix + ' We have neither position or altitude + Debug.WriteLine("Your position is: Not Yet Available") + Debug.WriteLine("Your altitude is: Not Yet Available") + Case FixMethod.Fix2D + ' We have a position but no altitude + Debug.WriteLine("Your position is: " & MyReceiver.Position.ToString) + Debug.WriteLine("Your altitude is: Not Yet Available") + Case FixMethod.Fix3D + ' We have both position and altitude + Debug.WriteLine("Your position is: " & MyReceiver.Position.ToString) + Debug.WriteLine("Your altitude is: " & MyReceiver.Altitude.ToString) + End Select + End Sub + + + // Declare a new receiver + Private WithEvents MyReceiver As New Receiver() + // Raised whenever the fix method has changed + void OnFixMethodChanged(Object sender, FixMethodEventArgs e) + { + // What is the new fix method° + switch (e.FixMethod) + { + case FixMethod.NoFix: + // We have neither position or altitude + Debug.WriteLine("Your position is: Not Yet Available"); + Debug.WriteLine("Your altitude is: Not Yet Available"); + case FixMethod.Fix2D: + // We have a position but no altitude + Debug.WriteLine("Your position is: " & MyReceiver.Position.ToString()); + Debug.WriteLine("Your altitude is: Not Yet Available"); + case FixMethod.Fix3D: + // We have both position and altitude + Debug.WriteLine("Your position is: " & MyReceiver.Position.ToString()); + Debug.WriteLine("Your altitude is: " & MyReceiver.Altitude.ToString()); + } + } + + + This enumeration is used by the + class to indicate if altitude measurements are possible. Altitude measurements are + possible whenever there are four or more satellites involved in a fix. + + + The GPS device does not have a fix on the current position. + + + The GPS device is reporting latitude and longitude. + + + The GPS device is reporting latitude, longitude, and altitude. + + + + The fix method is not yet known. + + + + + Indicates whether a satellite fix is currently active. + + + + + The satellite fix is untested + + + + + The satellite fix is inactive + + + + + The satellite fix is active + + + + + Indicates the likelihood that a GPS satellite fix will be obtained or + sustained. + + + This example uses the FixLikelihood enumeration to make a judgement call on the + stability of the fix. + + ' Declare a new receiver + Private WithEvents MyReceiver As New Receiver() + Sub Main() + ' Start listening for messages + MyReceiver.Start + End Sub + Sub OnFixLikelihoodChanged(ByVal sender As Object, ByVal e As FixLikelihoodEventArgs) Handles MyReceiver.FixLikelihoodChanged + ' Do we have a fix currently° + If MyReceiver.IsFixObtained Then + ' Yes. What's the likelihood that the fix will be sustained° + Select Case MyReceiver.FixLikelihood + Case FixLikelihood.Unlikely + Debug.WriteLine("The current fix is about to be lost!") + Case FixLikelihood.Possible + Debug.WriteLine("The current fix is unstable. Find a more open view of the sky soon.") + Case FixLikelihood.Likely + Debug.WriteLine("The current fix is nearly stable.") + Case FixLikelihood.Certain + Debug.WriteLine("The current fix is stable.") + End Select + Else + ' No. What's the likelihood that a fix will be obtained° + Select Case MyReceiver.FixLikelihood + Case FixLikelihood.Unlikely + Debug.WriteLine("A fix is not possible. Find a more open view of the sky.") + Case FixLikelihood.Possible + Debug.WriteLine("A fix is possible, but satellite signals are still mostly obscured.") + Case FixLikelihood.Likely + Debug.WriteLine("A fix should occur within the next several seconds.") + Case FixLikelihood.Certain + Debug.WriteLine("A fix will occur in a few seconds.") + End Select + End If + End Sub + + + ' Declare a new receiver + Private Receiver MyReceiver = new Receiver(); + void Main() + { + // Start listening for messages + MyReceiver.Start(); + } + void OnFixLikelihoodChanged(Object sender, FixLikelihoodEventArgs e) + { + // Do we have a fix currently° + if (MyReceiver.IsFixObtained) + { + // Yes. What's the likelihood that the fix will be sustained° + switch (MyReceiver.FixLikelihood) + { + case FixLikelihood.Unlikely: + Debug.WriteLine("The current fix is about to be lost!"); + break; + case FixLikelihood.Possible: + Debug.WriteLine("The current fix is unstable. Find a more open view of the sky soon."); + break; + case FixLikelihood.Likely: + Debug.WriteLine("The current fix is nearly stable."); + break; + case FixLikelihood.Certain: + Debug.WriteLine("The current fix is stable."); + break; + } + } + else + { + // No. What's the likelihood that a fix will be obtained° + switch (MyReceiver.FixLikelihood) + { + case FixLikelihood.Unlikely: + Debug.WriteLine("A fix is not possible. Find a more open view of the sky."); + break; + case FixLikelihood.Possible: + Debug.WriteLine("A fix is possible, but satellite signals are still mostly obscured."); + break; + case FixLikelihood.Likely: + Debug.WriteLine("A fix should occur within the next several seconds."); + break; + case FixLikelihood.Certain: + Debug.WriteLine("A fix will occur in a few seconds."); + break; + } + } + } + + + + + Indicates that a fix would probably be lost if a fix is acquired. + When this value is returned, nearly all of the available GPS satellite signals are being obscured by buildings, trees, or other solid objects. The device should be moved into a more open view of the sky. + + + + Indicates that a fix would probably be lost after a short period of time if a fix + is acquired. + + When this value is returned, a few satellite signals are available, but the combined signals are too weak to maintain a fix for long. The device should be moved into a more open view of the sky. + + + + Indicates that a fix would probably last for a longer period of time if a fix is + acquired. + + When this value is returned, at least three satellite signals are being received clearly. If conditions stay the same or improve, a fix is imminent. + + + + Indicates that a fix is very likely to be sustained given the current satellite + signal strengths. + + When this value is returned, several satellite signals are being received and are strong enough to maintain a fix. + + + + Indicates if the GPS device is automatically deciding between a 2-D and a 3-D + fix. + + This enumeration is used by the + class. A vast majority of GPS devices use a setting of Automatic because there is no + complicated math behind figuring out if a 2-D fix or 3-D fix is present. If there are + three satellites involved in a fix, only the latitude and longitude can be calculated, + so the fix is 2-D. If more than three involved, the fix is 3-D. + + + Typical value. The GPS device is automatically deciding between a two- and three-dimensional fix. + + + Rare value. The user must specify whether a two- or three-dimensional fix is to be used. + + + + The fix mode is not yet known. + + + + + Represents information about the method used to obtain a fix when a fix-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyFixMethodEvent As EventHandler + ' Create a FixMethod signifying a 3-D fix (both position and altitude) + Dim MyFixMethod As FixMethod = FixMethod.Fix3D + Sub Main() + ' Raise our custom event + RaiseEvent MyFixMethodEvent(Me, New FixMethodEventArgs(MyFixMethod)) + End Sub + + + // Declare a new event + EventHandler MyFixMethodEvent; + // Create a FixMethod signifying a 3-D fix (both position and altitude) + FixMethod MyFixMethod = FixMethod.Fix3D; + void Main() + { + // Raise our custom event + MyFixMethodEvent(this, New FixMethodEventArgs(MyFixMethod)); + } + + + This object is used primarily by the FixMethodChanged + event of the Receiver class to provide notification when + updated fix method information has been received from the GPS device. + + + + + + + + + Creates a new instance with the specified fix method. + + The fix method. + + + + Indicates if the GPS device has no fix, a 2-D fix, or a 3-D fix. + + A value from the FixMethod enumeration. + FixMethod Property (Receiver Class) + A device is considered to have a "2-D" fix if there are three satellites + involved in the fix. A 2-D fix means that position information is available, but not + altitude. If at least four satellites are fixed, both position and altitude are known, + and the fix is considered 3-D. + + + + Represents information about the likelihood that a fix will be sustained (or obtained) when a when a fix-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyFixLikelihoodEvent As FixLikelihoodEventHandler + ' Create a FixLikelihood signifying a 3-D fix (both position and altitude) + Dim MyFixLikelihood As FixLikelihood = FixLikelihood.Fix3D + Sub Main() + ' Raise our custom event + RaiseEvent MyFixLikelihoodEvent(Me, New FixLikelihoodEventArgs(MyFixLikelihood)) + End Sub + + + // Declare a new event + FixLikelihoodEventHandler MyFixLikelihoodEvent; + // Create a FixLikelihood signifying a 3-D fix (both position and altitude) + FixLikelihood MyFixLikelihood = FixLikelihood.Fix3D; + void Main() + { + // Raise our custom event + MyFixLikelihoodEvent(this, New FixLikelihoodEventArgs(MyFixLikelihood)); + } + + + This object is used primarily by the FixLikelihoodChanged + event of the Receiver class to provide notification when + combined satellite radio signal strength has changed. + + + + + + + + + Creates a new instance with the specified fix Likelihood. + + The fix likelihood. + + + + Indicates if the GPS device has no fix, a 2-D fix, or a 3-D fix. + + A value from the FixLikelihood enumeration. + A device is considered to have a "2-D" fix if there are three satellites + involved in the fix. A 2-D fix means that position information is available, but not + altitude. If at least four satellites are fixed, both position and altitude are known, + and the fix is considered 3-D. + + + + Represents information about whether the fix method is chosen automatically when a fix-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyFixModeEvent As EventHandler + ' Create a FixMode signifying that the fix method is being chosen automatically + Dim MyFixMode As FixMode = FixMode.Automatic + Sub Main() + ' Raise our custom event + RaiseEvent MyFixModeEvent(Me, New FixModeEventArgs(MyFixMode)) + End Sub + + + // Declare a new event + EventHandler MyFixModeEvent; + // Create a FixMode signifying that the fix method is being chosen automatically + FixMode MyFixMode = FixMode.Automatic; + void Main() + { + // Raise our custom event + MyFixModeEvent(this, New FixModeEventArgs(MyFixMode)); + } + + + This object is used primarily by the FixModeChanged + event of the Receiver class to provide notification when + the receiver switches fix modes from Automatic to Manual or vice-versa. + + + + + + + + + Creates a new instance with the specified fix method. + + The fix mode. + + + + Indicates if the GPS device is choosing the fix method automatically. + + A value from the FixMode enumeration. + FixMode Property (Receiver Class) + A vast majority of GPS devices calculate the fix mode automatically. This is because + the process of determining the fix mode is a simple process: if there are three fixed satellites, + a 2-D fix is obtained; if there are four or more fixed satellites, a 3-D fix is in progress. Any + less than three satellites means that no fix is possible. + + + + Represents information about the type of fix obtained when fix-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyFixQualityEvent As EventHandler + ' Create a FixQuality signifying that a differential GPS fix is obtained + Dim MyFixQuality As FixQuality = FixQuality.DifferentialGpsFix + Sub Main() + ' Raise our custom event + RaiseEvent MyFixQualityEvent(Me, New FixQualityEventArgs(MyFixQuality)) + End Sub + + + // Declare a new event + EventHandler MyFixQualityEvent; + // Create a FixQuality signifying that a differential GPS fix is obtained + FixQuality MyFixQuality = FixQuality.DifferentialGpsFix; + void Main() + { + // Raise our custom event + MyFixQualityEvent(this, New FixQualityEventArgs(MyFixQuality)); + } + + + This object is used primarily by the FixQualityChanged + event of the Receiver class to provide notification when + the receiver switches fix modes from Automatic to Manual or vice-versa. + + + + + + + + + Creates a new instance with the specified fix quality measurement. + + The fix quality. + + + + Indicates whether the current fix involves satellites and/or DGPS/WAAS ground stations. + + A value from the FixQuality enumeration. + + + + Kalman filter for improved positioning + + + + + + + + + + Initialise the filter from a specified Position + + The GPS position. + + + + Initialise the filter from a specified Position3D + + The GPS position. + + + + Filter the Position + + The GPS position. + + + + + Return filtered position from specified parameters + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The bearing. + The speed. + + + + + Return a filtered Position3d + + The GPS position. + + + + + Return a filtered Position3D from the specified parameters + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The bearing. + The speed. + + + + + The default Kalman filter + + + + + The obsedrved position + + + + + The filtered position + + + + + The observed location + + + + + The filtered location + + + + + Is the precision filter enabled + + + + + Gets the delay + + + + + $GPGGA, hhmmss.ss, ddmm.mmmm, n, dddmm.mmmm, e, q, ss, y.y, a.a, z, g.g, z, t.t, iii*CC + http://aprs.gids.nl/nmea/#gga + Global Positioning System Fix Data. Time, location and fix related data for a GPS receiver. + eg2. $--GGA, hhmmss.ss, llll.ll, a, yyyyy.yy, a, x, xx, x.x, x.x, M, x.x, M, x.x, xxxx + hhmmss.ss = UTC of location + llll.ll = latitude of location + a = N or S + yyyyy.yy = Longitude of location + a = E or W + x = GPS Quality indicator (0=no fix, 1=GPS fix, 2=Dif. GPS fix) + xx = number of satellites in use + x.x = horizontal dilution of precision + x.x = Antenna altitude above mean-sea-level + M = units of antenna altitude, meters + x.x = Geoidal separation + M = units of geoidal separation, meters + x.x = Age of Differential GPS data (seconds) + xxxx = Differential reference station ID + eg3. $GPGGA, hhmmss.ss, hhmm.mm, i, hhhmm.mm, i, f, ss, x.x, x.x, M, x.x, M, x.x, xxxx*hh + 0 = Time in UTC + 1 = Latitude + 2 = N or S + 3 = Longitude + 4 = E or W + 5 = GPS quality indicator (0=invalid; 1=GPS fix; 2=Diff. GPS fix) + 6 = Number of satellites in use [not those in view] + 7 = Horizontal dilution of precision + 8 = Antenna altitude above/below mean sea level (geoid) + 9 = Meters (Antenna height unit) + 10 = Geoidal separation (Diff. between WGS-84 earth ellipsoid and + mean sea level. -=geoid is below WGS-84 ellipsoid) + 11 = Meters (Units of geoidal separation) + 12 = Age in seconds since last update from diff. reference station + 13 = Diff. reference station ID# + 14 = Checksum + + + + + Represents a single line of NMEA GPS data. + + + + + Represents the culture used to process all NMEA GPS data, including numbers and dates. + + + + + Creates a new instance. + + + + + Creates a new instance from the specified string. + + + + + + Creates a new instance from known values. + + A String containing the entire text of the sentence. + A String, the first word of the sentence. + A String array, the comma-separated strings between the command word and checksum. + A String, the correct checksum for the sentence. + This constructor is typically used when it some processing of the sentence has already occurred. + GPS.NET performs an analysis of the sentence to determine its type. For the sake of speed, processed information can + be preserved using this constructor. To process an entire sentence, use the entire NMEA string as a constructor. + + + + Sets the sentence. + + The sentence. + + + + Called when [sentence changed]. + + + + + Calculates and adds a checksum to the end of the sentence. + + + + + Converts the packet into an array of bytes. + + + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns the body of the sentence split by commas into strings. + + + + + Returns the first word of the sentence which indicates its purpose. + + + + + Returns the current checksum of the sentence. + + + + + Returns the checksum which matches the content of the sentence. + + + + + Returns a string representing the entire NMEA sentence. + + + + + Returns whether the pack data is well-formed. + + + + + Represents an NMEA sentence which contains latitude and longitude values. + + + + + Represents an NMEA sentence which contains a position. + + + + + Represents an NMEA sentence which contains time in UTC. + + + + + Gets the time in UTC from the IUtcTimeSentence + + + + + Represents an NMEA sentence which contains + + + + + The Altitude + + + + + Represents an NMEA sentence which contains + + + + + The Geoidal Separation + + + + + Represents an NMEA sentence which contains differential GPS information. + + + + + Gets the Differential Gps Station ID + + + + + Gets the age of the Differential Gps + + + + + Represents an NMEA sentence which describes how the fix is being obtained. + + + + + The Fix Quality + + + + + Represents an NMEA sentence which contains + + + + + The Horizontal Dilution of Precision + + + + + Represents an NMEA sentence which returns the number of GPS satellites involved in the current fix. + + + + + The Fixed Satellite Count + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new GpggaSentence + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a new sentence + + The UTC time. + The position. + The fix quality. + The tracked satellite count. + The horizontal dilution of precision. + The altitude. + The geoidal separation. + The differential GPS age. + The differential GPS station ID. + + + + Called when [sentence changed]. + + + + + Represents an NMEA sentence which contains a position. + + + + + Gets the time in UTC from the IUtcTimeSentence + + + + + The Altitude + + + + + The Horizontal Dilution of Precision + + + + + The Geoidal Separation + + + + + The Fix Quality + + + + + The integer ID of the GPS Station + + + + + Differntial GPS Age + + + + + The Fixed Satellite Count + + + + + $--GGK Header including Talker ID + hhmmss.ss UTC time of location + mmddyy UTC date + llll.ll(Latitude) + a(Hemisphere, North Or South) + yyyyy.yy(Longitude) + a(East Or West) + x GPS quality indicator + 0 = Fix not available or invalid + 1 = No real-time location, navigation fix + 2 = Real-time location, ambiguities not fixed + 3 = Real-time location, ambiguities fixed + xx Number of satellites in use, 00 to 12. + x.x(GDOP) + EHT Ellipsoidal height + x.x Altitude of location marker as local ellipsoidal height. If the local ellipsoidal + height is not available, the WGS 1984 ellipsoidal height will be exported. + + + + + Represents an NMEA sentence which contains date and time in UTC. + + + + + Represents an NMEA sentence which contains date and time in UTC. + + + + + Represents an NMEA sentence which contains + + + + + The Position Dilution of Precision (PDOP) + + + + + Represents an NMEA sentence which contains + + + + + The Altitude Above Ellipsoid + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a GpggkSentence from the specified string + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Called when [sentence changed]. + + + + + Represents an NMEA sentence which contains a position. + + + + + The Fix Quality + + + + + The Position Dilution of Precision (PDOP) + + + + + The Altitude Above Ellipsoid + + + + + Represents an NMEA sentence which contains date and time in UTC. + + + + + $GPGLL + Geographic Position, Latitude / Longitude and time. + http://aprs.gids.nl/nmea/#gll + eg1. $GPGLL, 3751.65, S, 14507.36, E*77 + eg2. $GPGLL, 4916.45, N, 12311.12, W, 225444, A + 4916.46, N Latitude 49 deg. 16.45 min. North + 12311.12, W Longitude 123 deg. 11.12 min. West + 225444 Fix taken at 22:54:44 UTC + A Data valid + eg3. $GPGLL, 5133.81, N, 00042.25, W*75 + 1 2 3 4 5 + 1 5133.81 Current latitude + 2 N North/South + 3 00042.25 Current longitude + 4 W East/West + 5 *75 checksum + $--GLL, lll.ll, a, yyyyy.yy, a, hhmmss.ss, A + llll.ll = Latitude of location + a = N or S + yyyyy.yy = Longitude of location + a = E or W + hhmmss.ss = UTC of location + A = status: A = valid data + + + + + Represents an NMEA sentence which contains whether a fix is currently acquired. + + + + + The Fix Status + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a GpgllSentence from the specified string + + The sentence. + + + + Creates a GpgllSentence from the specified parameters + + The position. + The UTC time. + The fix status. + + + + Called when [sentence changed]. + + + + + Gets the time in UTC from the IUtcTimeSentence + + + + + Represents an NMEA sentence which contains a position. + + + + + The Fix Status + + + + + $GPGSA + GPS DOP and active satellites + eg1. $GPGSA, A, 3, ,, ,, ,16, 18, ,22, 24, ,, 3.6, 2.1, 2.2*3C + $GPGSA, A, 1, ,, ,, ,, ,, ,, ,, 6, 6, 6 + eg2. $GPGSA, A, 3, 19, 28, 14, 18, 27, 22, 31, 39, ,, ,, 1.7, 1.0, 1.3*35 + 1 = Method: + M=Manual, forced to operate in 2D or 3D + A=Automatic, 3D/2D + 2 = Mode: + 1=Fix not available + 2=2D + 3=3D + 3-14 = IDs of SVs used in position fix (null for unused fields) + 15 = PDOP + 16 = HDOP + 17 = VDOP + + + + + Represents an NMEA sentence which contains the method used to acquire a fix. + + + + + The Fix Method + + + + + Represents an NMEA sentence which describes the current fix. + + + + + Gets the fix mode + + + + + Represents an NMEA sentence which contains a list of fixed GPS satellites. + + + + + the list of FixedSatellites + + + + + Represents an NMEA sentence which contains + + + + + The Vertical Dilution of Precision + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a GpgsaSentence from the specified string + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a new GpgsaSentence + + The fix mode. + The fix method. + The satellites. + The position dilution of precision. + The horizontal dilution of precision. + The vertical dilution of precision. + + + + Called when [sentence changed]. + + + + + the list of FixedSatellites + + + + + The Fix Method + + + + + The Position Dilution of Precision (PDOP) + + + + + The Vertical Dilution of Precision + + + + + The Horizontal Dilution of Precision + + + + + Gets the fix mode + + + + + Represents a $GPGSV sentence describing the location and signal strength of GPS + satellites. + + This sentence is used to determine the location of GPS satellites relative + to the current location, as well as to indicate the strength of a satellite's radio + signal. + + + + Represents an NMEA sentence which contains GPS satellite information. + + + + + The Satellites + + + + + + + + + + + + + + + + + + + + + + + + + Creates a GPSV sentence instance from the specified string + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a GPSV sentence instance from the specified parameters describing the location and signal strength of GPS satellites + + The total message count. + The current message number. + The satellites in view. + The satellites. + + + + Called when [sentence changed]. + + + + + Returns a collection of $GPGSV sentences fully describing the specified + collection of satellites. + + The satellites. + + + + + Returns a collection of Satellite objects describing current + satellite information. + + + + + Returns the total number of $GPGSV sentence in a sequence. + + + + + Returns the current message index when the sentence is one of several + messages. + + + + + Returns the number of satellites whose signals are detected by the GPS + device. + + + + + Heading, True + + + + + Represents an NMEA sentence which contains the direction of heading. + + + + + the Heading + + + + + + + + + + Creates a heading sentence instance from the specified sentence + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Overrides OnSentanceChanged for the GPVTGSentence + + + + + the Heading + + + + + Represents the "recommended minimum" GPS sentence. + + + + + Represents an NMEA sentence which contains the direction of travel. + + + + + the Bearing + + + + + Represents an NMEA sentence which contains + + + + + The Speed + + + + + Represents an NMEA sentence which contains + + + + + The Magnetic Variation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a GprmcSentence from the specified string + + The sentence. + + + + Creates a GprmcSentence from the specified parameters + + The UTC date time. + if set to true [is fix acquired]. + The position. + The speed. + The bearing. + The magnetic variation. + + + + Called when [sentence changed]. + + + + + Represents an NMEA sentence which contains a position. + + + + + Represents an NMEA sentence which contains date and time in UTC. + + + + + the Bearing + + + + + The Speed + + + + + The Magnetic Variation + + + + + The Fix Status + + + + + Track made good and ground speed sentence + + + + + + + + + + + + + + + + + + + + Creates a track made good and ground speed sentence instance from the specified sentence + + The sentence. + + + + Initializes a new instance of the class. + + The sentence. + The command word. + The words. + The valid checksum. + + + + Overrides OnSentanceChanged for the GPVTGSentence + + + + + the Bearing + + + + + The Speed + + + + + The Magnetic Variation + + + + + Represents a base class for designing a GPS data interpreter. + + OnReadPacket Method + This class serves as the base class for all GPS data interpreters, regardless + of the protocol being used. For example, the NmeaInterpreter class + inherits from this class to process NMEA-0183 data from any data source. This class + provides basic functionality to start, pause, resume and stop the processing of GPS + data, and provides management of a thread used to process the next set of incoming + data. + Inheritors should override the OnReadPacket event and + provide functionality to read the next packet of data from the underlying stream. + All raw GPS data must be provided in the form of a Stream object, + and the method should read and process only a single packet of data. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a synchronization object which is locked during state changes. + + An Object. + + + + Represents a synchronization object which is locked during state changes to recording. + + + + + Occurs immediately before a connection is attempted. + + + + + Occurs immediately before data is processed. + + + + + Occurs immediately before the interpreter is shut down. + + + + + Occurs immediately after the interpreter has been shut down. + + + + + Occurs when a connection to a GPS device is suddenly lost. + + An Exception which further explains why the connection was lost. + + + + Occurs when the interpreter has temporarily stopped processing data. + + + + + Occurs when the interpreter is no longer paused. + + + + + Occurs when an exception is trapped by the interpreter's thread. + + The ex. + + + + Starts processing GPS data using any available GPS device. + + This method is used to begin processing GPS data. If no GPS devices are known, GPS.NET will search for GPS devices and use the + first device it finds. If no device can be found, an exception is raised. + + + + Starts processing GPS data from the specified stream. + + A device object providing GPS data to process. + This method will start the Interpreter using a separate thread. + The OnReadPacket is then called repeatedly from that thread to process + incoming data. The Pause, Resume and Stop methods are typically called after this + method to change the interpreter's behavior. Finally, a call to + Dispose will close the underlying stream, stop all processing, and + shut down the processing thread. + + + + Begins recording all received data to the specified stream. + + The output. + + + + Causes the interpreter to no longer record incoming GPS data. + + + + + Stops all processing of GPS data. + + This method is used some time after a call to the Start method. + When called, the GPS processing thread is immediately shut down and all processing + stops. + + + + Temporarily halts processing of GPS data. + + This method will suspend the processing of GPS data, but will keep the thread and + raw GPS data stream open. This method is intended as a temporary means of stopping + processing. An interpreter should not be paused for an extended period of time because + it can cause a backlog of GPS data + + + + Un-pauses the interpreter from a previously paused state. + + + + + Resets the interpreter to it's default values. + + + + + Does the initialize. + + + + + Updates the UTC and local date/time to the specified UTC value. + + The value. + + + + Updates the fix quality to the specified value. + + The value. + + + + Updates the fix mode to the specified value. + + The value. + + + + Updates the fix method to the specified value. + + The value. + + + + Updates the precision as it relates to latitude and longitude. + + The value. + + + + Updates the precision as it relates to altitude. + + The value. + + + + Updates the precision as it relates to latitude, longitude and altitude. + + The value. + + + + Updates the fix status to the specified value. + + The value. + + + + Updates the difference between Magnetic North and True North. + + The value. + + + + Updates the current location on Earth's surface. + + The value. + + + + Updates the current direction of travel. + + The value. + + + + Updates the current direction of heading. + + The value. + + + + Updates the list of known GPS satellites. + + The value. + + + + Sets the fixed satellite count. + + The value. + + + + Updates the list of fixed GPS satellites. + + The value. + + + + Updates the current rate of travel. + + The value. + + + + Updates the distance between the ellipsoid surface and the current altitude. + + The value. + + + + Updates the current distance above sea level. + + The value. + + + + Updates the current distance above the ellipsoid surface. + + The value. + + + + Occurs when new data should be read from the underlying device. + + + + + Occurs when the interpreter is using a different device for raw data. + + + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Parsings the thread proc. + + + + + Forces the current device to a closed state without disposing the underlying stream. + + + + + Determines if automatic reconnection is currently allowed, based on the values of + , , and . + If reconnection is allowed, then is incremented after a short delay. + + True if another reconnection attempt should be made; otherwise, . + + + + Occurs when the current distance above sea level has changed. + + + + + Occurs when a new altitude report has been received, even if the value has not changed. + + + + + Occurs when the current distance above the ellipsoid has changed. + + + + + Occurs when a new altitude-above-ellipsoid report has been received, even if the value has not changed. + + + + + Occurs when the current direction of travel has changed. + + + + + Occurs when the current direction of heading has changed. + + + + + Occurs when a new bearing report has been received, even if the value has not changed. + + + + + Occurs when a new heading report has been received, even if the value has not changed. + + + + + Occurs when the fix quality has changed. + + + + + Occurs when the fix mode has changed. + + + + + Occurs when the fix method has changed. + + + + + Occurs when the geodal separation changes + + + + + Occurs when the GPS-derived date and time has changed. + + + + + Occurs when the GPS-derived local time has changed. + + + + + Occurs when at least three GPS satellite signals are available to calculate the current location. + + + + + Occurs when less than three GPS satellite signals are available. + + + + + Occurs when the current location on Earth has changed. + + + + + Occurs when a new position report has been received, even if the value has not changed. + + + + + Occurs when the magnetic variation for the current location becomes known. + + + + + Occurs when the current rate of travel has changed. + + + + + Occurs when a new speed report has been received, even if the value has not changed. + + + + + Occurs when precision as it relates to latitude and longitude has changed. + + + + + Occurs when precision as it relates to altitude has changed. + + + + + Occurs when precision as it relates to latitude, longitude and altitude has changed. + + + + + Occurs when GPS satellite information has changed. + + + + + Occurs when the interpreter is about to start. + + + + + Occurs when the interpreter is now processing GPS data. + + + + + Occurs when the interpreter is about to stop. + + + + + Occurs when the interpreter has stopped processing GPS data. + + + + + Occurs when the interpreter has temporarily stopped processing GPS data. + + + + + Occurs when the interpreter is no longer paused. + + + + + Occurs when an exception has happened during processing. + + + + + Occurs when the flow of GPS data has been suddenly interrupted. + + + + + Controls the amount of time to wait for the next packet of GPS data to arrive. + + The read timeout. + + + + Controls the amount of time allowed to perform a start, stop, pause or resume action. + + The command timeout. + The Interpreter class is multithreaded and is also thread-safe. Still, however, in some rare cases, + two threads may attempt to change the state of the interpreter at the same time. Critical sections will allow both threads to + succees whenever possible, but in the event of a deadlock, this property control how much time to allow before giving up. + + + + Returns the device providing raw GPS data to the interpreter. + + + + + Controls the priority of the thread which processes GPS data. + + The thread priority. + + + + Returns the GPS-derived date and time, adjusted to the local time zone. + + + + + Returns the GPS-derived date and time in UTC (GMT-0). + + + + + Returns the current estimated precision as it relates to latitude and longitude. + + Horizontal Dilution of Precision (HDOP) is the accumulated + error of latitude and longitude coordinates in X and Y directions + (displacement on the surface of the ellipsoid). + + + + Returns the current estimated precision as it relates to altitude. + + Vertical Dilution of Precision (VDOP) is the accumulated + error of latitude and longitude coordinates in the Z direction (measurement + from the center of the ellipsoid). + + + + Returns the kind of fix acquired by the GPS device. + + + + + Returns the number of satellites being used to calculate the current location. + + + + + Returns the quality of the fix and what kinds of technologies are involved. + + + + + Controls whether GPS data is ignored until a fix is acquired. + + true if this instance is fix required; otherwise, false. + + + + Returns whether a fix is currently acquired by the GPS device. + + + + + Returns the difference between magnetic North and True North. + + + + + Returns the current location on Earth's surface. + + + + + Gets a value indicating whether this instance is running. + + + true if this instance is running; otherwise, false. + + + + + Returns the avereage precision tolerance based on the fix quality reported + by the device. + + This property returns the estimated error attributed to the device. To get + a total error estimation, add the Horizontal or the Mean DOP to the + FixPrecisionEstimate. + + + + Returns the current rate of travel. + + + + + Returns the current distance above sea level. + + + + + Gets the current direction of travel as an Azimuth + + + + + Controls the largest amount of precision error allowed before GPS data is ignored. + + The maximum horizontal dilution of precision. + This property is important for commercial GPS softwaqre development because it helps the interpreter determine + when GPS data reports are precise enough to utilize. Live GPS data can be inaccurate by up to a factor of fifty, or nearly + the size of an American football field! As a result, setting a vlue for this property can help to reduce precision errors. + When set, reports of latitude, longitude, speed, and bearing are ignored if precision is not at or below the set value. + For more on Dilution of Precision and how to determine your precision needs, please refer to our online article here: + http://dotspatial.codeplex.com/Articles/WritingApps2_1.aspx. + + + + Controls the maximum number of consecutive reconnection retries allowed. + + The maximum reconnection attempts. + + + + Controls the largest amount of precision error allowed before GPS data is ignored. + + The maximum vertical dilution of precision. + This property is important for commercial GPS softwaqre development because it helps the interpreter determine + when GPS data reports are precise enough to utilize. Live GPS data can be inaccurate by up to a factor of fifty, or nearly + the size of an American football field! As a result, setting a vlue for this property can help to reduce precision errors. + When set, reports of altitude are ignored if precision is not at or below the set value. + For more on Dilution of Precision and how to determine your precision needs, please refer to our online article here: + http://dotspatial.codeplex.com/Articles/WritingApps2_1.aspx. + + + + Controls whether real-time GPS data is made more precise using a filter. + + true if this instance is filter enabled; otherwise, false. + + + + Controls the technology used to reduce GPS precision error. + + The filter. + + + + Controls whether the interpreter will try to automatically attempt to reconnect anytime a connection is lost. + + true if [allow automatic reconnection]; otherwise, false. + Interpreters are able to automatically try to recover from connection failures. When this property is set to True, + the interpreter will detect a sudden loss of connection, then attempt to make a new connection to restore the flow of data. If multiple GPS + devices have been detected, any of them may be utilized as a "fail-over device." Recovery attempts will continue repeatedly until a connection + is restored, the interpreter is stopped, or the interpreter is disposed. + For most applications, this property should be enabled to help improve the stability of the application. In most cases, a sudden loss of + data is only temporary, caused by a loss of battery power or when a wireless device moves too far out of range. + + + + Returns a list of known GPS satellites. + + + + + Returns whether resources in this object has been shut down. + + + + + Returns the stream used to output data received from the GPS device. + + + + + Represents the state of a KalmanFilter + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the struct. + + The GPS position. + The device error. + The mean DOP. + The ellipsoid. + + + + Initializes a new instance of the struct. + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The ellipsoid. + + + + Initializes a new instance of the struct. + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The ellipsoid. + The u. + The x. + The z. + A. + The b. + The h. + The p. + The q. + The r. + + + + The position reported by the GPS device + + + + + + The corrected position + + + + + + Initializes the state to the supplied observation. + + The z. + + + + Updates the state. + + The current DOP. + The z. + + + + Updates the state. + + The device error. + The horizontal DOP. + The vertical DOP. + The bearing. + The speed. + The z. + + + + Gets the delay. + + + + + Gets the current error. + + + + + Gets the state of the error. + + + + + Gets the device error. + + + + + Gets the horizontal dilution of precision. + + + + + Gets the vertical dilution of precision. + + + + + Determines if the Kalman state has an initial observation + + + + + Returns the number of intervals that have been applied to the Kalman state + + The number of intervals is the number of observations accumulated in the state + interval. The greater the number of observations, the more precise the filter + becomes. + + + + A class that employs a Kalman Filter algorithm to reduce error in GPS + precision. + + + + + + + + + + Kalman Filter + + + + + Kalman Filter with parameters + + The initial observation. + The device error. + The horizontal DOP. + The vertical DOP. + The ellipsoid. + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + The results of a Kalman filter are cumulative. Each + position processed changes the state of the filter, thus making + the results more accurate with each subsequent position. + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + Distance of the error + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + The mean dilution of precision + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + Distance of the error + The mean dilution of precision + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + Distance of the error + The mean dilution of precision + The ellipsoid + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + Distance of the error + The horizontal dilution of precision + The vertical dilution of precision + The ellipsoid + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + The results of a Kalman filter are cumulative. Each + position processed changes the state of the filter, thus making + the results more accurate with each subsequent position. + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + A distance measure of device error + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + The mean dilution of precision + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + A distance measure of device error + The mean dilution of precision + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + A distance measure of device error + The mean dilution of precision + The ellipsoid + + + + Initializes the Kalman Filter using an initial observation (position) + + The position at which tfilter is to begin opperating. + A distance measure of device error + The horizontal dilution of precision + The vertical dilution of precision + The ellipsoid + + + + Filter the Position + + The GPS position. + + + + + + Returns the position + + The gps Position + The current dilution of precision + A Position sturcture + + + + Returns the position + + The gps Position + The current dilution of precision + the directional azimuth + the magnitude of the velocity + A Position sturcture + + + + Return filtered position from specified parameters + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The bearing. + The speed. + + + + + + Returns the 3D position + + The gps Position + A Position3D sturcture + + + + Returns the 3D position + + The gps Position + The current dilution of precision + A Position3D sturcture + + + + Returns the 3D position + + The gps Position + The current dilution of precision + the directional azimuth + the magnitude of the velocity + A Position3D sturcture + + + + Return a filtered Position3D from the specified parameters + + The GPS position. + The device error. + The horizontal DOP. + The vertical DOP. + The bearing. + The speed. + + + + + The filtered location + + + + + The observed location + + + + + Represents the latency between the current obervation and the filter state + + + + + Returns a value indicationg whether or not the filter has been initialized. + + + + + Returns the DilutionOfPrecision used in the most recent + Kalman filter calculation. + + + + + Returns the device error margin used in the most recent + Kalman filter calculation. + + + + + Retrns the of position samples that have been evaluated by + the current Kalman state. + + The results of a Kalman filter are cumulative. Each + position processed changes the state of the filter, thus making + the results more accurate with each subsequent position. + + + + Returns the accumulated average error accounted for the Kalman system. + + The results of a Kalman filter are cumulative. Each + position processed changes the state of the filter, thus making + the results more accurate with each subsequent position. + + + + Returns the current precision estimate for the Kalman state + + The results of a Kalman filter are cumulative. Each + position processed changes the state of the filter, thus making + the results more accurate with each subsequent position. + + + + An internal class for hosting windows members. + + + + + + + + + + Device Connected + + + + + Device Remembered + + + + + Device Authenticated + + + + + The namespace of Bluetooth, used by the WSAQUERYSET structure + + + + + The error code for success + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Closes an open object handle. + + A valid handle to an open object. + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + + Sends a control code directly to a specified device driver, causing the corresponding device to perform the corresponding operation. + + A handle to the device on which the operation is to be performed. The device is typically a volume, + directory, file, or stream. To retrieve a device handle, use the CreateFile function. For more information, see Remarks. + The control code for the operation. This value identifies the specific operation to be + performed and the type of device on which to perform it. For a list of the control codes, see Remarks. + The documentation for each control code provides usage details for the lpInBuffer, nInBufferSize, lpOutBuffer, + and nOutBufferSize parameters. + A pointer to the input buffer that contains the data required to perform the operation. The format of this data depends on the value of the dwIoControlCode parameter. + This parameter can be NULL if dwIoControlCode specifies an operation that does not require input data. + The size of the input buffer, in bytes. + A pointer to the output buffer that is to receive the data returned by the operation. The format of this data + depends on the value of the dwIoControlCode parameter. + This parameter can be NULL if dwIoControlCode specifies an operation that does not return data. + The size of the output buffer, in bytes. + The number of bytes returned in the out buffer. + A pointer to a callback for async commands. + If the operation completes successfully, the return value is nonzero. + If the operation fails or is pending, the return value is zero. To get extended error information, call GetLastError. + + + + Creates or opens a file or I/O device. The most commonly used I/O devices are as follows: file, file stream, + directory, physical disk, volume, console buffer, tape drive, communications resource, mailslot, and pipe. + The function returns a handle that can be used to access the file or device for various types of I/O depending + on the file or device and the flags and attributes specified. + To perform this operation as a transacted operation, which results in a handle that can be used for transacted + I/O, use the CreateFileTransacted function. + + The name of the file or device to be created or opened. + The requested access to the file or device, which can be summarized as read, write, both or neither zero). + The requested sharing mode of the file or device, which can be read, write, both, + delete, all of these, or none (refer to the following table). Access requests to attributes or extended + attributes are not affected by this flag. + A pointer to a SECURITY_ATTRIBUTES structure that contains two separate but related data members: + an optional security descriptor, and a Boolean value that determines whether the returned handle can be + inherited by child processes. + An action to take on a file or device that exists or does not exist. + The file or device attributes and flags, FILE_ATTRIBUTE_NORMAL being the most common default value for files. + A valid handle to a template file with the GENERIC_READ access right. The template file supplies file attributes and extended attributes for the file that is being created. + A handle to the device. + + + + Reads data from the specified file or input/output (I/O) device. Reads occur at the position + specified by the file pointer if supported by the device. + + A handle to the device (for example, a file, file stream, physical disk, volume, console buffer, + tape drive, socket, communications resource, mailslot, or pipe). + A pointer to the buffer that receives the data read from a file or device. + The maximum number of bytes to be read. + A pointer to the variable that receives the number of bytes read when using + a synchronous hFile parameter. ReadFile sets this value to zero before doing any work or error checking. + Use NULL for this parameter if this is an asynchronous operation to avoid potentially erroneous results. + A pointer to an OVERLAPPED structure is required if the hFile parameter was opened + with FILE_FLAG_OVERLAPPED, otherwise it can be NULL. + If the function succeeds, the return value is nonzero (TRUE). + + + + Writes data to the specified file or input/output (I/O) device. + This function is designed for both synchronous and asynchronous operation. For a similar function + designed solely for asynchronous operation, see WriteFileEx. + + A handle to the file or I/O device (for example, a file, file stream, physical disk, volume, + console buffer, tape drive, socket, communications resource, mailslot, or pipe). + A pointer to the buffer containing the data to be written to the file or device. + The number of bytes to be written to the file or device. + A pointer to the variable that receives the number of bytes written when using + a synchronous hFile parameter. WriteFile sets this value to zero before doing any work or error checking. + Use NULL for this parameter if this is an asynchronous operation to avoid potentially erroneous results. + A pointer to an OVERLAPPED structure is required if the hFile parameter was opened + with FILE_FLAG_OVERLAPPED, otherwise this parameter can be NULL. + If the function succeeds, the return value is nonzero (TRUE). + + + + Sets the current local time and date. + + A pointer to a SYSTEMTIME structure that contains the new local date and time. + If the function succeeds, the return value is nonzero. + + + + Sets the current system time and date. The system time is expressed in Coordinated Universal Time (UTC). + + A pointer to a SYSTEMTIME structure that contains the new system date and time. + If the function succeeds, the return value is nonzero. + + + + The SetupDiClassGuidsFromName function retrieves the GUID(s) associated with the specified class name. + This list is built based on the classes currently installed on the system. + + Supplies the name of the class for which to retrieve the class GUID. + Supplies a pointer to an array to receive the list of GUIDs associated with the specified class name. + Supplies the number of GUIDs in the ClassGuidList array. + Supplies a pointer to a variable that receives the number of GUIDs associated with the class name. + If this number is greater than the size of the ClassGuidList buffer, the number indicates how large + the array must be in order to store all the GUIDs. + The function returns TRUE if it is successful. Otherwise, it returns FALSE and the logged + error can be retrieved with a call to GetLastError. + + + + The CM_Get_Parent function obtains a device instance handle to the parent node of a + specified device node (devnode) in the local machine's device tree. + + Caller-supplied pointer to the device instance handle to the + parent node that this function retrieves. The retrieved handle is bound to the local machine. + Caller-supplied device instance handle that is bound to the local machine. + Not used, must be zero. + If the operation succeeds, the function returns CR_SUCCESS. Otherwise, it returns one of the + CR_-prefixed error codes defined in Cfgmgr32.h. + For information about using a device instance handle that is bound to the local machine, see CM_Get_Child. + + + + The CM_Get_Device_ID function retrieves the device instance ID for a specified device instance on the local machine. + + Caller-supplied device instance handle that is bound to the local machine. + Address of a buffer to receive a device instance ID string. The required buffer size + can be obtained by calling CM_Get_Device_ID_Size, then incrementing the received value to allow room for + the string's terminating NULL. + Caller-supplied length, in characters, of the buffer specified by Buffer. + Not used, must be zero. + If the operation succeeds, the function returns CR_SUCCESS. Otherwise, it returns one of the CR_-prefixed error codes defined in Cfgmgr32.h. + The function appends a NULL terminator to the supplied device instance ID string, unless the buffer is too + small to hold the string. In this case, the function supplies as much of the identifier string as will fit + into the buffer, and then returns CR_BUFFER_SMALL. + For information about device instance IDs, see Device Identification Strings. + For information about using device instance handles that are bound to the local machine, see CM_Get_Child. + + + + The SetupDiDestroyDeviceInfoList function deletes a device information set and frees all associated memory. + + A handle to the device information set to delete. + The function returns TRUE if it is successful. Otherwise, it returns FALSE and the + logged error can be retrieved with a call to GetLastError. + + + + The SetupDiGetClassDevs function returns a handle to a device information set that contains requested + device information elements for a local computer. + + A pointer to the GUID for a device setup class or a device interface class. + This pointer is optional and can be NULL. For more information about how to set ClassGuid, see the + following Remarks section. + A pointer to a NULL-terminated string that specifies: + * An identifier (ID) of a Plug and Play (PnP) enumerator. This ID can either be the value's globally + unique identifier (GUID) or symbolic name. For example, "PCI" can be used to specify the PCI PnP value. + Other examples of symbolic names for PnP values include "USB," "PCMCIA," and "SCSI". + * A PnP device instance ID. When specifying a PnP device instance ID, DIGCF_DEVICEINTERFACE must be set + in the Flags parameter. + This pointer is optional and can be NULL. If an enumeration value is not used to select devices, + set Enumerator to NULL + For more information about how to set the Enumerator value, see the following Remarks section. + A handle to the top-level window to be used for a user interface that is + associated with installing a device instance in the device information set. This handle is optional + and can be NULL. + A variable of type DWORD that specifies control options that filter the device information + elements that are added to the device information set. This parameter can be a bitwise OR of zero + or more of the following flags. For more information about combining these flags, see the following + Remarks section. + DIGCF_ALLCLASSES + Return a list of installed devices for all device setup classes or all device interface classes. + DIGCF_DEVICEINTERFACE + Return devices that support device interfaces for the specified device interface classes. + This flag must be set in the Flags parameter if the Enumerator parameter specifies a device instance ID. + DIGCF_DEFAULT + Return only the device that is associated with the system default device interface, if one is set, + for the specified device interface classes. + DIGCF_PRESENT + Return only devices that are currently present in a system. + DIGCF_PROFILE + Return only devices that are a part of the current hardware profile. + If the operation succeeds, SetupDiGetClassDevs returns a handle to a device information set that contains + all installed devices that matched the supplied parameters. If the operation fails, the function returns + INVALID_HANDLE_VALUE. To get extended error information, call GetLastError. + + + + The SetupDiEnumDeviceInfo function returns a SP_DEVINFO_DATA structure that specifies a device + information element in a device information set. + + A handle to the device information set for which to return an SP_DEVINFO_DATA + structure that represents a device information element. + A zero-based index of the device information element to retrieve. + A pointer to an SP_DEVINFO_DATA structure to receive information about an enumerated device information + element. The caller must set DeviceInfoData.cbSize to sizeof(SP_DEVINFO_DATA). + The function returns TRUE if it is successful. Otherwise, it returns FALSE and the logged error + can be retrieved with a call to GetLastError. + Repeated calls to this function return a device information element for a different device. This function + can be called repeatedly to get information about all devices in the device information set. + To enumerate device information elements, an installer should initially call SetupDiEnumDeviceInfo with + the MemberIndex parameter set to 0. The installer should then increment MemberIndex and call + SetupDiEnumDeviceInfo until there are no more values (the function fails and a call to GetLastError + returns ERROR_NO_MORE_ITEMS). + Call SetupDiEnumDeviceInterfaces to get a context structure for a device interface element (versus a device information element). + + + + The SetupDiEnumDeviceInterfaces function enumerates the device interfaces that are contained in a device information set. + + A pointer to a device information set that contains the device interfaces for which to return information. + This handle is typically returned by SetupDiGetClassDevs. + A pointer to an SP_DEVINFO_DATA structure that specifies a device information element in DeviceInfoSet. + This parameter is optional and can be NULL. If this parameter is specified, SetupDiEnumDeviceInterfaces + constrains the enumeration to the interfaces that are supported by the specified device. If this parameter + is NULL, repeated calls to SetupDiEnumDeviceInterfaces return information about the interfaces that are + associated with all the device information elements in DeviceInfoSet. This pointer is typically returned + by SetupDiEnumDeviceInfo. + A pointer to a GUID that specifies the device interface class for the requested interface. + A zero-based index into the list of interfaces in the device information set. The caller should call + this function first with MemberIndex set to zero to obtain the first interface. Then, repeatedly increment + MemberIndex and retrieve an interface until this function fails and GetLastError returns ERROR_NO_MORE_ITEMS. + If DeviceInfoData specifies a particular device, the MemberIndex is relative to only the interfaces exposed + by that device. + A pointer to a caller-allocated buffer that contains, on successful return, a completed SP_DEVICE_INTERFACE_DATA + structure that identifies an interface that meets the search parameters. The caller must set DeviceInterfaceData.cbSize + to sizeof(SP_DEVICE_INTERFACE_DATA) before calling this function. + SetupDiEnumDeviceInterfaces returns TRUE if the function completed without error. If the function completed + with an error, FALSE is returned and the error code for the failure can be retrieved by calling GetLastError. + Repeated calls to this function return an SP_DEVICE_INTERFACE_DATA structure for a different device interface. + This function can be called repeatedly to get information about interfaces in a device information set that + are associated with a particular device information element or that are associated with all device information + elements. + DeviceInterfaceData points to a structure that identifies a requested device interface. To get detailed + information about an interface, call SetupDiGetDeviceInterfaceDetail. The detailed information includes + the name of the device interface that can be passed to a Win32 function such as CreateFile + (described in Microsoft Windows SDK documentation) to get a handle to the interface. + + + + The SetupDiGetDeviceInterfaceDetail function returns details about a device interface. + + A pointer to the device information set that contains the interface + for which to retrieve details. This handle is typically returned by SetupDiGetClassDevs. + A pointer to an SP_DEVICE_INTERFACE_DATA structure that specifies + the interface in DeviceInfoSet for which to retrieve details. A pointer of this type is typically + returned by SetupDiEnumDeviceInterfaces. + A pointer to an SP_DEVICE_INTERFACE_DETAIL_DATA structure to receive information about the specified + interface. This parameter is optional and can be NULL. This parameter must be NULL if + DeviceInterfaceDetailSize is zero. If this parameter is specified, the caller must set + DeviceInterfaceDetailData.cbSize to sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA) before calling this function. + The cbSize member always contains the size of the fixed part of the data structure, not a size reflecting + the variable-length string at the end. + The size of the DeviceInterfaceDetailData buffer. The buffer must be at least + (offsetof(SP_DEVICE_INTERFACE_DETAIL_DATA, DevicePath) + sizeof(TCHAR)) bytes, to contain the fixed part + of the structure and a single NULL to terminate an empty MULTI_SZ string. + This parameter must be zero if DeviceInterfaceDetailData is NULL. + A pointer to a variable of type DWORD that receives the required size of the DeviceInterfaceDetailData buffer. + This size includes the size of the fixed part of the structure plus the number of bytes required for the + variable-length device path string. This parameter is optional and can be NULL. + A pointer to a buffer that receives information about the device that supports the requested interface. + The caller must set DeviceInfoData.cbSize to sizeof(SP_DEVINFO_DATA). This parameter is optional and can + be NULL. + SetupDiGetDeviceInterfaceDetail returns TRUE if the function completed without error. If the function + completed with an error, FALSE is returned and the error code for the failure can be retrieved by calling + GetLastError. + + + + The BluetoothGetDeviceInfo function retrieves information about a remote Bluetooth device. + The Bluetooth device must have been previously identified through a successful device inquiry function call. + + A handle to a local radio, obtained from a call to the BluetoothFindFirstRadio or similar functions, + or from a call to the SetupDiEnumerateDeviceInterfaces function. + A pointer to a BLUETOOTH_DEVICE_INFO structure into which data about the first Bluetooth device will be placed. + For more information, see Remarks. + Returns ERROR_SUCCESS upon success, indicating that data about the remote Bluetooth device was retrieved. + Returns error codes upon failure. The following table lists common error codes associated with the + BluetoothGetDeviceInfo function. + + + + The BluetoothGetRadioInfo function obtains information about a Bluetooth radio. + + A handle to a local Bluetooth radio, obtained by calling the + BluetoothFindFirstRadio or similar functions, or the SetupDiEnumerateDeviceInterfances function. + A pointer to a BLUETOOTH_RADIO_INFO structure into which information about the radio + will be placed. The dwSize member of the BLUETOOTH_RADIO_INFO structure must match the size of the structure. + The following table lists common return values. + ERROR_SUCCESS - The radio information was retrieved successfully. + ERROR_INVALID_PARAMETER - The hRadio or pRadioInfo parameter is NULL. + ERROR_REVISION_MISMATCH - The dwSize member of the BLUETOOTH_RADIO_INFO structure pointed to by pRadioInfo is not valid. + + + + The BluetoothFindFirstRadio function begins the enumeration of local Bluetooth radios. + + Pointer to a BLUETOOTH_FIND_RADIO_PARAMS structure. The dwSize member of the BLUETOOTH_FIND_RADIO_PARAMS + structure pointed to by pbtfrp must match the size of the structure. See Return Values for additional + information about this parameter. + Pointer to where the first enumerated radio handle will be returned. When no longer needed, this handle + must be closed via CloseHandle. + In addition to the handle indicated by phRadio, calling this function will also create a + HBLUETOOTH_RADIO_FIND handle for use with the BluetoothFindNextRadio function. When this handle + is no longer needed, it must be closed via the BluetoothFindRadioClose. + + + + The BluetoothFindRadioClose function closes the enumeration handle associated with finding Bluetooth radios. + + Enumeration handle to close, obtained with a previous call to the BluetoothFindFirstRadio function. + Returns TRUE when the handle is successfully closed. Returns FALSE if the attempt fails to close the + enumeration handle. For additional information on possible errors associated with closing the handle, + call the GetLastError function. + + + + The BluetoothIsConnectable function determines whether a Bluetooth radio or radios is connectable. + + Valid local radio handle, or NULL. If NULL, all local radios are checked for + connectability; if any radio is connectable, the function call succeeds. + Returns TRUE if at least one Bluetooth radio is accepting incoming connections. + Returns FALSE if no radios are accepting incoming connections. + If multiple Bluetooth radios exist, the first radio to return that it is connectable causes the + BluetoothIsConnectable function to succeed. + + + + The BluetoothIsDiscoverable function determines whether a Bluetooth radio or radios is discoverable. + + Valid local radio handle, or NULL. If NULL, discovery is determined for all local radios; + if any radio is discoverable, the function call succeeds. + Returns TRUE if at least one Bluetooth radio is discoverable. Returns FALSE if no Bluetooth radios are discoverable. + + + + The BluetoothEnableDiscovery function changes the discovery state of a local Bluetooth radio or radios. + + Valid local radio handle, or NULL. If NULL, discovery is modified on all local radios; + if any radio is modified by the call, the function call succeeds. + Flag specifying whether discovery is to be enabled or disabled. Set to TRUE to enable discovery, + set to FALSE to disable discovery. + Returns TRUE if the discovery state was successfully changed. If hRadio is NULL, a return value of + TRUE indicates that at least one local radio state was successfully changed. Returns FALSE if discovery + state was not changed; if hRadio was NULL, no radio accepted the state change. + Use the BluetoothIsDiscoverable function to determine the current state of a Bluetooth radio. Windows ensures that a discoverable system is connectable, and as such, the radio must allow incoming connections prior to making a radio discoverable. Failure to allow incoming connections results in the BluetoothEnableDiscovery function call failing. + When BluetoothEnableDiscovery changes the discovery state, the new state is valid for the lifetime of the + calling application. Additionally, if a Bluetooth radio previously made discoverable with this function + is disabled and re-enabled via the application, discoverability will not persist. Once the calling application + terminates, the discovery state of the specified Bluetooth radio reverts to the state it was in before + BluetoothEnableDiscovery was called. + + + + The BluetoothEnableIncomingConnections function modifies whether a local Bluetooth radio accepts incoming connections. + + Valid local radio handle for which to change whether incoming connections are enabled, or NULL. If NULL, + the attempt to modify incoming connection acceptance iterates through all local radios; if any radio is + modified by the call, the function call succeeds. + Flag specifying whether incoming connection acceptance is to be enabled or disabled. Set to TRUE to + enable incoming connections, set to FALSE to disable incoming connections. + Returns TRUE if the incoming connection state was successfully changed. If hRadio is NULL, a return + value of TRUE indicates that at least one local radio state was successfully changed. Returns FALSE + if incoming connection state was not changed; if hRadio was NULL, no radio accepted the state change. + A radio that is non-connectable is non-discoverable. The radio must be made non-discoverable prior + to making a radio non-connectable. Failure to make a radio non-discoverable prior to making it + non-connectable will result in failure of the BluetoothEnableIncomingConnections function call. + + + + The WSAStartup function initiates use of the Winsock DLL by a process. + + The highest version of Windows Sockets specification that the caller can use. + The high-order byte specifies the minor version number; the low-order byte specifies the major version number. + A pointer to the WSADATA data structure that is to receive details of the Windows Sockets implementation. + If successful, the WSAStartup function returns zero. Otherwise, it returns one of the error codes listed below. + WSASYSNOTREADY - The underlying network subsystem is not ready for network communication. + WSAVERNOTSUPPORTED - The version of Windows Sockets support requested is not provided by this particular Windows Sockets implementation. + WSAEINPROGRESS - A blocking Windows Sockets 1.1 operation is in progress. + WSAEPROCLIM - A limit on the number of tasks supported by the Windows Sockets implementation has been reached. + WSAEFAULT - The lpWSAData parameter is not a valid pointer. + + + + The WSACleanup function terminates use of the Winsock 2 DLL (Ws2_32.dll). + + The return value is zero if the operation was successful. + Otherwise, the value SOCKET_ERROR is returned, and a specific error number + can be retrieved by calling WSAGetLastError. + + + + The WSALookupServiceBegin function initiates a client query that is constrained by the + information contained within a WSAQUERYSET structure. WSALookupServiceBegin only returns a + handle, which should be used by subsequent calls to WSALookupServiceNext to get the actual results. + + Pointer to the search criteria. See the following for details. + Flag that controls the depth of the search. + Handle to be used when calling WSALookupServiceNext in order to start retrieving the results set. + The return value is zero if the operation was successful. Otherwise, the value SOCKET_ERROR is returned, + and a specific error number can be retrieved by calling WSAGetLastError. + + + + The WSALookupServiceNext function is called after obtaining a handle from a previous call to + WSALookupServiceBegin in order to retrieve the requested service information. + The provider will pass back a WSAQUERYSET structure in the lpqsResults buffer. The client should + continue to call this function until it returns WSA_E_NO_MORE, indicating that all of WSAQUERYSET + has been returned. + + Handle returned from the previous call to WSALookupServiceBegin. + Flags to control the next operation. Currently, only LUP_FLUSHPREVIOUS is defined as a means to cope + with a result set that is too large. If an application does not (or cannot) supply a large enough buffer, + setting LUP_FLUSHPREVIOUS instructs the provider to discard the last result set—which was too large—and + move on to the next set for this call. + On input, the number of bytes contained in the buffer pointed to by lpqsResults. + On output, if the function fails and the error is WSAEFAULT, then it contains the minimum number + of bytes to pass for the lpqsResults to retrieve the record. + Pointer to a block of memory, which will contain one result set in a WSAQUERYSET structure on return. + The return value is zero if the operation was successful. Otherwise, the value SOCKET_ERROR is returned, + and a specific error number can be retrieved by calling WSAGetLastError. + + + + The WSALookupServiceEnd function is called to free the handle after previous calls to WSALookupServiceBegin and WSALookupServiceNext. + If you call WSALookupServiceEnd from another thread while an existing WSALookupServiceNext is blocked, the end call will have the same effect as a cancel and will cause the WSALookupServiceNext call to return immediately. + + Handle previously obtained by calling WSALookupServiceBegin. + The return value is zero if the operation was successful. Otherwise, the value SOCKET_ERROR is returned, + and a specific error number can be retrieved by calling WSAGetLastError. + + + + + + + + + Size of the block of data pointed to by pBlobData, in bytes. cbSize. + + + + + Pointer to a block of data. pInfo. + + + + + + + + + + Flags + + + + + The blue tooth address. + + + + + The unsigned integer representing the class of the device. + + + + + The binary representation of the name. + + + + + Converts the object into a BluetoothDevice object. + + + + + + Returns the address of the device. + + + + + Returns the friendly nameof the device. + + + + + Bluetooth device status states that can be combined. + + + + + The bluetooth address is present. + + + + + The class of the device is present. + + + + + The name of the device is present. + + + + + Whether or not the device is paired. + + + + + The bluetooth device is remembered. + + + + + The bluetooth device is connected. + + + + + + + + + + Size of the BLUETOOTH_FIND_RADIO_PARAMS structure, in bytes. dwSize. + + + + + + + + + + Size of the BluetoothDeviceInfo structure, in bytes. dwSize. + + + + + Address of the device. + + + + + Class of the device. ulClassofDevice. + + + + + Specifies whether the device is connected. fConnected. + + + + + Specifies whether the device is a remembered device. Not all remembered devices are authenticated. fRemembered. + + + + + Specifies whether the device is authenticated, paired, or bonded. All authenticated devices are remembered. fAuthenticated. + + + + + Last time the device was seen, in the form of a SYSTEMTIME structure. stLastSeen. + + + + + Last time the device was used, in the form of a SYSTEMTIME structure. stLastUsed. + + + + + Name of the device. szName. + + + + + Initializes a new instance of the struct. + + The address. + + + + + + + + + Size, in bytes, of the structure. dwSize. + + + + + Address of the local Bluetooth radio. + + + + + Name of the local Bluetooth radio. szName. + + + + + Device class for the local Bluetooth radio. ClassofDevice. + + + + + This member contains data specific to individual Bluetooth device manufacturers. lmpSubversion. + + + + + Manufacturer of the Bluetooth radio, expressed as a BTH_MFG_Xxx value. For more + information about the Bluetooth assigned numbers document and a current list of values, + see the Bluetooth specification at www.bluetooth.com. + + + + + The BTH_QUERY_DEVICE structure is used when querying for the presence of a Bluetooth device. + + + + + Reserved. Must be set to zero. + + + + + Requested length of the inquiry, in seconds. + + + + + Initializes a new instance of the BthQueryDevice structure. + + + + + Specifies a date and time, using individual members for the month, day, year, weekday, hour, minute, second, + and millisecond. The time is either in coordinated universal time (UTC) or local time, depending on the + function that is being called. + + + + + The year. The valid values for this member are 1601 through 30827. wYear. + + + + + The month. (January = 1). + + + + + The day of the week. (Sunday = 0) + + + + + The day of the month. The valid values for this member are 1 through 31. + + + + + The hour. The valid values for this member are 0 through 23. + + + + + The minute. The valid values for this member are 0 through 59. + + + + + The second. The valid values for this member are 0 through 59. + + + + + The millisecond. The valid values for this member are 0 through 999. + + + + + Creates a .Net DateTime structure from the SystemTime structure. + + + + + + Creates a SystemTime structure based on the specified DateTime structure. + + The DateTime value to set. + The SystemTime equivalent to the specified value. + + + + The WSADATA structure contains information about the Windows Sockets implementation. + + + + + The version of the Windows Sockets specification that the Ws2_32.dll expects the caller to use. + The high-order byte specifies the minor version number; the low-order byte specifies the major version number. + wVersion. + + + + + The highest version of the Windows Sockets specification that the Ws2_32.dll can support. The high-order byte + specifies the minor version number; the low-order byte specifies the major version number. + This is the same value as the wVersion member when the version requested in the wVersionRequested parameter + passed to the WSAStartup function is the highest version of the Windows Sockets specification that the Ws2_32.dll + can support. wHighVersion. + + + + + A NULL-terminated ASCII string into which the Ws2_32.dll copies a description of the Windows Sockets implementation. + The text (up to 256 characters in length) can contain any characters except control and formatting characters. + The most likely use that an application would have for this member is to display it (possibly truncated) in a status + message. szDescription. + + + + + A NULL-terminated ASCII string into which the Ws2_32.dll copies relevant status or configuration information. + The Ws2_32.dll should use this parameter only if the information might be useful to the user or support staff. + This member should not be considered as an extension of the szDescription parameter. szSystemStatus. + + + + + The maximum number of sockets that may be opened. This member should be ignored for Windows Sockets version 2 and later. + The iMaxSockets member is retained for compatibility with Windows Sockets specification 1.1, but should not be used when + developing new applications. No single value can be appropriate for all underlying service providers. The architecture + of Windows Sockets changed in version 2 to support multiple providers, and the WSADATA structure no longer applies to + a single vendor's stack. iMaxSockets. + + + + + The maximum datagram message size. This member is ignored for Windows Sockets version 2 and later. iMaxUdpDg. + + + + + A pointer to vendor-specific information. This member should be ignored for Windows Sockets version 2 and later. + lpVendorInfo + + + + + WAS Lookup Control Options + + + + + None of the return options are active. + + + + + Returns containers only. LUP_CONTAINERS. + + + + + Retrieves the name as lpszServiceInstanceName. LUP_RETURN_NAME. + + + + + Retrieves the type as lpServiceClassId. LUP_RETURN_TYPE. + + + + + Retrieves the version as lpVersion. LUP_RETURN_VERSION. + + + + + Retrieves the comment as lpszComment. LUP_RETURN_COMMENT. + + + + + Retrieves the addresses as lpcsaBuffer. LUP_RETURN_ADDR. + + + + + Retrieves the private data as lpBlob. LUP_RETURN_BLOB. + + + + + If the provider has been caching information, ignores the cache, and queries the namespace itself. LUP_FLUSHCACHE. + + + + + This indicates whether prime response is in the remote or local part of CSADDR_INFO structure. + The other part needs to be usable in either case. LUP_RES_SERVICE. + + + + + + + + + + Must be set to sizeof(WSAQUERYSET) in bytes. This is a versioning mechanism. dwSize. + + + + + (Optional) Referenced string contains service name. The semantics for using wildcards + within the string are not defined, but can be supported by certain name space providers. + lpszServiceInstanceName. + + + + + (Required) The GUID corresponding to the service class. + lpServiceClassId. + + + + + (Optional) References desired version number and provides version comparison semantics + (that is, version must match exactly, or version must be not less than the value supplied). + lpVersion. + + + + + Ignored for queries. lpszComment. + + + + + Identifier of a single name space in which to constrain the search, or NS_ALL to include + all name spaces. dwNameSpace. + + + + + (Optional) References the GUID of a specific name-space provider, and limits the query to + this provider only. lpNSProviderId. + + + + + (Optional) Specifies the starting point of the query in a hierarchical name space. + lpszContext. + + + + + Size of the protocol constraint array, can be zero. dwNumberOfProtocols. + + + + + (Optional) References an array of AFPROTOCOLS structure. Only services that utilize + these protocols will be returned. lpafpProtocols. + + + + + (Optional)Some name spaces (such as Whois++) support enriched SQL-like queries that are + contained in a simple text string. This parameter is used to specify that string. + lpszQueryString. + + + + + Ignored for queries. dwNumberOfCsAddrs + + + + + Ignored for queries. lpcsaBuffer. + + + + + Ignored for queries. dwOutputFlags. + + + + + (Optional)This is a pointer to a provider-specific entity. lbBlob. + + + + + Instantiates a new instance of the Wsaqueryset Class. + + + + + An SP_DEVINFO_DATA structure defines a device instance that is a member of a device information set. + + + + + The size, in bytes, of the SP_DEVINFO_DATA structure. For more information, see the + following Remarks section. cbSize. + + + + + The GUID of the device's setup class. + + + + + An opaque handle to the device instance (also known as a handle to the devnode). + Some functions, such as SetupDiXxx functions, take the whole SP_DEVINFO_DATA structure + as input to identify a device in a device information set. Other functions, such as + CM_Xxx functions like CM_Get_DevNode_Status, take this DevInst handle as input. + DevInst. + + + + + Reserved. For internal use only. + + + + + An SP_DEVICE_INTERFACE_DATA structure defines a device interface in a device information set. + + A SetupAPI function that takes an instance of the SP_DEVICE_INTERFACE_DATA structure as a parameter + verifies whether the cbSize member of the supplied structure is equal to the size, in bytes, of the + structure. If the cbSize member is not set correctly, the function will fail and set an error code + of ERROR_INVALID_USER_BUFFER. + + + + The size, in bytes, of the SP_DEVICE_INTERFACE_DATA structure. For more information, + see the Remarks section. cbSize. + + + + + The GUID for the class to which the device interface belongs. + + + + + Can be one or more of the following: + SPINT_ACTIVE - The interface is active (enabled). + SPINT_DEFAULT - The interface is the default interface for the device class. + SPINT_REMOVED - The interface is removed. + + + + + Reserved. Do not use. + + + + + An SP_DEVICE_INTERFACE_DETAIL_DATA structure contains the path for a device interface. + + An SP_DEVICE_INTERFACE_DETAIL_DATA structure identifies the path for a device interface in a + device information set. SetupDiXxx functions that take an SP_DEVICE_INTERFACE_DETAIL_DATA + structure as a parameter verify that the cbSize member of the supplied structure is equal + to the size, in bytes, of the structure. If the cbSize member is not set correctly for an + input parameter, the function will fail and set an error code of ERROR_INVALID_PARAMETER. + If the cbSize member is not set correctly for an output parameter, the function will fail + and set an error code of ERROR_INVALID_USER_BUFFER. + + + + The size, in bytes, of the SP_DEVICE_INTERFACE_DETAIL_DATA structure. + For more information, see the following Remarks section. cbSize. + + + + + A NULL-terminated string that contains the device interface path. This path can be passed to Win32 functions such as CreateFile. + + + + + Emultor for MNEA devices + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a generic NMEA-0183 Emulator + + + + + Creates a generic NMEA-0183 Emulator from the specified string name + + The name. + + + + Randomizes the emulation by changing speed and direction + + + + + Randomize + + The max HDOP. + The max VDOP. + + + + Randomize + + The min HDOP. + The max HDOP. + The min VDOP. + The max VDOP. + + + + Randomize + + The seed. + The speed low. + The speed high. + The bearing start. + The bearing arc. + The min HDOP. + The max HDOP. + The min VDOP. + The max VDOP. + + + + Generates actual data to send to the client. + + Data is sent according to the behavior of a typical GPS device: $GPGGA, + $GPGSA, $GPRMC, $GPGSV sentences are sent every second, and a $GPGSV sentence + is sent every five seconds. + Developers who want to emulate a specific model of GPS device should override this + method and generate the sentences specific to that device. + + + + Emulates the position error. + + The truth. + + + + + Emulates the error. + + The dop. + + + + + Writes the sentence to client. + + The sentence. + + + + Sets the update intervals for the NMEA Emulator's sentence generation. + + The interval. + + + + Horizontal dilution of precision + + The horizontal dilutiuon of precision. + + + + Vertical dilution of precision + + The vertical dilutiuon of precision. + + + + Mean Dilution of Precision + + The mean dilutiuon of precision. + + + + Emulated Fix Mode + + The emulated fix mode. + + + + Emulated Fix Status + + The emulated fix status. + + + + Emulated Fix Method + + The emulated fix method. + + + + Emulated Fix Quality + + The emulated fix quality. + + + + Magnetic Variation + + The magnetic variation. + + + + Represents an interpreter for GPS data from the National Marine Electronics Association (NMEA). + + + + + + + + + + Represents a synchronization object used to prevent changes to GPS data when reading multiple GPS values. + + + + + Creates an interpreter to read NMEA streams + + + + + Called when [sentence recorded]. + + The sentence. + + + + Translates the NmeaSentence + + The NMeaSentence to parse + + + + Occurs when the interpreter is using a different device for raw data. + + + + + Occurs when new data should be read from the underlying device. + + + + + Occurs immediately after the interpreter has been shut down. + + + + + Occurs when a packet of data has been recorded to the recording stream. + + + + + Represents a reader which deserializes raw data into NMEA sentences. + + + + + + + + + + + + + + + + + + + + Creates a new instance using the specified stream. + + The stream. + + + + Returns whether the specified stream contains valid NMEA data. + + An open Stream object which supports read operations. + A Boolean value, True if valid NMEA data has been read from the stream. + + + + Reads the next available sentence, valid or invalid, from the underlying stream. + + + + + + Reads a well-formed NMEA sentence (with a valid checksum) from the underlying stream. + + + + + + Reads a single NMEA sentence then attempts to convert it into an object-oriented form. + + + + + + Reads the current latitude and longitude from the next available sentence. + + + + + + Reads the UTC date and time from the next available sentence. + + + + + + Returns the current date and time from the next available sentence. + + + + + + Returns the current rate of travel from the next available sentence. + + + + + + Reads the Bearing direction + + The direction as an azimuth angle + + + + Reads the Heading direction + + The direction as an azimuth angle + + + + Reads the current type of fix acquired from the next available sentence. + + + + + + Reads the current distance above sea level from the next available sentence. + + + + + + Reads the current precision as it relates to latitude and longitude from the next available sentence. + + + + + + Occurs when an unknown sentence type is encountered. + + + + + Represents information about an unknown NMEA sentence which has been encountered. + + + + + + + + + + + + + + + Creates a new instance of the Nmea Sentence Resolver Event arguments class + + The sentence. + + + + Returns the NMEA sentence which needs to be resolved. + + + + + Controls a more-strongly-typed NMEA sentence if resolution is successful. + + The result. + + + + Represents information about raw data received from a GPS device. + + This object is used primarily by the SentenceReceived + and UnrecognizedSentenceReceived events of + the Receiver class to provide notification when raw data has been received + from the GPS device. + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MySentenceEvent As SentenceEventHandler + ' Create an NMEA $GPGLL sentence + Dim MySentence As String = "$GPGLL, 4122, N, 14628, W, 104243.00, A, D*7E" + + Sub Main() + ' Raise our custom event, also indicating that the sentence was completely recognized + RaiseEvent MySentenceEvent(Me, New SentenceEventArgs(MySentence, SentenceType.Recognized)) + End Sub + + + // Declare a new event + SentenceEventHandler MySentenceEvent; + // Create an NMEA $GPGLL sentence + string MySentence = "$GPGLL, 4122, N, 14628, W, 104243.00, A, D*7E" + + void Main() + { + // Raise our custom event, also indicating that the sentence was completely recognized + MySentenceEvent(this, New SentenceEventArgs(MySentence, SentenceType.Recognized)); + } + + + + + + Creates a new instance with the specified block of raw GPS data and a flag indicating if the sentence was fully parsed. + + A String containing raw GPS data. + Type Property + Sentence Property + + + + Stores one line of raw GPS data. + + A String containing one line of raw NMEA or Garmin® text data. + When using the NMEA-0183 or Garmin® text protocols, this property stores text for one individual line. For the Garmin® binary protocol, a signature such as "(Garmin waypoint data)" is stored instead of actual binary data. + Type Property + + + + Represents a Garmin $PGRMF sentence. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a Garmin $PGRMF sentence from the specified parameters + + The sentence. + The command word. + The words. + The valid checksum. + + + + Creates a Garmin $PGRMF sentence from the specified string + + The sentence. + + + + OnSentanceChanged event handler + + + + + Represents an NMEA sentence which contains date and time in UTC. + + + + + Represents an NMEA sentence which contains a position. + + + + + Gets the fix mode + + + + + The Fix Quality + + + + + + The Speed + + + + + + the Bearing + + + + + + The Position Dilution of Precision (PDOP) + + + + + + Position averaging filter + + + + + + + + + + + + + + + + + + + + + + + + + Creates an uninitialized filter with a sample count of 4 + + + + + Creates an uninitialized filter with a sample count. + + The sample count. + + + + Creates an initialized filter. + + The positions. + The sample count equals the number of positions passed in the positions argument. + + + + Creates an initialzed filter + + The positions. + The sample count. + If the number of positions supllied in the positions parameter and the sample + count parameter are not equal, the filter is uninitialized. + + + + Filters this instance. + + + + + Initializes the filter + + The initial sample positions. + This method updates the SampleCount property to the number of + initialization positions providedand updates the FilteredLocation + property. + + + + Initializes the filter + + The initial sample positions. + This method updates the SampleCount property to the number of + initialization positions provided and updates the FilteredLocation + property. + + + + Adds an initialization position. + + The initialization position to add. + This method does not update the SampleCount or the FilteredLocation + properties. + + + + Adds an initialization position. + + The initialization position to add. + This method does not update the SampleCount or the FilteredLocation + properties. + + + + Adds a new observation and applies the filter. + + The new observation to add to the filter. + The filtered position. + This method updates the FilteredLocation property without consideration for SampleCount. + + + + Adds a new observation and applies the filter. + + The new observation to add to the filter. + A DeviceError, which does not currently affect position averaging. + A horizontal dilution of position, which does not currently affect position averaging. + A vertical dilution of positoin which does not currently affect position averaging. + A directional bearing, which does not currently affect position averaging. + A speed, which does not currently affect position averaging. + + This method updates the FilteredLocation property without consideration for SampleCount. + + + + Adds a new observation and applies the filter. + + The new observation to add to the filter. + The filtered position. + This method updates the FilteredLocation property without consideration for SampleCount. + + + + Adds a new observation and applies the filter. + + The new observation to add to the filter. + A DeviceError, which does not currently affect position averaging. + A horizontal dilution of position, which does not currently affect position averaging. + A vertical dilution of positoin which does not currently affect position averaging. + A directional bearing, which does not currently affect position averaging. + A speed, which does not currently affect position averaging. + + This method updates the FilteredLocation property without consideration for SampleCount. + + + + Gets the number of samples required for a valid fintered value. + + + + + Gets a list of the current observed locations + + + + + Not implemented in the PrositionAverage filter. Use ObservedLocations to get a list + of observed locations. + + + + + Gets the filtered location + + + + + Gets a value indicating the state of the filter. + + The filter is considered initialized and thus reporting valid filtered + locations, when the SampleCount property equals the number of values returned + by the ObservedLocations property. + + + + Gets the time elapsed from the oldest to the most resent position sample. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + This emulator follows a custom route defined in a text file. + + + This emulator is similar to the , except that it does not require real + GPS data. Instead, it expects a text file that contains a value on each line + (e.g. HH°MM'SS.SSSS, HH°MM'SS.SSSS). + + + The will move one point further along its route at each + period, so the will automatically adjust + as needed to move the required distance each time. + + + + + + + + + + Initializes a new instance of the class that reads + its route from the specified file. + + The file path. + + + + Initializes a new instance of the class that reads + its route from the specified file in the specified direction. + + The file path. + if set to true [reverse]. + + + + Initializes a new instance of the class that reads + its route from the specified file in the specified direction at the specified interval. + + The file path. + if set to true [reverse]. + The interval. + + + + Moves to the next point in the route, and calls the base + implementation to generate the appropriate NMEA sentences. + + + + + Reads the route file and populates the property. + + The absolute or relative path of the file containing the route. + If , the route file will be read in reverse order. That is, the last + in the file will be the starting point of the route. + + + + Returns the amount of time the emulator waits before processing new data. + + The interval. + + + + Represents information about a GPS satellite in orbit above Earth. + + GPS devices are able to isolate information about GPS satellites in orbit. Each + satellite's unique identifier, + radio signal strength, + azimuth and + elevation are available once its + radio signal is detected. + Properties in this class are updated automatically as new information is + received from the GPS device. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance using the specified unique identifier. + + The pseudorandom number. + + + + Creates a new instance using the specified unique identifier, location around the horizon, and elevation up from the horizon. + + The pseudorandom number. + The azimuth. + The elevation. + + + + Creates a new instance using the specified unique identifier, location around the horizon, and elevation up from the horizon. + + The pseudorandom number. + The azimuth. + The elevation. + The signal to noise ratio. + + + + Creates a new instance using the specified unique identifier, location around the horizon, and elevation up from the horizon. + + The pseudorandom number. + The azimuth. + The elevation. + The signal to noise ratio. + if set to true [is fixed]. + + + + REturns the string equivalent of this object using ht ecurrent cul + + The format. + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns the satellites in the specified in the list which are marked as fixed. + + The satellites. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Returns the unique identifier of the satellite. + + + + + Returns the horizontal direction towards the satellite from the current location. + + The azimuth. + + + + Returns the vertical direction towards the satellite from the current + location. + + The elevation. + + + + Returns the strength of the satellite's radio signal as it is being + received. + + The signal to noise ratio. + + + + Returns the date and time that the satellite's signal was detected. + + The last signal received. + + + + Returns whether the satellite's signal is being used to calculate the current + location. + + true if this instance is fixed; otherwise, false. + + + + Returns whether the satellite's signal is currently being detected. + + + + + Returns the amount of time elapsed since the signal was last received. + + + + + Returns whether the satellite's signal has recently been received. + + + + + Indicates whether the satellite is providing additional corrective + signals to increase precision. + + This property will return a value of True + if the GPS satellite has been identified as a WAAS, EGNOS or MSAS satellite. + These satellites are geostationary (unlike typical NAVSTAR GPS satellites) + and re-broadcast correction signals from ground stations. When this property + is true, the GPS device has improved precision. + + + + Returns the government project responsible for launching the satellite. + + + + + Returns the atomic clock currently in service. + + + + + Returns the launch block of the satellite. + + + + + Returns the date the satellite was placed into orbit. + + + + + Returns the date the satellite was placed into service. + + + + + Returns the date the satellite was removed from service. + + + + + Returns the friendly name of the satellite. + + + + + Represents information about a satellite when a satellite-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Start a new receiver + Dim MyReceiver As New Receiver() + ' Declare a new event + Dim MySatelliteEvent As EventHandler + ' Get a handle on the first satellite in the receiver's collection + Dim MySatellite As Satellite = MyReceiver.Satellites(0) + Sub Main() + ' Raise our custom event + RaiseEvent MySatelliteEvent(Me, New SatelliteEventArgs(MySatellite)) + End Sub + + + // Start a new receiver + Receiver MyReceiver = new Receiver(); + // Declare a new event + EventHandler MySatelliteEvent; + // Create an Satellite of 90° + Satellite MySatellite = new Satellite(90); + void Main() + { + // Raise our custom event + MySatelliteEvent(this, New SatelliteEventArgs(MySatellite)); + } + + + + SatelliteCollection Class + + Azimuth Property (Satellite Class) + + Elevation Property (Satellite Class) + + SignalToNoiseRatio Property (Satellite Class) + This object is used primarily by the Satellite + class to provide notification when information such as azimuth, + elevation, or radio signal strength + has changed. + + + + + + + + + Creates a new instance. + + The satellite. + + + + Indicates which satellite is the target of the event. + + A Satellite object containing modified information. + + + + The event args for a list of satellites + + + + + + + + + + Creates a new instance. + + The satellites. + + + + Indicates which satellites are the target of the event. + + A list of Satellite objects. + + + + Indicates the government project responsible for a GPS satellite. + + + + The satellite could not be identified. + + + The satellite is part of the NAVSTAR project. + + + The satellite is part of the Wide Area Augmentation System (WAAS). + + + + The satellite is part of the European Geostationary Navigation Overlay Service + (EGNOS). + + + + + The satellite is pard of Japan's MTSAT Satellite Augmentation System + (MSAS). + + + + + Indicates the launch block of a group of NAVSTAR GPS satellites. + + + + The block is unknown. + + + Represents Block I. + + + Represents Block II. + + + Represents Block IIA + + + Represents Block IIR. + + + + Indicates the main atomic clock in service aboard a GPS satellite. + + + + The clock type is unknown. + + + The satellite's Cesium clock is currently in service. + + + The satellite's Rubidium clock is currently in service. + + + + + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, executes the code required to free the handle. + + true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a releaseHandleFailed MDA Managed Debugging Assistant. + + + + Bluetoothes the find radio close. + + The h find. + + + + + Represents a serial (RS-232) device. + + This class is used to connect to any device using the RS-232 protocol. Desktop computers will typically + have at least one serial port, and in some cases a "virtual" serial port is created to make a device emulate RS-232. For + example, since there is no USB standard for GPS devices, USB GPS device manufacturers typically provide a special "USB-to-serial" + driver to make the device available for third-party applications. + Each serial port on a computer has a unique name, typically beginning with "COM" followed by a number, then a colon + (e.g. COM5:). In some special circumstances, such as the GPS Intermediate Driver on Windows Mobile devices, a different prefix + is used. Each serial port includes other configuration settings, most importantly the baud rate, which controls the speed of + communications. GPS device manufacturers must support 4800 baud in order to comply with the NMEA-0183 standard, but many newer devices + use faster speeds. The baud rate of a connection must be specified precisely, otherwise all data from the device will be + unrecognizable. + Other settings for serial ports are the data bits, stop bits, and parity. In the context of GPS, a vast majority of GPS + devices use eight data bits, one stop bit, and no parity. these settings are used if no settings are explicitly provided. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance. + + + + + Creates a new instance using the specified port. + + Name of the port. + + + + Creates a new instance using the specified port name and baud rate. + + Name of the port. + The baud rate. + + + + Forces a device to a closed state without disposing the underlying stream. + + + + + + Creates a new Stream object for the device. + + The access. + The sharing. + A Stream object. + + + + + Occurs when an open connection is about to be closed. + + + + + + Performs a test on the device to confirm that it transmits GPS data. + + A Boolean value, True if the device is confirmed. + + + + + Stops any GPS protocol detection in progress. + + + + + Disposes of any unmanaged (or optionally, managed) resources used by the device. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Records information about this device to the registry. + + + + + Removes previously cached information for this device from the registry. + + + + + Reads information about this device from the registry. + + + + + Clears the cache. + + + + + Returns a list of known Bluetooth devices. + + + To maximize performance, GPS.NET will record information about each device it encounters for the purposes of organizing + and speeding up the GPS device detection process. This property returns a list of all known serial devices. + Since this list is managed automatically, it should not be modified. + + + + Sets the name. + + The name. + + + + Loads the serial devices that have been cached by GPS.Net. This list contains previously-detected GPS devices, + along with devices which were tested but found to NOT be GPS devices. By keeping these statistics, + the detection system can become faster over time by first testing devices which have a better success rate. + + The list to which the cached devices are added. + + + + Loads any virtual serial devices that exist for other types of physical devices. + This list includes non-GPS devices. + + The list to which the cached devices are added. + + + + Loads the serial devices that have already been detected by Windows. This list includes non-GPS devices. + + The list to which the devices are added. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns the name of the port used to open a connection. + + The port. + + + + Returns the numeric portion of the port name. + + + + + Controls the speed of communications for this device. + + The baud rate. + This property controls the speed of read and write operations for the device. The baud rate specified must precisely + match a rate supported by the device, otherwise data will be unrecognizable. GPS devices are required to support a minimum baud rate of 4800 + in order to comply with the NMEA-0183 standard (though not all devices do this). A higher rate is preferable. + + + + Returns a natural language name for the device. + + + + + + Controls whether the device can be queried for GPS data. + + true if [allow connections]; otherwise, false. + + + + + Controls the baud rates tested during GPS protocol detection. + + A GPS device may support any number of baud rates. As a result, the GPS.NET device detection system + needs to test multiple baud rates in order to find a match. This collection controls the list of baud rates + tested during detection. + Advanced GPS developers can improve performance by trimming this list down to baud rates which will actually + be used. + + + + Controls the maximum allowed detection failures before a device is excluded from detection. + + The maximum allowed failures. + Some devices involved with device detection are not GPS devices. For example, a serial device search + could return a bar code scanner, an infrared port, or the neighbor's computer. This property controls how many times a device will be + tested before it is no longer included for searches. If a device's failure count goes beyond this number, attempts + will no longer be made to connect to the device. + + + + Wraps the .Net class and implements workarounds for some + known bugs and limitations. + + + + + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the port. + The baud rate. + + + + Initializes a new instance of the class using the specified port name, baud rate, parity bit, data bits, and stop bit. + + The port to use (for example, COM1). + The baud rate. + One of the values. + The data bits value. + One of the values. + The specified port could not be found or opened. + + + + Opens a new serial port connection. + + The specified port is open. + + One or more of the properties for this instance are invalid. For example, the , , or properties are not valid values; the is less than or equal to zero; the or property is less than zero and is not . + + The port name does not begin with "COM". - or -The file type of the port is not supported. + + The port is in an invalid state. - or - An attempt to set the state of the underlying port failed. For example, the parameters passed from this object were invalid. + + Access is denied to the port. + + + + + + + + Reads up to the value in the input buffer. + + The contents of the input buffer up to the first occurrence of a value. + The specified port is not open. + + The operation did not complete before the time-out period ended.- or -No bytes were read. + + + + + + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + The port is in an invalid state. - or -An attempt to set the state of the underlying port failed. For example, the parameters passed from this object were invalid. + + + + Represents a measurement of the strength of a received radio signal. + + Signal-to-Noise Ratios (or SNR for short) measure the clarity of + a received signal versus the level at which the signal is being obscured. For + example, if a GPS device is operating in open sky on a clear day, no signals are + obscured and the SNR will be high. Conversely, if a device is activated in a room + with no view of the sky, signals may be obscured, resulting in a low SNR. + This class is used frequently by the Satellite + class to report on the quality of GPS satellite signals. When three or more + satellite SNR's are strong, the device is able to obtain a fix on the current location. + + + + + + + + + Represents a value signifying a signal which is completely obscured. + + + + + Represents a value of zero. + + + + + Represents a value signifying a signal which is partially obscured. + + + + + Represents a value signifying a signal which is not being obscured. + + + + + Creates a new instance. + + The value. + + + + Creates a new instance by parsing the specified string. + + The value. + + + + Creates a new instance by parsing the specified string using a specific culture. + + The value. + The culture. + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + Outputs the current instance as a formatted string. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a unique code for the current instance used in hash tables. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a SignalToNoiseRatio object containing a random + value. + + + + + + Parses the specified value. + + The value. + + + + + Parses the specified value. + + The value. + The culture. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Equalses the specified value. + + The value. + + + + + Outputs the current instance as a string using the specified format and + culture. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Returns the numeric value of the signal strength. + + An Integer value between 0 and 50, where 0 represents no signal and fifty represents a signal at full strength. + This property indicates the strength of a received satellite signal. GPS + satellites always transmit signals at the same strength, but the signal is often + obscured by the atmosphere, buildings and other obstacles such as trees. A value + must be at about 30 or greater for a satellite to be able to maintain a fix for long. + In the Satellite class, this property is updated automatically as new information is + received from the GPS device. + + + + Indicates if the value is zero. + + + + + Returns a subjective rating of the signal strength. + + A value from the SignalToNoiseRatioRating enumeration. + SignalToNoiseRatioRating Enumeration + This property is frequently used to present an SNR reading in a readable format to the user. + This property is updated automatically as new information is received from the GPS device. + + + + Indicates an in-English description of the a satellite's radio signal strength + + This enumeration is used by the Rating property of the + SignalToNoiseRatio class to give an in-English interpretation + of satellite radio signal strength. + + + Represents a value of 0. The radio signal is completely obscured. + + + Represents a value between 1 and 15. The radio signal is mostly obscured, such as by a building or tree, but might briefly be part of a fix. + + + Represents a value between 16 and 30. The radio signal is partially obscured, but could be part of a sustained fix. + + + Represents a value between 31 and 40. The radio signal is being received with little interferance and could maintain a reliable fix. + + + Represents a value of 41 or above. The satellite is in direct line of sight from the receiver and can sustain a fix. + + + + Signal to noise ratio event args + + + + + + + + + + Creates a new instance of the event args + + The signal to noise ratio. + + + + The signal to noise ratio + + + + + Represents a three-dimensional double-precision matrix. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a matrix as an identity matrix + + + + + Creates a matrix with the indicated elements + + The M11. + The M12. + The M13. + The M21. + The M22. + The M23. + The M31. + The M32. + The M33. + + + + Elementaries this instance. + + + + + Ctreates an exact copy of this matrix. + + A cloned matrix. + + + + Multiplies this matrix with the supplied matrix, using a prepended matrix order + + The matrix to multiply with this matrix. + + + + Multiplies this matrix with the supplied matrix. + + The matrix to multiply with this matrix. + The order in which to carry out the operation. + + + + Transforms the vector + + The vector. + + + + + Transform the array of vectors + + The vectors. + + + + Inverts this matrix if it is invertable. + + If the matrix is not invertable, this method throws an exception. + + + + Calculates the determinat of this matrix. + + The signed area of the parallelagram described by this matrix. + The determinant is a scalar value typically used to invert a matrix. As a signed area, it can also be used to + identify "flipped" orientations, like mirroring. A negative determinant indicates that a matrix is "flipped". + + + + Resests the matrix to the identity matrix. + + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Determines whether the specified is equal to this instance. + + The to compare with the current . + true if the specified is equal to this instance; otherwise, false. + + + + Creates the transpose matrix of a matrix + + A. + + + + + Square Matrix 3D Invert + + A. + + + + + Defaults the specified default value. + + The default value. + + + + + Implements the operator *. + + A. + The v. + The result of the operator. + + + + Implements the operator *. + + A. + The b. + The result of the operator. + + + + Implements the operator +. + + A. + The b. + The result of the operator. + + + + Implements the operator -. + + A. + The b. + The result of the operator. + + + + Multiplies the specified a. + + A. + The b. + + + + + Adds the specified a. + + A. + The b. + + + + + Subtracts the specified a. + + A. + The b. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Elements + + + + + Indicates whether or not this is an identity matrix + + + + + Indicates whether or not this matrix is invertable. + + + + + Returns an identity matrix. + + + + + Emulator that sources it's data from a text file + + + + + + + + + + + + + + + + + + + + Creates a Text File Emulator from the specified file path with a default read interval of 400 seconds + + The file path. + + + + Creates a Text File Emulator from the specified file path with the specified read interval + + The file path. + The read interval. + + + + OnEmulation event handler + + + + + Gets or sets the ReadInterval for the Text File Emulator + + The read interval. + + + + Represents a measurement of an object's rate of travel in a particular direction. + + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + Represents a velocity with no speed or direction. + + + + + Represents a velocity with an invalid or unspecified speed and direction. + + + + + Initializes a new instance of the struct. + + The speed. + The bearing. + + + + Initializes a new instance of the struct. + + The speed. + The bearing degrees. + + + + Initializes a new instance of the struct. + + The speed. + The speed units. + The bearing. + + + + Initializes a new instance of the struct. + + The speed. + The speed units. + The bearing degrees. + + + + Creates a new instance by parsing speed and bearing from the specified strings. + + The speed. + The bearing. + + + + Creates a new instance by converting the specified strings using the specific culture. + + The speed. + The bearing. + The culture. + + + + Initializes a new instance of the struct. + + The reader. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Outputs the current instance as a string using the default format. + + A String representing the current instance. + + + + Compares the current instance to the specified velocity. + + A Velocity object to compare with. + A Boolean, True if the values are identical. + + + + Compares the current instance to the specified velocity using the specified numeric precision. + + A Velocity object to compare with. + An Integer specifying the number of fractional digits to compare. + A Boolean, True if the values are identical. + + + + Outputs the current instance as a string using the specified format and culture information. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Clones this instance. + + + + + + Gets the objects rate of travel. + + + + + Gets the objects direction of travel. + + + + + Indicates whether the speed and bearing are both zero. + + + + + Indicates whether the speed or bearing is invalid or unspecified. + + + + + Represents a rectangular shape on Earth's surface. + + This class is used to represent a square (or close to a square) shape on + Earth's surface. This class is typically used during mapping applications to zoom + into a particular area on Earth. This class looks nearly identical to the Rectangle + class in the .NET framework, except that it's bounding points are defined as + Position objects instead of Point objects. + Instances of this class are guaranteed to be thread-safe because the class is + immutable (it's properties can only be set via constructors). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a GeographicRectangle having no size. + + + + + Represents a rectangle that encompasses all of Earth's surface. + + + + + Creates a new instance using the specified location and size. + + The location. + The size. + + A GeographicRectangle set to the specified location and + size. + + + + This example creates a new GeographicRectangle starting at 39°N + 105°W which is 2° wide and 5° tall. + + Dim NorthwestCorner As New Position("39N 105W") + Dim RectangleSize As New GeographicSize(2, 5) + Dim Rectangle As New GeographicRectangle(NorthwestCorner, RectangleSize) + + + Position NorthwestCorner = new Position("39N, 105W"); + GeographicSize RectangleSize = new GeographicSize(2, 5); + GeographicRectangle Rectangle = new GeographicRectangle(NorthwestCorner, RectangleSize); + + + This constructor defines a rectangle which expands east and south of the + specified location. + + + + Creates a new instance using the specified location, width, and height. + + The location. + The width. + The height. + + This example creates a new GeographicRectangle starting at 39°N + 105°W which is 2° wide and 5° tall. + + Dim NorthwestCorner As New Position("39N 105W") + Dim RectangleWidth As Distance = Distance.FromKilometers(1) + Dim RectangleHeight As Distance = Distance.FromKilometers(1) + Dim Rectangle As New GeographicRectangle(NorthwestCorner, RectangleWidth, RectangleHeight) + + + Position NorthwestCorner = new Position("39N 105W"); + Distance RectangleWidth = Distance.FromKilometers(1); + Distance RectangleHeight = Distance.FromKilometers(1); + GeographicRectangle Rectangle = new GeographicRectangle(NorthwestCorner, RectangleWidth, RectangleHeight); + + + + + A GeographicRectangle set to the specified location and + size. + + This constructor defines a rectangle which expands east and south of the + specified location. + + + + Creates a new instance using the specified northwest and southeast + coordinates. + + The northwest. + The southeast. + A GeographicRectangle defined by the two endpoints. + + + This example creates a new GeographicRectangle starting at 39°N + 105°W and ending at 37°N 100°W (2° wide and 5° tall). + + Dim NorthwestCorner As New Position("39N 105W") + Dim SoutheastCorner As New Position("37N 100W") + Dim Rectangle As New GeographicRectangle(NorthwestCorner, SoutheastCorner) + + + Position NorthwestCorner = new Position("39N 105W"); + Position SoutheastCorner = new Position("37N 100W"); + GeographicRectangle Rectangle = new GeographicRectangle(NorthwestCorner, SoutheastCorner); + + + This constructor takes the specified parameters and calculates the width and + height of the rectangle. If the two points are backwards (meaning that the right-most + point is west of the left-most point), they are automatically swapped before creating + the rectangle. + + + + Creates a new instance by converting the specified string. + + The value. + + A GeographicRectangle matching the specified string + value. + + + + This example creates a new rectangle at 39°N, 105° extending two degrees south and + five degrees east to 37°N, 100°W. + + Dim Rectangle As New GeographicRectangle("39N, 105W, 37N, 100W") + + + GeographicRectangle Rectangle = new GeographicRectangle("39N, 105W, 37N, 100W"); + + + This constructor attempts to parse the specified string into a rectangle. The + current culture is used to interpret the string -- use the list separator of the + current culture (which may not necessarily be a comma). This constructor can accept any + output created via the ToString method. + + + + Creates a new instance by converting the specified string in the given + culture. + + The value. + The culture. + + This constructor attempts to parse the specified string into a rectangle. The + specified culture is used to interpret the string. This constructor can accept any + output created via the ToString method. + + + + This example creates a new rectangle at 39°N, 105° extending two degrees south and + five degrees east to 37°N, 100°W. + + Dim Rectangle As New GeographicRectangle("39N, 105W, 37N, 100W", CultureInfo.CurrentCulture) + + + GeographicRectangle Rectangle = new GeographicRectangle("39N, 105W, 37N, 100W", CultureInfo.CurrentCulture); + + + + + + Creates a new instance using the specified latitudes and longitudes. + + The left. + The top. + The right. + The bottom. + + This example creates a new GeographicRectangle by specifying each + side individually. + + Dim Left As New Longitude(-105) + Dim Top As New Latitude(39) + Dim Right As New Longitude(-100) + Dim Top As New Latitude(37) + Dim Rectangle As New GeographicRectangle(Left, Top, Right, Bottom) + + + Longitude Left = new Longitude(-105); + Latitude Top = new Latitude(39); + Longitude Right = new Longitude(-100); + Latitude Top = new Latitude(37); + GeographicRectangle Rectangle = new GeographicRectangle(Left, Top, Right, Bottom); + + + + A GeographicRectangle bound by the specified values. + If the left and right, or top and bottom values are backwards, they are + automatically swapped before creating the rectangle. + + + + Creates a new instance using the specified latitudes and longitudes. + + The top. + The left. + The bottom. + The right. + A GeographicRectangle bound by the specified values. + + + + Dim Left As New Longitude(-105) + Dim Top As New Latitude(39) + Dim Right As New Longitude(-100) + Dim Top As New Latitude(37) + Dim Rectangle As New GeographicRectangle(Left, Top, Right, Bottom) + + + Latitude Top = new Latitude(39); + Longitude Left = new Longitude(-105); + Latitude Bottom = new Latitude(37); + Longitude Right = new Longitude(-100); + GeographicRectangle Rectangle = new GeographicRectangle(Top, Left, Bottom, Right); + + + If the left and right, or top and bottom values are backwards, they are + automatically swapped before creating the rectangle. + + + + Initializes a new instance of the struct. + + The left. + The top. + The right. + The bottom. + + + + Creates a new instance from a block of Geography Markup Language (GML). + + The reader. + + + + Moves the rectangle in the specified direction by the specified distance. + + The direction. + The distance. + A new GeographicRectangle translated by the specified direction + and distance. + + This example defines a rectangle then shifts it Northeast by fifty kilometers. + + Dim Rectangle As New GeographicRectangle("30N, 105W, 1°, 5°") + Rectangle = Rectangle.Translate(Azimuth.Northeast, New Distance(50, DistanceUnit.Kilometers)) + + + GeographicRectangle Rectangle = new GeographicRectangle("30N, 105W, 1°, 5°"); + Rectangle = Rectangle.Translate(Azimuth.Northeast, New Distance(50, DistanceUnit.Kilometers)); + + + This method is used to shift a rectangle to a new location while preserving its + size. + + + + Moves the rectangle in the specified direction by the specified distance. + + The direction. + The distance. + A new GeographicRectangle translated by the specified direction + and distance. + + This example defines a rectangle then shifts it Northeast by fifty kilometers. + + Dim Rectangle As New GeographicRectangle("30N, 105W, 1°, 5°") + Rectangle = Rectangle.Translate(new Angle(45), New Distance(50, DistanceUnit.Kilometers)) + + + GeographicRectangle Rectangle = new GeographicRectangle("30N, 105W, 1°, 5°"); + Rectangle = Rectangle.Translate(new Angle(45), New Distance(50, DistanceUnit.Kilometers)); + + + This method is used to shift a rectangle to a new location while preserving its + size. + + + + Moves the rectangle in the specified direction by the specified distance. + + The direction. + The distance. + A new GeographicRectangle translated by the specified direction + and distance. + + This example defines a rectangle then shifts it Northeast by fifty kilometers. + + Dim Rectangle As New GeographicRectangle("30N, 105W, 1°, 5°") + Rectangle = Rectangle.Translate(45, New Distance(50, DistanceUnit.Kilometers)) + + + GeographicRectangle Rectangle = new GeographicRectangle("30N, 105W, 1°, 5°"); + Rectangle = Rectangle.Translate(45, New Distance(50, DistanceUnit.Kilometers)); + + + This method is used to shift a rectangle to a new location while preserving its + size. + + + + Returns the points which form the rectangle. + + + + + + Indicates if the rectangle does not intersect the specified rectangle. + + The rectangle. + true if [is disjointed from] [the specified rectangle]; otherwise, false. + + + + Indicates if the specified GeographicRectangle is entirely within the current GeographicRectangle. + + The rectangle. + true if the specified rectangle is enclosing; otherwise, false. + + + + Determines whether the specified position is enclosing. + + The position. + true if the specified position is enclosing; otherwise, false. + + + + Moves the GeographicRectangle so that the specified position is at its center. + + The position. + + + + + Creates a new rectangle of the specified size, centered on the specified position. + + The position. + The size. + + + + + Expands the edges of the GeographicRectangle to contain the specified position. + + A Position object to surround. + A GeographicRectangle which contains the specified position. + If the specified position is already enclosed, the current instance will be returned. + + + + Increases the size of the rectangle while maintaining its center point. + + The size. + + + + + Increases the width and height of the rectangle by the specified amount. + + The width. + The height. + + + + + Increases the width and height of the rectangle by the specified amount. + + The latitudinal height. + The longitudinal width. + A geographic size rectangle for the height and width specified. + + + + Calculates the rectangle created by the intersection of this and another rectangle. + + The rectangle. + + + + + Indicates if the rectangle's border crosses or shares the border of the specified rectangle. + + The rectangle. + true if [is intersecting with] [the specified rectangle]; otherwise, false. + + + + Indicates if the specified GeographicRectangle shares any of the same 2D space as the current instance. + + The rectangle. + true if the specified rectangle is overlapping; otherwise, false. + + + + Indicates if the specified Position is within the current instance. + + A Position to test against the current instance. + A Boolean, True if the position is inside of the current rectangle. + + + + Returns the combination of the current instance with the specified rectangle. + + A GeographicRectangle to merge with the current instance. + A GeographicRectangle enclosing both rectangles. + This method returns the smallest possible rectangle which encloses the current instance as well as the specified rectangle. + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a unique code of the rectangle for hash tables. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a rectangle which encloses the two specified rectangles. + + A GeographicRectangle to merge with the second rectangle. + A GeographicRectangle to merge with the first rectangle. + A GeographicRectangle as a result of merging the two + rectangles. + This method is typically used to combine two individual shapes into a single + shape. + + + + Returns the GeographicRectangle formed by the intersection of the two specified GeographicRectangles. + + The first. + The second. + + + + + Returns a rectangle which encloses the specified points. + + An array of PointD objects to enclose. + A RectangleD object enclosing the specified points. + This method is typically used to calculate a rectangle surrounding + points which have been rotated. For example, if a rectangle is rotated by 45°, the + total width it occupies is greater than it's own width. + + + + Parses a string into a GeographicRectangle object. + + A String specifying geographic coordinates defining a rectangle. + A GeographicRectangle object using the specified coordinates. + This powerful method will convert points defining a rectangle in the form of a string into + a GeographicRectangle object. The string can be + + + + Parses the specified value. + + The value. + The culture. + + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the southern-most side of the rectangle. + + A object marking the southern-most latitude. + + + + Returns the southern-most latitude of the rectangle. + + A object marking the southern-most latitude. + + + + Returns the western-most side of the rectangle. + + A Longitude indicating the left side of the rectangle. + + + + Returns the eastern-most side of the rectangle. + + A Longitude indicating the right side of the rectangle. + + + + Returns the geographic center of the rectangle. + + + + + Returns the aspect ratio of the rectangle. + + This property returns the ratio of the GeographicRectangles width to its height (width / height). This + property gives an indication of the GeographicRectangle's shape. An aspect ratio of one indicates + a square, whereas an aspect ratio of two indicates a GeographicRectangle which is twice as wide as + it is high. + + + + Indicates if the rectangle has any value. + + A Boolean, True if a metor the size of Rhode + Island is about to crash into the Pacific Ocean just off the coast of Nicaragua but + there will be no casualties because everyone was warned plenty of time in + advance. + + + + Returns the rectangle's hypotenuse. + + The hypotenuse of a rectangle is a line connecting its northwest corner with its southeast corner. + + + + Returns the distance from the left to the right at the rectangle's middle latitude. + + + + + Returns the distance from the top to the bottom at the rectangle's middle longitude. + + + + + Gets the height degrees. + + + + + Gets the width degrees. + + + + + Returns the width and height of the rectangle. + + + + + Returns the northwestern corner of the rectangle. + + + + + Returns a point on the northern side, centered horizontally. + + + + + Returns a point on the southern side, centered horizontally. + + + + + Returns a point on the western side, centered vertically. + + + + + Returns a point on the eastern side, centered vertically. + + + + + Returns the northeastern corner of the rectangle. + + + + + Returns the southwestern corner of the rectangle. + + + + + Returns the southeastern corner of the rectangle. + + + + + Represents a highly-precise pixel coordinate. + + This class behaves similar to the PointF structure in the + System.Drawing namespace, except that it supports double-precision + values and can be converted into a geographic coordinate. This structure is also + supported on the Compact Framework version of the DotSpatial.Positioning, + whereas PointF is not. + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + Returns a point with no value. + + + + + Represents an invalid coordinate. + + + + + Creates a new instance for the specified coordinates. + + The x. + The y. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Initializes a new instance of the struct. + + The reader. + + + + Calculates the distance to another pixel. + + The value. + + + + + Indicates if the current instance is closer to the top of the monitor than the + specified value. + + The value. + true if the specified value is above; otherwise, false. + + + + Indicates if the current instance is closer to the bottom of the monitor than the + specified value. + + The value. + true if the specified value is below; otherwise, false. + + + + Indicates if the current instance is closer to the left of the monitor than the + specified value. + + The value. + true if [is left of] [the specified value]; otherwise, false. + + + + Indicates if the current instance is closer to the right of the monitor than the + specified value. + + The value. + true if [is right of] [the specified value]; otherwise, false. + + + + Returns the current instance with its signs switched. + + + This method returns a new point where the signs of X and Y are flipped. For example, if + a point, represents (20, 40), this function will return (-20, -40). + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + + + + Returns the current instance rotated about (0, 0). + + The angle. + + + + + Returns the current instance rotated about (0, 0). + + The angle. + + + + + Returns the current instance rotated about the specified point. + + The angle. + The center. + + + + + Rotates at. + + The angle. + The center. + + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a unique code used for hash tables. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Parses the specified value. + + The value. + + + + + Parses the specified value. + + The value. + The culture. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Returns the sum of two points by adding X and Y values together. + + The offset. + + This method adds the X and Y coordinates and returns a new point at that location. + + + + Returns the sum of two points by adding X and Y values together. + + The offset X. + The offset Y. + + This method adds the X and Y coordinates and returns a new point at that location. + + + + Returns the difference of two points by subtracting the specified X and Y values. + + The offset. + + This method subtracts the X and Y coordinates and returns a new point at that location. + + + + Returns the difference of two points by subtracting the specified X and Y values. + + The offset X. + The offset Y. + + This method subtracts the X and Y coordinates and returns a new point at that location. + + + + Returns the product of two points by multiplying X and Y values together. + + The offset. + + This method multiplies the X and Y coordinates together and returns a new point at that location. This + is typically used to scale a point from one coordinate system to another. + + + + Multiplies the specified offset X. + + The offset X. + The offset Y. + + + + + Divides the specified offset. + + The offset. + + + + + Divides the specified offset X. + + The offset X. + The offset Y. + + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Equalses the specified value. + + The value. + + + + + Equalses the specified value. + + The value. + The precision. + + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Gets or sets the x-coordinate of this PointD. + + The X. + + + + For projected coordinates, this is the factor Lamda or the longitude parameter. + For readability only, the value is X. + + The lam. + + + + Gets or sets the x-coordinate of this PointD. + + The Y. + + + + For projected coordinates, this is the factor Phi or the latitude parameter. + For readability only, the value is Y. + + The phi. + + + + Returns whether the current instance has no value. + + + + + Returns whether the current instance has an invalid value. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as an angular measurement.. + + + + + Looks up a localized string similar to The interval must be a value greater than zero, between 0 and 60.. + + + + + Looks up a localized string similar to Invalid format for Angle.ToString() method.. + + + + + Looks up a localized string similar to Only the right-most number of a sexagesimal measurement can be a fractional value.. + + + + + Looks up a localized string similar to An Angle can only be compared with Angle, Double, or String values.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as an area measurement.. + + + + + Looks up a localized string similar to The numeric portion of the area measurement could not be recognized.. + + + + + Looks up a localized string similar to The unit portion of the area measurement could not be recognized.. + + + + + Looks up a localized string similar to The azimuth cannot be converted to a because no conversion has been implemented internally. Please contact info@DotSpatial.Positioning.com with the source and destination unit types.. + + + + + Looks up a localized string similar to An Azimuth can only be compared with another Azimuth, or a Double.. + + + + + Looks up a localized string similar to Empty. + + + + + Looks up a localized string similar to Infinity. + + + + + Looks up a localized string similar to The distance cannot be converted because no conversion has been implemented internally. Please contact info@DotSpatial.Positioning.com with the source and destination unit types.. + + + + + Looks up a localized string similar to Distance objects can only be compared with other Distance objects.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as a distance measurement.. + + + + + Looks up a localized string similar to The numeric portion of the distance measurement could not be recognized.. + + + + + Looks up a localized string similar to The unit portion of the distance measurement could not be recognized.. + + + + + Looks up a localized string similar to The specified license key is invalid. Please contact DotSpatial.Positioning to look up license keys you have purchased: http://dotspatial.codeplex.com/Secured/LicenseKeys.aspx.. + + + + + Looks up a localized string similar to Would you like to go online now to activate your trial? An email address will not be required unless you're behind a proxy server.. + + + + + Looks up a localized string similar to {0} Stopped Execution. + + + + + Looks up a localized string similar to Execution of the current application has been stopped by an exception, but this message will go away once trial license keys have been provided, or the reference the assembly has been removed.. + + + + + Looks up a localized string similar to Execution of the current application has been stopped by an exception, but this message will go away once trial license keys have been provided. Please visit http://dotspatial.codeplex.com/FreeTrialLicenseKeys.aspx to obtain free license keys for any of our products.. + + + + + Looks up a localized string similar to Do you want to go online to activate free trial license keys?. + + + + + Looks up a localized string similar to An invalid license key was encountered while attempting to grant a license to a DotSpatial.Positioning object. The invalid key is "{0}". + + + + + Looks up a localized string similar to The license key for {0} is valid for a different major version of the software. Please visit http://dotspatial.codeplex.com/Shop for pricing on products for this version. Updates to DotSpatial.Positioning software are always free for each minor version change (e.g. versions 2.0 through 2.999). + + + + + Looks up a localized string similar to The license key for {0} is not valid for the current .NET platform. Please contact support@DotSpatial.Positioning.com for assistance or visit http://dotspatial.codeplex.com/Shop for pricing on products for this platform.. + + + + + Looks up a localized string similar to A DotSpatial.Positioning License Key Is Required. + + + + + Looks up a localized string similar to A license key is required for this DotSpatial.Positioning assembly to function. You can activate a free thirty-day trial online at http://dotspatial.codeplex.com.. + + + + + Looks up a localized string similar to A valid owner license has been granted for {0}. + + + + + Looks up a localized string similar to A trial license has been granted for {0} until {1}. + + + + + Looks up a localized string similar to The specified value could not be parsed into a GeographicSize object because two delimited values are required (Width, Height).. + + + + + Looks up a localized string similar to The Parse method requires a decimal or sexagesimal measurement.. + + + + + Looks up a localized string similar to A Latitude can only be compared with another Latitude, Double or String.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as a latitude.. + + + + + Looks up a localized string similar to The hemisphere specified for the ToHemisphere method cannot be 'None'. A value of 'North' or 'South' is required.. + + + + + Looks up a localized string similar to The hemisphere specified indicates a longitude but a latitude is expected.. + + + + + Looks up a localized string similar to Only the right-most number can be a floating-point value.. + + + + + Looks up a localized string similar to The Parse method requires a decimal or sexagesimal measurement.. + + + + + Looks up a localized string similar to A Longitude can only be compared with another Longitude, Double or String.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as a longitude.. + + + + + Looks up a localized string similar to The hemisphere specified for the ToHemisphere method cannot be 'None'. A value of 'East' or 'West' is required.. + + + + + Looks up a localized string similar to The hemisphere specified indicates a latitude but a longitude is expected.. + + + + + Looks up a localized string similar to Only the right-most number can be a floating-point value.. + + + + + Looks up a localized string similar to The Position.DistanceTo method requires a non-null ellipsoid parameter.. + + + + + Looks up a localized string similar to Duplicate UTM zone information was found when trying to parse a UTM coordinate.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as a spherical or UTM coordinate.. + + + + + Looks up a localized string similar to The specified string could not be recognized as a valid UTM coordinate.. + + + + + Looks up a localized string similar to A UTM zone letter can only be one character long. Multiple characters were encountered.. + + + + + Looks up a localized string similar to A UTM zone number can only be one or two characters long. Multiple characters were encountered.. + + + + + Looks up a localized string similar to No UTM zone letter could be located within the specified string.. + + + + + Looks up a localized string similar to No UTM zone number could be located within the specified string.. + + + + + Looks up a localized string similar to The total area could not be calculated.. + + + + + Looks up a localized string similar to The total distance could not be calculated.. + + + + + Looks up a localized string similar to The range must be a distance greater than or equal to zero.. + + + + + Looks up a localized string similar to Height must be a number greater than zero.. + + + + + Looks up a localized string similar to The specified value could not be parsed into a RectangleD object because four delimited values are required (Top, Left, Bottom, Right).. + + + + + Looks up a localized string similar to Width must be a number greater than zero.. + + + + + Looks up a localized string similar to Two values must be supplied to create a SizeD object from a string. Verify that the CultureInfo passed matches the delimiter used to separate the values.. + + + + + Looks up a localized string similar to The specified format could not be fully recognized as a speed measurement.. + + + + + Looks up a localized string similar to The numeric portion of the speed measurement could not be recognized.. + + + + + Looks up a localized string similar to The unit portion of the speed measurement could not be recognized.. + + + + + Looks up a localized string similar to Trial License Expires {0} ({1} days remaining). + + + + + Looks up a localized string similar to Would you like to go online to try and extend your free trial now?. + + + + + Looks up a localized string similar to Purchased license keys cannot be used as trial license keys. Please use another key or contact DotSpatial.Positioning for further assistance.. + + + + + Looks up a localized string similar to Sorry, the trial key for the following DotSpatial.Positioning assembly expired on {0}. You can go online to try and extend your trial another month, or you can purchase a license key online.\r\n\r\n{1}. + + + + + Looks up a localized string similar to DotSpatial.Positioning Trial Has Expired. + + + + + Represents a number as a fraction of one hundred. + + + These examples create Percent objects using different + constructors. + + // Create a percentage of 25% + Percent twentyFivePercent = new Percent(0.25f); + + + ' Create a percentage of 25% + Dim TwentyFivePercent As New Percent(0.25) + + + // Create a percentage of 25% + Percent twentyFivePercent = New Percent("25.4%", CultureInfo.InvariantCulture); + + + ' Create a percentage of 25% + Dim TwentyFivePercent As New Percent("25.5%", CultureInfo.InvariantCulture) + + + This class is used to express one quantity relative to another quantity. + Percentage values are presented in string form using the percent symbol of the + local culture (usually the percent symbol "%"). When percentage values are + expressed in decimal form the value is divided by one hundred. In other words, the + value "25%" is equivalent to 0.25. + This class is culture-sensitive, meaning that both the percent symbol and the + numeric format is interpreted and presented differently depending on the local + culture. As a result, the CultureInfo object should be used any + time a value is parsed from a String or output as a String using + the ToString method. + + + + + + + + + Represents a percentage value of zero. + + + A Percentage value, representing 0% and + 0.0. + + + + + Represents a value of one hundred percent. + + + A Percentage value, meaning 100% or + 1.0. + + + + + Represents a percentage of fifty percent. + + + A Percentage value, representing 50% or + 0.5. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a value of twenty-five percent. + + + A Percentage value, representing 25% or + 0.25. + + + + + Creates a new instance using the specified value. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Returns the percentage of the specified value. + + The value. + + + + + Returns the percentage of the specified value. + + The value. + + + + + Returns the percentage of the specified value. + + The value. + + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns the percentage formatted as a String. + + A that represents this instance. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Returns the percentage of the specified value. + + The left. + The right. + The result of the operator. + + + + Returns the percentage of the specified value. + + The left. + The right. + The result of the operator. + + + + Returns the percentage of the specified value. + + The left. + The right. + The result of the operator. + + + + Returns the percentage of the specified value. + + The value. + + + + + Returns the percentage of the specified value. + + The value. + + + + + Returns the percentage of the specified value. + + The value. + + + + + Converts the specified value to a Percent object. + + The value. + The result of the conversion. + + + + Converts the specified value to a Percent object. + + The value. + The result of the conversion. + + + + Converts the specified value to a Percent object. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns the percentage formatted as a String. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Returns the decimal value of the percentage. + + The value of a Percent object is 1/100th of the + percentage. In other words, if the percentage is "15%" then the Value + property will return 0.15, and a percentage of "100%" means a + Value of 1.0. + + + + Returns whether the value equals zero. + + + + + Represents a coordinate system based on interpretations of the Earth's shape and size. + + Ellipsoid Class + Over the course of history, advances in technology have given people the + ability to more accurately measure the shape and size of the Earth. Since countries + have built significant infrastructure based upon older coordinate systems, they + cannot immediately abandon them in favor of new ones. As a result, there are now + over fifty interpretations of Earth's shape and size in use all over the + world. + Some datums, such as World Geodetic System 1984 (or WGS84 for short) are + becoming more widely used throughout the world, and this datum is used by nearly + all GPS devices. However, while the world is slowly standardizing its datums, some + datums will not be abandoned because they remain quite accurate for a specific, + local area. + A datum on its own is nothing more than a more granular interpretation of an + ellipsoid. Typically, more specific coordinate transformation information is + further associated with a datum to produce meaningful information. For example, + Helmert and Molodensky coordinate conversion formulas use several local conversion + parameters for each datum. + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be set via constructors). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Not specified (based on the Airy 1830 ellipsoid) + + + + + Not specified (based on the Airy Modified 1849 ellipsoid) + + + + + Not specified (based on the Australian National Spheroid ellipsoid) + + + + + Not specified (based on the Bessel 1841 ellipsoid) + + + + + Not specified (based on the Bessel Modified ellipsoid) + + + + + Not specified (based on the Bessel Namibia (GLM) ellipsoid) + + + + + Not specified (based on the Clarke 1858 ellipsoid) + + + + + Not specified (based on the Clarke 1866 ellipsoid) + + + + + Not specified (based on the Clarke 1866 Michigan ellipsoid) + + + + + Not specified (based on the Clarke 1880 (Benoit) ellipsoid) + + + + + Not specified (based on the Clarke 1880 (IGN) ellipsoid) + + + + + Not specified (based on the Clarke 1880 (RGS) ellipsoid) + + + + + Not specified (based on the Clarke 1880 (Arc) ellipsoid) + + + + + Not specified (based on the Clarke 1880 (SGA 1922) ellipsoid) + + + + + Not specified (based on the Everest 1830 (1937 Adjustment) ellipsoid) + + + + + Not specified (based on the Everest 1830 (1967 Definition) ellipsoid) + + + + + Not specified (based on the Everest 1830 Modified ellipsoid) + + + + + Not specified (based on the GRS 1980 ellipsoid) + + + + + Not specified (based on the Helmert 1906 ellipsoid) + + + + + Not specified (based on the Indonesian National Spheroid ellipsoid) + + + + + Not specified (based on the International 1924 ellipsoid) + + + + + Not specified (based on the Krassowsky 1940 ellipsoid) + + + + + Not specified (based on the NWL 9D ellipsoid) + + + + + Not specified (based on the Plessis 1817 ellipsoid) + + + + + Not specified (based on the Struve 1860 ellipsoid) + + + + + Not specified (based on the War Office ellipsoid) + + + + + Not specified (based on the WGS 84 ellipsoid) + + + + + Not specified (based on the GEM 10C ellipsoid) + + + + + Not specified (based on the OSU86F ellipsoid) + + + + + Not specified (based on the OSU91A ellipsoid) + + + + + Not specified (based on the Clarke 1880 ellipsoid) + + + + + Not specified (based on the Sphere ellipsoid) + + + + + Not specified (based on the GRS 1967 ellipsoid) + + + + + Not specified (based on the Average Terrestrial System 1977 ellipsoid) + + + + + Not specified (based on the Everest (1830 Definition) ellipsoid) + + + + + Not specified (based on the WGS 72 ellipsoid) + + + + + Not specified (based on the Everest 1830 (1962 Definition) ellipsoid) + + + + + Not specified (based on the Everest 1830 (1975 Definition) ellipsoid) + + + + + Not specified (based on the GRS 1980 Authalic Sphere ellipsoid) + + + + + Not specified (based on the Clarke 1866 Authalic Sphere ellipsoid) + + + + + Not specified (based on the International 1924 Authalic Sphere ellipsoid) + + + + + Not specified (based on the Hughes 1980 ellipsoid) + + + + + Greek + + + + + Greek Geodetic Reference System 1987 + + + + + Average Terrestrial System 1977 + + + + + Kartastokoordinaattijarjestelma (1966) + + + + + Rikets koordinatsystem 1990 + + + + + Samboja + + + + + Lithuania 1994 (ETRS89) + + + + + Tete + + + + + Madzansua + + + + + Observatario + + + + + Moznet (ITRF94) + + + + + Indian 1960 + + + + + Represents the Indian datum. + + + + + Final Datum 1958 + + + + + Estonia 1992 + + + + + PDO Survey Datum 1993 + + + + + Old Hawaiian + + + + + St. Lawrence Island + + + + + St. Paul Island + + + + + St. George Island + + + + + Puerto Rico + + + + + NAD83 Canadian Spatial Reference System + + + + + Israel + + + + + Locodjo 1965 + + + + + Abidjan 1987 + + + + + Kalianpur 1937 + + + + + Kalianpur 1962 + + + + + Kalianpur 1975 + + + + + Hanoi 1972 + + + + + Hartebeesthoek94 + + + + + CH1903 + + + + + CH1903+ + + + + + Swiss Terrestrial Reference Frame 1995 + + + + + NAD83 (High Accuracy Regional Network) + + + + + Rassadiran + + + + + European Datum 1950(1977) + + + + + Dabola 1981 + + + + + Jednotne Trigonometricke Site Katastralni + + + + + Mount Dillon + + + + + Naparima 1955 + + + + + European Libyan Datum 1979 + + + + + Chos Malal 1914 + + + + + Pampa del Castillo + + + + + Korean Datum 1985 + + + + + Yemen National Geodetic Network 1996 + + + + + South Yemen + + + + + Bissau + + + + + Korean Datum 1995 + + + + + New Zealand Geodetic Datum 2000 + + + + + Accra + + + + + American Samoa 1962 + + + + + Sistema de Referencia Geocentrico para America del Sur 1995 + + + + + Reseau Geodesique Francais 1993 + + + + + Posiciones Geodesicas Argentinas + + + + + IRENET95 + + + + + Sierra Leone Colony 1924 + + + + + Sierra Leone 1968 + + + + + Australian Antarctic Datum 1998 + + + + + Pulkovo 1942/83 + + + + + Pulkovo 1942/58 + + + + + Estonia 1997 + + + + + Luxembourg 1930 + + + + + Azores Occidental Islands 1939 + + + + + Represents the Observatorio Meteorologico datum of 1939. + + + + + Azores Central Islands 1948 + + + + + Represents the Graciosa Base SW datum of 1948. + + + + + Azores Oriental Islands 1940 + + + + + Madeira 1936 + + + + + OSNI 1952 + + + + + Red Geodesica Venezolana + + + + + Posiciones Geodesicas Argentinas 1998 + + + + + Albanian 1987 + + + + + Douala 1948 + + + + + Manoca 1962 + + + + + Qornoq 1927 + + + + + Scoresbysund 1952 + + + + + Ammassalik 1958 + + + + + Garoua + + + + + Kousseri + + + + + Egypt 1930 + + + + + Pulkovo 1995 + + + + + Adindan + + + + + Australian Geodetic Datum 1966 + + + + + Australian Geodetic Datum 1984 + + + + + Ain el Abd 1970 + + + + + Afgooye + + + + + Agadez + + + + + Lisbon 1937 + + + + + Aratu + + + + + Arc 1950 + + + + + Arc 1960 + + + + + Batavia + + + + + Barbados 1938 + + + + + Beduaram + + + + + Beijing 1954 + + + + + Reseau National Belge 1950 + + + + + Bermuda 1957 + + + + + Bogota 1975 + + + + + Bukit Rimpah + + + + + Camacupa + + + + + Campo Inchauspe + + + + + Cape + + + + + Carthage + + + + + Chua + + + + + Corrego Alegre + + + + + Cote d'Ivoire + + + + + Deir ez Zor + + + + + Douala + + + + + Egypt 1907 + + + + + European Datum 1950 + + + + + European Datum 1987 + + + + + Fahud + + + + + Gandajika 1970 + + + + + Garoua + + + + + Guyane Francaise + + + + + Hu Tzu Shan + + + + + Hungarian Datum 1972 + + + + + Indonesian Datum 1974 + + + + + Indian 1954 + + + + + Indian 1975 + + + + + Jamaica 1875 + + + + + Jamaica 1969 + + + + + Kalianpur 1880 + + + + + Kandawala + + + + + Kertau 1968 + + + + + Kuwait Oil Company + + + + + La Canoa + + + + + Provisional South American Datum 1956 + + + + + Lake + + + + + Leigon + + + + + Liberia 1964 + + + + + Lome + + + + + Luzon 1911 + + + + + Hito XVIII 1963 + + + + + Represents the Provisional South Chilean datum of 1963. + + + + + Herat North + + + + + Mahe 1971 + + + + + Makassar + + + + + European Terrestrial Reference System 1989 + + + + + Malongo 1987 + + + + + Manoca + + + + + Merchich + + + + + Massawa + + + + + Minna + + + + + Mhast + + + + + Monte Mario + + + + + M'poraloko + + + + + North American Datum 1927 + + + + + NAD Michigan + + + + + North American Datum 1983 + + + + + Nahrwan 1967 + + + + + Naparima 1972 + + + + + New Zealand Geodetic Datum 1949 + + + + + Represents the Geodetic Datum of 1949. + + + + + NGO 1948 + + + + + Datum 73 + + + + + Nouvelle Triangulation Francaise + + + + + NSWC 9Z-2 + + + + + OSGB 1936 + + + + + Represents the Ordnance Survey of Great Britain datum of 1936. + + + + + OSGB 1970 (SN) + + + + + OS (SN) 1980 + + + + + Padang 1884 + + + + + Palestine 1923 + + + + + Congo 1960 Pointe Noire + + + + + Geocentric Datum of Australia 1994 + + + + + Pulkovo 1942 + + + + + Qatar 1974 + + + + + Qatar 1948 + + + + + Qornoq + + + + + Loma Quintana + + + + + Amersfoort + + + + + South American Datum 1969 + + + + + Sapper Hill 1943 + + + + + Schwarzeck + + + + + Segora + + + + + Serindung + + + + + Sudan + + + + + Tananarive 1925 + + + + + Timbalai 1948 + + + + + TM65 + + + + + Represents the Ireland datum of 1965. + + + + + Geodetic Datum of 1965 + + + + + Tokyo + + + + + Trinidad 1903 + + + + + Trucial Coast 1948 + + + + + Voirol 1875 + + + + + Bern 1938 + + + + + Nord Sahara 1959 + + + + + Stockholm 1938 + + + + + Yacare + + + + + Yoff + + + + + Zanderij + + + + + Militar-Geographische Institut + + + + + Represents the Hermannskogel datum. + + + + + Reseau National Belge 1972 + + + + + Deutsches Hauptdreiecksnetz + + + + + Conakry 1905 + + + + + Dealul Piscului 1933 + + + + + Dealul Piscului 1970 + + + + + National Geodetic Network + + + + + Kuwait Utility + + + + + World Geodetic System 1972 + + + + + WGS 72 Transit Broadcast Ephemeris + + + + + World Geodetic System 1984 + + + + + Anguilla 1957 + + + + + Antigua 1943 + + + + + Dominica 1945 + + + + + Grenada 1953 + + + + + Montserrat 1958 + + + + + St. Kitts 1955 + + + + + Represents the Fort Thomas datum of 1955. + + + + + St. Lucia 1955 + + + + + St. Vincent 1945 + + + + + North American Datum 1927 (1976) + + + + + North American Datum 1927 (CGQ77) + + + + + Xian 1980 + + + + + Hong Kong 1980 + + + + + Japanese Geodetic Datum 2000 + + + + + Gunung Segara + + + + + Qatar National Datum 1995 + + + + + Porto Santo 1936 + + + + + Selvagem Grande + + + + + South American Datum 1969 + + + + + SWEREF99 + + + + + Point 58 + + + + + Fort Marigot + + + + + Guadeloupe 1948 + + + + + Centre Spatial Guyanais 1967 + + + + + Reseau Geodesique Francais Guyane 1995 + + + + + Martinique 1938 + + + + + Reunion 1947 + + + + + Reseau Geodesique de la Reunion 1992 + + + + + Tahiti 52 + + + + + Tahaa 54 + + + + + IGN72 Nuku Hiva + + + + + K0 1949 + + + + + Combani 1950 + + + + + IGN56 Lifou + + + + + IGN72 Grande Terre + + + + + ST87 Ouvea + + + + + Petrels 1972 + + + + + Pointe Geologie Perroud 1950 + + + + + Saint Pierre et Miquelon 1950 + + + + + MOP78 + + + + + Reseau de Reference des Antilles Francaises 1991 + + + + + IGN53 Mare + + + + + ST84 Ile des Pins + + + + + ST71 Belep + + + + + NEA74 Noumea + + + + + Reseau Geodesique Nouvelle Caledonie 1991 + + + + + Grand Comoros + + + + + International Terrestrial Reference Frame 1988 + + + + + International Terrestrial Reference Frame 1989 + + + + + International Terrestrial Reference Frame 1990 + + + + + International Terrestrial Reference Frame 1991 + + + + + International Terrestrial Reference Frame 1992 + + + + + International Terrestrial Reference Frame 1993 + + + + + International Terrestrial Reference Frame 1994 + + + + + International Terrestrial Reference Frame 1996 + + + + + International Terrestrial Reference Frame 1997 + + + + + International Terrestrial Reference Frame 2000 + + + + + Reykjavik 1900 + + + + + Hjorsey 1955 + + + + + Islands Network 1993 + + + + + Helle 1954 + + + + + Latvia 1992 + + + + + Porto Santo 1995 + + + + + Azores Oriental Islands 1995 + + + + + Azores Central Islands 1995 + + + + + Lisbon 1890 + + + + + Iraq-Kuwait Boundary Datum 1992 + + + + + European Datum 1979 + + + + + Istituto Geografico Militaire 1995 + + + + + Voirol 1879 + + + + + Chatham Islands Datum 1971 + + + + + Chatham Islands Datum 1979 + + + + + Sistema de Referencia Geocentrico para America del Sur 2000 + + + + + Guam 1963 + + + + + Vientiane 1982 + + + + + Lao 1993 + + + + + Lao National Datum 1997 + + + + + Jouik 1961 + + + + + Nouakchott 1965 + + + + + Mauritania 1999 + + + + + Gulshan 303 + + + + + Philippine Reference System 1992 + + + + + Gan 1970 + + + + + Gandajika + + + + + Marco Geocentrico Nacional de Referencia + + + + + Reseau Geodesique de la Polynesie Francaise + + + + + Fatu Iva 72 + + + + + IGN63 Hiva Oa + + + + + Tahiti 79 + + + + + Moorea 87 + + + + + Maupiti 83 + + + + + Nakhl-e Ghanem + + + + + Posiciones Geodesicas Argentinas 1994 + + + + + Katanga 1955 + + + + + Kasai 1953 + + + + + IGC 1962 Arc of the 6th Parallel South + + + + + IGN 1962 Kerguelen + + + + + Le Pouce 1934 + + + + + IGN Astro 1960 + + + + + Institut Geographique du Congo Belge 1955 + + + + + Mauritania 1999 + + + + + Missao Hidrografico Angola y Sao Tome 1951 + + + + + Mhast (onshore) + + + + + Mhast (offshore) + + + + + Egypt Gulf of Suez S-650 TL + + + + + Tern Island 1961 + + + + + Cocos Islands 1965 + + + + + Represents the Anna 1 Astro datum of 1965. + + + + + Iwo Jima 1945 + + + + + Represents the Astro Beacon "E" datum of 1945. + + + + + St. Helena 1971 + + + + + Represents the Astro DOS 71/4 datum. + + + + + Marcus Island 1952 + + + + + Represents the Astronomical Station datum of 1952. + + + + + Ascension Island 1958 + + + + + Ayabelle Lighthouse + + + + + Bellevue + + + + + Camp Area Astro + + + + + Phoenix Islands 1966 + + + + + Represents the Canton Astro datum of 1966. + + + + + Cape Canaveral + + + + + Solomon 1968 + + + + + Represents the DOS datum of 1968. + + + + + Represents the GUX 1 Astro datum. + + + + + Easter Island 1967 + + + + + Fiji Geodetic Datum 1986 + + + + + Fiji 1956 + + + + + South Georgia 1968 + + + + + Represents the ISTS 061 Astro datum of 1968. + + + + + Grand Cayman 1959 + + + + + Diego Garcia 1969 + + + + + Represents the ISTS 073 Astro datum of 1969. + + + + + Johnston Island 1961 + + + + + Little Cayman 1961 + + + + + Represents the L. C. 5 Astro datum of 1961. + + + + + Midway 1961 + + + + + Pico de la Nieves + + + + + Pitcairn 1967 + + + + + Santo 1965 + + + + + Viti Levu 1916 + + + + + Marshall Islands 1960 + + + + + Wake Island 1952 + + + + + Tristan 1968 + + + + + Kusaie 1951 + + + + + Deception Island + + + + + Geocentric datum of Korea + + + + + Hong Kong 1963 + + + + + Hong Kong 1963(67) + + + + + Parametrop Zemp 1990 + + + + + Faroe Datum 1954 + + + + + Geodetic Datum of Malaysia 2000 + + + + + Karbala 1979 (Polservice) + + + + + Nahrwan 1934 + + + + + Rauenberg Datum/83 + + + + + Potsdam Datum/83 + + + + + Greenland 1996 + + + + + Vanua Levu 1915 + + + + + Reseau Geodesique de Nouvelle Caledonie 91-93 + + + + + ST87 Ouvea + + + + + Kertau (RSO) + + + + + Represents the Kertau datum of 1948. + + + + + Viti Levu 1912 + + + + + fk89 + + + + + Libyan Geodetic Datum 2006 + + + + + Datum Geodesi Nasional 1995 + + + + + Vietnam 2000 + + + + + SVY21 + + + + + Jamaica 2001 + + + + + CH1903 (Bern) + + + + + Bogota 1975 (Bogota) + + + + + Lisbon 1937 (Lisbon) + + + + + Makassar (Jakarta) + + + + + Militar-Geographische Institut (Ferro) + + + + + Monte Mario (Rome) + + + + + Nouvelle Triangulation Francaise (Paris) + + + + + Padang 1884 (Jakarta) + + + + + Reseau National Belge 1950 (Brussels) + + + + + Tananarive 1925 (Paris) + + + + + Voirol 1875 (Paris) + + + + + Batavia (Jakarta) + + + + + Stockholm 1938 (Stockholm) + + + + + Greek (Athens) + + + + + Carthage (Paris) + + + + + NGO 1948 (Oslo) + + + + + S-JTSK (Ferro) + + + + + Nord Sahara 1959 (Paris) + + + + + Gunung Segara (Jakarta) + + + + + Voirol 1879 (Paris) + + + + + International Terrestrial Reference Frame 2005 + + + + + Ancienne Triangulation Francaise (Paris) + + + + + Nord de Guerre (Paris) + + + + + Madrid 1870 (Madrid) + + + + + Lisbon 1890 (Lisbon) + + + + + Represents the Estonia Coordinate System datum of 1937. + + + + + Represents the Old Egyptian datum of 1907. + + + + + Represents the Oman datum. + + + + + Represents the Pointe Noire datum. + + + + + Represents the Rome datum of 1940. + + + + + Represents the Sao Braz datum. + + + + + Represents the South Asia datum. + + + + + Represents the Voirol datum of 1960. + + + + + Represents the Wake Eniwetok datum of 1960. + + + + + + + + + + + + + + + Represents the default datum used by the DotSpatial.Positioning, WGS1984. + + + + + Creates a new instance using the specified name and reference ellipsoid. + + The name. + The ellipsoid. + + + + Internal constructor for static list generation + + The epsg number. + The ellipsoid. + The name. + + + + Internal constructor for static list generation + + The epsg number. + The ellipsoid. + The meridian. + The name. + + + + Validates the datum. Called in the constructor. + + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + The to compare with the current . + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a Datum object matching the specified name. + + A String describing the name of an existing datum. + A Datum object matching the specified string, or null if no datum was found. + + + + Returns the datum corresponding to the EPSG code + + The epsg number. + + + + + Compares the current instance to the specified datum object. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Returns the name of the datum. + + + + + European Petroleum Survey Group number for this datum. The ESPG standards are now maintained by OGP + (International Association of Oil and Gas Producers). + + + + + Returns the interpretation of Earth's shape associated with a datum. + + Read only. An + Ellipsoid + object. + + This example gets information on the ellipsoid associated with the WGS84 datum. + + ' Get information about the NAD1983 datum + Dim MyDatum As Datum = Geodesy.GetDatum(DatumType.NorthAmerican1983) + ' Get the ellipsoid associated with this datum + Dim MyEllipsoid As Ellipsoid = MyDatum.Ellipsoid + ' Write the semi-major axis of the ellipsoid + Debug.WriteLine(MyEllipsoid.SemiMajorAxis.ToString()) + + + // Get information about the NAD1983 datum + Datum MyDatum = Geodesy.GetDatum(DatumType.NorthAmerican1983); + // Get the ellipsoid associated with this datum + Ellipsoid MyEllipsoid = MyDatum.Ellipsoid; + // Write the semi-major axis of the ellipsoid + Debug.WriteLine(MyEllipsoid.SemiMajorAxis.ToString()); + + + + Ellipsoid Class + Each datum is associated with an ellipsoid, which is an interpretation of Earth's shape and + size. + + + + Returns the prime meridian assocated with this Datum. + + Most datums use Greenwich as the prime meridian. However, several systems offset coordinates + using a local meridian. This value reflects that usage. + + + + Represents the measurement of a straight line between between two points on + Earth's surface. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the distance from the center of the Earth to the equator according to the + WGS1984 ellipsoid. + + EarthsPolarRadiusWgs1984 + Field + + EarthsAverageRadius Field + + + + Represents an infinite distance. + + + + + Returns the distance from the center of the Earth to a pole according to the + WGS1984 ellipsoid. + + EarthsEquatorialRadiusWgs1984 Field + + EarthsAverageRadius Field + + + + Returns the average radius of the Earth. + + EarthsEquatorialRadiusWgs1984 Field + + EarthsPolarRadiusWgs1984 Field + + + + + + + + + + + + + + + + + + + + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance using the specified value and unit type. + + The value. + The units. + + This example uses a constructor to create a new distance of 50km. + + Dim MyDistance As New Distance(50, DistanceUnit.Kilometers) + + + Distance MyDistance = new Distance(50, DistanceUnit.Kilometers); + + + + + + Creates a new instance from the the specified string. + + The value. + Parse method requires a valid distance measurement. + + 1. The numeric portion of the distance measurement was not recognized.
+ 2. The distance unit type was not recognized or not specified.
+ + + This example demonstrates how the to use this constructor. + + Dim MyDistance As Distance + ' Create a distance of 50 kilometers + MyDistance = New Distance("50 km") + ' Create a distance of 14, 387 miles, then convert it into inches + MyDistance = New Distance("14, 387 statute miles").ToInches + ' Parse an untrimmed measurement into 50 feet + MyDistance = New Distance(" 50 ' ") + + + Distance MyDistance; + // Create a distance of 50 kilometers + MyDistance = new Distance("50 km"); + // Create a distance of 14, 387 miles, then convert it into inches + MyDistance = new Distance("14, 387 statute miles").ToInches; + // Parse an untrimmed measurement into 50 feet + MyDistance = new Distance(" 50 ' "); + + + This powerful constructor is typically used to initialize an instance with a + string-based distance measurement, such as one entered by a user or read from a file. + This constructor can accept any output created via the + ToString method. +
+ + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Creates a new instance from the specified XML. + + The reader. + + + + Returns the time required to travel the entire distance at the specified speed. + + A Speed object representing a travel speed. + A TimeSpan object representing the total time required to travel the entire distance. + + + + Returns the speed required to travel the entire distance in the specified time. + + A TimeSpan object representing the time to travel the entire distance. + A Speed object representing the speed required to travel the distance in exactly the time specified. + + + + Converts the current measurement into feet. + + A new Distance object containing the converted + value. + ToInches Method + + ToKilometers Method + + ToMeters Method + + ToNauticalMiles Method + + ToStatuteMiles Method + + + This example converts various distances into feet. notice that the ToFeet method converts distances + from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Inches) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Kilometers) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToFeet.ToString) + Debug.WriteLine(Distance2.ToFeet.ToString) + Debug.WriteLine(Distance3.ToFeet.ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Inches); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Kilometers); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToFeet().ToString()); + Debug.WriteLine(Distance2.ToFeet().ToString()); + Debug.WriteLine(Distance3.ToFeet().ToString()); + + + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into inches. + + A new Distance object containing the converted + value. + + This example converts various distances into inches. notice that the ToInches method converts distances + from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Kilometers) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToInches.ToString) + Debug.WriteLine(Distance2.ToInches.ToString) + Debug.WriteLine(Distance3.ToInches.ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Kilometers); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToInches().ToString()); + Debug.WriteLine(Distance2.ToInches().ToString()); + Debug.WriteLine(Distance3.ToInches().ToString()); + + + + ToFeet Method + + ToKilometers Method + + ToMeters Method + + ToNauticalMiles Method + + ToStatuteMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into kilometers. + + A new Distance object containing the converted + value. + + This example converts various distances into kilometers. notice that the ToKilometers method converts + distances from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Inches) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToKilometers.ToString) + Debug.WriteLine(Distance2.ToKilometers.ToString) + Debug.WriteLine(Distance3.ToKilometers.ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Inches); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToKilometers().ToString()); + Debug.WriteLine(Distance2.ToKilometers().ToString()); + Debug.WriteLine(Distance3.ToKilometers().ToString()); + + + + ToFeet Method + + ToInches Method + + ToMeters Method + + ToNauticalMiles Method + + ToStatuteMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into meters. + + A new Distance object containing the converted + value. + + This example converts various distances into meters. notice that the ToMeters method converts distances + from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Inches) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToMeters().ToString) + Debug.WriteLine(Distance2.ToMeters().ToString) + Debug.WriteLine(Distance3.ToMeters().ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Inches); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToMeters().ToString()); + Debug.WriteLine(Distance2.ToMeters().ToString()); + Debug.WriteLine(Distance3.ToMeters().ToString()); + + + + ToFeet Method + + ToInches Method + + ToKilometers Method + + ToNauticalMiles Method + + ToStatuteMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into meters. + + A new Distance object containing the converted + value. + + This example converts various distances into meters. notice that the ToMeters method converts distances + from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Inches) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToMeters().ToString) + Debug.WriteLine(Distance2.ToMeters().ToString) + Debug.WriteLine(Distance3.ToMeters().ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Inches); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToMeters().ToString()); + Debug.WriteLine(Distance2.ToMeters().ToString()); + Debug.WriteLine(Distance3.ToMeters().ToString()); + + + + ToFeet Method + + ToInches Method + + ToKilometers Method + + ToNauticalMiles Method + + ToStatuteMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into nautical miles. + + A new Distance object containing the converted + value. + + This example converts various distances into nautical miles. notice that the ToNauticalMiles method + converts distances from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Inches) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToNauticalMiles.ToString) + Debug.WriteLine(Distance2.ToNauticalMiles.ToString) + Debug.WriteLine(Distance3.ToNauticalMiles.ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Inches); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToNauticalMiles().ToString()); + Debug.WriteLine(Distance2.ToNauticalMiles().ToString()); + Debug.WriteLine(Distance3.ToNauticalMiles().ToString()); + + + + ToFeet Method + + ToInches Method + + ToKilometers Method + + ToMeters Method + + ToStatuteMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Converts the current measurement into miles. + + A new Distance object containing the converted + value. + + This example converts various distances into statute miles. notice that the ToStatuteMiles method + converts distances from any source type. + + ' Create distances of different unit types + Dim Distance1 As New Distance(10, DistanceUnit.Feet) + Dim Distance2 As New Distance(20, DistanceUnit.StatuteMiles) + Dim Distance3 As New Distance(50, DistanceUnit.Inches) + ' Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToStatuteMiles.ToString) + Debug.WriteLine(Distance2.ToStatuteMiles.ToString) + Debug.WriteLine(Distance3.ToStatuteMiles.ToString) + + + // Create distances of different unit types + Distance Distance1 = new Distance(10, DistanceUnit.Feet); + Distance Distance2 = new Distance(20, DistanceUnit.StatuteMiles); + Distance Distance3 = new Distance(50, DistanceUnit.Inches); + // Convert the distance measurements to feet and output the result + Debug.WriteLine(Distance1.ToStatuteMiles().ToString()); + Debug.WriteLine(Distance2.ToStatuteMiles().ToString()); + Debug.WriteLine(Distance3.ToStatuteMiles().ToString()); + + + + ToFeet Method + + ToInches Method + + ToKilometers Method + + ToMeters Method + + ToNauticalMiles Method + This method will perform a conversion into feet regardless of the current unit + type. You may convert from any unit type to any unit type. + + + + Toes the type of the unit. + + The new units. + + + + + Attempts to adjust the unit type to keep the value above 1 and uses the local region measurement system. + + A Distance converted to the chosen unit type. + When a distance becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a distance of + 0.001 kilometers might be better expressed as 1 meter. This method will + determine the smallest Imperial unit type. + + + + Attempts to adjust the unit type to keep the value above 1 and uses the local region measurement system. + + A Distance converted to the chosen unit type. + When a distance becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a distance of + 0.001 kilometers might be better expressed as 1 meter. This method will + determine the smallest metric unit type. + + + + Attempts to adjust the unit type to keep the value above 1 and uses the local region measurement system. + + A Distance converted to the chosen unit type. + When a distance becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a distance of + 0.001 kilometers might be better expressed as 1 meter. This method will + find the smallest unit type and convert the unit to the user's local + numeric system (Imperial or Metric). + + + + Returns the distance traveled at the current speed for the specified time. + + A length of time to travel. + A Distance representing the distance travelled at + the current speed for the specified length of time. + + + + Returns a new instance rounded to the specified number of digits. + + An Integer specifying the number of digits to round off to. + + + + + Outputs the current instance as a string using the specified format. + + A combination of symbols, spaces, and any of the following case-insensitive + letters: # or 0 for the value property, and U for + distance units. Here are some examples: + + + + + + + + +
##0.## uu## uuuu# u###
+
+ A String containing the distance in the specified format. + + This example uses the ToString method to populate a TextBox with a distance measurement using a custom format. + + ' Declare a distance of 75 miles + Dim MyDistance As New Distance(75, DistanceUnit.StatuteMiles) + ' Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString("## uuu") + + + // Declare a distance of 75 miles + Distance MyDistance = new Distance(75, DistanceUnit.StatuteMiles); + // Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString("## uuu"); + + + This method allows a custom format to be applied to the ToString method. Numeric formats + will be adjusted to the machine's local UI culture. +
+ + + Adds the specified value. + + The value. + + + + + Adds the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Divides the specified value. + + The value. + + + + + Divides the specified value. + + The value. + + + + + Increments this instance. + + + + + + Decrements this instance. + + + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Compares the current instance to the specified object. + + An Object to compare with. + A Boolean, True if the values are equivalent. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Outputs the current instance as a string using the default format. + + A String containing the current distance in the default format. + + This example uses the ToString method to populate a TextBox with a distance measurement. + + ' Declare a distance of 75 miles + Dim MyDistance As New Distance(75, DistanceUnit.StatuteMiles) + ' Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString + + + // Declare a distance of 75 miles + Distance MyDistance = new Distance(75, DistanceUnit.StatuteMiles); + // Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString(); + + + The default format used is "##0.## uu" where uu is the distance unit type. + The numeric format may vary depending on the machine's local culture. + + + + Returns a random distance between 0 and 1, 000 meters. + + A Distance containing a random value, converted to local units. + + + + Returns a random distance between 0 and 1, 000 meters. + + The generator. + A Distance containing a random value, converted to local units. + + + + Returns a random distance between zero and the specified maximum. + + The maximum. + + + + + Froms the centimeters. + + The value. + + + + + Froms the feet. + + The value. + + + + + Froms the inches. + + The value. + + + + + Froms the kilometers. + + The value. + + + + + Froms the meters. + + The value. + + + + + Froms the nautical miles. + + The value. + + + + + Froms the statute miles. + + The value. + + + + + Froms the centimeters. + + The value. + + + + + Froms the feet. + + The value. + + + + + Froms the inches. + + The value. + + + + + Froms the kilometers. + + The value. + + + + + Froms the meters. + + The value. + + + + + Froms the nautical miles. + + The value. + + + + + Froms the statute miles. + + The value. + + + + + Parses the distance unit. + + The value. + + + + + Converts a string-based distance measurement into a Distance object. + + A String describing a case-insensitive distance measurement, + in any of the following formats, where N represents a numeric + value: + + N m + N meters + N meter + N metre + N metres + N km + N kilometers + N kilometer + N kilometre + N kilometres + N ft + N' + N foot + N feet + N in + N" + N inch + N inches + N mi + N mile + N miles + N nm + N nautical mile + N nautical miles + + A new Distance object containing the parsed value and + unit type. + Parse method requires a valid distance measurement. + + 1. The numeric portion of the distance measurement was not recognized.
+ 2. The distance unit type was not recognized or not specified.
+ + + This example demonstrates how the Parse method can convert several string formats into a Distance object. + + Dim NewDistance As Distance + ' Create a distance of 50 kilometers + NewDistance = Distance.Parse("50 km") + ' Create a distance of 14, 387 miles, then convert it into inches + NewDistance = Distance.Parse("14, 387 statute miles").ToInches + ' Parse an untrimmed measurement into 50 feet + NewDistance = Distance.Parse(" 50 ' ") + + + Distance NewDistance; + // Create a distance of 50 kilometers + NewDistance = Distance.Parse("50 km"); + // Create a distance of 14, 387 miles, then convert it into inches + NewDistance = Distance.Parse("14, 387 statute miles").ToInches; + // Parse an untrimmed measurement into 50 feet + NewDistance = Distance.Parse(" 50 ' "); + + + This powerful constructor is typically used to convert a string-based distance + measurement, such as one entered by a user or read from a file, into a + Distance object. This method will accept any output created via the + ToString method. +
+ + + Parses the specified value. + + The value. + The culture. + + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Compares the current instance to the specified distance object. + + A Distance object to compare with. + A Boolean, True if the values are equivalent. + This method compares the current instance to the specified object up to four digits of precision. + + + + Compares the current instance to the specified value, distance units, and precision. + + A Distance object to compare with. + An Integer specifying the number of digits to compare with. + A Boolean, True if the values are equivalent. + This method compares the current instance to the specified object at up to the specified number of digits of precision. + + + + Outputs the current instance as a string using the specified format and local culture. + + A combination of symbols, spaces, and any of the following case-insensitive + letters: # or 0 for the value property, and U for + distance units. Here are some examples: + + + + + + + + +
##0.## uu## uuuu# u###
+
+ Information about the culture to apply to the numeric format. + A String containing the distance in the specified format. + + This example uses the ToString method to populate a TextBox with a distance measurement using a custom format and culture information. + + ' Declare a distance of 75 miles + Dim MyDistance As New Distance(75, DistanceUnit.StatuteMiles) + ' Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString("## uuu", CultureInfo.CurrentUICulture) + + + // Declare a distance of 75 miles + Distance MyDistance = new Distance(75, DistanceUnit.StatuteMiles); + // Set the text box to the distance, formatted as a string + MyTextBox.Text = MyDistance.ToString("## uuu", CultureInfo.CurrentUICulture); + + + This method allows a custom format to be applied to the ToString method. Numeric formats + will be adjusted to the machine's local UI culture. +
+ + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the numeric portion of a distance measurement. + + A Double value. + + This example demonstrates how to use the Value property to modify a distance object. The object + is then converted to kilometers. + + ' Declare a distance of 0 mi. + Dim MyDistance As New Distance(0, DistanceUnit.StatuteMiles) + ' Change the distance to 100 mi. + MyDistance.Value = 100 + ' Change the distance to 12.3456 mi. + MyDistance.Value = 12.3456 + ' Convert the measurement into kilometers + MyDistance = MyDistance.ToKilometers + + + // Declare a distance of 0 mi. + Distance MyDistance = new Distance(0, DistanceUnit.StatuteMiles); + // Change the distance to 100 mi. + MyDistance.Value = 100; + // Change the distance to 12.3456 mi. + MyDistance.Value = 12.3456; + // Convert the measurement into kilometers + MyDistance = MyDistance.ToKilometers; + + + + Units Property + This property is paired with the Units property to form a complete distance + measurement. + + + + Describes the unit portion of a distance measurement. + + A value from the DistanceUnit enumeration. Default + is DistanceUnit.Meters. + Value Property + Each distance measurement is comprised of a numeric value + and a unit type. This property describes the numeric value so that it may be + explicitly identified. An instance of the Distance class may have a value + of zero, but it is impossible to have an unspecified unit type. + Use conversion methods instead of setting the + Units property + When the Units property is changed, no conversion is performed on the + Value property. This could lead to mathematical errors which are difficult to debug. Use + conversion methods such as ToFeet or ToMeters instead. + + This example demonstrates poor programming when trying to add 100 feet to 100 meters + by changing the Units property of the Distance2 object. + + ' Declare two distances + Dim Distance1 As New Distance(50, DistanceUnit.Meters) + Dim Distance2 As New Distance(100, DistanceUnit.Feet) + ' Store their sum in another variable + Dim Distance3 As New Distance(0, DistanceUnit.Meters) + ' INCORRECT: Changing Units property does not convert Distance2! + Distance2.Units = DistanceUnit.Meters + Distance3.Value = Distance1.Value + Distance2.Value + + + // Declare two distances + Distance Distance1 = new Distance(50, DistanceUnit.Meters); + Distance Distance2 = new Distance(100, DistanceUnit.Feet); + // Store their sum in another variable + Distance Distance3 = new Distance(0, DistanceUnit.Meters); + // INCORRECT: Changing Units property does not convert Distance2! + Distance2.Units = DistanceUnit.Meters; + Distance3.Value = Distance1.Value + Distance2.Value; + + The correct technique is to use a conversion method to change the unit type instead + of modifying the Units property. + + ' Declare two distances + Dim Distance1 As New Distance(50, DistanceUnit.Meters) + Dim Distance2 As New Distance(100, DistanceUnit.Feet) + ' Store their sum in another variable + Dim Distance3 As New Distance(0, DistanceUnit.Meters) + ' CORRECT: The ToMeters method is used to standardize unit types + Distance3.Value = Distance1.ToMeters().Value + Distance2.ToMeters().Value + + + // Declare two distances + Distance Distance1 = new Distance(50, DistanceUnit.Meters); + Distance Distance2 = new Distance(100, DistanceUnit.Feet); + // Store their sum in another variable + Distance Distance3 = new Distance(0, DistanceUnit.Meters); + // CORRECT: The ToMeters method is used to standardize unit types + Distance3.Value = Distance1.ToMeters().Value + Distance2.ToMeters().Value; + + + + + + Returns whether the value is invalid or unspecified. + + + + + Returns whether the value is zero. + + + + + Returns whether the unit of measurement is metric. + + + + + Returns whether the value is infinite. + + + + + Indicates the unit of measure for distance measurements. + + Value Property (Distance Class) + + Units Property (Distance Class) + This enumeration is most frequently used by the + Units property of the + Distance + class in conjunction with the Value + property to describe a straight-line distance. + + + Metric System. Kilometers (thousands of meters). + + + Metric System. 1/1000th of a kilometer. + + + Metric System. 1/100th of a meter. + + + Nautical miles, also known as "sea miles". + + + Imperial System. A statute mile, most often referred to just as "mile." + + + Imperial System. Feet. + + + Imperial System. Inches. + + + + Represents a vertical angular measurement between -90° and 90°. + + + These examples create new instances of Elevation objects. + + + Angle Class + + Azimuth Class + + Latitude Class + + Longitude Class + + + These examples create new instances of Elevation objects. + + Dim MyElevation As New Elevation(90) + + + Elevation MyElevation = new Elevation(90); + + + Elevation MyElevation = new Elevation(90); + + + Dim MyElevation1 As New Elevation(105, 30, 21.4) + + + Elevation MyElevation = new Elevation(105, 30, 21.4); + + + Elevation MyElevation = new Elevation(105, 30, 21.4); + + + This class is used to indicate a vertical angle where 90° represents a point + directly overhead, 0° represents the horizon (striaght ahead), and -90° represents a + point straight down. This class is typically combined with an Elevation + object (which measures a horizontal angle) to form a three-dimensional direction to an + object in space, such as a GPS satellite. + + + + + + + + + + + + + + Represents the minimum value of an angle in one turn of a circle. + + + This example creates an angle representing the minimum allowed value. + + Dim MyElevation As Elevation = Elevation.Minimum + + + Elevation MyElevation = Elevation.Minimum; + + + Elevation MyElevation = Elevation.Minimum; + + + + An Elevation with a value of -359.999999°. + + + + Represents an angle with no value. + + An Elevation containing a value of zero (0°). + + IsEmpty Property + + + + Represents an angle with infinite value. + + + + + Represents an invalid or unspecified value. + + + + + Represents the maximum value of an angle in one turn of a circle. + + + This example creates an angle representing the maximum allowed value of 359.9999°. + + Dim MyElevation As Elevation = Elevation.Maximum + + + Elevation MyElevation = Elevation.Maximum; + + + + + + Represents the point directly overhead. + + An Elevation object. + + + + Represents a vertical direction halfway up from the horizon. + + An Elevation object. + + + + Represents a vertical direction halfway below the horizon. + + An Elevation object. + + + + + + An Elevation object. + + + + Represents the point directly below one's feet. + + An Elevation object. + + + + Creates a new instance with the specified decimal degrees. + + The decimal degrees. + + This example demonstrates how to create an angle with a measurement of 90°. + + Dim MyElevation As New Elevation(90) + + + Elevation MyElevation = new Elevation(90); + + + + An Elevation containing the specified value. + + + + Creates a new instance with the specified degrees. + + The hours. + An Elevation containing the specified value. + + + + Creates a new instance with the specified hours and decimal minutes. + + The hours. + The decimal minutes. + + This example demonstrates how an angle can be created when only the hours and + minutes (in decimal form) are known. This creates a value of 12°42.345'. + + Dim MyElevation As New Elevation(12, 42.345) + + + Elevation MyElevation = new Elevation(12, 42.345); + + + An Elevation containing the specified value. + + + + Creates a new instance with the specified hours, minutes and + seconds. + + The hours. + The minutes. + The seconds. + + This example demonstrates how to create an angular measurement of 34°12'29.2 in + hours, minutes and seconds. + + Dim MyElevation As New Elevation(34, 12, 29.2) + + + Elevation MyElevation = new Elevation(34, 12, 29.2); + + + + An Elevation containing the specified value. + + + + Creates a new instance by converting the specified string. + + The value. + Parse Method + + + This example creates a new instance by parsing a string. (notice The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyElevation As New Elevation("123°45'67.8""") + + + Elevation MyElevation = new Elevation("123°45'67.8\""); + + + + An Elevation containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This constructor parses the specified string into an Elevation + object using the current culture. This constructor can parse any strings created via + the ToString method. + + + + Creates a new instance by converting the specified string using the specified + culture. + + The value. + The culture. + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This constructor parses the specified string into an Elevation + object using a specific culture. This constructor can parse any strings created via the + ToString method. + + + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Normalizes this instance. + + + Converts a measurement to its equivalent value between -90 and + 90 degrees. + + + + Returns the smallest integer greater than the specified value. + + + + + + Returns the largest integer which is smaller than the specified value. + + + + + + Returns a new instance whose value is rounded the specified number of decimals. + + An Integer specifying the number of decimals to round off to. + + + + + Returns a new instance whose Seconds property is evenly divisible by 15. + + An Elevation containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns a new angle whose Seconds property is evenly divisible by the specified amount. + + A Double between 0 and 60 indicating the interval to round + to. + An Elevation containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns the object with the smallest value. + + An Elevation object to compare to the current instance. + The Elevation containing the smallest value. + + + + Returns the object with the largest value. + + An Elevation object to compare to the current instance. + An Elevation containing the largest value. + + + + Returns an angle opposite of the current instance. + + An Elevation representing the mirrored value. + + This example creates a new Elevation of 45° then calculates its mirror + of 225°. (45 + 180) + + Dim Elevation1 As New Elevation(45) + Dim Elevation2 As Elevation = Elevation1.Mirror() + Debug.WriteLine(Elevation2.ToString()) + ' Output: 225 + + + Elevation Elevation1 = new Elevation(45); + Elevation Elevation2 = Elevation1.Mirror(); + Console.WriteLine(Elevation2.ToString()); + // Output: 225 + + + This method returns the "opposite" of the current instance. The opposite is + defined as the point on the other side of an imaginary circle. For example, if an angle + is 0°, at the top of a circle, this method returns 180°, at the bottom of the + circle. + + + + Converts the current instance into radians. + + A Radian object. + Radian Class + + Converts an angular measurement into radians before further processing. + + + This example converts a measurement of 90° into radians. + + Dim MyElevation As New Elevation(90) + Dim MyRadians As Radian = MyElevation.ToRadians() + + + Elevation MyElevation = new Elevation(90); + Radian MyRadians = MyElevation.ToRadians(); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Outputs the angle as a string using the specified format. + + The format. + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyElevation As New Elevation(45, 16.772) + Debug.WriteLine(MyElevation.ToString("h°m.mm")) + ' Output: 45°16.78 + + + Dim MyElevation As New Elevation(45, 16.772); + Debug.WriteLine(MyElevation.ToString("h°m.mm")); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd°" is used. Any + string output by this method can be converted back into an Elevation object using the + Parse method or Elevation(string) constructor. + + + + Compares the current value to another Elevation object's value. + + An Elevation, Double, or Integer + to compare with. + A Boolean, True if the object's DecimalDegrees + properties match. + This + + + + Returns a unique code for this instance. + + An Integer representing a unique code for the current + instance. + Since the Elevation class is immutable, this property may be used + safely with hash tables. + + + + Outputs the angle as a string using the default format. + + A String created using the default format. + Parse Method + + + This example outputs a value of 90 degrees in the default format of ###.#°. + + Dim MyElevation As New Elevation(90) + Debug.WriteLine(MyElevation.ToString) + ' Output: "90°" + + + Elevation MyElevation = new Elevation(90); + Debug.WriteLine(MyElevation.ToString()); + // Output: "90°" + + + This method formats the current instance using the default format of + "d.dddd°." Any string output by this method can be converted back into an Elevation + object using the Parse method or Elevation(string) + constructor. + + + + Normalizes the specified decimal degrees. + + The decimal degrees. + + Converts a measurement to its equivalent value between -90 and + 90 degrees. + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + A Double containing the decimal degree version of the specified + values. + DecimalDegrees Property + + Normalize Method + + + This example converts a value of 10°30'0" into decimal degrees (10.5). + + Dim MyValue As Double = Latitude.ToDecimalDegrees(10, 30, 0) + + + double MyValue = Latitude.ToDecimalDegrees(10, 30, 0); + + + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts an hour value into decimal degrees. + + The hours. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to a double value. + + + + Returns a random angle between 0° and 360°. + + An Elevation containing a random value. + + + + Returns a random Elevation between 0° and 360° using the specified random number + seed. + + A Random object used to ogenerate random values. + An Elevation containing a random value. + + + + Returns the object with the smallest value. + + A Elevation object to compare to value2. + A Elevation object to compare to value1. + The Elevation containing the smallest value. + + + + Returns the object with the largest value. + + A Elevation object to compare to value2. + A Elevation object to compare to value1. + A Elevation containing the largest value. + + + + Converts an angular measurement into radians. + + The value. + A Radian object. + + This example shows a quick way to convert an angle of 90° into radians. + + Dim MyRadian As Radian = Elevation.ToRadians(90) + + + Radian MyRadian = Elevation.ToRadians(90); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Converts a value in radians into an angular measurement. + + The radians. + + ToRadians + + Radian Class + + + This example uses the FromRadians method to convert a value of one + radian into an Elevation of 57°. + + ' Create a new angle equal to one radian + Dim MyRadians As New Radian(1) + Dim MyElevation As Elevation = Elevation.FromRadians(MyRadians) + Debug.WriteLine(MyElevation.ToString()) + ' Output: 57° + + + // Create a new angle equal to one radian + Radian MyRadians = new Radian(1); + Elevation MyElevation = Elevation.FromRadians(MyRadians); + Console.WriteLine(MyElevation.ToString()); + // Output: 57° + + + This function is typically used in conjunction with the + ToRadians + method after a trigonometric function has completed. The converted value is stored in + the DecimalDegrees property. + + + + Froms the radians. + + The radians. + + + + + Converts the specified string into an Elevation object. + + The value. + A new Elevation object populated with the specified + values. + ToString Method + + + This example creates a new angular measurement using the Parse + method. + + Dim NewElevation As Elevation = Elevation.Parse("123.45°") + + + Elevation NewElevation = Elevation.Parse("123.45°"); + + + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This method parses the specified string into an Elevation object + using the current culture. This constructor can parse any strings created via the + ToString method. + + + + Converts the specified string into an Elevation object using the + specified culture. + + A String describing an angle in the form of decimal degrees or a + sexagesimal. + A CultureInfo object describing the numeric format to use during + conversion. + A new Elevation object equivalent to the specified string. + This powerful method is typically used to process data from a data store or a + value input by the user in any culture. This function can accept any format which + can be output by the ToString method. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Returns the current instance increased by one. + + An Elevation object. + + This example uses the Increment method to increase an Elevation's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Elevation1 As New Elevation(89) + Elevation1 = Elevation1.Increment() + ' Incorrect use of Increment + Dim Elevation1 = New Elevation(89) + Elevation1.Increment() + 'notice Elevation1 will still be 89°! + + + // Correct use of Increment + Elevation Elevation1 = new Elevation(89); + Elevation1 = Elevation1.Increment(); + // Incorrect use of Increment + Elevation Elevation1 = new Elevation(89); + Elevation1.Increment(); + //notice Elevation1 will still be 89°! + + + This method increases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Elevation class is immutable, this + method cannot be used to modify an existing instance. + + + + Increases the current instance by the specified value. + + A Double to add to the current instance. + A new Elevation containing the summed values. + + This example adds 45° to the current instance of 45°, returning 90°. + + Dim Elevation1 As New Elevation(45) + Elevation1 = Elevation1.Add(45) + + + Elevation Elevation1 = new Elevation(45); + Elevation1 = Elevation1.Add(45); + + + + + + Adds the specified value. + + The value. + + + + + Returns the current instance decreased by one. + + An Elevation object. + + This example uses the Decrement method to decrease an Elevation's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Decrement + Dim Elevation1 As New Elevation(91) + Elevation1 = Elevation1.Decrement() + ' Incorrect use of Decrement + Dim Elevation1 = New Elevation(91) + Elevation1.Increment() + ' notice Elevation1 will still be 91°! + + + // Correct use of Decrement + Elevation Elevation1 = new Elevation(91); + Elevation1 = Elevation1.Decrement(); + // Incorrect use of Decrement + Elevation Elevation1 = new Elevation(91); + Elevation1.Decrement(); + // notice Elevation1 will still be 91°! + + + This method decreases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Elevation class is immutable, this + method cannot be used to modify an existing instance. + + + + Decreases the current instance by the specified value. + + A Double to subtract from the current instance. + A new Elevation containing the new value. + + This example subtracts 30° from the current instance of 90°, returning 60°. + + Dim Elevation1 As New Elevation(90) + Elevation1 = Elevation1.Subtract(30) + + + Elevation Elevation1 = new Elevation(90); + Elevation1 = Elevation1.Subtract(30); + + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the current instance by the specified value. + + A Double to multiply with the current instance. + A new Elevation containing the product of the two numbers. + + This example multiplies 30° with three, returning 90°. + + Dim Elevation1 As New Elevation(30) + Elevation1 = Elevation1.Multiply(3) + + + Elevation Elevation1 = new Elevation(30); + Elevation1 = Elevation1.Multiply(3); + + + + + + Multiplies the specified value. + + The value. + + + + + Divides the current instance by the specified value. + + A Double representing a denominator to divide by. + An Elevation containing the new value. + + This example divides 90° by three, returning 30°. + + Dim Elevation1 As New Elevation(90) + Elevation1 = Elevation1.Divide(3) + + + Elevation Elevation1 = new Elevation(90); + Elevation1 = Elevation1.Divide(3); + + + + + + Divides the specified value. + + The value. + + + + + Indicates if the current instance is smaller than the specified value. + + An Elevation to compare with the current instance. + A Boolean, True if the current instance is + smaller than the specified value. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Elevation to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the specified value. + This method compares the DecimalDegrees property with the + specified value. This method is the same as the "<=" operator. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified value. + + An Elevation to compare with the current instance. + A Boolean, True if the current instance is + greater than the specified value. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Elevation to compare with the current instance. + A Boolean, True if the current instance is + greater than or equal to the specified value. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Converts a measurement in Radians into an Elevation. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Elevation. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Elevation. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Elevation. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Elevation. + + The value. + The result of the conversion. + + + + Converts a measurement in degrees as an Integer into an Elevation. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in the form of a formatted String into an Elevation. + + The value. + The result of the conversion. + + + + Converts an Elevation into a String. + + The value. + The result of the conversion. + This operator calls the ToString() method using the current culture. + + + + Creates a copy of the current instance. + + An Elevation of the same value as the current instance. + + + + Outputs the angle as a string using the specified format. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A String in the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyElevation As New Elevation(45, 16.772) + Debug.WriteLine(MyElevation.ToString("h°m.mm", CultureInfo.CurrentCulture)) + ' Output: 45°16.78 + + + Dim MyElevation As New Elevation(45, 16.772); + Debug.WriteLine(MyElevation.ToString("h°m.mm", CultureInfo.CurrentCulture)); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd" is used. Any string + output by this method can be converted back into an Elevation object using the + Parse method or Elevation(string) constructor. + + + + Compares the current instance to another instance using the specified + precision. + + The value. + The decimals. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + Equals Method + + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Elevation1 As New Elevation(90.15); + Dim Elevation2 As New Elevation(90.12); + If Elevation1.Equals(Elevation2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Elevation1 As New Elevation(90.15); + Dim Elevation2 As New Elevation(90.12); + If Elevation1.Equals(Elevation2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Elevation Elevation1 = new Elevation(90.15); + Elevation Elevation2 = new Elevation(90.12); + if (Elevation1.Equals(Elevation2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Elevation Elevation1 = new Elevation(90.15); + Elevation Elevation2 = new Elevation(90.12); + if (Elevation1.Equals(Elevation2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + notice This method compares objects by value, not by + reference. + + + + Equalses the specified value. + + The value. + Whether the two elevations are equivalent. + + + + Returns a value indicating the relative order of two objects. + + An Elevation object to compare with. + A value of -1, 0, or 1 as documented by the IComparable interface. + This method allows collections of Azimuth objects to be sorted. + The DecimalDegrees property of each instance is compared. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the value of the angle as decimal degrees. + + A Double value. + Hours Property + + Minutes Property + + Seconds Property + + + This example demonstrates how the + DecimalDegrees property is + calculated automatically when creating an angle using hours, minutes and seconds. + + ' Create an angle of 20°30' + Dim MyElevation As New Elevation(20, 30) + ' Setting the DecimalMinutes recalculated other properties + Debug.WriteLine(MyElevation.DecimalDegrees) + ' Output: "20.5" the same as 20°30' + + + // Create an angle of 20°30' + Elevation MyElevation = New Elevation(20, 30); + // Setting the DecimalMinutes recalculated other properties + Console.WriteLine(MyElevation.DecimalDegrees) + // Output: "20.5" the same as 20°30' + + + This property returns the value of the angle as a single number. + + + + Returns the minutes and seconds as a single numeric value. + + A Double value. + Minutes Property + + DecimalDegrees Property + + + This example demonstrates how the DecimalMinutes property is + automatically calculated when creating a new angle. + + ' Create an angle of 20°10'30" + Dim MyElevation As New Elevation(20, 10, 30) + ' The DecimalMinutes property is automatically calculated + Debug.WriteLine(MyElevation.DecimalMinutes) + ' Output: "10.5" + + + // Create an angle of 20°10'30" + Elevation MyElevation = new Elevation(20, 10, 30); + // The DecimalMinutes property is automatically calculated + Console.WriteLine(MyElevation.DecimalMinutes) + // Output: "10.5" + + + This property is used when minutes and seconds are represented as a single + decimal value. + + + + Returns the integer hours (degrees) portion of an angular + measurement. + + An Integer value. + Minutes Property + + Seconds Property + + + This example creates an angle of 60.5° then outputs the value of the + Hours property, 60. + + Dim MyElevation As New Elevation(60.5) + Debug.WriteLine(MyElevation.Hours) + ' Output: 60 + + + Elevation MyElevation = new Elevation(60.5); + Console.WriteLine(MyElevation.Hours); + // Output: 60 + + + This property is used in conjunction with the Minutes + and Seconds properties to create a full angular measurement. + This property is the same as DecimalDegrees without any fractional + value. + + + + Returns the integer minutes portion of an angular measurement. + + An Integer. + Hours Property + + Seconds Property + + + This example creates an angle of 45.5° then outputs the value of the + Minutes property, 30. + + Dim MyElevation As New Elevation(45.5) + Debug.WriteLine(MyElevation.Minutes) + ' Output: 30 + + + Elevation MyElevation = new Elevation(45.5); + Console.WriteLine(MyElevation.Minutes); + // Output: 30 + + + This property is used in conjunction with the Hours and + Seconds properties to create a sexagesimal + measurement. + + + + Returns the seconds minutes portion of an angular measurement. + + A Double value. + Hours Property + + Minutes Property + + + This example creates an angle of 45°10.5' then outputs the value of the + Seconds property, 30. + + Dim MyElevation As New Elevation(45, 10.5) + Debug.WriteLine(MyElevation.Seconds) + ' Output: 30 + + + Dim MyElevation As New Elevation(45, 10.5); + Console.WriteLine(MyElevation.Seconds); + // Output: 30 + + + This property is used in conjunction with the Hours and + Minutes properties to create a sexagesimal + measurement. + + + + Indicates if the current instance has a non-zero value. + + A Boolean, True if the + DecimalDegrees property is zero. + Empty Field + + + + Indicates if the current instance represents an infinite value. + + + + + Indicates if the current instance is invalid or unspecified. + + + + + Indicates whether the current instance has been normalized and is within the + allowed bounds of -90° and 90°. + + + + + Represents a flattened sphere which approximates Earth's size and shape. + + Mathematics involving points on Earth's surface are difficult to perform with + precision because the Earth's surface is rugged. In order to maximize precision, + scientists developed "ellipsoids," smooth ellipsoidal shapes (known as "oblate + spheriods" or flattened spheres) which attempt to approximate Earth's exact shape. + Like datums, ellipsoids have been subject to frequent revisions thanks to advances + in technology, yet countries cannot quickly abandon outdated ellipsoids because so + much infrastructure is built upon them. As a result, multiple ellipsoids are + tracked and utilized when converting coordinates from one locale to another. Today, + there are approximately thirty known ellipsoids upon which an estimated 120 + individual coordinate systems are built. + This class is typically used during coordinate conversion to convert from one + interpretation of Earth's shape to another. All known worldwide ellipsoids such as + WGS84 and Clarke 1880 are provided as static (Shared in Visual Basic) fields. Most + developers will not have to use this class until coordinates must be plotted on a + map. For most purposes, using the default ellipsoid of WGS84 is sufficient. + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be set via constructors). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents the Airy ellipsoid of 1830. + + + + + Represents the Modified Airy ellipsoid. + + + + + Represents the Australian National ellipsoid of 1965. + + + + + Represents the Bessel ellipsoid of 1841. + + + + + Represents the Bessel Modified ellipsoid of 1841. + + + + + Represents the Bessel (Namibia) ellipsoid of 1841. + + + + + Represents the Clarke ellipsoid of 1858. + + + + + Represents the Clarke ellipsoid of 1866. + + + + + Represents the Clarke (Michigan) ellipsoid of 1866. + + + + + Represents the Clarke (Benoit) ellipsoid of 1880. + + + + + Represents the Clarke (IGN) ellipsoid of 1880. + + + + + Represents the Clarke (RGS) ellipsoid of 1880. + + + + + Represents the Clarke (Arc) ellipsoid of 1880. + + + + + Represents the Clarke (SGA 1822) ellipsoid of 1880. + + + + + Represents the Everest (1937 Adjustment) ellipsoid of 1830. + + + + + Represents the Everest (1967 Definition) ellipsoid of 1830. + + + + + Represents the Everest (Modified 1948) ellipsoid of 1880. + + + + + Represents the Geodetic Reference System ellipsoid of 1980. + + + + + Represents the Helmert ellipsoid of 1906. + + + + + Represents the Indonesian ellipsoid of 1974. + + + + + Represents the International ellipsoid of 1909 (1924 alias). + + + + + Represents the International ellipsoid of 1924. + + + + + Represents the Krassovsky ellipsoid of 1940. + + + + + Represents the Naval Weapons Lab ellipsoid of 1965. + + + + + Represents the Plessis ellipsoid of 1817. + + + + + Represents the Struve ellipsoid of 1860. + + + + + Represents the War Office ellipsoid. + + + + + Represents the World Geodetic System ellipsoid of 1984. + + + + + Represents the GEM 10C Gravity Potential Model ellipsoid. + + + + + Represents the OSU86 gravity potential (geoidal) model ellipsoid. + + + + + Represents the OSU91 gravity potential (geoidal) model ellipsoid. + + + + + Represents the Clarke ellipsoid of 1880. + + + + + Represents the Authalic Sphere (r=6371000). + + + + + Represents the Geodetic Reference System ellipsoid of 1967. + + + + + Represents the Average Terrestrial System ellipsoid of 1977. + + + + + Represents the Everest (1830 Definition) ellipsoid. + + + + + Represents the World Geodetic System ellipsoid of 1972. + + + + + Represents the Everest (1962 Definition) ellipsoid of 1830. + + + + + Represents the Everest (1975 Definition) ellipsoid of 1830. + + + + + Represents the Bessel (Japan) ellipsoid of 1841. + + + + + Represents the GRS 1980 Authalic Sphere (r=6371007). + + + + + Represents the Xian ellipsoid of 1980. + + + + + Represents the IAU ellipsoid of 1976. + + + + + Represents the Geodetic Reference System (SAD69) ellipsoid of 1967. + + + + + Represents the Danish ellipsoid of 1876. + + + + + Represents the Andrae (Danish 1876 alternate) ellipsoid of 1876. + + + + + Represents the Common Sphere (Clarke 1866 Authalic Sphere alias). + + + + + Represents the Clarke 1866 Authalic Sphere (r=6370997). + + + + + Represents the Hough ellipsoid of 1960. + + + + + Represents the PZ90 ellipsoid. + + + + + Represents the Clarke (international foot) ellipsoid of 1880. + + + + + Represents the Everest (RSO 1969) ellipsoid of 1880. + + + + + Represents the International 1924 Authalic Sphere. + + + + + Represents the Hughes ellipsoid of 1980. + + + + + Represents the Applied Physics ellipsoid of 1965. + + + + + Represents the Comm. des Poids et Mesures ellipsoid of 1799. + + + + + Represents the Delambre (Belgium) ellipsoid of 1810. + + + + + Represents the Engelis ellipsoid of 1985. + + + + + Represents the Fisher ellipsoid of 1960. + + + + + Represents the Modified Fisher ellipsoid of 1960. + + + + + Represents the Fisher ellipsoid of 1968. + + + + + Represents the New International ellipsoid of 1967. + + + + + Represents the Kaula ellipsoid of 1961. + + + + + Represents the Lerch ellipsoid of 1979. + + + + + Represents the MERIT ellipsoid of 1983. + + + + + Represents the Maupertius ellipsoid of 1738. + + + + + Represents the Southeast Asia (Modified Fisher ellipsoid of 1960) ellipsoid. + + + + + Represents the SGS ellipsoid of 1985. + + + + + Represents the South American ellipsoid of 1969. + + + + + Represents the Walbeck ellipsoid. + + + + + Represents the World Geodetic System ellipsoid of 1960. + + + + + Represents the World Geodetic System ellipsoid of 1966. + + + + + Represents the default ellipsoid, WGS1984. + + + + + Creates a new instance with the specified type, name, equatorial raduis and polar radius. + + The name. + The equatorial radius. + The polar radius. + This constructor allows user-defined ellipsoids to be created for specialized applications. + + + + Internal contructor for static list generation + + The name. + The equatorial radius. + The inverse flattening. + + + + Internal contructor for static list generation + + The epsg number. + A. + The invf. + The b. + The name. + + + + Creates a new instance from the specified XML. + + The reader. + + + + Validates the ellipsoid. Called in the constructor. + + + + + Calculates the common ellipsoid properties. Called from the constructor + + + + + Determines whether the specified is equal to this instance. + + The to compare with the current . + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a Ellipsoid object matching the specified name. + + A String describing the name of an existing Ellipsoid. + A Ellipsoid object matching the specified string, or null if no Ellipsoid was found. + + + + Returns the datum corresponding to the EPSG code + + The epsg number. + + + + + Returns whether the current ellipsoid has the same value as the specified ellipsoid. + + An Ellipsoid object to compare against. + A Boolean, True if the equatorial radius and polar radius + of both ellipsoids are equal. When both radii are equal, all other calculated properties will also + be equal. The name of the ellipsoid is not compared. + + + + Returns whether the current ellipsoid has the same value as the specified ellipsoid. + + An Ellipsoid object to compare against. + An integer specifies the precision for the comparison. + A Boolean, True if the equatorial radius and polar radius + of both ellipsoids are equal. When both radii are equal, all other calculated properties will also + be equal. The name of the ellipsoid is not compared. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Called when [read XML]. + + The reader. + + + + European Petroleum Survey Group number for this ellipsoid. The ESPG standards are now maintained by OGP + (International Association of Oil and Gas Producers). + + + + + Indicates the descriptive name of the ellipsoid. + + A String containing the name of the ellipsoid. + This property is typically used to display ellipsoid information on a user interface. + + + + Represents the distance from Earth's center to the equator. + + A Distance object. + PolarRadius Property + This property defines the radius of the Earth from its center to the equator. + This property is used in conjunction with the PolarRadius property + to define an ellipsoidal shape. This property returns the same value as the + SemiMajorAxis property. + + + + Represents the distance from Earth's center to the North or South pole. + + A Distance object. + EquatorialRadius Property + This property defines the radius of the Earth from its center to the equator. + This property is used in conjunction with the EquatorialRadius + property to define an ellipsoidal shape. This property returns the same value as + the SemiMinorAxis property. + + + + Represents the distance from Earth's center to the equator. + + A Distance containing Earth's equatorial radius. + EquatorialRadius Property + This property defines the radius of the Earth from its center to the equator. + This property is used in conjunction with the SemiMinorAxis + property to define an ellipsoidal shape. This property returns the same value as + the EquatorialRadius property. + + + + Represents the distance from Earth's center to the North or South pole. + + A Distance containing Earth's polar radius. + EquatorialRadius Property + This property defines the radius of the Earth from its center to the equator. + This property is used in conjunction with the SemiMajorAxis + property to define an ellipsoidal shape. This property returns the same value as + the PolarRadius property. + + + + Indicates if the ellipsoid is describing a perfect sphere. + + Mathematical formulas such as map projection and coordinate conversion can be + optimized if the ellipsoid they are working with is spherical. For more precise + results, however, spherical ellipsoids should not be used. This property, when used + correctly, can improve performance for mathematics when coordinate precision is less of + a concern, such as viewing a map from a high altitude. + + + + Indicates the inverse of the shape of an ellipsoid relative to a sphere. + + A Double containing the ellipsoid's flattening. + EquatorialRadius Property + This property is used frequently in equations. Inverse flattening is defined as + one divided by the Flattening property.: + + + + Indicates the shape of the ellipsoid relative to a sphere. + + A Double containing the ellipsoid's flattening. + EquatorialRadius Property + This property compares the equatorial radius with the polar radius to measure the + amount that the ellipsoid is "squished" vertically. + + + + Returns the rate of flattening of the ellipsoid. + + A Double measuring how elongated the ellipsoid is. + The eccentricity is a positive number less than 1, or 0 in the case of a circle. + The greater the eccentricity is, the larger the ratio of the equatorial radius to the + polar radius is, and therefore the more elongated the ellipse is. + + + + Returns the square of the eccentricity. + + This property returns the value of the Eccentricity property, + squared. It is used frequently during coordinate conversion formulas. + + + + Gets the polar radius meters. + + + + + Gets the equatorial radius meters. + + + + + Gets the semi major axis meters. + + + + + Gets the semi minor meters. + + + + + Represents information about an angle when an angle-related event is raised. + + + This example demonstrates how to use AngleEventArgs when raising + an event. + + ' Declare a new event + Dim MyAngleEvent As AngleEventHandler + Sub Main() + ' Create an angle of 90° + Dim MyAngle As New Angle(90); + ' Raise our custom Event + RaiseEvent MyAngleEvent(Me, New AngleEventArgs(MyAngle)); + End Sub + + + // Declare a new event + AngleEventHandler MyAngleEvent; + void Main() + { + // Create an angle of 90° + Angle MyAngle = new Angle(90); + // Raise our custom event + if (MyAngleEvent != null) + MyAngleEvent(this, new AngleEventArgs(MyAngle)); + } + + + + Angle Class + This class is used for events which use an Angle as a + parameter. + + + + + + + + + Creates a new instance containing the specified Angle object. + + The angle. + + + + Represents information about an angular measurement when an angle-related event is raised. + + An Angle object containing a property which has changed. + Angle Class + This class is used by the Angle class to provide notification when hours, minutes, or seconds properties have changed. + + + + Represents information about a area when an area-related event is raised. + + + This example demonstrates how to use the AreaEventArgs class when + raising an event. + + ' Declare a new event + Dim MyAreaEvent As AreaEventHandler + Sub Main() + ' Create a Area of 125 kilometers + Dim MyArea As New Area(125, AreaUnit.SquareKilometers) + ' Raise our custom event + RaiseEvent MyAreaEvent(Me, New AreaEventArgs(MyArea)) + End Sub + + + // Declare a new event + AreaEventHandler MyAreaEvent; + void Main() + { + // Create a Area of 125 kilometers + Area MyArea = new Area(125, AreaUnit.SquareKilometers); + // Raise our custom event + if (MyAreaEvent != null) + MyAreaEvent(this, New AreaEventArgs(MyArea)); + } + + + + Area Class + + + + + + + + + Creates a new instance containing the specified Area object. + + The value. + + + + Represents information about a Area measurement when an Area-related event is raised. + + A Area object containing a property which has changed. + Area Class + This class is used by the Area class to provide notification + when hours, minutes, or seconds properties have changed. + + + + Represents information about an angle when an angle-related event is raised. + + + This example demonstrates how to use AzimuthEventArgs when raising + an event. + + ' Declare a new event + Dim MyAzimuthEvent As AzimuthEventHandler + Sub Main() + ' Create an angle of 90° + Dim MyAzimuth As New Azimuth(90); + ' Raise our custom Event + RaiseEvent MyAzimuthEvent(Me, New AzimuthEventArgs(MyAzimuth)); + End Sub + + + // Declare a new event + AzimuthEventHandler MyAzimuthEvent; + void Main() + { + // Create an angle of 90° + Azimuth MyAzimuth = new Azimuth(90); + // Raise our custom event + if (MyAzimuthEvent != null) + MyAzimuthEvent(this, new AzimuthEventArgs(MyAzimuth)); + } + + + + Azimuth Class + This class is used for events which use an Azimuth as a + parameter. + + + + + + + + + Creates a new instance containing the specified Azimuth object. + + The angle. + + + + Represents information about an angular measurement when an angle-related event is raised. + + An Azimuth object containing a property which has changed. + Azimuth Class + This class is used by the Azimuth class to provide notification when hours, minutes, or seconds properties have changed. + + + + + + + + + + + + + + Initializes a new instance of the class. + + if set to true [is canceled]. + + + + Controls whether an operation is to be aborted. + + true if canceled; otherwise, false. + This property, when set to True will signal that a pending operation should not execute. For example, + an event which is raised immediately before connecting would check this property to determine whether to + continue connecting, or exit. + + + + Represents information about a distance when an distance-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Declare a new event + Dim MyDistanceEvent As DistanceEventHandler + ' Create a distance of 125 kilometers + Dim MyDistance As New Distance(125, DistanceUnit.Kilometers) + Sub Main() + ' Raise our custom event + RaiseEvent MyDistanceEvent(Me, New DistanceEventArgs(MyDistance)) + End Sub + + + // Declare a new event + DistanceEventHandler MyDistanceEvent; + // Create a distance of 125 kilometers + Distance MyDistance = new Distance(125, DistanceUnit.Kilometers); + void Main() + { + // Raise our custom event + MyDistanceEvent(this, New DistanceEventArgs(MyDistance)); + } + + + + Distance Class + This class is typically used for events in the Distance class to + provide notification when hours, minutes, decimal minutes or seconds properties have changed. + + + + + + + + + Creates a new instance containing the specified Distance object. + + The value. + + + + Represents information about a distance measurement when an distance-related event is raised. + + A Distance object containing a property which has changed. + Distance Class + This class is used by the Distance class to provide notification + when hours, minutes, or seconds properties have changed. + + + + Represents information about an angle when an angle-related event is raised. + + + This example demonstrates how to use ElevationEventArgs when raising + an event. + + ' Declare a new event + Dim MyElevationEvent As ElevationEventHandler + Sub Main() + ' Create an angle of 90° + Dim MyElevation As New Elevation(90); + ' Raise our custom Event + RaiseEvent MyElevationEvent(Me, New ElevationEventArgs(MyElevation)); + End Sub + + + // Declare a new event + ElevationEventHandler MyElevationEvent; + void Main() + { + // Create an angle of 90° + Elevation MyElevation = new Elevation(90); + // Raise our custom event + if (MyElevationEvent != null) + MyElevationEvent(this, new ElevationEventArgs(MyElevation)); + } + + + + Elevation Class + This class is used for events which use an Elevation as a + parameter. + + + + + + + + + Creates a new instance containing the specified Elevation object. + + The angle. + + + + Represents information about an angular measurement when an angle-related event is raised. + + An Elevation object containing a property which has changed. + Elevation Class + This class is used by the Elevation class to provide notification when hours, minutes, or seconds properties have changed. + + + + Represents information about an angle when an angle-related event is raised. + + + This example demonstrates how to use LatitudeEventArgs when raising + an event. + + ' Declare a new event + Dim MyLatitudeEvent As LatitudeEventHandler + Sub Main() + ' Create an angle of 90° + Dim MyLatitude As New Latitude(90); + ' Raise our custom Event + RaiseEvent MyLatitudeEvent(Me, New LatitudeEventArgs(MyLatitude)); + End Sub + + + // Declare a new event + LatitudeEventHandler MyLatitudeEvent; + void Main() + { + // Create an angle of 90° + Latitude MyLatitude = new Latitude(90); + // Raise our custom event + if (MyLatitudeEvent != null) + MyLatitudeEvent(this, new LatitudeEventArgs(MyLatitude)); + } + + + + Latitude Class + This class is used for events which use an Latitude as a + parameter. + + + + + + + + + Creates a new instance containing the specified Latitude object. + + The angle. + + + + Represents information about an angular measurement when an angle-related event is raised. + + An Latitude object containing a property which has changed. + Latitude Class + This class is used by the Latitude class to provide notification when hours, minutes, or seconds properties have changed. + + + + Represents information about an angle when an angle-related event is raised. + + + This example demonstrates how to use LongitudeEventArgs when raising + an event. + + ' Declare a new event + Dim MyLongitudeEvent As LongitudeEventHandler + Sub Main() + ' Create an angle of 90° + Dim MyLongitude As New Longitude(90); + ' Raise our custom Event + RaiseEvent MyLongitudeEvent(Me, New LongitudeEventArgs(MyLongitude)); + End Sub + + + // Declare a new event + LongitudeEventHandler MyLongitudeEvent; + void Main() + { + // Create an angle of 90° + Longitude MyLongitude = new Longitude(90); + // Raise our custom event + if (MyLongitudeEvent != null) + MyLongitudeEvent(this, new LongitudeEventArgs(MyLongitude)); + } + + + + Longitude Class + This class is used for events which use an Longitude as a + parameter. + + + + + + + + + Creates a new instance containing the specified Longitude object. + + The longitude. + + + + Represents information about an angular measurement when an angle-related event is raised. + + An Longitude object containing a property which has changed. + Longitude Class + This class is used by the Longitude class to provide notification when hours, minutes, or seconds properties have changed. + + + + + + + + + + + + + + Initializes a new instance of the class. + + The position. + + + + Gets the position. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The radian. + + + + Gets the radians. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The speed. + + + + Gets the speed. + + + + + + + + + + + + + + + Creates a new instance containing the specified TimeSpan object. + + The time span. + TimeSpan Property + + TimeSpan Structure + + + + Indicates a length of time which is the target of the event. + + A TimeSpan object describing a length of time. + TimeSpan Structure + + + + Represents information about the date and time reported by the GPS device. + + + + + + + + + + + + + + + Creates a new instance. + + The date time. + + + + Creates a new instance. + + The date time. + if set to true [system clock updated]. + + + + A date and time value in UTC time (not adjusted for the local time zone). + + A DateTime object containing a date and time reported by the GPS device. + DateTime Class + + ToLocalTime Method (DateTime Class) + This date and time value is not adjusted to the local time zone. Use the + ToLocalTime method to adjust to local time. + + + + Indicates whether the system clock updated to match the . + + True if the system clock was updated; otherwise, . + The default is . + + + + Represents information about an exception when an error-related event is raised. + + This example demonstrates how to use this class when raising an event. + + ' Create a new exception + Dim MyException As New ApplicationException("The error was successfully created.") + ' Declare a new event + Dim MyErrorEvent As ExceptionEventHandler + Sub Main() + ' Raise our custom event + RaiseEvent MyErrorEvent(Me, New ExceptionEventArgs(MyException)) + End Sub + + + // Create a new exception + ApplicationException MyException = new ApplicationException("The error was successfully created.") + // Declare a new event + ExceptionEventHandler MyErrorEvent; + void Main() + { + // Raise our custom event + MySatelliteEvent(this, New ExceptionEventArgs(MyException)); + } + + + This object is used throughout the GPS.NET framework to provide notification when + either of two situations occur: + + An exception is thrown which cannot be trapped via a Try..Catch block (such as from a separate thread) + An exception is thrown which can be recovered from and should not halt the current operation. + + Most frequently, this class is used when a parsing exception occurs via the Parse method or during automatic + data collection. + + + + + + + + + Creates a new instance containing the specified exception object. + + The exception. + + + + Indicates information about the error and its location within a module. + + An ApplicationException object or derivitive describing the error. + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The total. + + + + Initializes a new instance of the class. + + The current. + The total. + + + + Gets the total. + + + + + Gets the current. + + + + + Represents a two-dimensional rectangular area. + + Instances of this class are guaranteed to be thread-safe because the class is + immutable (it's properties can only be set via constructors). + + + + + + + + + + + + + + Represents a size with no value. + + + + + Represents a size with no value. + + + + + Represents the largest possible size on Earth's surface. + + + + + Represents an invalid geographic size. + + + + + Creates a new instance. + + The width. + The height. + + + + Creates a new instance from the specified string. + + The value. + + + + Creates a new instance from the specified string in the specified culture. + + The value. + The culture. + This method will attempt to split the specified string into two values, then parse each value + as an Distance object. The string must contain two numbers separated by a comma (or other character depending + on the culture). + + + + Toes the aspect ratio. + + The width. + The height. + + + + + Toes the aspect ratio. + + The aspect ratio. + + + + + Adds the specified size to the current instance. + + The size. + + + + + Subtracts the specified size from the current instance. + + The size. + + + + + Multiplies the width and height by the specified size. + + A GeographicSize specifying how to much to multiply the width and height. + A GeographicSize representing the product of the current instance with the specified size. + + + + Divides the width and height by the specified size. + + The size. + + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a unique code based on the object's value. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a GeographicSize whose value matches the specified string. + + A String describing a width, followed by a height. + A GeographicSize whose Width and Height properties match the specified string. + + + + Returns a GeographicSize whose value matches the specified string. + + A String describing a width, followed by a height. + A CultureInfo object describing how to parse the specified string. + A GeographicSize whose Width and Height properties match the specified string. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Compares the value of the current instance to the specified GeographicSize. + + A GeographicSize object to compare against. + A Boolean, True if the values of both objects are precisely the same. + + + + Compares the value of the current instance to the specified GeographicSize, to the specified number of decimals. + + A GeographicSize object to compare against. + An Integer describing how many decimals the values are rounded to before comparison. + A Boolean, True if the values of both objects are the same out to the number of decimals specified. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Returns the ratio of the size's width to its height. + + + + + Returns the left-to-right size. + + + + + Returns the top-to-bottom size. + + + + + Indicates if the size has zero values. + + + + + Returns whether the current instance has invalid values. + + + + + Represents a collection of interpolated values using realistic acceleration and deceleration. + + This enumeration is used by several DotSpatial.Positioning controls to smoothly transition from + one value to another. For example, the GPS SatelliteViewer uses acceleration to smoothly + transition from one bearing to another, giving the appearance of a realistic compass. This + enumeration, when combined with the class lets you add smooth + transitions to your own controls as well. + + + + The transition occurs at a steady rate. + + + + + The transition is immediate; no interpolation takes place. + + + + + The transition starts at zero and accelerates to the end using a quadratic formula. + + + + + The transition starts at high speed and decelerates to zero. + + + + + The transition accelerates to the halfway point, then decelerates to zero. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Calculates intermediate values between two bounding values. + + This powerful class provides the ability to interpolate values based on varying + interpolation techniques. This class is used primarily to simulate realistic motion by + accelerating and decelerating. This class is also used to calculate intermediate values + for features such as image georeferencing and estimating precision errors. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The count. + The mode. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + The count. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + The count. + The mode. + + + + Reverses the interpolated sequence. + + + + + Recalculates this instance. + + + + + Calculates the value. + + The index. + + + + + Controls the smallest number in the sequence. + + The minimum. + + + + Controls the largest number in the sequence. + + The maximum. + + + + Controls the acceleration and/or deceleration technique used. + + The interpolation method. + + + + Controls the number of interpolated values. + + The count. + + + + Returns a number from the interpolated sequence. + + + + + Represents a collection of interpolated coordinates using realistic acceleration and deceleration. + + This class is used by several controls in the DotSpatial.Positioning namespace to give + them a more realistic behavior. This class will interpolate coordinates between a + given start and end point according to an interpolation technique, and return them + as an array. Then, controls and other elements can be moved smoothly by applying + the calculated values. + Instances of this class are likely to be thread safe because the class uses + thread synchronization when recalculating interpolated values. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance. + + + + + Creates a new instance using the specified start and end points. + + The minimum. + The maximum. + The count. + This constructor provides a way to define the bounds of the interpolator, + as well as its number of points. A higher level of points yield a smoother + result but take longer to iterate through. + + + + Initializes a new instance of the class. + + The count. + The mode. + + + + Creates a new instance using the specified end points, count, and interpolation technique. + + The minimum. + The maximum. + The count. + The mode. + + + + Recalculates this instance. + + + + + Swaps this instance. + + + + + Returns the starting point of the series. + + The minimum. + Interpolated values are calculated between this point and the end point + stored in the property. Changing this property causes + the series to be recalculated. + + + + Returns the ending point of the series. + + The maximum. + Interpolated values are calculated between this point and the start point + stored in the property. Changing this property causes + the series to be recalculated. + + + + Returns a Position object from the interpolated series. + + + + + Returns the number of calculated positions in the series. + + The count. + + + + Indicates the interpolation technique used to calculate intermediate points. + + The interpolation method. + This property controls the acceleration and deceleration techniques + used when calculating intermediate points. Changing this property causes the + series to be recalculated. + + + + Represents a line of constant distance north or south of the equator. + + Longitude Class + + Position Class + + Azimuth Class + + Elevation Class + + Angle Class + + + These examples create new instances of Latitude objects. + + Dim MyLatitude As New Latitude(90) + + + Latitude MyLatitude = new Latitude(90); + + + Latitude MyLatitude = new Latitude(90); + + + Dim MyLatitude1 As New Latitude(105, 30, 21.4) + + + Latitude MyLatitude = new Latitude(105, 30, 21.4); + + + Latitude MyLatitude = new Latitude(105, 30, 21.4); + + + Latitudes measure a distance North or South away from the equator. Latitudes + can range from -90° (at the South pole) to 90° (the North pole), with 0° + representing the equator. Latitudes are commonly paired with Longitudes to mark a + specific location on Earth's surface. + Latitudes are expressed in either of two major formats. The first format uses + only positive numbers and the letter "N" or "S" to indicate the hemisphere (i.e. + "45°N" or "60°S"). The second format allows negative numbers an omits the single + character (i.e. 45 or -60). + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + Represents a latitude of 0°. + + + + + Represents a latitude of 0°. + + + + + Represents a latitude of 23.5°S. + + + + + Represents a latitude of 23.5°N. + + + + + Represents a latitude of 90°N. + + + + + Represents a latitude of 90°S. + + + + + Represents the minimum possible latitude -90°. + + + + + Represents the maximum possible latitude of 90°. + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance with the specified decimal degrees. + + The decimal degrees. + + This example demonstrates how to create an angle with a measurement of 90°. + + Dim MyLatitude As New Latitude(90) + + + Latitude MyLatitude = new Latitude(90); + + + + An Latitude containing the specified value. + + + + Creates a new instance with the specified decimal degrees and hemisphere. + + The decimal degrees. + The hemisphere. + + This example creates a new latitude of 39°30' north. + + Dim MyLatitude As New Latitude(39.5, LatitudeHemisphere.North) + + + Latitude MyLatitude = new Latitude(39.5, LatitudeHemisphere.North); + + This example creates a new latitude of 39°30 south. + + Dim MyLatitude As New Latitude(39.5, LatitudeHemisphere.South) + + + Latitude MyLatitude = new Latitude(39.5, LatitudeHemisphere.South); + + + + + + Creates a new instance with the specified degrees. + + The hours. + An Latitude containing the specified value. + + + + Creates a new instance with the specified hours, minutes and + seconds. + + The hours. + The minutes. + The seconds. + + This example demonstrates how to create an angular measurement of 34°12'29.2 in + hours, minutes and seconds. + + Dim MyLatitude As New Latitude(34, 12, 29.2) + + + Latitude MyLatitude = new Latitude(34, 12, 29.2); + + + + An Latitude containing the specified value. + + + + Creates a new longitude with the specified hours, minutes, seconds, and hemisphere. + + The hours. + The minutes. + The seconds. + The hemisphere. + + This example creates a new latitude of 39°12'10" north. + + Dim MyLatitude As New Latitude(39, 12, 10, LatitudeHemisphere.North) + + + Latitude MyLatitude = new Latitude(39, 12, 10, LatitudeHemisphere.North); + + This example creates a new latitude of 39°12'10" south. + + Dim MyLatitude As New Latitude(39, 12, 10, LatitudeHemisphere.South) + + + Latitude MyLatitude = new Latitude(39, 12, 10, LatitudeHemisphere.South); + + + + + + Creates a new instance with the specified hours and decimal minutes. + + The hours. + The decimal minutes. + + This example demonstrates how an angle can be created when only the hours and + minutes (in decimal form) are known. This creates a value of 12°42.345'. + + Dim MyLatitude As New Latitude(12, 42.345) + + + Latitude MyLatitude = new Latitude(12, 42.345); + + + An Latitude containing the specified value. + + + + Creates a new instance with the specified hours, decimal minutes, and hemisphere. + + The hours. + The decimal minutes. + The hemisphere. + + This example creates a new latitude of 39°12.34' north. + + Dim MyLatitude As New Latitude(39, 12.34, LatitudeHemisphere.North) + + + Latitude MyLatitude = new Latitude(39, 12.34, LatitudeHemisphere.North); + + This example creates a new latitude of 39°12.34 south. + + Dim MyLatitude As New Latitude(39, 12.34, LatitudeHemisphere.South) + + + Latitude MyLatitude = new Latitude(39, 12.34, LatitudeHemisphere.South); + + + + + + Creates a new instance by parsing the specified string value. + + The value. + + This example creates a new instance by parsing a string. (notice The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyLatitude As New Latitude("23°45'67.8""N") + + + Latitude MyLatitude = new Latitude("23°45'67.8\"N"); + + + + An Latitude containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + + + + Creates a new instance by parsing the specified string value. + + The value. + The culture. + A String in any of the following formats (or variation + depending on the local culture): + + Parse + + + This example creates a new instance by parsing a string. (notice: The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyLatitude As New Latitude("23°45'67.8""N") + + + Latitude MyLatitude = new Latitude("23°45'67.8\"N"); + + + + An Latitude containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + + + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Returns the object with the smallest value. + + A Latitude object to compare to the current instance. + The Latitude containing the smallest value. + + + + Returns the object with the largest value. + + A Latitude object to compare to the current instance. + A Latitude containing the largest value. + + + + Returns a new instance whose value is rounded the specified number of decimals. + + An Integer specifying the number of decimals to round off to. + + + + + Returns an angle opposite of the current instance. + + An Latitude representing the mirrored value. + + This example creates a new Latitude of 45° then calculates its mirror + of 225°. (45 + 180) + + Dim Latitude1 As New Latitude(45) + Dim Latitude2 As Latitude = Latitude1.Mirror() + Debug.WriteLine(Latitude2.ToString()) + ' Output: 225 + + + Latitude Latitude1 = new Latitude(45); + Latitude Latitude2 = Latitude1.Mirror(); + Console.WriteLine(Latitude2.ToString()); + // Output: 225 + + + This method returns the "opposite" of the current instance. The opposite is + defined as the point on the other side of an imaginary circle. For example, if an angle + is 0°, at the top of a circle, this method returns 180°, at the bottom of the + circle. + + + + Converts the current instance into radians. + + A Radian object. + Radian Class + + Converts an angular measurement into radians before further processing. + + + This example converts a measurement of 90° into radians. + + Dim MyLatitude As New Latitude(90) + Dim MyRadians As Radian = MyLatitude.ToRadians() + + + Latitude MyLatitude = new Latitude(90); + Radian MyRadians = MyLatitude.ToRadians(); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Causes the value to be adjusted to between -90 and +90. + + + + + + Indicates if the current instance is North of the specified latitude. + + A Latitude object to examine. + A Boolean, True if the current instance is more North than the specified instance. + + + + Indicates if the current instance is South of the specified latitude. + + A Latitude object to examine. + A Boolean, True if the current instance is more South than the specified instance. + + + + Converts the current instance to the northern or southern hemisphere. + + The hemisphere. + + + + + Outputs the angle as a string using the specified format. + + The format. + A String in the specified format. + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyLatitude As New Latitude(45, 16.772) + Debug.WriteLine(MyLatitude.ToString("h°m.mm")) + ' Output: 45°16.78 + + + Dim MyLatitude As New Latitude(45, 16.772); + Debug.WriteLine(MyLatitude.ToString("h°m.mm")); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd°" is used. Any + string output by this method can be converted back into an Latitude object using the + Parse method or Latitude(string) constructor. + + + + Returns the smallest integer greater than the specified value. + + + + + + Returns the largest integer which is smaller than the specified value. + + + + + + Returns a new instance whose Seconds property is evenly divisible by 15. + + An Latitude containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns a new angle whose Seconds property is evenly divisible by the specified amount. + + A Double between 0 and 60 indicating the interval to round + to. + An Latitude containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Compares the current value to another Latitude object's value. + + An Latitude, Double, or Integer + to compare with. + A Boolean, True if the object's DecimalDegrees + properties match. + This + + + + Returns a unique code for this instance. + + An Integer representing a unique code for the current + instance. + Since the Latitude class is immutable, this property may be used + safely with hash tables. + + + + Outputs the angle as a string using the default format. + + A String created using the default format. + + This example outputs a value of 90 degrees in the default format of ###.#°. + + Dim MyLatitude As New Latitude(90) + Debug.WriteLine(MyLatitude.ToString) + ' Output: "90°" + + + Latitude MyLatitude = new Latitude(90); + Debug.WriteLine(MyLatitude.ToString()); + // Output: "90°" + + + This method formats the current instance using the default format of + "d.dddd°." Any string output by this method can be converted back into an Latitude + object using the Parse method or Latitude(string) + constructor. + + + + Normalizes the specified decimal degrees. + + The decimal degrees. + + Converts a measurement to its equivalent value between -90 and + 90 degrees. + + + + Returns a random latitude. + + + + + + Returns a random latitude based on the specified seed. + + The generator. + + + + + Returns a random latitude using the specified northern and southern boundaries. + + The northernmost. + The southernmost. + + + + + Returns a random latitude between the specified minimum and maximum. + + a Random object used to generate random values. + A Latitude specifying the northern-most allowed latitude. + A Latitude specifying the southern-most allowed latitude. + + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + A Double containing the decimal degree version of the specified + values. + DecimalDegrees Property + + + This example converts a value of 10°30'0" into decimal degrees (10.5). + + Dim MyValue As Double = Latitude.ToDecimalDegrees(10, 30, 0) + + + double MyValue = Latitude.ToDecimalDegrees(10, 30, 0); + + + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts an hour value into decimal degrees. + + The hours. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to a double value. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to decimal degrees, then rounded to thirteen digits, the maximum precision allowed by this type. + + + + Converts arbitrary decrees into well-formed decimal degrees. + + The decimal degrees. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + The specified value will be rounded to thirteen digits, the maximum precision allowed by this type. + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Returns the object with the smallest value. + + The first Latitude object. + The second Latitude object. + The Latitude containing the smallest value. + + + + Returns the object with the largest value. + + The first Latitude object. + The second Latitude object. + A Latitude containing the largest value. + + + + Converts an angular measurement into radians. + + The value. + A Radian object. + + This example shows a quick way to convert an angle of 90° into radians. + + Dim MyRadian As Radian = Latitude.ToRadians(90) + + + Radian MyRadian = Latitude.ToRadians(90); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Converts a value in radians into an angular measurement. + + The radians. + + ToRadians + + Radian Class + + + This example uses the FromRadians method to convert a value of one + radian into an Latitude of 57°. + + ' Create a new angle equal to one radian + Dim MyRadians As New Radian(1) + Dim MyLatitude As Latitude = Latitude.FromRadians(MyRadians) + Debug.WriteLine(MyLatitude.ToString()) + ' Output: 57° + + + // Create a new angle equal to one radian + Radian MyRadians = new Radian(1); + Latitude MyLatitude = Latitude.FromRadians(MyRadians); + Console.WriteLine(MyLatitude.ToString()); + // Output: 57° + + + This function is typically used in conjunction with the + ToRadians + method after a trigonometric function has completed. The converted value is stored in + the DecimalDegrees property. + + + + Froms the radians. + + The radians. + + + + + Converts the specified string into an Latitude object. + + The value. + A new Latitude object populated with the specified + values. + + This example creates a new angular measurement using the Parse + method. + + Dim NewLatitude As Latitude = Latitude.Parse("123.45°") + + + Latitude NewLatitude = Latitude.Parse("123.45°"); + + + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This method parses the specified string into an Latitude object + using the current culture. This constructor can parse any strings created via the + ToString method. + + + + Converts the specified string into an Latitude object using the + specified culture. + + A String describing an angle in the form of decimal degrees or a + sexagesimal. + A CultureInfo object describing the numeric format to use during + conversion. + A new Latitude object equivalent to the specified string. + This powerful method is typically used to process data from a data store or a + value input by the user in any culture. This function can accept any format which + can be output by the ToString method. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Returns the current instance increased by one. + + An Latitude object. + + This example uses the Increment method to increase an Latitude's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Latitude1 As New Latitude(89) + Latitude1 = Latitude1.Increment() + ' Incorrect use of Increment + Dim Latitude1 = New Latitude(89) + Latitude1.Increment() + ' notice: Latitude1 will still be 89°! + + + // Correct use of Increment + Latitude Latitude1 = new Latitude(89); + Latitude1 = Latitude1.Increment(); + // Incorrect use of Increment + Latitude Latitude1 = new Latitude(89); + Latitude1.Increment(); + // notice: Latitude1 will still be 89°! + + + This method increases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Latitude class is immutable, this + method cannot be used to modify an existing instance. + + + + Increases the current instance by the specified value. + + A Double to add to the current instance. + A new Latitude containing the summed values. + + This example adds 45° to the current instance of 45°, returning 90°. + + Dim Latitude1 As New Latitude(45) + Latitude1 = Latitude1.Add(45) + + + Latitude Latitude1 = new Latitude(45); + Latitude1 = Latitude1.Add(45); + + + + + + Adds the specified value. + + The value. + + + + + Returns the current instance decreased by one. + + An Latitude object. + + This example uses the Decrement method to decrease an Latitude's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Decrement + Dim Latitude1 As New Latitude(91) + Latitude1 = Latitude1.Decrement() + ' Incorrect use of Decrement + Dim Latitude1 = New Latitude(91) + Latitude1.Increment() + ' notice Latitude1 will still be 91°! + + + // Correct use of Decrement + Latitude Latitude1 = new Latitude(91); + Latitude1 = Latitude1.Decrement(); + // Incorrect use of Decrement + Latitude Latitude1 = new Latitude(91); + Latitude1.Decrement(); + // notice Latitude1 will still be 91°! + + + This method decreases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Latitude class is immutable, this + method cannot be used to modify an existing instance. + + + + Decreases the current instance by the specified value. + + A Double to subtract from the current instance. + A new Latitude containing the new value. + + This example subtracts 30° from the current instance of 90°, returning 60°. + + Dim Latitude1 As New Latitude(90) + Latitude1 = Latitude1.Subtract(30) + + + Latitude Latitude1 = new Latitude(90); + Latitude1 = Latitude1.Subtract(30); + + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the current instance by the specified value. + + A Double to multiply with the current instance. + A new Latitude containing the product of the two numbers. + + This example multiplies 30° with three, returning 90°. + + Dim Latitude1 As New Latitude(30) + Latitude1 = Latitude1.Multiply(3) + + + Latitude Latitude1 = new Latitude(30); + Latitude1 = Latitude1.Multiply(3); + + + + + + Multiplies the specified value. + + The value. + + + + + Divides the current instance by the specified value. + + A Double representing a denominator to divide by. + An Latitude containing the new value. + + This example divides 90° by three, returning 30°. + + Dim Latitude1 As New Latitude(90) + Latitude1 = Latitude1.Divide(3) + + + Latitude Latitude1 = new Latitude(90); + Latitude1 = Latitude1.Divide(3); + + + + + + Divides the specified value. + + The value. + + + + + Indicates if the current instance is smaller than the specified value. + + An Latitude to compare with the current instance. + A Boolean, True if the current instance is + smaller than the specified value. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Latitude to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the specified value. + This method compares the DecimalDegrees property with the + specified value. This method is the same as the "<=" operator. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified value. + + An Latitude to compare with the current instance. + A Boolean, True if the current instance is + greater than the specified value. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Latitude to compare with the current instance. + A Boolean, True if the current instance is + greater than or equal to the specified value. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Converts a measurement in Radians into an Latitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Latitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Latitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Latitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Latitude. + + The value. + The result of the conversion. + + + + Converts a measurement in degrees as an Integer into an Latitude. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in the form of a formatted String into an Latitude. + + The value. + The result of the conversion. + + + + Converts an Latitude into a String. + + The value. + The result of the conversion. + This operator calls the ToString() method using the current culture. + + + + Creates a copy of the current instance. + + An Latitude of the same value as the current instance. + + + + Compares the current instance to another instance using the specified + precision. + + The value. + The decimals. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Latitude1 As New Latitude(90.15); + Dim Latitude2 As New Latitude(90.12); + If Latitude1.Equals(Latitude2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Latitude1 As New Latitude(90.15); + Dim Latitude2 As New Latitude(90.12); + If Latitude1.Equals(Latitude2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Latitude Latitude1 = new Latitude(90.15); + Latitude Latitude2 = new Latitude(90.12); + if (Latitude1.Equals(Latitude2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Latitude Latitude1 = new Latitude(90.15); + Latitude Latitude2 = new Latitude(90.12); + if (Latitude1.Equals(Latitude2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + notice This method compares objects by value, not by + reference. + + + + Equalses the specified value. + + The value. + + + + + Compares to. + + The obj. + + + + + Outputs the angle as a string using the specified format. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A String in the specified format. + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyLatitude As New Latitude(45, 16.772) + Debug.WriteLine(MyLatitude.ToString("h°m.mm", CultureInfo.CurrentCulture)) + ' Output: 45°16.78 + + + Dim MyLatitude As New Latitude(45, 16.772); + Debug.WriteLine(MyLatitude.ToString("h°m.mm", CultureInfo.CurrentCulture)); + // Output: 45°16.78 + + + This method returns the current instance output in a specific format. If no + value for the format is specified, a default format of "d.dddd" is used. Any string + output by this method can be converted back into an Latitude object using the + Parse method or Latitude(string) constructor. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the value of the angle as decimal degrees. + + A Double value. + Hours Property + + Minutes Property + + Seconds Property + + + This example demonstrates how the + DecimalDegrees property is + calculated automatically when creating an angle using hours, minutes and seconds. + + ' Create an angle of 20°30' + Dim MyLatitude As New Latitude(20, 30) + ' Setting the DecimalMinutes recalculated other properties + Debug.WriteLine(MyLatitude.DecimalDegrees) + ' Output: "20.5" the same as 20°30' + + + // Create an angle of 20°30' + Latitude MyLatitude = New Latitude(20, 30); + // Setting the DecimalMinutes recalculated other properties + Console.WriteLine(MyLatitude.DecimalDegrees) + // Output: "20.5" the same as 20°30' + + + This property returns the value of the angle as a single number. + + + + Returns the minutes and seconds as a single numeric value. + + A Double value. + Minutes Property + + DecimalDegrees Property + + + This example demonstrates how the DecimalMinutes property is + automatically calculated when creating a new angle. + + ' Create an angle of 20°10'30" + Dim MyLatitude As New Latitude(20, 10, 30) + ' The DecimalMinutes property is automatically calculated + Debug.WriteLine(MyLatitude.DecimalMinutes) + ' Output: "10.5" + + + // Create an angle of 20°10'30" + Latitude MyLatitude = new Latitude(20, 10, 30); + // The DecimalMinutes property is automatically calculated + Console.WriteLine(MyLatitude.DecimalMinutes) + // Output: "10.5" + + + This property is used when minutes and seconds are represented as a single + decimal value. + + + + Returns the integer hours (degrees) portion of an angular + measurement. + + An Integer value. + Minutes Property + + Seconds Property + + + This example creates an angle of 60.5° then outputs the value of the + Hours property, 60. + + Dim MyLatitude As New Latitude(60.5) + Debug.WriteLine(MyLatitude.Hours) + ' Output: 60 + + + Latitude MyLatitude = new Latitude(60.5); + Console.WriteLine(MyLatitude.Hours); + // Output: 60 + + + This property is used in conjunction with the Minutes + and Seconds properties to create a full angular measurement. + This property is the same as DecimalDegrees without any fractional + value. + + + + Returns the integer minutes portion of an angular measurement. + + An Integer. + Hours Property + + Seconds Property + + + This example creates an angle of 45.5° then outputs the value of the + Minutes property, 30. + + Dim MyLatitude As New Latitude(45.5) + Debug.WriteLine(MyLatitude.Minutes) + ' Output: 30 + + + Latitude MyLatitude = new Latitude(45.5); + Console.WriteLine(MyLatitude.Minutes); + // Output: 30 + + + This property is used in conjunction with the Hours and + Seconds properties to create a sexagesimal + measurement. + + + + Returns the seconds minutes portion of an angular measurement. + + A Double value. + Hours Property + + Minutes Property + + + This example creates an angle of 45°10.5' then outputs the value of the + Seconds property, 30. + + Dim MyLatitude As New Latitude(45, 10.5) + Debug.WriteLine(MyLatitude.Seconds) + ' Output: 30 + + + Dim MyLatitude As New Latitude(45, 10.5); + Console.WriteLine(MyLatitude.Seconds); + // Output: 30 + + + This property is used in conjunction with the Hours and + Minutes properties to create a sexagesimal + measurement. + + + + Indicates if the latitude is north or south of the equator. + + + + + Indicates if the current instance has a non-zero value. + + A Boolean, True if the + DecimalDegrees property is zero. + Empty Field + + + + Indicates if the current instance represents an infinite value. + + + + + Indicates whether the value is invalid or unspecified. + + + + + Indicates whether the value has been normalized and is within the + allowed bounds of -90° and 90°. + + + + + Indicates the position of a latitude measurement relative to the equator. + + Hemisphere Property (Longitude Class) + + LongitudeHemisphere Enumeration + This enumeration is used by the Hemisphere + property of the Latitude class. If a latitude is south of the + equator, it's value is displayed as a negative number, or with a single letter (but not + both). For example, 39 degrees south of the equator can be expressed in either of these + ways: + + 39°S + -39° + + + + Missing latitude information. + + + The latitude is north of the equator. + + + The latitude is south of the equator. + + + + Represents a line of constant distance east or west from the Prime Meridian. + + Azimuth Class + + Elevation Class + + Latitude Class + + Longitude Class + + + These examples create new instances of Longitude objects. + + Dim MyLongitude As New Longitude(90) + + + Longitude MyLongitude = new Longitude(90); + + + Longitude MyLongitude = new Longitude(90); + + + Dim MyLongitude1 As New Longitude(105, 30, 21.4) + + + Longitude MyLongitude = new Longitude(105, 30, 21.4); + + + Longitude MyLongitude = new Longitude(105, 30, 21.4); + + + Longitudes measure a distance either East or West from the Prime Meridian, an + imaginary line which passes from the North Pole, through the + Royal Observatory in Greenwich, England, and on + to the South Pole. Longitudes can range from -180 to 180°, with the Prime + Meridian at 0°. Latitudes are commonly paired with Longitudes to mark a specific + location on Earth's surface. + Latitudes are expressed in either of two major formats. The first format uses + only positive numbers and the letter "E" or "W" to indicate the hemisphere (i.e. + "94°E" or "32°W"). The second format allows negative numbers an omits the single + character (i.e. 94 or -32). + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + Represents a longitude of 0°. + + + + + Represents a longitude 180°. + + + + + Represents a longitude of 0°. + + + + + Represents the minimum possible longitude of -180°. + + + + + Represents the maximum possible longitude of 180°. + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance with the specified decimal degrees. + + The decimal degrees. + + This example demonstrates how to create an angle with a measurement of 90°. + + Dim MyLongitude As New Longitude(90) + + + Longitude MyLongitude = new Longitude(90); + + + + An Longitude containing the specified value. + + + + Creates a new instance with the specified decimal degrees and hemisphere. + + The decimal degrees. + The hemisphere. + + This example creates a new Longitude of 39°30' north. + + Dim MyLongitude As New Longitude(39.5, LongitudeHemisphere.North) + + + Longitude MyLongitude = new Longitude(39.5, LongitudeHemisphere.North); + + This example creates a new Longitude of 39°30 south. + + Dim MyLongitude As New Longitude(39.5, LongitudeHemisphere.South) + + + Longitude MyLongitude = new Longitude(39.5, LongitudeHemisphere.South); + + + + + + Creates a new instance with the specified degrees. + + The hours. + An Longitude containing the specified value. + + + + Creates a new instance with the specified hours, minutes and + seconds. + + The hours. + The minutes. + The seconds. + + This example demonstrates how to create an angular measurement of 34°12'29.2 in + hours, minutes and seconds. + + Dim MyLongitude As New Longitude(34, 12, 29.2) + + + Longitude MyLongitude = new Longitude(34, 12, 29.2); + + + + An Longitude containing the specified value. + + + + Creates a new instance using the specified decimal degrees and + hemisphere. + + The hours. + The minutes. + The seconds. + The hemisphere. + This constructor is typically used to create a longitude when decimal degrees + are always expressed as a positive number. Since the hemisphere property is set + after the DecimalDegrees property is set, the DecimalDegrees is adjusted + automatically to be positive for the eastern hemisphere and negative for the + western hemisphere. + If the parameters conflict with each other, the Hemisphere + parameter takes precedence. Therefore, a value of "-19°E" will become "19°E" + (without the negative sign) with no exception being thrown. + + + + Creates a new instance with the specified hours and decimal minutes. + + The hours. + The decimal minutes. + + This example demonstrates how an angle can be created when only the hours and + minutes (in decimal form) are known. This creates a value of 12°42.345'. + + Dim MyLongitude As New Longitude(12, 42.345) + + + Longitude MyLongitude = new Longitude(12, 42.345); + + + An Longitude containing the specified value. + + + + Creates a new instance with the specified hours, decimal minutes, and hemisphere. + + The hours. + The decimal minutes. + The hemisphere. + + This example creates a new Longitude of 39°12.34' north. + + Dim MyLongitude As New Longitude(39, 12.34, LongitudeHemisphere.North) + + + Longitude MyLongitude = new Longitude(39, 12.34, LongitudeHemisphere.North); + + This example creates a new Longitude of 39°12.34 south. + + Dim MyLongitude As New Longitude(39, 12.34, LongitudeHemisphere.South) + + + Longitude MyLongitude = new Longitude(39, 12.34, LongitudeHemisphere.South); + + + + + + Creates a new instance using the specified string-based measurement. + + The value. + Parse Method + + + This example creates a new instance by parsing a string. notice: The double-quote is + doubled up to represent a single double-quote in the string.) + + Dim MyLongitude As New Longitude("123°45'67.8""") + + + Longitude MyLongitude = new Longitude("123°45'67.8\""); + + + + An Longitude containing the specified value. + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + A String in any of the following formats (or variation + depending on the local culture): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
hhhh.hhh mmhh mm.mm
hh mm sshh mm ss.ssshhihh.hi
hh mmihh mm ihh mm.mihh mm.m i
hh mm ssihh mm ss ihh mm ss.sihh mm ss.s i
hhhmmssi
+
+ Where h represents hours, m represents + minutes, s represents seconds, and i represents a + one-letter hemisphere indicator of "E" or "W." Any non-numeric character between + numbers is considered a delimiter. Thus, a value of 12°34'56.78" + or even 12A34B56.78C is treated the same as 12 34 + 56.78.
+
+ + + Creates a new instance using the specified string-based measurement. + + The value. + The culture. + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + A String in any of the following formats (or variation + depending on the local culture): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
hhhh.hhh mmhh mm.mm
hh mm sshh mm ss.ssshhihh.hi
hh mmihh mm ihh mm.mihh mm.m i
hh mm ssihh mm ss ihh mm ss.sihh mm ss.s i
hhhmmssi
+
+ Where h represents hours, m represents + minutes, s represents seconds, and i represents a + one-letter hemisphere indicator of "E" or "W." Any non-numeric character between + numbers is considered a delimiter. Thus, a value of 12°34'56.78" + or even 12A34B56.78C is treated the same as 12 34 + 56.78.
+
+ + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Returns the object with the smallest value. + + An Longitude object to compare to the current instance. + The Longitude containing the smallest value. + + + + Returns the object with the largest value. + + An Longitude object to compare to the current instance. + An Longitude containing the largest value. + + + + Returns a value indicating the relative order of two objects. + + An Longitude object to compare with. + A value of -1, 0, or 1 as documented by the IComparable interface. + This method allows collections of Longitude objects to be sorted. + The DecimalDegrees property of each instance is compared. + + + + Returns an angle opposite of the current instance. + + An Longitude representing the mirrored value. + + This example creates a new Longitude of 45° then calculates its mirror + of 225°. (45 + 180) + + Dim Longitude1 As New Longitude(45) + Dim Longitude2 As Longitude = Longitude1.Mirror() + Debug.WriteLine(Longitude2.ToString()) + ' Output: 225 + + + Longitude Longitude1 = new Longitude(45); + Longitude Longitude2 = Longitude1.Mirror(); + Console.WriteLine(Longitude2.ToString()); + // Output: 225 + + + This method returns the "opposite" of the current instance. The opposite is + defined as the point on the other side of an imaginary circle. For example, if an angle + is 0°, at the top of a circle, this method returns 180°, at the bottom of the + circle. + + + + Converts the current instance into radians. + + A Radian object. + Radian Class + + Converts an angular measurement into radians before further processing. + + + This example converts a measurement of 90° into radians. + + Dim MyLongitude As New Longitude(90) + Dim MyRadians As Radian = MyLongitude.ToRadians() + + + Longitude MyLongitude = new Longitude(90); + Radian MyRadians = MyLongitude.ToRadians(); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Indicates if the current instance is East of the specified longitude. + + A Longitude object to examine. + A Boolean, True if the current instance is more East than the specified instance. + + + + Indicates if the current instance is West of the specified longitude. + + A Longitude object to examine. + A Boolean, True if the current instance is more West than the specified instance. + + + + Outputs the current instance as a string using the specified format. + + A combination of symbols, spaces, and any of the following case-insensitive + letters: D or H for hours, M for + minutes, S for seconds, and I to indicate the + hemisphere. Here are some examples: + + + + + + + + + + + + + + + + +
HH°MM'SS.SS"HHH.H°HH MM.MMHHHMMSS
HH°MM'SS.SS"IHHH.H°IHH MM.MMIHHHMMSSI
+
+ A String matching the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyLongitude As New Longitude(45, 16.772) + Debug.WriteLine(MyLongitude.ToString("h°m.mm")) + ' Output: 45°16.78 + + + Dim MyLongitude As New Longitude(45, 16.772); + Debug.WriteLine(MyLongitude.ToString("h°m.mm")); + // Output: 45°16.78 + + + This powerful method returns the current angular measurement in a specific + format. If no value for the format is specified, a format of + hhh°mm'SS.SS"I (adjusted to the current culture) will be used. The + resulting String can be converted back into an + Longitude via the + Parse method so long as a delimiter separates each individual + value. +
+ + + Returns the smallest integer greater than the specified value. + + + + + + Returns the largest integer which is smaller than the specified value. + + + + + + Returns a new instance whose value is rounded the specified number of decimals. + + An Integer specifying the number of decimals to round off to. + + + + + Returns a new instance whose Seconds property is evenly divisible by 15. + + An Longitude containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Returns a new angle whose Seconds property is evenly divisible by the specified amount. + + A Double between 0 and 60 indicating the interval to round + to. + An Longitude containing the rounded value. + This method is used to align or "snap" an angle to a regular interval. For + example, a grid might be easier to read if it were drawn at 30-second intervals instead + of 24.198-second intervals. + + + + Normalizes this instance. + + A Longitude containing the normalized value. + This function is used to ensure that an angular measurement is within the + allowed bounds of 0° and 180°. If a value of 360° or 720° is passed, a value of 0° + is returned since traveling around the Earth 360° or 720° brings you to the same + place you started. + + + + Compares the current value to another Longitude object's value. + + An Longitude, Double, or Integer + to compare with. + A Boolean, True if the object's DecimalDegrees + properties match. + This + + + + Returns a unique code for this instance. + + An Integer representing a unique code for the current + instance. + Since the Longitude class is immutable, this property may be used + safely with hash tables. + + + + Outputs the current instance as a string using the specified format. + + A String matching the specified format. + Parse Method + + + This example outputs a value of 90 degrees in the default format of ###.#°. + + Dim MyLongitude As New Longitude(90) + Debug.WriteLine(MyLongitude.ToString) + ' Output: "90°" + + + Longitude MyLongitude = new Longitude(90); + Debug.WriteLine(MyLongitude.ToString()); + // Output: "90°" + + + This powerful method returns the current angular measurement in a specific + format. If no value for the format is specified, a format of + hhh°mm'SS.SS"I (adjusted to the current culture) will be used. The + resulting String can be converted back into an + Longitude via the + Parse method so long as a delimiter separates each individual + value. + + + + Normalizes the specified decimal degrees. + + The decimal degrees. + + This function is used to ensure that an angular measurement is within the + allowed bounds of -180° and 180°. If a value of 360° or 720° is passed, a value of 0° + is returned since traveling around the Earth 360° or 720° brings you to the same + place you started. + + + + Returns the object with the smallest value. + + A Longitude object to compare to value2. + A Longitude object to compare to value1. + The Longitude containing the smallest value. + + + + Returns the object with the largest value. + + A Longitude object to compare to value2. + A Longitude object to compare to value1. + A Longitude containing the largest value. + + + + Converts an angular measurement into radians. + + The value. + A Radian object. + + This example shows a quick way to convert an angle of 90° into radians. + + Dim MyRadian As Radian = Longitude.ToRadians(90) + + + Radian MyRadian = Longitude.ToRadians(90); + + + This function is typically used to convert an angular measurement into + radians before performing a trigonometric function. + + + + Converts a value in radians into an angular measurement. + + The radians. + + ToRadians + + Radian Class + + + This example uses the FromRadians method to convert a value of one + radian into an Longitude of 57°. + + ' Create a new angle equal to one radian + Dim MyRadians As New Radian(1) + Dim MyLongitude As Longitude = Longitude.FromRadians(MyRadians) + Debug.WriteLine(MyLongitude.ToString()) + ' Output: 57° + + + // Create a new angle equal to one radian + Radian MyRadians = new Radian(1); + Longitude MyLongitude = Longitude.FromRadians(MyRadians); + Console.WriteLine(MyLongitude.ToString()); + // Output: 57° + + + This function is typically used in conjunction with the + ToRadians + method after a trigonometric function has completed. The converted value is stored in + the DecimalDegrees property. + + + + Froms the radians. + + The radians. + + + + + Returns a random longitude. + + + + + + Returns a random longitude based on the specified seed. + + The generator. + + + + + Returns a random longitude using the specified eastern and western boundaries. + + A Longitude specifying the eastern-most allowed longitude. + A Longitude specifying the western-most allowed longitude. + + + + + Returns a random longitude between the specified minimum and maximum. + + A Random object used to generate random values. + A Longitude specifying the eastern-most allowed longitude. + A Longitude specifying the western-most allowed longitude. + + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + A Double containing the decimal degree version of the specified + values. + DecimalDegrees Property + + Normalize Method + + + This example converts a value of 10°30'0" into decimal degrees (10.5). + + Dim MyValue As Double = Latitude.ToDecimalDegrees(10, 30, 0) + + + double MyValue = Latitude.ToDecimalDegrees(10, 30, 0); + + + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts an hour value into decimal degrees. + + The hours. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to a double value. + + + + Converts arbitrary hour and decimal minutes into decimal degrees. + + The hours. + The decimal minutes. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + The specified value will be converted to decimal degrees, then rounded to thirteen digits, the maximum precision allowed by this type. + + + + Converts arbitrary decrees into well-formed decimal degrees. + + The decimal degrees. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + The specified value will be rounded to thirteen digits, the maximum precision allowed by this type. + + + + Converts arbitrary hour, minute and seconds into decimal degrees. + + The hours. + The minutes. + The seconds. + The hemisphere. + A Double containing the decimal degree version of the specified + values. + This function is used to convert three-part measurements into a single value. The + result of this method is typically assigned to the + + DecimalDegrees property. Values are rounded to thirteen decimal + places, the maximum precision allowed by this type. + + + + Converts the specified string into an Longitude object. + + The value. + A new Longitude object populated with the specified + values. + ToString Method + + + This example creates a new angular measurement using the Parse + method. + + Dim NewLongitude As Longitude = Longitude.Parse("123.45°") + + + Longitude NewLongitude = Longitude.Parse("123.45°"); + + + + The Parse method requires a decimal or sexagesimal measurement. + + Only the right-most portion of a sexagesimal measurement can be a fractional value. + + Extra characters were encountered while parsing an angular measurement. Only hours, minutes, and seconds are allowed. + + The specified text was not fully understood as an angular measurement. + This method parses the specified string into an Longitude object + using the current culture. This constructor can parse any strings created via the + ToString method. + + + + Converts the specified string into an Longitude object using the + specified culture. + + A String describing an angle in the form of decimal degrees or a + sexagesimal. + A CultureInfo object describing the numeric format to use during + conversion. + A new Longitude object equivalent to the specified string. + This powerful method is typically used to process data from a data store or a + value input by the user in any culture. This function can accept any format which + can be output by the ToString method. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Returns the current instance increased by one. + + An Longitude object. + + This example uses the Increment method to increase an Longitude's + value. It also demonstrates the subtle error which can be caused if + Increment is called while ignoring the return value. + + ' Correct use of Increment + Dim Longitude1 As New Longitude(89) + Longitude1 = Longitude1.Increment() + ' Incorrect use of Increment + Dim Longitude1 = New Longitude(89) + Longitude1.Increment() + ' notice: Longitude1 will still be 89°! + + + // Correct use of Increment + Longitude Longitude1 = new Longitude(89); + Longitude1 = Longitude1.Increment(); + // Incorrect use of Increment + Longitude Longitude1 = new Longitude(89); + Longitude1.Increment(); + // notice: Longitude1 will still be 89°! + + + This method increases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Longitude class is immutable, this + method cannot be used to modify an existing instance. + + + + Increases the current instance by the specified value. + + A Double to add to the current instance. + A new Longitude containing the summed values. + + This example adds 45° to the current instance of 45°, returning 90°. + + Dim Longitude1 As New Longitude(45) + Longitude1 = Longitude1.Add(45) + + + Longitude Longitude1 = new Longitude(45); + Longitude1 = Longitude1.Add(45); + + + + + + Adds the specified value. + + The value. + + + + + Returns the current instance decreased by one. + + An Longitude object. + + This example uses the Decrement method to decrease an Longitude's + value. It also demonstrates the subtle error which can be caused if + Decrement is called while ignoring the return value. + + ' Correct use of Decrement + Dim Longitude1 As New Longitude(91) + Longitude1 = Longitude1.Decrement() + ' Incorrect use of Decrement + Dim Longitude1 = New Longitude(91) + Longitude1.Increment() + ' notice Longitude1 will still be 91°! + + + // Correct use of Decrement + Longitude Longitude1 = new Longitude(91); + Longitude1 = Longitude1.Decrement(); + // Incorrect use of Decrement + Longitude Longitude1 = new Longitude(91); + Longitude1.Decrement(); + // notice: Longitude1 will still be 91°! + + + This method decreases the DecimalDegrees property by 1.0, + returned as a new instance. + Since the Longitude class is immutable, this + method cannot be used to modify an existing instance. + + + + Decreases the current instance by the specified value. + + A Double to subtract from the current instance. + A new Longitude containing the new value. + + This example subtracts 30° from the current instance of 90°, returning 60°. + + Dim Longitude1 As New Longitude(90) + Longitude1 = Longitude1.Subtract(30) + + + Longitude Longitude1 = new Longitude(90); + Longitude1 = Longitude1.Subtract(30); + + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the current instance by the specified value. + + A Double to multiply with the current instance. + A new Longitude containing the product of the two numbers. + + This example multiplies 30° with three, returning 90°. + + Dim Longitude1 As New Longitude(30) + Longitude1 = Longitude1.Multiply(3) + + + Longitude Longitude1 = new Longitude(30); + Longitude1 = Longitude1.Multiply(3); + + + + + + Multiplies the specified value. + + The value. + + + + + Divides the current instance by the specified value. + + A Double representing a denominator to divide by. + An Longitude containing the new value. + + This example divides 90° by three, returning 30°. + + Dim Longitude1 As New Longitude(90) + Longitude1 = Longitude1.Divide(3) + + + Longitude Longitude1 = new Longitude(90); + Longitude1 = Longitude1.Divide(3); + + + + + + Divides the specified value. + + The value. + + + + + Indicates if the current instance is smaller than the specified value. + + An Longitude to compare with the current instance. + A Boolean, True if the current instance is + smaller than the specified value. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller than or equal to the specified + value. + + An Longitude to compare with the current instance. + A Boolean, True if the current instance is + smaller than or equal to the specified value. + This method compares the DecimalDegrees property with the + specified value. This method is the same as the "<=" operator. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified value. + + An Longitude to compare with the current instance. + A Boolean, True if the current instance is + greater than the specified value. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than or equal to the specified + value. + + An Longitude to compare with the current instance. + A Boolean, True if the current instance is + greater than or equal to the specified value. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Converts a measurement in Radians into an Longitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Longitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Longitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Longitude. + + The value. + The result of the conversion. + + + + Converts a decimal degree measurement as a Double into an Longitude. + + The value. + The result of the conversion. + + + + Converts a measurement in degrees as an Integer into an Longitude. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Converts a measurement in the form of a formatted String into an Longitude. + + The value. + The result of the conversion. + + + + Converts an Longitude into a String. + + The value. + The result of the conversion. + This operator calls the ToString() method using the current culture. + + + + Creates a copy of the current instance. + + An Longitude of the same value as the current instance. + + + + Compares the current instance to another instance using the specified + precision. + + The other. + The decimals. + A Boolean, True if the + DecimalDegrees property of the current instance matches the + specified instance's DecimalDegrees property. + Equals Method + + + These examples compare two fractional values using specific numbers of digits for + comparison. + + ' Equals will return False + Dim Longitude1 As New Longitude(90.15); + Dim Longitude2 As New Longitude(90.12); + If Longitude1.Equals(Longitude2, 2) Then + Debug.WriteLine("The values are the same to two digits of precision."); + ' Equals will return True + Dim Longitude1 As New Longitude(90.15); + Dim Longitude2 As New Longitude(90.12); + If Longitude1.Equals(Longitude2, 1) Then + Debug.WriteLine("The values are the same to one digit of precision."); + + + // Equals will return False + Longitude Longitude1 = new Longitude(90.15); + Longitude Longitude2 = new Longitude(90.12); + if (Longitude1.Equals(Longitude2, 2)) + Console.WriteLine("The values are the same to two digits of precision."); + // Equals will return True + Longitude Longitude1 = new Longitude(90.15); + Longitude Longitude2 = new Longitude(90.12); + if (Longitude1.Equals(Longitude2, 1)) + Console.WriteLine("The values are the same to one digits of precision."); + + + This is typically used in cases where precision is only significant for a few + digits and exact comparison is not necessary. + notice: This method compares objects by value, not by + reference. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Outputs the current instance as a string using the specified format. + + A combination of symbols, spaces, and any of the following case-insensitive + letters: D or H for hours, M for + minutes, S for seconds, and I to indicate the + hemisphere. Here are some examples: + + + + + + + + + + + + + + + + +
HH°MM'SS.SS"HHH.H°HH MM.MMHHHMMSS
HH°MM'SS.SS"IHHH.H°IHH MM.MMIHHHMMSSI
+
+ A CultureInfo object used to properly format the string information. + A String matching the specified format. + ToString Method + + Parse Method + + + This example uses the ToString method to output an angle in a + custom format. The " " code represents hours along with a + degree symbol (Alt+0176 on the keypad), and " m.mm " represents + the minutes out to two decimals. Mmm. + + Dim MyLongitude As New Longitude(45, 16.772) + Debug.WriteLine(MyLongitude.ToString("h°m.mm", CultureInfo.CurrentCulture)) + ' Output: 45°16.78 + + + Dim MyLongitude As New Longitude(45, 16.772); + Debug.WriteLine(MyLongitude.ToString("h°m.mm", CultureInfo.CurrentCulture)); + // Output: 45°16.78 + + + This powerful method returns the current angular measurement in a specific + format. If no value for the format is specified, a format of + hhh°mm'SS.SS"I (adjusted to the current culture) will be used. The + resulting String can be converted back into an + Longitude via the + Parse method so long as a delimiter separates each individual + value. +
+ + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the value of the angle as decimal degrees. + + A Double value. + Hours Property + + Minutes Property + + Seconds Property + + + This example demonstrates how the + DecimalDegrees property is + calculated automatically when creating an angle using hours, minutes and seconds. + + ' Create an angle of 20°30' + Dim MyLongitude As New Longitude(20, 30) + ' Setting the DecimalMinutes recalculated other properties + Debug.WriteLine(MyLongitude.DecimalDegrees) + ' Output: "20.5" the same as 20°30' + + + // Create an angle of 20°30' + Longitude MyLongitude = New Longitude(20, 30); + // Setting the DecimalMinutes recalculated other properties + Console.WriteLine(MyLongitude.DecimalDegrees) + // Output: "20.5" the same as 20°30' + + + This property returns the value of the angle as a single number. + + + + Returns the minutes and seconds as a single numeric value. + + A Double value. + Minutes Property + + DecimalDegrees Property + + + This example demonstrates how the DecimalMinutes property is + automatically calculated when creating a new angle. + + ' Create an angle of 20°10'30" + Dim MyLongitude As New Longitude(20, 10, 30) + ' The DecimalMinutes property is automatically calculated + Debug.WriteLine(MyLongitude.DecimalMinutes) + ' Output: "10.5" + + + // Create an angle of 20°10'30" + Longitude MyLongitude = new Longitude(20, 10, 30); + // The DecimalMinutes property is automatically calculated + Console.WriteLine(MyLongitude.DecimalMinutes) + // Output: "10.5" + + + This property is used when minutes and seconds are represented as a single + decimal value. + + + + Returns the integer hours (degrees) portion of an angular + measurement. + + An Integer value. + Minutes Property + + Seconds Property + + + This example creates an angle of 60.5° then outputs the value of the + Hours property, 60. + + Dim MyLongitude As New Longitude(60.5) + Debug.WriteLine(MyLongitude.Hours) + ' Output: 60 + + + Longitude MyLongitude = new Longitude(60.5); + Console.WriteLine(MyLongitude.Hours); + // Output: 60 + + + This property is used in conjunction with the Minutes + and Seconds properties to create a full angular measurement. + This property is the same as DecimalDegrees without any fractional + value. + + + + Returns the integer minutes portion of an angular measurement. + + An Integer. + Hours Property + + Seconds Property + + + This example creates an angle of 45.5° then outputs the value of the + Minutes property, 30. + + Dim MyLongitude As New Longitude(45.5) + Debug.WriteLine(MyLongitude.Minutes) + ' Output: 30 + + + Longitude MyLongitude = new Longitude(45.5); + Console.WriteLine(MyLongitude.Minutes); + // Output: 30 + + + This property is used in conjunction with the Hours and + Seconds properties to create a sexagesimal + measurement. + + + + Returns the seconds minutes portion of an angular measurement. + + A Double value. + Hours Property + + Minutes Property + + + This example creates an angle of 45°10.5' then outputs the value of the + Seconds property, 30. + + Dim MyLongitude As New Longitude(45, 10.5) + Debug.WriteLine(MyLongitude.Seconds) + ' Output: 30 + + + Dim MyLongitude As New Longitude(45, 10.5); + Console.WriteLine(MyLongitude.Seconds); + // Output: 30 + + + This property is used in conjunction with the Hours and + Minutes properties to create a sexagesimal + measurement. + + + + Returns whether the longitude is east or west of the Prime Meridian. + + When this property changes, the DecimalDegrees property is adjusted: if the + hemisphere is West, a negative sign is placed in front of the + DecimalDegrees value, and vice versa. + + + + Returns the Universal Transverse Mercator zone number for this longitude. + + + + + Indicates if the current instance has a non-zero value. + + A Boolean, True if the + DecimalDegrees property is zero. + Empty Field + + + + Indicates if the current instance represents an infinite value. + + + + + Indicates whether the value is invalid or unspecified. + + + + + Indicates whether the value has been normalized and is within the + allowed bounds of -180° and 180°. + + + + + Indicates the position of a longitude measurement relative to the Prime Meridian. + + Hemisphere Property (Latitude Class) + + LatitudeHemisphere Enumeration + This enumeration is used by the Hemisphere + property of the Latitude class. If a longitude is west of the + Prime Meridian, it's value is displayed as a negative number, or with a single letter (but not + both). For example, 105 degrees west can be expressed in either of these + ways: + + 105°W + -105° + + + + Missing longitude information. + + + The longitude is east of the Prime Meridian. + + + The longitude is west of the Prime Meridian. + + + + Indicates the current host operating system. + + + + + The current platform has not yet been determined. + + + + + The current plarform is a desktop computer. + + + + + The current platform is Windows CE 4.2 + + + + + The current platform is PocketPC (Windows Mobile 2003) + + + + + The current platform is Smartphone + + + + + Indicates the current .NET framework being used. + + + + + The .NET framework version has not been determined. + + + + + .NET framework version 1.0 (Visual Studio 2002) is being used. + + + + + .NET framework version 1.1 (Visual Studio 2003) is being used. + + + + + .NET framework version 2.0 (Visual Studio 2005) is being used. + + + + + .NET framework version 3.0 (Visual Studio 2008) is being used. + + + + + .NET framework version 4.0 (Visual Studio 2010) is being used. + + + + + .NET Compact Framework version 1.0 (Visual Studio 2003) is being used. + + + + + .NET Compact Framework version 2.0 (Visual Studio 2005) is being used. + + + + + Provides features for determining the current host platform. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Returns the current host platform. + + This property is used to determine the current host platform: Windows CE 4.2, + PocketPC / Windows Mobile 2003, Smartphone, or Desktop. This property is typically + used to adjust the performance and behavior of an application to work on a specific platform. + For example, thread priorities are more sensitive on the Smartphone platform than the + PocketPC platform. This can also be used to determine correct locations of system folders + and installed system software such as Bluetooth stacks. + + + + Returns the current version of the .NET Framework currently in use. + + + + + Represents a specific location on Earth's surface. + + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + + + + + + Represents the location at 0°, 0°. + + + + + Represents the smallest possible location of 90°S, 180°W. + + + + + Represents the largest possible location of 90°N, 180°E. + + + + + Represents the single point at the top of Earth: 90°N, 0°E. + + + + + Represents the single point at the bottom of Earth: 90°S, 0°E. + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance from the specified longitude and latitude. + + The longitude. + The latitude. + + + + Creates a new instance from the specified latitude and longitude. + + The latitude. + The longitude. + + + + Creates a new instance by parsing latitude and longitude from a single string. + + The value. + + + + Creates a new instance by interpreting the specified latitude and longitude. + + The latitude. + The longitude. + Latitude and longitude values are parsed using the current local culture. For better support + of international cultures, add a CultureInfo parameter. + + + + Creates a new instance by interpreting the specified latitude and longitude. + + The latitude. + The longitude. + The culture. + Latitude and longitude values are parsed using the current local culture. For better support + of international cultures, a CultureInfo parameter should be specified to indicate how numbers should + be parsed. + + + + Creates a new instance by converting the specified string using the specific culture. + + The value. + The culture. + + + + Creates a copy of the specified object. + + The position. + + + + Creates a new position by deserializing the specified XML content. + + The reader. + + + + Outputs the current instance as a string using the specified format. + + The format. + A that represents this instance. + Outputs the current instance as a formatted string. + + + + Converts the current instance into an Earth-centered, Earth-fixed (ECEF) Cartesian point. + + + + + + Toes the cartesian point. + + The ellipsoid. + The altitude. + + + + + Normalizes this instance. + + + + + + Calculates the direction of travel to the specified destination. + + A Position object to which the bearing is calculated. + An Azimuth object representing the calculated distance. + + + + Calculates the direction of travel to the specified destination using the specified interpretation of Earth's shape. + + A Position object to which the bearing is calculated. + An Ellipsoid object used to fine-tune bearing calculations. + An Azimuth object representing the calculated distance. + + + + Returns the minimum speed required to travel from the current location to the + specified destination within the specified period of time. + + The destination. + The time. + + + + + Indicates if the current instance is North of the specified position. + + A Position object to examine. + A Boolean, True if the current instance is more North than the specified instance. + + + + Indicates if the current instance is South of the specified position. + + A Position object to examine. + A Boolean, True if the current instance is more South than the specified instance. + + + + Indicates if the current instance is East of the specified position. + + A Position object to examine. + A Boolean, True if the current instance is more East than the specified instance. + + + + Indicates if the current instance is West of the specified position. + + A Position object to examine. + A Boolean, True if the current instance is more West than the specified instance. + + + + Returns the minimum time required to travel to the given destination at the + specified constant speed. + + The destination. + The speed. + + The TimeTo method expects a value for Speed greater than zero. + + + + Returns the distance over land from the given starting point to the specified + destination. + + The ending point of a segment. + A Distance object containing the calculated distance in + kilometers. + Calculates the great circle distance between any two points on + Earth. + This method uses trigonometry to calculate the Great Circle (over Earth's curved + surface) distance between any two points on Earth. The distance is returned in + kilometers but can be converted to any other unit type using methods in the + Distance + class. + + + + Returns the distance over land from the given starting point to the specified + destination. + + The ending point of a segment. + if set to true [is approximated]. + A Distance object containing the calculated distance in + kilometers. + Calculates the great circle distance between any two points on + Earth. + This method uses a high-speed formula to determine the Great Circle distance from one + point to another. This method is typically used in situations where hundreds of distance + measurements must be made in a short period of time. The DistanceTo method + produces accuracy to one millimeter, but its formula is about a hundred times slower than this + method. + Distance + class. + + + + Returns the distance over land from the given starting point to the specified + destination. + + The ending point of a segment. + The model of the Earth to use for the distance calculation. + if set to true [is approximated]. + A Distance object containing the calculated distance in + kilometers. + Calculates the great circle distance between any two points on + Earth. + This method uses a high-speed formula to determine the Great Circle distance from one + point to another. This method is typically used in situations where hundreds of distance + measurements must be made in a short period of time. The DistanceTo method + produces accuracy to one millimeter, but its formula is about a hundred times slower than this + method. + Distance + class. + + + + Returns the distance over land from the given starting point to the specified + destination. + + The ending point of a segment. + The model of the Earth to use for the distance calculation. + A Distance object containing the calculated distance in + kilometers. + Calculates the great circle distance between any two points on + Earth using a specific model of Earth's shape. + This method uses trigonometry to calculate the Great Circle (over Earth's curved + surface) distance between any two points on Earth. The distance is returned in + kilometers but can be converted to any other unit type using methods in the + Distance + class. + + + + Returns the remaining travel distance if traveling for a certain speed for a certain period of time. + + A Position marking the destination location. + A Speed travelled from the current instance. + A TimeSpan representing the time already elapsed during transit to the destination. + A Distance measuring the remaining distance to travel. + + + + Calculates the intersection of two lines created by the current instance, another point, and a direction of travel from each point. + + An Angle specifying a travel direction from the current instance. + A Position specifying the start of the second line of intersection. + An Angle specifying a travel direction from the second position. + A Position representing the point of intersection, if one exists. + This method is typically used to determine the point where two objects in motion would meet. + + + + Intersections the of. + + The first bearing. + The second position. + The second bearing. + + + + + Intersections the of. + + The first bearing. + The second position. + The second bearing. + + + + + Calculates a position relative to the current instance based upon the given bearing and distance. + + An Angle object specifying a direction to shift. + A Distance object specifying the distance to shift. + + + + + Translates to. + + The bearing. + The distance. + The ellipsoid. + + + + + Calculates a position relative to the current instance based upon the given bearing and distance. + + An Azimuth object specifying a direction to shift. + A Distance object specifying the distance to shift. + A Position representing the calculated position. + This function is designed to calculate positions for any location on Earth, with + the exception of coordinates which lie at the poles (e.g. 90°N or 90°S). + + + + Calculates a position relative to the current instance based upon the given bearing and distance. + + An Azimuth object specifying a direction to shift. + A Distance object specifying the distance to shift. + The model of the Earth to use for the translation calculation. + A Position representing the calculated position. + This function is designed to calculate positions for any location on Earth, with + the exception of coordinates which lie at the poles (e.g. 90°N or 90°S). + + + + Calculates a position relative to the current instance based upon the given bearing and distance. + + A Double specifying a direction to shift. + A Distance object specifying the distance to shift. + A Position representing the calculated position. + This function is designed to calculate positions for any location on Earth, with + the exception of coordinates which lie at the poles (e.g. 90°N or 90°S). + + + + Calculates a position relative to the current instance based upon the given bearing and distance. + + A Double specifying a direction to shift. + A Distance object specifying the distance to shift. + The model of the Earth to use for the translation calculation. + A Position representing the calculated position. + This function is designed to calculate positions for any location on Earth, with + the exception of coordinates which lie at the poles (e.g. 90°N or 90°S). + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Outputs the current instance as a string using the default format. + + A that represents this instance. + + + + Returns a random location using the specified random number seed. + + + + + + Returns a random location. + + The generator. + + + + + Returns a random location within the specified geographic rectangle. + + The southernmost. + The westernmost. + The northernmost. + The easternmost. + + + + + Returns a random location within the specified geographic rectangle. + + A Random object used to generate random values. + A Latitude specifying the southern-most allowed latitude. + A Longitude specifying the western-most allowed longitude. + A Latitude specifying the northern-most allowed latitude. + A Longitude specifying the eastern-most allowed longitude. + The randomly created position. + + + + Bearings to. + + The start. + The destination. + + Returns the direction of travel from one position to another. + + + + Returns a new instance shifted by the specified direction and + distance. + + The start. + The bearing. + The distance. + A new Position object adjusted by the specified + amount. + + Returns the position shifted by the specified bearing and distance as new + Position object. + + + + + ' Create a distance of ten miles + Dim TravelDistance As New Distance(10, DistanceUnit.StatuteMiles) + ' Calculate the point + Dim DestinationPoint As Position + DestinationPoint = Position.CurrentPosition.TranslateTo(Azimuth.Northwest, + TravelDistance) + + + This method is typically used to create an destination point relative to an + existing location. For example, this method could be used to create a point ten + miles northeast of the current location. + notice: The trigonometric formula used for this method is subject to errors + when the distance to translate falls below a quarter mile (approximately 433 + meters). + + + + Calculates the point (if any) at which two imaginary lines + intersect. + + A Position specifying a position which marks the start of a line. + An Angle specifying a direction from the first Position. + A Position specifying the second position, marking the start of a second line. + An Angle specifying a direction from the second Position. + A Position object specifying the intersection + point. + Calculates a position which marks the intersection of two + vectors. + This method uses trigonometry to calculate the point at which two lines intersect + on Earth's surface. This method is typically used to see where two objects in motion + would meet given their current directions of travel. This method does not take the speed + of each object into account. + + + + + Returns the remaining travel distance if traveling for a certain speed for a certain period of time. + + A Position marking the starting location from which to calculate. + A Position marking the destination location. + A Speed travelled from the current instance. + A TimeSpan representing the time already elapsed during transit to the destination. + A Distance measuring the remaining distance to travel. + + + + Returns the distance over land from the given starting point to the specified + destination. + + A beginning point from which to calculate distance. + The ending point of a segment. + A Distance object containing the calculated distance in + kilometers. + Calculates the great circle distance between any two points on + Earth. + This method uses trigonometry to calculate the Great Circle (over Earth's curved + surface) distance between any two points on Earth. The distance is returned in + kilometers but can be converted to any other unit type using methods in the + Distance + class. + + + + Returns the minimum amount of time required to reach the specified destination at + the specified speed. + + The start. + The destination. + The speed. + + + Calculates the time required to arrive at a destination when traveling at the + specified speed. + + + + + Returns the minimum speed required to travel over land from the given starting + point to the specified destination within the specified period of time. + + The beginning point from which calculations are based. + The ending point to which speed is calculated. + The amount of time allowed to reach the destination. + A Speed object containing the required minimum travel + speed. + + Calculates the minimum speed required to arrive at a destination in the given + time. + + This method is typically used to compare the current speed with the minimum + required speed. For example, if the current rate of travel is 30MPH and the minimum + speed is 60MPH, it can be derived that the speed must be doubled to arrive at the + destination on time. Of course, care must be taken when making any suggestion to + increase driving speed. + + + + Converts a string-based positional measurement into a Position + object. + + A String containing both latitude and longitude in the form of a string. + + This powerful method will analyze a string containing latitude and longitude and + create a Position object matching the specified values. The latitude and longitude + must be separated by a non-space delimiter such as a comma. + + + + Parses the specified value. + + The value. + The culture. + + + + + Parses as lat long. + + The value. + The culture. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Adds the specified latitude and longitude from the current latitude and longitude. + + The position. + + + + + Subtracts the specified latitude and longitude from the current latitude and longitude. + + The position. + + + + + Multiplies the specified latitude and longitude from the current latitude and longitude. + + The position. + + + + + Divides the specified latitude and longitude from the current latitude and longitude. + + The position. + + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Creates a copy of the current instance. + + + + + + Compares the current instance to the specified position. + + A Position object to compare with. + A Boolean, True if the values are identical. + The two objects are compared at up to four digits of precision. + + + + Compares the current instance to the specified position using the specified numeric precision. + + A Position object to compare with. + An Integer specifying the number of fractional digits to compare. + A Boolean, True if the values are identical. + This method is typically used when positions do not mark the same location unless they are + extremely close to one another. Conversely, a low or even negative value for Precision + allows positions to be considered equal even when they do not precisely match. + + + + Outputs the current instance as a string using the specified format and culture information. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Represents the vertical North/South portion of the location. + + + + + Represents the horizontal East/West portion of the location. + + + + + Indicates if the position has no value. + + + + + Indicates if the position has an invalid or unspecified value. + + + + + Indicates whether the position has been normalized and is within the + allowed bounds of -90° and 90° latitude and -180° and 180° longitude. + + + + + Indicates a vertical slice of the Earth used as a starting point for UTM positions. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a position on Earth marked by latitude, longitude, and altitude. + + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed via constructors). + + + + + + + + + + + + + + Initializes a new instance of the struct. + + The altitude. + The location. + + + + Initializes a new instance of the struct. + + The altitude. + The longitude. + The latitude. + + + + Initializes a new instance of the struct. + + The altitude. + The latitude. + The longitude. + Creates a new instance. + + + + Initializes a new instance of the struct. + + The longitude. + The latitude. + The altitude. + + + + Initializes a new instance of the struct. + + The latitude. + The longitude. + The altitude. + + + + Creates a new instance by parsing latitude and longitude from a single string. + + The altitude. + The location. + + + + Creates a new instance by interpreting the specified latitude and longitude. + + The altitude. + The latitude. + The longitude. + Latitude and longitude values are parsed using the current local culture. For better support + of international cultures, add a CultureInfo parameter. + + + + Creates a new instance by interpreting the specified latitude and longitude. + + The altitude. + The latitude. + The longitude. + The culture. + Latitude and longitude values are parsed using the current local culture. For better support + of international cultures, a CultureInfo parameter should be specified to indicate how numbers should + be parsed. + + + + Creates a new instance by converting the specified string using the specific culture. + + The altitude. + The location. + The culture. + + + + Upgrades a Position object to a Position3D object. + + The position. + + + + Initializes a new instance of the struct. + + The reader. + + + + Toes the cartesian point. + + + + + + Toes the cartesian point. + + The ellipsoid. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Adds the specified position. + + The position. + + + + + Subtracts the specified position. + + The position. + + + + + Multiplies the specified position. + + The position. + + + + + Divides the specified position. + + The position. + + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Compares the current instance to the specified position. + + A Position object to compare with. + A Boolean, True if the values are identical. + The two objects are compared at up to four digits of precision. + + + + Compares the current instance to the specified position using the specified numeric precision. + + A Position object to compare with. + An Integer specifying the number of fractional digits to compare. + A Boolean, True if the values are identical. + This method is typically used when positions do not mark the same location unless they are + extremely close to one another. Conversely, a low or even negative value for Precision + allows positions to be considered equal even when they do not precisely match. + + + + Outputs the current instance as a string using the specified format and culture information. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Returns a coordinate which has been shifted the specified bearing and distance. + + The bearing. + The distance. + The ellipsoid. + + + + + Clones this instance. + + + + + + Returns the location's distance above sea level. + + + + + Gets the latitude. + + + + + Gets the longitude. + + + + + Returns whether the latitude, longitude and altitude are zero. + + + + + Represents a unit of angular measurement used during trigonometric + equations. + + A radian is a unit of measure of an angle formed by an arc whose length is + the same as the circle's radius, making a shape similar to a slice of pizza. + Radians are typically used during trigonometric calculations such as calculating + the distance between two points on Earth's curved surface. + Instances of this class are guaranteed to be thread-safe because the class is + immutable (its properties can only be changed during constructors). + + + + + + + + + + + + + + + + + + + Represents a radian with a value of zero. + + + + + Creates a new instance with the specified value. + + The value. + this constructor is typically used to initialize an instance when the radian + value is already known. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Creates a new instance by deserializing the specified XML. + + The reader. + + + + Returns the cosine of the current instance. + + + + + + Sines this instance. + + + + + + Tangents this instance. + + + + + + Squares the root. + + + + + + Returns the absolute value of the current instance. + + + + + + Returns the arccosine of the current instance. + + + + + + Returns the arcsine of the current instance. + + + + + + Returns the arctangent of the current instance. + + + + + + Logarithms the specified new base. + + The new base. + + + + + Logarithms the base10. + + + + + + Converts the current instance into an Angle object. + + An Angle object. + This method is typically used to convert a radian measurement back to latitude or + longitude after a trigonometric formula has completed. + + + + Converts the current instance into an Angle object. + + An Angle object. + This method is typically used to convert a radian measurement back to latitude or + longitude after a trigonometric formula has completed. + + + + Converts the current instance to a latitude. + + + + + + Converts the current instance to a longitude. + + + + + + Outputs the speed measurement as a formatted string using the specified + format. + + The format. + A that represents this instance. + + + + Determines whether the specified is equal to this instance. + + Another object to compare to. + true if the specified is equal to this instance; otherwise, false. + + + + Returns the unique code for this instance used in hash tables. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Converts the specified value in degrees into radians. + + A Double containing the value to convert. + + + + + Converts the specified value in degrees into radians. + + An Angle containing the value to convert. + + + + + Converts the specified value from radians to degrees. + + The radians. + A Double measuring degrees. + This method is typically used to convert a radian measurement back to latitude or + longitude after a trigonometric formula has completed. + + + + Converts a Radian object into decimal degrees. + + A Radian object to convert to an Angle. + An Angle object containing the converted value. + This method is typically used for trigonometric functions which work with values expressed as radians. Then the formula has completed, results are converted from radians to decimal degrees to make them easier to use. + + + + Parses the specified value. + + The value. + + + + + Parses the specified value. + + The value. + The culture. + + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Adds the current instance to the specified value. + + The value. + + + + + Adds the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Returns the current value divided by the specified value. + + The value. + + + + + Divides the specified value. + + The value. + + + + + Increments this instance. + + + + + + Returns the current value decreased by one. + + + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Determines whether [is less than] [the specified value]. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Determines whether [is less than or equal to] [the specified value]. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Determines whether [is greater than] [the specified value]. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Determines whether [is greater than or equal to] [the specified value]. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Equalses the specified value. + + The value. + + + + + Equalses the specified value. + + The value. + The decimals. + + + + + Compares the current instance with the specified value. + + The value. + + + + + Outputs the speed measurement as a formatted string using the specified format + and culture information. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Represents the numeric portion of a radian measurement. + + A Double value indicating an angular measurement expressed in + radians. + This property stores the numeric radian measurement. A radian can be converted into a degree + measurements via the ToAngle method. + + + + Represents a line connected by two points on Earth's surface. + + + + + + + + + + + + + + + + + + + + Creates a new instance using the specified end points. + + The start. + The end. + + + + Returns the distance from the segment to the specified position. + + The position. + + This method analyzes the relative position of the segment to the line to determine the + best mathematical approach. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + Returns the distance from the starting point to the end point. + + + + + Returns the bearing from the start to the end of the line. + + + + + Returns the starting point of the segment. + + + + + Returns the end point of the segment. + + + + + Returns the location halfway from the start to the end point. + + + + + Represents a highly-precise two-dimensional size. + + This structure is a DotSpatial.Positioning "parseable type" whose value can + be freely converted to and from String objects via the + ToString and Parse methods. + Instances of this structure are guaranteed to be thread-safe because it is + immutable (its properties can only be modified via constructors). + + + + + + + + + + + + + + Represents a size with no value. + + + + + Represents an infinite size. + + + + + Represents the smallest possible size. + + + + + Represents the largest possible size. + + + + + Initializes a new instance of the struct. + + The pt. + + + + Initializes a new instance of the struct. + + The size. + + + + Creates a new instance. + + The width. + The height. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Initializes a new instance of the struct. + + The reader. + + + + Toes the aspect ratio. + + The size. + + + + + Toes the aspect ratio. + + The aspect ratio. + + + + + Returns a copy of the current instance. + + + + + + Returns a that represents this instance. + + The format. + A that represents this instance. + + + + Compares the current instance to the specified object. + + An Object to compare with. + A Boolean, True if the values are equivalent. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Parses the specified value. + + The value. + + + + + Parses the specified value. + + The value. + The culture. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Returns the sum of the current instance with the specified size. + + The size. + + + + + Returns the current instance decreased by the specified value. + + The size. + + + + + Returns the product of the current instance with the specified value. + + The size. + + + + + Returns the current instance divided by the specified value. + + The size. + + + + + Compares the current instance to the specified object. + + A SizeD object to compare with. + A Boolean, True if the values are equivalent. + + + + Returns a that represents this instance. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the horizontal size. + + + + + Returns the vertical size. + + + + + Returns the ratio width to height. + + + + + Indicates if the instance has any value. + + + + + Represents a measurement of an object's rate of travel. + + This structure is used to measure the rate at which something moves in a + given period of time. This structure supports several different unit types in both + Imperial and Metric measurement systems. A speed is measured in two parts: a + numeric value and a label indicating the units of measurement. + Speed measurements can be converted to their equivalent values in other unit + types through the use of several conversion methods such as ToMetersPerSecond, + ToFeetPerSecond, ToKilometersPerHour, and others. + Three methods, ToImperialUnitType, + ToMetricUnitType and ToLocalUnitType also exist + for converting a speed measurement to the most readable unit type (i.e. 1 meter vs. + 0.0001 kilometers) in any local culture. + This structure is a DotSpatial.Positioning "parseable type" whose value can + be freely converted to and from String objects via the + ToString and Parse methods. + Instances of this structure are guaranteed to be thread-safe because it is + immutable (its properties can only be modified via constructors). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a speed of zero. + + + + + Represents a speed of zero. + + + + + Returns the rate of travel of light in a vacuum. + + + + + Represents the largest possible speed. + + + + + Represents the smallest possible speed. + + + + + Returns the rate of travel of sound waves at sea level. + + + + + Represents an infinite speed. + + + + + Represents an invalid or unspecified value. + + + + + Creates a new instance using the specified value and unit type. + + The value. + The units. + This is the most frequently used constructor of the speed class. + + + + Initializes a new instance of the struct. + + The value. + This powerful method is designed to simplify the process of parsing values read + from a data store or typed in by the user. + + + + Initializes a new instance of the struct. + + The value. + The culture. + + + + Initializes a new instance of the struct. + + The reader. + + + + Returns a copy of the current instance. + + + + + + Returns a new instance rounded to the specified number of digits. + + An Integer specifying the number of digits to round off to. + + + + + Returns the current instance converted to feet per second. + + + The measurement is converted regardless of its current unit type. + + + + Converts the current measurement into kilometers per hour. + + + The measurement is converted regardless of its current unit type. + + + + Converts the current measurement into kilometers per second. + + + The measurement is converted regardless of its current unit type. + + + + Returns the current instance converted to knots. + + + The measurement is converted regardless of its current unit type. + + + + Returns the current instance converted to meters per second. + + + The measurement is converted regardless of its current unit type. + + + + Returns the current instance converted to miles per hours (MPH). + + + The measurement is converted regardless of its current unit type. + + + + Returns the current instance converted to the specified unit type. + + The value. + + + + + Returns the current instance converted to the most readable Imperial unit + type. + + A Speed converted to the chosen unit type. + When a Speed becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a Speed of + 0.001 kilometers might be better expressed as 1 meter. This method will + determine the smallest Imperial unit type. + + + + Returns the current instance converted to the most readable Metric unit + type. + + A Speed converted to the chosen unit type. + When a Speed becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a Speed of + 0.001 kilometers per second might be better expressed as 1 meter per second. This method will + determine the smallest metric unit type. + + + + Returns the current instance converted to the most readable Imperial or Metric + unit type depending on the local culture. + + A Speed converted to the chosen unit type. + When a Speed becomes smaller, it may make more sense to the + user to be expressed in a smaller unit type. For example, a Speed of + 0.001 kilometers might be better expressed as 1 meter. This method will + find the smallest unit type and convert the unit to the user's local + numeric system (Imperial or Metric). + + + + Outputs the speed measurement as a formatted string using the specified + format. + + The format. + A that represents this instance. + + + + Returns the total distance traveled at the current speed for the specified + time. + + The time. + A Distance representing the distance travelled at + the current speed for the specified length of time. + + + + Compares the current instance to the specified arbitrary value. + + An Object representing a value to compare. + A Boolean, True if the values are equivalent. + + + + Returns a unique code for the current instance used in hash tables. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + Outputs the speed measurement as a formatted string. + + A that represents this instance. + + + + Creates a speed measurement based on a string value. + + A String in any of the following formats (or variation + depending on the local culture): + + + + + + + + + +
vuvv.vuv u
+
+ where vv.v is a decimal value and u is a + unit type made from words in the following list: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FEETFOOTMETER
METERSMETREMETRES
KILOMETERKILOMETREKILOMETERS
KILOMETRESKNOTKNOTS
MILEMILESSTATUTE MILE
STATUTE MILESFFT
MKMK
PER-PER-/
SECONDSECS
HOURHRH
+
+ For example, "12 miles per hour" is acceptable because the words "miles," + "per," and "hour" are found in the above list. Some combinations are not supported, + such as "feet/hour." The word combination should look similar to a value from the + SpeedUnit enumeration. + A new Speed object with the specified value and + units. + This powerful method simplifies the process of processing values read from a data + store or entered via the user. This method even supports some natural language + processing ability by understanding words (see list above). This method can parse any + value created via the ToString method. +
+ + + Parses the specified value. + + The value. + The culture. + + + + + Froms the knots. + + The value. + + + + + Froms the statute miles per hour. + + The value. + + + + + Froms the kilometers per hour. + + The value. + + + + + Froms the kilometers per second. + + The value. + + + + + Froms the feet per second. + + The value. + + + + + Froms the meters per second. + + The value. + + + + + Parses the speed unit. + + The value. + + + + + Returns a random distance between 0 and 200 kilometers per hour. + + A Distance containing a random value, converted to local units. + + + + Returns a random distance between 0 and 200 kilometers per hour. + + A Random object used to generate random values. + A Distance containing a random value, converted to local units. + + + + Implements the operator +. + + The left. + The right. + The result of the operator. + + + + Implements the operator -. + + The left. + The right. + The result of the operator. + + + + Implements the operator *. + + The left. + The right. + The result of the operator. + + + + Implements the operator /. + + The left. + The right. + The result of the operator. + + + + Implements the operator <. + + The left. + The right. + The result of the operator. + + + + Implements the operator <=. + + The left. + The right. + The result of the operator. + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >=. + + The left. + The right. + The result of the operator. + + + + Implements the operator >. + + The left. + The right. + The result of the operator. + + + + Adds the specified value. + + The value. + + + + + Adds the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Subtracts the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Multiplies the specified value. + + The value. + + + + + Divides the specified value. + + The value. + + + + + Divides the specified value. + + The value. + + + + + Returns the current instance increased by one. + + + + + + Returns the current instance decreased by one. + + + + + + Indicates if the current instance is smaller than the specified speed. + + The value. + true if [is less than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is smaller or equivalent to than the specified + speed. + + The value. + true if [is less than or equal to] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger than the specified speed. + + The value. + true if [is greater than] [the specified value]; otherwise, false. + + + + Indicates if the current instance is larger or equivalent to than the specified + speed. + + The value. + true if [is greater than or equal to] [the specified value]; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + + Equalses the specified other. + + The other. + The decimals. + + + + + Compares the current instance to the specified speed. + + An object to compare with this object. + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: + Value + Meaning + Less than zero + This object is less than the parameter. + Zero + This object is equal to . + Greater than zero + This object is greater than . + + + + Outputs the speed measurement as a formatted string using the specified format + and culture information. + + The format to use.-or- A null reference (Nothing in Visual Basic) to use the default format defined for the type of the implementation. + The provider to use to format the value.-or- A null reference (Nothing in Visual Basic) to obtain the numeric format information from the current locale setting of the operating system. + A that represents this instance. + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Returns the numeric portion of the speed measurement. + + This property is combined with the + Units property to form a complete + speed measurement. + + + + Returns the units portion of the speed measurement. + + A value from the SpeedUnits enumeration. + Following proper scientific practices, speed measurements are always made + using a value paired with a unit type. + Always explicitly + convert to a specific speed unit type before performing + mathematics. + Since the Units property of the Speed class can be modified, it is not + safe to assume that a speed measurement will always be of a certain unit type. + Therefore, use a conversion method such as + ToKilometersPerHour or + ToStatuteMilesPerHour to ensure that the speed is in the correct unit + type before perfoming mathematics. + + + + Indicates if the measurement is zero. + + + + + Indicates if the unit of measurement is a Metric unit type. + + + + + Indicates if the measurement is infinite. + + + + + Indicates if the current instance is invalid or unspecified. + + + + + Indicates the unit of measure for speed measurements. + + Units Property (Speed Class) + + Speed Class + This enumeration is used by the + Units property of the + Speed + class in conjunction with the Value + property to describe a speed measurement. + + + The number of nautical miles travelled in one hour. + + + The number of statute miles travelled in one hour, also known as MPH. + + + The number of kilometers travelled in one hour, also known as KPH. + + + The number of kilometers travelled in one second, also known as + KM/S. + + + The number of feet travelled in one second, also known as FT/S. + + + The number of meters travelled in one hour, also known as M/S. + + + + Serves as a notification to dispose of static objects. + + + private static StaticFinalizer MyStaticFinalizer = new StaticFinalizer(); + private static Brush UnmanagedResource = new SolidBrush(Color.Blue); + void Constructor() + { + MyStaticFinalizer.Disposed += new EventHandler(StaticFinalize); + } + void StaticFinalize(object sender, EventArgs e) + { + UnmanagedResource.Dispose(); + } + + It is not uncommon for static variables to contain unmanaged resources. Yet, + the .NET Garbage Collector does not allow for finalizers on static objects. The StaticFinalizer + class serves to work around this problem. To use this class, declare an instance as a + private, static variable. Then, hook into its Disposed event. The event will be raised + during the StaticFinalizer's own finalizer, allowing you to safely dispose of static resources. + + + + + + + + + Releases unmanaged resources and performs other cleanup operations before the is reclaimed by garbage collection. + + + + + Occurs when [disposed]. + + + + + Represents a simulated GPS device. + + + + + + + + + + Creates a new instance using the specified emulator. + + The emulator. + + + + Overrides OnChaceRemove + Since emulators don't qualify as detected devices, this + method has no behavior. + + + + + Records information about this device to the registry. + + + + + Reads information about this device from the registry. + + + + + Creates a new Stream object for the device. + + The access. + The sharing. + A Stream object. + + + + Gets the Name of the Virtual Device + + + + + + + + + + Returns the XML namespace for GML documents. + + + + + Returns the prefix applied to all GML XML elements. + + + + + Returns the XML namespace for DotSpatial.Positioning documents. + + + + + Returns the prefix applied to all DotSpatial.Positioning XML elements. + + + + + Used to test the implementations of DotSpatial.Positioning types. + + + The obj. + + + + + Used to test the implementations of DotSpatial.Positioning types. + + + The XML. + + +
+
Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/MapWinUtility.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allow tu create shapes in DotSpatial. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Updater.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/laszip.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Dam.wixproj =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Dam.wixproj (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Dam.wixproj (revision 2866) @@ -0,0 +1,105 @@ + + + + + Debug + x86 + 3.10 + f7a7c140-89cc-4479-9688-265bbbad274b + 2.0 + Dam + Package + + + Dam + + + bin\$(Configuration)\ + obj\$(Configuration)\ + Debug + False + + + ICE57 + + + bin\$(Configuration)\ + obj\$(Configuration)\ + ICE57 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(WixExtDir)\WixUtilExtension.dll + WixUtilExtension + + + $(WixExtDir)\WixUIExtension.dll + WixUIExtension + + + + + DSeries + {8caf5219-9f89-443f-8924-800ae583d7ba} + True + True + Binaries;Content;Satellites + INSTALLFOLDER + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Projections.Forms.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.xml (revision 2866) @@ -0,0 +1,19164 @@ + + + + DotSpatial.Data + + + + + Tiny structure for storing A,R,G,B components of Color + + + + + Returns an integer that ranges from 0 to 255. If value is larger than 255, the value will be equal to 255. + If the value is smaller than 255, it will be equal to 255. + + A Double value to convert. + An integer ranging from 0 to 255 + + + + + + + + + Writes the specified type. + + + The writer. + The value. + + + + Reads the specified type. + + + The reader. + + + + + A registry used to map CLR cultures and encodings to + dBase language driver id (LDID) encoding specifiers. + + + Lookup values are taken from Esri's + + ArcPad Reference Guide + + + + + Gets the associated with the + given dBase LDID. + + + The language driver id (LDID) to get a CultureInfo for. + + + A which uses the encoding represented by + by default. + + + + + Gets the which matches the + given dBase LDID. + + + The language driver id (LDID) to get the for. + + + An which corresponds to the the + code established by Esri. + + + + + Gets a language driver id (LDID) for the given encoding. + + The Encoding used to lookup the LDID. + A language driver code used to specify the encoding used to write text in the dBase file. + 0x57 (Windows ANSI) is returned as a default if there is no associated LDID for the given encoding. + + + + Specifies which code page to use in a + instance. + + + + + Represents a culture and encoding pair. + + + + + This base class tries to correctly implement disposable, and should help make the behaviors + more consistent across classes that inherit from this class. + + + + + Unlike forms that have a disposable life cycle with a clear chain of ownership, or purely managed + libraries that have in a built in reference counting system, disposable members in DotSpatial + require the ability to behave in some cases like a layer that should be removed from memory + as soon as it is removed from the map, and other times like a persistent object. The DisposeLock + concept works like an industrial lock-out system. Each additional lock increases the lock count. + When all users have released the lock, the IsDisposedLocked property will be false, and the next + action like a removal from the parent layers will properly dispose the item. Users may feel free + to add the lock in order to handle disposal on the layers themselves. These methods will not + actually prevent Dispose from functioning, but understand that calling dispose when there is an + IsDisposeLocked is true means that there will likely be a problem. + + + + + Locks dispose. This typically adds one instance of an internal reference counter. + + + + + Unlocks dispose. This typically removes one instance of an internal reference counter. + + + + + Gets a value indicating whether an existing reference is requesting that the object is not disposed of. + + + + + Disposes + + + + + Adds one request or "reference count" for this item not to be disposed. When an owner is finished, + if this is 0, then dispose should be called. For now this does not prevent Dispose from being + called, it is simply for tracking purposes. + + + + + Removes one reference or request to prevent an object from being automatically disposed. + + + + + Finalizes an instance of the class. + + + + + This is where the meat of the dispose work is done. Subclasses should call dispose on any disposable + members or internal members (presuming they are not dispose locked). + + True if the "Dispose" method was called instead of the destructor. + + + + Gets a value indicating whether this instance has already had the Dispose method called on it. + + + + + Gets a value indicating whether there are outstanding references that may be using the item + that would prefer it if you did not dispose of the item while they are still using it. + + + + + An EventArgs class for passing around an extent. + + + + + Initializes a new instance of the ExtentArgs class. + + The value for this event. + + + + Gets or sets the Extents for this event. + + + + + The ExtentsM class extends the regular X and Y extent to the X, Y and M case. + + + + + Extent works like an envelope but is faster acting, has a minimum memory profile, + only works in 2D and has no events. + + + + + A very simple, 2D extent specification. + + + + + Minimum in the X dimension, usually left or minimum longitude. + + + + + Maximum in the x dimension, usually right or maximum longitude. + + + + + Minimum in the y dimension, usually bottom or minimum latitude. + + + + + Maximum in the y dimension, usually the top or maximum latitude. + + + + + Gets a Boolean that is true if the Min and Max M range should be used. + + + + + Gets a Boolean indicating whether the Z value should be used. + + + + + Creates a new instance of Extent. This introduces no error checking and assumes + that the user knows what they are doing when working with this. + + + + + Creates a new extent from the specified ordinates + + + + + + + + + Given a long array of doubles, this builds an extent from a small part of that + xmin, ymin, xmax, ymax + + + + + + + XMin, YMin, XMax, YMax order + + + + + + Creates a new extent from the specified envelope + + + + + + Produces a clone, rather than using this same object. + + + + + + Equality test + + + + + + + + Inequality test + + + + + + + + Tests if this envelope is contained by the specified envelope + + + + + + + Tests if this envelope is contained by the specified envelope + + The coordinate to test. + Boolean + + + + Tests if this envelope is contained by the specified envelope + + + + + + + Copies the MinX, MaxX, MinY, MaxY values from extent. + + Any IExtent implementation. + + + + Allows equality testing for extents that is derived on the extent itself. + + + + + + + Expand will adjust both the minimum and maximum by the specified sizeX and sizeY + + The amount to expand left and right. + The amount to expand up and down. + + + + This expand the extent by the specified padding on all bounds. So the width will + change by twice the padding for instance. To Expand only x and y, use + the overload with those values explicitly specified. + + The double padding to expand the extent. + + + + Expands this extent to include the domain of the specified extent + + The extent to expand to include + + + + Expands this extent to include the domain of the specified point + + + + + + + Spreads the values for the basic X, Y extents across the whole range of int. + Repetition will occur, but it should be rare. + + Integer + + + + Calculates the intersection of this extent and the other extent. A result + with a min greater than the max in either direction is considered invalid + and represents no intersection. + + The other extent to intersect with. + + + + Returns true if the coordinate exists anywhere within this envelope + + + + + + + Tests for intersection with the specified coordinate + + The double ordinate to test intersection with in the X direction + The double ordinate to test intersection with in the Y direction + True if a point with the specified x and y coordinates is within or on the border + of this extent object. NAN values will always return false. + + + + Tests to see if the point is inside or on the boundary of this extent. + + + + + + + Tests for an intersection with the specified extent + + The other extent + Boolean, true if they overlap anywhere, or even touch + + + + Tests with the specified envelope for a collision + + + + + + + If this is undefined, it will have a min that is larger than the max, or else + any value is NaN. This only applies to the X and Z terms. Check HasM or HasZ higher dimensions. + + Boolean, true if the envelope has not had values set for it yet. + + + + This allows parsing the X and Y values from a string version of the extent as: + 'X[-180|180], Y[-90|90]' Where minimum always precedes maximum. The correct + M or MZ version of extent will be returned if the string has those values. + + The string text to parse. + + + + This reads the string and attempts to derive values from the text. + + + + + + + + + This centers the X and Y aspect of the extent on the specified center location. + + + + + + + + + This centers the X and Y aspect of the extent on the specified center location. + + The center coordinate to to set. + + + + + + This centers the extent on the specified coordinate, keeping the width and height the same. + + + + + Sets the values for xMin, xMax, yMin and yMax. + + The double Minimum in the X direction. + The double Minimum in the Y direction. + The double Maximum in the X direction. + The double Maximum in the Y direction. + + + + Creates a geometric envelope interface from this + + + + + + Creates a string that shows the extent. + + The string form of the extent. + + + + Tests if this envelope is contained by the specified envelope + + + + + + + Tests if this envelope is contained by the specified envelope + + + + + + + Attempts to extract the min and max from one element of text. The element should be + formatted like X[1.5, 2.7] using an invariant culture. + + + The name of the dimension, like X. + The minimum that gets assigned + The maximum that gets assigned + Boolean, true if the parse was successful. + + + + This method converts the X and Y text into two doubles. + + + + + + Gets the Center of this extent. + + + + + Gets or sets whether the M values are used. M values are considered optional, + and not mandatory. Unused could mean either bound is NaN for some reason, or + else that the bounds are invalid by the Min being less than the Max. + + + + + Gets or sets whether the M values are used. M values are considered optional, + and not mandatory. Unused could mean either bound is NaN for some reason, or + else that the bounds are invalid by the Min being less than the Max. + + + + + Max X + + + + + Max Y + + + + + Min X + + + + + Min Y + + + + + Gets MaxY - MinY. Setting this will update MinY, keeping MaxY the same. (Pinned at top left corner). + + + + + Gets MaxX - MinX. Setting this will update MaxX, keeping MinX the same. (Pinned at top left corner). + + + + + Gets MinX. Setting this will shift both MinX and MaxX, keeping the width the same. + + + + + Gets MaxY. Setting this will shift both MinY and MaxY, keeping the height the same. + + + + + Supports bounding in the M Dimension + + + + + Gets or sets the minimum M value + + + + + Gets or sets the maximum M value + + + + + Initializes a new instance of the ExtentM class. + + + + + Initializes a new instance of the ExtentM class. + + The double Minimum in the X direction. + The double Minimum in the Y direction. + The double Minimum in the Measure category. + The double Maximum in the X direction. + The double Maximum in the Y direction. + The double Maximum in the Measure category. + + + + Initializes a new instance of the ExtentM class that is specially designed to work + with shapefile formats that have a Measure value. Obviously other formats can use + this as well. + + An extent that contains only the x and y boundaries. + The minimum M. + The maximum M. + + + + Initializes a new instance of the ExtentM class. This overload works from an envelope. + + The envelope with extent values to read. + + + + Produces a clone, rather than using this same object. + + Returns a copy of this object. + + + + Tests if this envelope is contained by the specified envelope + + The coordinate to test. + Boolean. + + + + Tests if this envelope is contained by the specified envelope + + + + + + + Tests if this envelope is contained by the specified envelope. If either element + does not support M values, then only the default X and Y contains test is used. + + The envelope to test. + Boolean. + + + + Copies from the implementation of IExtent. This checks to see if IExtentM is implemented + and if not, this only sets the X and Y bounds. + + + + + + This expand the extent by the specified padding on all bounds. So the width will + change by twice the padding for instance. To Expand only x and y, use + the overload with those values explicitly specified. + + The double padding to expand the extent. + + + + Expands this extent to include the domain of the specified extent. If the specified case + doesn't support IExtentM or HasM is false for that extent, then this test will default + to the XY case. + + The extent to expand to include. + + + + Expands this extent to include the domain of the specified point + + The x ordinate to expand to. + The y ordinate to expand to. + The m ordinate to expand to. + + + + Calculates the intersection of this extent and the other extent. A result + with a min greater than the max in either direction is considered invalid + and represents no intersection. + + The other extent to intersect with. + + + + Returns true if the coordinate exists anywhere within this envelope. If this + envelope represents a valid M extent by having a max greater than min and + neither value being NaN, then this will also test the coordinate for the + M range. + + The Coordinate to test. + Boolean + + + + Tests for intersection with the specified coordinate. If the m is double.NaN + then it degenerates to only testing X and Y, even if this envelope has an M range. + + The double ordinate to test intersection with in the X direction + The double ordinate to test intersection with in the Y direction + The optional double measure parameter to test. + Boolean + + + + Tests for an intersection with the specified extent. Both this extent and the + other must implement IExtentM and HasM must be true for both, or else just + the X and Y are compared. + + The other extent. If the extent doesn't implement IExtentM, then + this comparison simply defaults to the X Y intersect case. + Boolean, true if they overlap anywhere, or even touch. + + + + Tests with the specified envelope for a collision. If any part of the M bounds + are invalid, this will default to the XY Intersect comparison. + + The envelope to test. + Boolean. + + + + Since M values are optional, they can be set to an invalid state, which will behave the + same as if the M bounds did not exist. + + + + + Sets the values for xMin, xMax, yMin and yMax. + + The double Minimum in the X direction. + The double Minimum in the Y direction. + The double Minimum in the Measure category. + The double Maximum in the X direction. + The double Maximum in the Y direction. + The double Maximum in the Measure category. + + + + Tests if this envelope is contained by the specified envelope. If either party doesn't have + M constraints, they will not be used for this test. + + implementation of IExtent to compare to. + + + + + Tests if this envelope is contained by the specified envelope. If either envelope doesn't + support M then only the X and Y case will be tested. + + The envelope to compare. + Boolean. + + + + Allows equality testing for extents that is derived on the extent itself. + + + + + + + Creates a string that shows the extent. + + The string form of the extent. + + + + Spreads the values for the basic X, Y extents across the whole range of int. + Repetition will occur, but it should be rare. + + Integer + + + + Gets or sets whether the M values are used. M values are considered optional, + and not mandatory. Unused could mean either bound is NaN for some reason, or + else that the bounds are invalid by the Min being less than the Max. + + + + + + + + + + + For shapefiles, the extents may or may not have M and Z values depending on the file type. + These are valid IExtent implementations, but add both the M and Z extent options. + For the file format, the Z values are mandatory, and so whatever the values are will be + stored. This may cause issues when viewing in ArcGIS if you have entered some bad Z + envelope extents. + + + + + The Extent interface for Z dimension extent bounds. + + + + + The minimum in the Z dimension (usually the bottom) + + + + + The maximum in the Z dimension (usually the top) + + + + + Initializes a new instance of the ExtentMZ class. + + + + + Initializes a new instance of the ExtentMZ class. + + The double Minimum in the X direction. + The double Minimum in the Y direction. + The double Minimum in the Measure category. + The double Minimum in the Z direction. + The double Maximum in the X direction. + The double Maximum in the Y direction. + The double Maximum in the Measure category. + The double Maximum in the Z direction. + + + + Initialize a new instance of the ExtentMZ class. + + The Envelope to read the minimum and maximum values from. + + + + Since M values are optional, they can be set to an invalid state, which will behave the + same as if the M bounds did not exist. + + + + + Copies from the implementation of IExtent. This checks to see if IExtentM is implemented + and if not, this only sets the X and Y bounds. + + + + + + Sets the values for xZin, xMax, yMin and yMax. + + The double Minimum in the X direction. + The double Minimum in the Y direction. + The double Minimum in the Measure category. + The double Minimum in the Z direction. + The double Maximum in the X direction. + The double Maximum in the Y direction. + The double Maximum in the Measure category. + The double Maximum in the Z direction. + + + + Tests if this envelope is contained by the specified envelope + + The coordinate to test. + Boolean. + + + + Returns true if the coordinate exists anywhere within this envelope. If this + envelope represents a valid Z extent by having a max greater than min and + neither value being NaN, then this will also test the coordinate for the + Z range. + + The Coordinate to test. + Boolean + + + + Tests for intersection with the specified coordinate. If the m is double.NaN + then it degenerates to only testing M, X and Y, even if this envelope has an M range. + + The double ordinate to test intersection with in the X direction. + The double ordinate to test intersection with in the Y direction. + The optional double measure parameter to test. + The double ordinate to test intersection with in the Z direction. + Boolean + + + + Tests for an intersection with the specified extent. Both this extent and the + other must implement IExtentM and HasM must be true for both, or else just + the X and Y are compared. + + The other extent. If the extent doesn't implement IExtentM, then + this comparison simply defaults to the M, X and Y intersect case. + Boolean, true if they overlap anywhere, or even touch. + + + + Tests with the specified envelope for a collision. If any part of the Z bounds + are invalid, this will default to the M, X and Y Intersect comparison. + + The envelope to test. + Boolean. + + + + Calculates the intersection of this extent and the other extent. A result + with a min greater than the max in either direction is considered invalid + and represents no intersection. + + The other extent to intersect with. + + + + Expands this extent to include the domain of the specified extent. If the specified case + doesn't support IExtentM or HasM is false for that extent, then this test will default + to the M, X and Y case. + + The extent to expand to include + + + + This expand the extent by the specified padding on all bounds. So the width will + change by twice the padding for instance. To Expand only x and y, use + the overload with those values explicitly specified. + + The double padding to expand the extent. + + + + Expands this extent to include the domain of the specified point + + The x ordinate to expand to. + The y ordinate to expand to. + The m ordinate to expand to. + The z ordinate to expand to. + + + + Tests if this envelope is contained by the specified envelope. If either party doesn't have + M constraints, they will not be used for this test. + + implementation of IExtent to compare to. + Boolean. + + + + Tests if this envelope is contained by the specified envelope + + The extent to test. + Boolean. + + + + Tests if this envelope is contained by the specified envelope. If either envelope doesn't + support M then only the XY case will be tested. + + The envelope to compare. + Boolean. + + + + Tests if this envelope is contained by the specified envelope. If either element + does not support M values, then only the default XY contains test is used. + + The envelope to test. + Boolean. + + + + Creates a string that shows the extent. + + The string form of the extent. + + + + Produces a clone, rather than using this same object. + + Returns a copy of this object. + + + + Allows equality testing for extents that is derived on the extent itself. + + + + + + + Spreads the values for the basic X, Y extents across the whole range of int. + Repetition will occur for extents that are close, but should be rare. + + Integer + + + + Gets or sets whether the M values are used. M values are considered optional, + and not mandatory. Unused could mean either bound is NaN for some reason, or + else that the bounds are invalid by the Min being less than the Max. + + + + + + + + + + + + + + + + The string template that should be used. M and Z are optional. Do use a comma to + delimit terms, but the space doesn't matter. Do use square brackets to enclose + numbers, and do use the | separator to separate min from max. Do place min + before max in each term. The order of the terms doesn't matter. Use periods + for decimals and an invariant culture. + + + + + Initializes a new instance of the ExtentParseException + + The string message to parse. + + + + Initializes a new instance of the ExtentParseException + + The string message to parse. + The inner exception that caused this exception. + + + + Initializes a new instance of the ExtentParseException + + The Serialization info class that holds the serialized object about which + the exception is being thrown. + The streaming context that contains contextual information about the + source or destination. + + + + Gets the string expression that provoked the exception. + + + + + Represents strongly named DataRow class. + + + + + This interface allows access to geometries and attributes in a more cohesive package. + + + + + Stores the shape to the GEOMETRY WKB. + + + + + Stores the geometry to the geometry wkb. + + + + + This is a cached extent. This will not reflect changes in Geometry or Shape unless + they have been stored, but will reflect the most recently stored or retrieved + extent from accessing either the shape or geometry. In cases where reading from + WKB, this will be lazily created, but it will be cached when reading from + shapefiles. + + + + + A Geometry created lazily from a WKB byte structure in the GEOMETRY field preferentially + or if the field is DBNull and the shape is not null, then from the Shape object. + + + + + A Shape that is either created lazily from the WKB Geometry or directly from a shapefile. + + + + + The rest of the attributes are stored by an indexed property. + + + + + + + Boolean, true if the geometry has already been created, false otherwise. + + + + + Boolean, true if the shape has already been created, false otherwise. + + + + + Boolean, true if the extent has been created, false otherwise. + + + + + Creates a new instance of the FeatureRow class. + + + + + + Stores the shape into the WKB for storage in a database, overwriting any existing value. + + + + + Stores the goemetry as WKB, overwriting any existing value. + + + + + Sets the geometry field to DBNull. + + + + + Gets whether the geometry is null. + + Boolean, true if the column is null. + + + + A long integer representing the FID. + + + + + The Byte form of the Geometry + + + + + From shapefiles, this should be cached. Any other source must likely + create the extent from a geometry, and possibly all the way from WKB. + + + + + A lazily created and cached geometry. + + + + + Boolean, true if the extent has been created, false otherwise. + + + + + Boolean, true if the geometry has already been created, false otherwise. + + + + + Boolean, true if the shape has already been created, false otherwise. + + + + + When reading from WKB, the Shape is lazily created. When reading from sources like + a shapefile, the Shape is actually pre-fetched because the value exists as a shape + rather than a geometry. + + + + + Row event argument class + + + + + A new event argument for events in a FeatureTable. + + The FeatureRow of the event. + The action occuring for this event. + + + + The FeatureRow for this event. + + + + + The action for this event. + + + + + An EventArgs specifically tailored to FeatureSet. + + + + + Initializes a new instance of the FeatureSetEventArgs class. + + The IFeatureSet that is involved in this event. + + + + Gets the Raster associated with this event. + + + + + Callback specified when calling IFeatureSource.SearchAndModifyAttributes + + + + + + FeatureSourceRowEditEvent arguments + + + + + RowEditEvent arguments + + + + + Shape geometry associated with the row + + + + + Construct FeatureSourceRowEditEventArgs + + + + + + + Represents the strongly named DataTable class. + + + + + Initializes a new instance of a FeatureTable class. + + + + + Initializes a new instance of a FeatureTable class. + + + + + Adds the specified FeatureRow to this FeatureTable. + + the row to add. + + + + Generates a new feature row using only the goemetry. + + The byte form of the well known text to use in creating a new, otherwise empty row. + The newly created FeatureRow with the specified well known text. + + + + Retrieves a newly generated row from this table cast as a FeatureRow. + + The FeatureRow class. + + + + + + + Finds a FeatureRow by the FID field. + + The long fid to find + A FeatureRow + + + + Removes the specified row from the table. + + The FeatureRow to remove. + + + + Generates a new feature row using only the goemetry. + + The byte form of the well known text to use in creating a new, otherwise empty row. + The newly created FeatureRow with the specified well known text. + + + + + + + + + + + + + + + + + + + + + + + + + This may or may not be required for proper functioning, but is not part of the public API. + + A DataTable + + + + This may not work since I stripped off the xml related auto text that seems to rely on an existing dataset + + + + + + + Occurs while the row is changing + + + + + Occurs after the row has been changed. + + + + + Occurs while the row is being deleted. + + + + + Occurs after the row has been deleted. + + + + + The integer number of rows in this table. + + + + + The Column containing the FID value. + + + + + The Column containing the Geometry column. + + + + + Optionally gets or sets a geometry factory to use when instantiating geometries + from WKB for the rows of this table. + + + + + Accesses the FeatureRow of this table based on the specified index. + + The integer index of the feature row to access. + This FeatureRow + + + + Manage the Fields associated with a dbase + + + + + Construct Fields and update the individual field data addresses + + + + + + Add a field + + + + + + Update the DataAddress of each field + + + + + Retrieve field by ordinal + + + + + + + Retrieve field by name + + + + + + + Get number of fields + + + + + An interface for specifying something has a Bounds property on it that is a raster bounds. + + + + + Gets or sets the image bounds being used to define the georeferencing of the image + + + + + Returns the bitmap + + + + + Attempts to create a bitmap for the entire image. This may cause memory exceptions. + + + A Bitmap of the image. + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + + The geographic extents to retrieve data for + + + The rectangle that defines the size of the drawing area in pixels + + + A bitmap captured from the main image + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + + The geographic extents to retrieve data for + + + The rectangle that defines the size of the drawing area in pixels + + + A bitmap captured from the main image + + + + + An EventArgs specifically tailored to ImageData. + + + + + Initializes a new instance of the ImageDataEventArgs class. + + The IImageData that is involved in this event. + + + + Gets the ImageData associated with this event. + + + + + An enumeration for specifying the endian byte order to use. + + + + + Specifies big endian like mainframe or unix system. + + + + + Specifies little endian like most pc systems. + + + + + A new interface for accessing database or file features to large for memory. This allows editing only for attribute content, + but allows Add, Remove, AddRange, and Query functionality that covers both vector and raster content. + + + + + Updates the file with an additional feature. + + + + + + Removes the feature with the specified index + + Removes the feature from the specified index location + + + + The default implementation calls the add method repeatedly. + + The set of features to add + + + + Select function passed with a filter expression. + + The string filter expression based on attributes + The envelope for vector filtering. + The integer start index where values should be checked. This will be updated to the + last index that was checked before the return, so that paging the query can begin with that index in the next cycle. + Be sure to add one before the next call. + The integer maximum number of IFeature values that should be returned. + A dictionary with FID keys and IFeature values. + + + + Conditionally modify attributes as searched in a single pass via client supplied callback. + + The envelope for vector filtering. + Number of shapes to request from the ShapeSource in each chunk + Callback on each feature + + + + Edits the values of the specified row in the attribute table. Since not all data formats + can handle the dynamic change of attributes, updating vectors can be done with Remove and Add. + + The feature offest + The row of new attribute values. + + + + Edits the values of the specified rows in the attribute table. + + + + + + Adding and removing shapes may make the bounds for the entire shapefile invalid. + This triggers a check that ensures that the collective extents contain all the shapes. + + + + + The geographic extent of the feature source + + + + + Get the attribute table associated with the feature source + + + + + An enumeration listing the types of image band interpretations supported. + + + + + Alpha, Red, Green, Blue 4 bytes per pixel, 4 bands + + + + + Red, Green, Blue 3 bytes per pixel, 3 bands + + + + + Gray as one byte per pixel, 1 band + + + + + Colors encoded 1 byte per pixel, 1 band + + + + + Sets the InRamImage for this class. This is just a georeferenced .Net bitmap that also implements + IGetBitmap for cross purpose use with IImageData implementations. + + + + + Initializes a new instance of an InRamImage class. This class supports a basic .Net Image + plus a geographic extent as a RasterBounds. This class does not feature any byte level + data access or built in file access. The expectation is that this will only be used in memory. + + THe Bitmap image to use to create this image. + + + + Returns the internal bitmap in this case. In other cases, this may have to be constructed + from the unmanaged memory content. + + + A Bitmap that represents the entire image. + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + + The geographic extents to retrieve data for + + + The rectangle that defines the size of the drawing area in pixels + + + A bitmap captured from the main image + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + The geographic extents to retrieve data for + The rectangle that defines the size of the drawing area in pixels + A bitmap captured from the main image + + + + Sets the bitmap for this InRamImage to use. + + the value to set. + + + + If byte access is required, a new class can be created that is a copy of this class for + modifying values byte by byte. + + + + + + Gets or sets the raster bounds + + + + + The Projection interface that acts as a useful tool for calculating pixel coordinates + to geographic coordinates and vise-versa. + + + + + The Rectangle representation of the geographic extents in image coordinates + + + + + The geographic extents used for projection. + + + + + This interface specifically insists on an IRasterBounds as the Bounds property. + + + + + A very generic interface that is implemented by any dataset, regardless of what kinds of data that it has. + + + + + This interface supports the basic Reprojection content. CanReproject tests to see if the + DotSpatial.Projections library exists and will return false if it does not exist. In + such a case the + + + + + Reprojects all of the in-ram vertices of vectors, or else this + simply updates the "Bounds" of image and raster objects + This will also update the projection to be the specified projection. + + + The projection information to reproject the coordinates to. + + + + + Gets a value indicating whether the DotSpatial.Projections assembly is loaded. If + not, this returns false, and neither ProjectionInfo nor the Reproject() method should + be used. + + Boolean, true if the value can reproject. + + + + Gets or sets the projection information for this dataset + + + + + Gets or sets the proj4 string for this dataset. This exists in + case the Projections library is not loaded. If the projection + library is loaded, this also updates the Projection property. + Setting this behaves like defining the projection and will not + reproject the values. + + + + + This closes the data set. Many times this will simply do nothing, but + in some cases this may close an open connection to a data source. + + + + + Gets or sets the extent for the dataset. Usages to Envelope were replaced + as they required an explicit using to DotSpatial.Topology which is not + as intuitive. Extent.ToEnvelope() and new Extent(myEnvelope) convert them. + + + + + True if the dispose method has been called on this dataset. + + + + + Gets or sets a string name identifying this dataset + + + + + Gets or sets the progress handler to use for internal actions taken by this dataset. + + + + + Gets or sets the space time support for this dataset. + + + + + Gets or sets a string that describes as clearly as possible what type of + elements are contained in this dataset. + + + + + Rendering is considered a different pathway from editing. For rendering, we can distance + ourselves from the attributes all together in order to speedily grab just the indices + that are within the view extent. + + + + + Returns a dictionary with the FID and Shape, but only returns shapes within the envelope. + + The integer offset of the first shape to test. When this returns, the offset is set to the integer index of the last shape tested, regardless of whether or not it was returned. + The integer count of the maximum number of shapes to return here. + The geographic extents that can be used to limit the shapes. If this is null, then no envelope is used. + The Dictionary with FID indices and Shape values + + + + Returns array of shapes at the specified indices + + + + + + + Gets the integer count of the total number of shapes in the set. This may run a query, + so it is better to cache the result than call this repeatedly. + + The integer number of shapes in the entire source. + + + + Should be called when done making repeated calls to GetShapes to free internal resources. + + + + + This is most likely set once per source. + + + + + LineShape + + + + + Calculates the intersection of a polygon shape without relying on the NTS geometry + + + + + + + + Tests to see if any vertices from the other shape are coincident with a segment from this line shape. + + + + + + + + Returns true if any segment from a line or polygon shape interesect any segments from the line or polygon shape. + + A Line or Polygon shape + Another line or polygon shape + + + + + Gets or sets the precision for calculating equality, but this is just a re-direction to Vertex.Epsilon + + + + + This class is strictly the vector access code. This does not handle + the attributes, which must be handled independantly. + + + + + Provides common functionality for all ShapefileFeatureSource classes (Point, Line, Polygon) + + + + + Sets the fileName and creates a new ShapefileFeatureSource for the specified file. + + The fileName to work with. + + + + Sets the fileName and creates a new PolygonshapefileFeatureSource for the specified file (and builds spatial index if requested) + + + + + + + + This deletes the files with any extension and the same base fileName. + + + + + Spatial index for faster searches + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Create a ShapefileFeatureSource of the appropriate type + + + + + + + Create a ShapefileFeatureSource of the appropriate type spatial indexing + + + + + + + + + Update the header to include the feature extent + + + + + + + Update the header to include the feature extent + + + + + + + + Update header extents from the geometries in a IShapeSource + + + + + + Select the features in an IShapeSource + + + + + + + + + + + Conditionally modify attributes as searched in a single pass via client supplied callback. + + ShapeSource for this feature source + The envelope for vector filtering. + Number of shapes to request from the ShapeSource in each chunk + Callback on each feature + + + + + + + Append the geometry to the shapefile + + + + + + + + Create an appropriate ShapeSource for this FeatureSource + + + + + + Gets or sets the Filename of this polygon shapefile. + + + + + The integer maximum number of records to return in a single page of results. + + + + + Gets the spatial index if any + + + + + Get the feature type supported by this feature source + + + + + Get the shape type (without M or Z) supported by this feature source + + + + + Get the shape type (with M, and no Z) supported by this feature source + + + + + Get the shape type (with M and Z) supported by this feature source + + + + + + + + Gets the AttributeTable for this feature source including DeletedRows + + + + + Sets the fileName and creates a new LineShapefileFeatureSource for the specified file. + + The fileName to work with. + + + + Sets the fileName and creates a new LineShapefileFeatureSource for the specified file (and builds spatial index if requested) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Retrieves specific shapes. + + + + + Common functionality for retrieving specific shapes. + + + + + Cached contents of shape index file + + + + + Creates a new instance of the ShapefileShapeSource with the specified + shapefile as the source. + + + + + + Creates a new instance of the ShapefileShapeSource with the specified + shapefile as the source and supplied spatial and shape indices. + + + + + + + + + + + + + + + + + + + + Cache Index File in memory so we don't have to read it in every call to GetShapes + + + + + + Get the shape at the specified index. Must be implemented by all shape sources derived from ShapefileShapeSource + + + + + + + + + + + + + + Get the shape type (without M or Z) supported by this shape source + + + + + Get the shape type (with M, and no Z) supported by this shape source + + + + + Get the shape type (with M and Z) supported by this shape source + + + + + + + + Creates a new instance of the LineShapefileShapeSource with the specified line + shapefile as the source. + + The string fileName + + + + Creates a new instance of the LineShapefileShapeSource with the specified polygon shapefile as the source and provided indices + + + + + + + + + + + + + + + + + + + + + + + General purpose Expression utilities + + + + + Create a function delegate representing a unary operation + + The parameter type + The return type + Body factory + Compiled function delegate + + + + Create a function delegate representing a binary operation + + The first parameter type + The second parameter type + The return type + Body factory + Compiled function delegate + + + + Create a function delegate representing a binary operation + + The first parameter type + The second parameter type + The return type + Body factory + If no matching operation is possible, attempt to convert + TArg1 and TArg2 to TResult for a match? For example, there is no + "decimal operator /(decimal, int)", but by converting TArg2 (int) to + TResult (decimal) a match is found. + + Compiled function delegate + + + + + The Operator class provides easy access to the standard operators + (addition, etc) for generic types, using type inference to simplify + usage. + + + + + Indicates if the supplied value is non-null, + for reference-types or Nullable<T> + + True for non-null values, else false + + + + Increments the accumulator only + if the value is non-null. If the accumulator + is null, then the accumulator is given the new + value; otherwise the accumulator and value + are added. + + The current total to be incremented (can be null) + The value to be tested and added to the accumulator + True if the value is non-null, else false - i.e. + "has the accumulator been updated?" + + + + Evaluates unary negation (-) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates bitwise not (~) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates bitwise or (|) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates bitwise and (&) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates bitwise xor (^) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Performs a conversion between the given types; this will throw + an InvalidOperationException if the type T does not provide a suitable cast, or for + Nullable<TInner> if TInner does not provide this cast. + + + + + Evaluates binary addition (+) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary addition (+) for the given type(s); this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary subtraction (-) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary subtraction(-) for the given type(s); this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary multiplication (*) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary multiplication (*) for the given type(s); this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary division (/) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary division (/) for the given type(s); this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary equality (==) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary inequality (!=) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary greater-than (>) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary less-than (<) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary greater-than-on-eqauls (>=) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates binary less-than-or-equal (<=) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Evaluates integer division (/) for the given type; this will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + This operation is particularly useful for computing averages and + similar aggregates. + + + + + Provides standard operators (such as addition) that operate over operands of + different types. For operators, the return type is assumed to match the first + operand. + + + + + + + Returns a delegate to convert a value between two types; this delegate will throw + an InvalidOperationException if the type T does not provide a suitable cast, or for + Nullable<TInner> if TInner does not provide this cast. + + + + + Returns a delegate to evaluate binary addition (+) for the given types; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary subtraction (-) for the given types; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary multiplication (*) for the given types; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary division (/) for the given types; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Provides standard operators (such as addition) over a single type + + + + + + + Returns the zero value for value-types (even full Nullable<TInner>) - or null for reference types + + + + + Returns a delegate to evaluate unary negation (-) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate bitwise not (~) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate bitwise or (|) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate bitwise and (&) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate bitwise xor (^) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary addition (+) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary subtraction (-) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary multiplication (*) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary division (/) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary equality (==) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary inequality (!=) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary greater-then (>) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary less-than (<) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary greater-than-or-equal (>=) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + Returns a delegate to evaluate binary less-than-or-equal (<=) for the given type; this delegate will throw + an InvalidOperationException if the type T does not provide this operator, or for + Nullable<TInner> if TInner does not provide this operator. + + + + + PointShape + + + + + Calculates the intersection of a polygon shape without relying on the NTS geometry + + + + + + + + Returns true if any vertices overlap + + + + + + Gets or sets the precision for calculating equality, but this is just a re-direction to Vertex.Epsilon + + + + + This class is strictly the vector access code. This does not handle + the attributes, which must be handled independantly. + + + + + Sets the fileName and creates a new PointShapefileFeatureSource for the specified file. + + The fileName to work with. + + + + Sets the fileName and creates a new PointshapefileFeatureSource for the specified file (and builds spatial index if requested) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Retrieves specific shapes. + + + + + Creates a new instance of the PointShapefileShapeSource with the specified point + shapefile as the source. + + The string fileName + + + + Creates a new instance of the PointShapefileShapeSource with the specified polygon shapefile as the source and provided indices + + + + + + + + + + + + + + + + + + + + + + + Polygon contains algorithms for the case where the current feature type is a polygon. The shape may be single or multi-part. + + + + + Calculates the intersection of a polygon shape without relying on the NTS geometry + + + + + + + + This cycles through all the vertices, which are stored as {X1, Y1, X2, Y2...Xn, Yn} and tests + if any of those vertices falls within the polygon shape. + + + + + + + + For each coordinate in the other part, if it falls in the extent of this polygon, a + ray crossing test is used for point in polygon testing. If it is not in the extent, + it is skipped. + + The part of the polygon to analyze polygon + The other part + Boolean, true if any coordinate falls inside the polygon + + + + Gets or sets the precision for calculating equality, but this is just a re-direction to Vertex.Epsilon + + + + + DataFormats + + + + + Lines, Points and Polygons make up standard static vector formats. + These are drawn dynamically based on the symbolizer. + + + + + Rasters are grids of integers, doubles, floats, or other numeric value types. + These can be symbolized and represented as images, but not drawn directly. + + + + + Images specifically have pixels coordinates that store a color. + These are drawn directly. + + + + + This represents an extended format that does not have a formal definition in DotSpatial. + + + + + This can be used as a component to work as a DataManager. This also provides the + very important DefaultDataManager property, which is where the developer controls + what DataManager should be used for their project. + + + + + IDataManager + + + + + This can help determine what kind of file format a file is, without actually opening the file. + + The string fileName to test + A DataFormats enum + + + + Instead of opening the specified file, this simply determines the correct + provider, and requests that the provider check the feature type for vector + formats. + + The string fileName to test + A FeatureTypes enum + + + + Checks a dialog filter and returns a list of just the extensions. + + The Dialog Filter to read extensions from + A list of extensions + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this DataManager. + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this DataManager. + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + + + + Opens the file as an Image and returns an IImageData object for interacting with the file. + + The string fileName + An IImageData object + + + + Opens the file as an Image and returns an IImageData object + + The string fileName to open + The progressHandler to receive progress updates + An IImageData + + + + Opens the specified fileName, returning an IRaster. This will return null if a manager + either returns the wrong data format. + + The string fileName to open + An IRaster loaded from the specified file. + + + + Opens the specified fileName, returning an IRaster. This will return null if a manager + either returns the wrong data format. + + The string fileName to open + boolean, true if this should be loaded into ram + a progress interface + An IRaster loaded from the specified file + + + + Opens a specified file as an IFeatureSet + + The string fileName to open + boolean, true if this should be loaded into ram + a progress interface + An IFeatureSet loaded from the specified file + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer number of rows + The integer number of columns + The color band type. + An IImageData interface allowing access to image data + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer number of rows + The integer number of columns + Boolean, true if the entire file should be created in memory + The color band type. + An IImageData interface allowing access to image data + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer number of rows + The integer number of columns + Boolean, true if the entire file should be created in memory + A Progress handler + The color band type. + An IImageData interface allowing access to image data + + + + + Creates a new class of vector that matches the given fileName. + + The string fileName from which to create a vector. + Specifies the type of feature for this vector file + An IFeatureSet that allows working with the dataset. + + + + Creates a new class of vector that matches the given fileName. + + The string fileName from which to create a vector. + Specifies the type of feature for this vector file + Overrides the default progress handler with the specified progress handler + An IFeatureSet that allows working with the dataset. + + + + Creates a new raster using the specified raster provider and the Data Manager's Progress Handler, + as well as its LoadInRam property. + + The fileName of the new file to create. + The string code identifying the driver to use to create the raster + The number of columns in the raster + The number of rows in the raster + The number of bands in the raster + The data type for the raster + Any additional, driver specific options for creation + An IRaster representing the created raster. + + + + Gets or sets the list of IDataProviders that should be used in the project. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Sets the default condition for how this data manager should try to load layers. + This will be overridden if the inRam property is specified as a parameter. + + + + + Gets or sets the dialog read filter to use for opening data files that are specifically raster formats. + + + + + Gets or sets the dialog write filter to use for saving raster files. + + + + + Gets or sets the dialog read filter to use for opening vector files. + + + + + Gets or sets the dialog write filter to use for saving vector files. + + + + + Gets or sets the dialog read filter to use for opening image files. + + + + + Gets or sets the dialog write filter to use for saving image files. + + + + + Gets or sets a dictionary of IDataProviders keyed by the extension. The + standard order is to try to load the data using a PreferredProvider. If that + fails, then it will check the list of dataProviders, and finally, if that fails, + it will check the plugin Data Providers in directories. + + + + + Gets or sets a progress handler for any open operations that are intiated by this + DataManager. + + + + + Occurs after the directory providers have been loaded into the project. + + + + + Creates a new instance of the DataManager class. A data manager is more or less + just a list of data providers to use. The very important + DataManager.DefaultDataManager property controls which DataManager will be used + to load data. By default, each DataManager sets itself as the default in its + constructor. + + + + + Creates a new class of vector that matches the given fileName. + + The string fileName from which to create a vector. + Specifies the type of feature for this vector file + An IFeatureSet that allows working with the dataset. + + + + Creates a new class of vector that matches the given fileName. + + The string fileName from which to create a vector. + Specifies the type of feature for this vector file + Overrides the default progress handler with the specified progress handler + An IFeatureSet that allows working with the dataset. + Raised when fileName is null. + Raised when suitable DataProvider not found. + + + + Checks a dialog filter and returns a list of just the extensions. + + The Dialog Filter to read extensions from + A list of extensions + + + + This can help determine what kind of file format a file is, without actually opening the file. + + + + + + + Instead of opening the specified file, this simply determines the correct + provider, and requests that the provider check the feature type for vector + formats. + + + + + + + Opens the specified fileName, returning an IRaster. This will return null if a manager + either returns the wrong data format. + + The string fileName to open + An IRaster loaded from the specified file. + + + + Opens the specified fileName, returning an IRaster. This will return null if a manager + either returns the wrong data format. + + The string fileName to open + boolean, true if this should be loaded into ram + a progress interface + An IRaster loaded from the specified file + + + + Opens a specified file as an IFeatureSet + + The string fileName to open + boolean, true if this should be loaded into ram + a progress interface + An IFeatureSet loaded from the specified file + + + + Opens the file as an Image and returns an IImageData object for interacting with the file. + + The string fileName + An IImageData object + + + + Opens the file as an Image and returns an IImageData object + + The string fileName to open + The progressHandler to receive progress updates + An IImageData + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this DataManager. + + + + Attempts to call the open fileName method for any IDataProvider plugin + that matches the extension on the string. + + A String fileName to attempt to open. + A boolean value that if true will attempt to force a load of the data into memory. This value overrides the property on this DataManager. + Specifies the progressHandler to receive progress messages. This value overrides the property on this DataManager. + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer width in pixels + The integer height in pixels + The band color type + An IImageData interface allowing access to image data + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer width in pixels + The integer height in pixels + Boolean, true if the entire file should be created in memory + The band color type + An IImageData interface allowing access to image data + + + + Creates a new image using an appropriate data provider + + The string fileName to open an image for + The integer width in pixels + The integer height in pixels + Boolean, true if the entire file should be created in memory + A Progress handler + The band color type + An IImageData interface allowing access to image data + + + + Creates a new raster using the specified raster provider and the Data Manager's Progress Handler, + as well as its LoadInRam property. + + The fileName of the new file to create. + The string code identifying the driver to use to create the raster. If no code is specified + the manager will attempt to match the extension with a code specified in the Dialog write filter. + The number of columns in the raster + The number of rows in the raster + The number of bands in the raster + The data type for the raster + Any additional, driver specific options for creation + An IRaster representing the created raster. + + + + Opens the file making sure it can be returned as an IRaster. + + Name of the file. + if set to true [in ram]. + The progress handler. + + + + + Triggers the DirectoryProvidersLoaded event + + + + + Gets or sets the implementation of IDataManager for the project to use when + accessing data. This is THE place where the DataManager can be replaced + by a different data manager. If you add this data manager to your + project, this will automatically set itself as the DefaultDataManager. + However, since each DM will do this, you may have to control this manually + if you add more than one DataManager to the project in order to set the + one that will be chosen. + + + + + Gets or sets the list of IDataProviders that should be used in the project. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the dialog read filter to use for opening data files that are specifically raster formats. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Gets or sets the dialog read filter to use for opening data files. + + + + + Gets or sets the dialog write filter to use for saving data files. + + + + + Sets the default condition for how this data manager should try to load layers. + This will be overridden if the inRam property is specified as a parameter. + + + + + Gets or sets a dictionary of IDataProviders with corresponding extensions. The + standard order is to try to load the data using a PreferredProvider. If that + fails, then it will check the list of dataProviders, and finally, if that fails, + it will check the plugin Data Providers in directories. + + + + + Gets or sets a progress handler for any open operations that are intiated by this + DataManager and don't override this value with an IProgressHandler specified in the parameters. + + + + + Occurs after the directory providers have been loaded into the project. + + + + + DataProviders + + + + + Creates a new instance of DataProviders + + Specifies a list of IDataProviders + + + + Gets the list of providers for this event. + + + + + Clarifies how the file should be used + + + + + Read will attempt to read the file if it exists and throw an exception if the file is not found + + + + + Write will create a new file, overwriting it if it previously exists. + + + + + This class is strictly the vector access code. This does not handle + the attributes, which must be handled independantly. + + + + + Sets the fileName and creates a new PolygonshapefileFeatureSource for the specified file. + + The fileName to work with. + + + + Sets the fileName and creates a new PolygonshapefileFeatureSource for the specified file (and builds spatial index if requested) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Retrieves specific shapes. + + + + + Creates a new instance of the PolygonShapefileShapeSource with the specified polygon + shapefile as the source. + + The string fileName + + + + Creates a new instance of the PolygonShapefileShapeSource with the specified polygon shapefile as the source and provided indices + + + + + + + + + + + + + + + + + + + + + + + This handles the methodology of progress messaging in one place to make it easier to update. + + + + + Initializes a new progress meter, but doesn't support the IProgressHandler unless one is specified. + + + + + A progress meter can't actually do anything without a progressHandler, which actually displays the status. + + An IProgressHandler that will actually handle the status messages sent by this meter. + + + + A progress meter that simply keeps track of progress and is capable of sending progress messages. + This assumes a MaxValue of 100 unless it is changed later. + + Any valid IProgressHandler that will display progress messages + A base message to use as the basic status for this progress handler. + + + + A progress meter that simply keeps track of progress and is capable of sending progress messages. + + Any valid implementation if IProgressHandler that will handle the progress function + The message without any progress information. + Percent should show a range between the MinValue and MaxValue. MinValue is assumed to be 0. + + + + Resets the progress meter to the 0 value. This sets the status message to "Ready.". + + + + + This always increments the CurrentValue by one. + + + + + Sends a progress message to the IProgressHandler interface with the current message and progress + + + + + Gets or sets the string message (without the progress element). + + + + + Gets or sets the string that does not include any mention of progress percentage, but specifies what is occurring. + + + + + Gets or sets the current integer progress level from 0 to 100. If a new update is less than or equal to the previous + value, then no progress will be displayed by the ProgressMeter. Values less than 0 are set to 0. Values greater than + 100 are set to 100. + + + + + Gets or sets the current value relative to the specified MaxValue in order to update the progress. + Setting this will also update OldProgress if there is an integer change in the percentage, and send + a progress message to the IProgressHandler interface. + + + + + The value that defines when the meter should show as 100% complete. + EndValue can be less than StartValue, but values closer to EndValue + will show as being closer to 100%. + + + + + Gets or sets whether the progress meter should send messages to the IProgressHandler. + By default Silent is false, but setting this to true will disable the messaging portion. + + + + + The minimum value defines when the meter should show as 0% complete. + + + + + An integer value that is 1 by default. Ordinarily this will send a progress message only when the integer progress + has changed by 1 percentage point. For example, if StepPercent were set to 5, then a progress update would only + be sent out at 5%, 10% and so on. This helps reduce overhead in cases where showing status messages is actually + the majority of the processing time for the function. + + + + + Gets or sets the previous integer progress level from 0 to 100. If a new update is less than or equal to the previous + value, then no progress will be displayed by the ProgressMeter. Values less than 0 are set to 0. Values greater than + 100 are set to 100. + + + + + Gets or sets the progress handler for this meter + + + + + Extension methods for the IProj interface + + + + + Converts a single point location into an equivalent geographic coordinate + + This IProj + The client coordinate relative to the map control + The geographic ICoordinate interface + + + + Converts a rectangle in pixel coordinates relative to the map control into + a geographic envelope. + + This IProj + The rectangle to convert + An IEnvelope interface + + + + Projects all of the rectangles int the specified list of rectangles into geographic regions. + + This IProj + The clip rectangles + A List of IEnvelope geographic bounds that correspond to the specified clip rectangles. + + + + Converts a single geographic location into the equivalent point on the + screen relative to the top left corner of the map. + + This IProj + The geographic position to transform + A Point with the new location. + + + + Converts a single geographic envelope into an equivalent Rectangle + as it would be drawn on the screen. + + This IProj + The geographic IEnvelope + A Rectangle + + + + Translates all of the geographic regions, forming an equivalent list of rectangles. + + This IProj + The list of geographic regions to project + A list of pixel rectangles that describe the specified region + + + + Calculates an integer length distance in pixels that corresponds to the double + length specified in the image. + + The IProj that this describes + The double distance to obtain in pixels + The integer distance in pixels + + + + This is an abstract base class that represents a datasets that has a RasterBounds on it, and reprojects + by using the RasterBounds. This works for Image and Raster implementations. + + + + + DataSet + + + + + Gets whether or not projection is based on having the libraries available. + + + + + + Creates a new instance of DataSet + + + + + This can be overridden in specific classes if necessary + + + + + Reprojects all of the in-ram vertices of featuresets, or else this + simply updates the "Bounds" of the image object. + This will also update the projection to be the specified projection. + + + The projection information to reproject the coordinates to. + + + + + Allows overriding the dispose behavior to handle any resources in addition to what are handled in the + image data class. + + A Boolean value that indicates whether the overriding method + should dispose managed resources, or just the unmanaged ones. + + + + Gets or sets the cached extent variable. The public Extent is the virtual accessor, + and should not be used from a constructor. MyExtent is protected, not virtual, + and is only visible to inheriting classes, and can be safely set in the constructor. + + + + + This is an internal place holder to make it easier to pass around a single progress meter + between methods. This will use lazy instantiation if it is requested before one has + been created. + + + + + Gets or sets the raw projection string for this dataset. This handles both the + case where projection is unavailable but a projection string needs to + be passed around, and the case when a string is not recognized by the + DotSpatial.Projections library. This is not format restricted, but should match + the original data source as closely as possible. Setting this will also set + the Projection if the Projection library is available and the format successfully + defines a transform by either treating it as an Esri string or a proj4 string. + + + + + Gets a value indicating whether the DotSpatial.Projections assembly is loaded + + Boolean, true if the value can reproject. + + + + Gets or sets the string name + + + + + Gets or sets the extent for the dataset. Usages to Envelope were replaced + as they required an explicit using to DotSpatial.Topology which is not + as intuitive. Extent.ToEnvelope() and new Extent(myEnvelope) convert them. + This is designed to be a virtual member to be overridden by subclasses, + and should not be called directly by the constructor of inheriting classes. + + + + + Gets or set the projection string + + + + + Gets an enumeration specifying if this data supports time, space, both or neither. + + + + + Gets or sets the string type name that identifies this dataset + + + + + Gets or sets the progress handler to use for internal actions taken by this dataset. + + + + + Creates a new instance of the RasterBoundData object, setting up a default RasterBounds. + + + + + Occurs when the raster bounds of this data class have changed. + + + + + RasterBounds datasets offer a limited sort of reproject on the fly. + This tries to update the bounds by reprojecting the top left and bottom + left and top right coordinates and updating the "affine" transform. + This should not be used if CanReproject is false. + Greater accuracy can be accomplished using the Projective transform, + which is planned to be implemented as a toolbox function. + + The projectionInfo to project to. + + + + Disposes the managed memory objects in the ImageData class, and then forwards + the Dispose operation to the internal dataset in the base class, if any. + + Boolean, true if both managed and unmanaged resources should be finalized. + + + + Gets or sets the image bounds being used to define the georeferencing of the image + + + + + Gets or sets the Bounds.Envelope through an Extents property. + + + + + An EventArgs specifically tailored to Raster. + + + + + Initializes a new instance of the RasterEventArgs class. + + The IRaster that is involved in this event. + + + + Gets the Raster associated with this event. + + + + + Callback specified to AttributeTable.Edit() overload + + + + + + + RowEditEvent arguments + + + + + Column information + + + + + Actual byte content read from dbase + + + + + One of the SetColumn methods or SetAllColumns has been called + + + + + The row being edited + + + + + Constructor + + + + + + + Get the entire buffer as a character array + + + + + + Convert the byte data for a column into the appropriate data value + + Column information for data value being parsed + + + + + Convert the all byte data into an array of data values + + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert value to bytes and place in ByteContent at correct location + + Column information for the conversion + + + + + Convert array of values to bytes and fill ByteContent + + + + + + ShapeFactory + + + + + for singleton pattern. + + + + + Creates a new multi-part polygon shape. Winding order should control holes. + + The list of all the lists of coordinates. + A new Multi-Polygon Shape. + + + + Gets the shared instance of the shape factory; + + + + + Spatial index customized for ShapefileFeatureSources. + + + + + Insert the row + + + + + + + Remove the row + + + + + + + + When a row is deleted, all other row numbers must be adjusted to compensate for the fact that the shx file gets compressed. + + + + + + + Deprecated. Use Remove(IEnvelope, int item) instead. + + + + + + + + Deprecated. Use Insert(IEnvelope, int item) instead. + + + + + + + Index file class for the .shx file + + + + + Opens the index file of the specified fileName. If the fileName is not the .shx extension, + then the fileName will be changed too that extension first. + + + + + + Saves the file back to the original file, or the currently specified "Filename" property. + + + + + Saves the file to the specified fileName. If the extension is not a correct shx extension, + it will be changed to that extensions. + + + + + + Reads the entire index file in order to get a breakdown of how shapes are broken up. + + A string fileName of the .shx file to read. + A List of ShapeHeaders that give offsets and lengths so that reading can be optimized + + + + Writes the current content to the specified file. + + The header to write + Basically the same code can be used for the shp and shx files + The integer number of shapes to write to the file + + + + Gets or sets the header + + + + + Gets or sets the fileName + + + + + Gets or sets the list of shape headers + + + + + This combines the attribute table with a shape source in order to allow easy creation of + FeatureTable and FeatureRow constructs. + + + + + Creates a new ShapefileReader tailored to read a particular file. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Resets the count, so that reading may continue. + + + + + Ensures that the files can be opened for reading. + + + + + Gets or sets the name of the shapefile. + + + + + Gets or sets the array of string field names to access. If this is null or empty, then all the fields are returned. + Fields listed here that do not occur in the shapefile will be ignored. + + + + + Gets or sets the string filter expression. This is only the "Where" criteria, and doesn't include any other advanced SQL implmenetation. + + + + + Gets or sets a string fieldname to support sorting. + + + + + Gets the integer number of the maximum number of results to generate from a shapefile. + + + + + Gets the count of members returned so far. + + + + + Gets the long row offset where reading should begin. This will advance + + + + + Shapefiles don't support nested tables. + + + + + + + + Read only reader has no affect on records here. + + + + + + + + + + + + + + A class for cycling pages of shapes from a large dataset + + + + + Creates a new reader class for paging through a shape source. + + The IShapeSource to cycle through. + + + + + + + Gets or sets the integer count of shapes that should be allowed to appear on a single page of results. + This is the maximum, and the actual number of shapes may be considerably smaller than this. + + + + + Gets or sets the envelope. If this is null, then no envelope is used. + + + + + Gets the feature type of the feature source. + + + + + Creates an enumerator for pages of shapes returned as dictionaries. + + + + + Creates ShapePageSet.Enumerator which can be used to cycle very large datasets. + + + + + + + + + + + + + + + + + + Controls whether only intersecting shapes should be used or whether all shapes should be used. + + + + + All shapes will be used + + + + + Only intersecting shapes will be used + + + + + CulturePreferences + + + + + This culture information is useful for things like Number Formatting. + This defaults to CurrentCulture, but can be specified through preferences or + whatever. + + + + + The buffered binary reader was originally designed by Ted Dunsford to make shapefile reading more + efficient, but ostensibly could be used for other binary reading exercises. To use this class, + simply specify the BufferSize in bytes that you would like to use and begin reading values. + + + + + Creates a new instance of BufferedBinaryReader. + + The string path of a file to open using this BufferedBinaryReader. + + + + Creates a new instance of BufferedBinaryReader, and specifies where to send progress messages. + + The string path of a file to open using this BufferedBinaryReader. + Any implementation of IProgressHandler for receiving progress messages. + + + + Closes the internal binary reader and underlying file, but does not free + the buffer that is in memory. For that, call the dispose method. + + + + + This will not close the file, so be sure to close before calling Dispose. + This will dispose the file stream and set the buffer to null. + + + + + Instructs the reader to fill its buffer with data. This only does something + if the buffer is not loaded yet. This method is optional since the first + effort at reading the file will automatically load the buffer. + + + + + This method will both assign a new maximum buffer size to the reader and + force the reader to load the values into memory. This is unnecessary + unless you plan on closing the file before reading values from this class. + Even if values are loaded, this will assign the MaxBufferSize property + so that future buffers have the specified size. + + An integer buffer size to assign to the maximum buffer size before reading values. + + + + Uses the seek method to quickly reach a desired location to begin reading. + This will not buffer or read values. If the new position is beyond the end + of the current buffer, the next read will load a new buffer. + + A 64 bit integer specifying where to skip to in the file. + A System.IO.SeekOrigin enumeration specifying how to estimate the location. + + + + Reads a boolean form the buffer, automatcially loading the next buffer if necessary. + + A boolean value converted from bytes in the file. + + + + Reads a character from two bytes in the buffer, automatically loading the next buffer if necessary. + + + + + + Reads an array of character from two bytes in the buffer, automatically loading + + + + + + Reads a double-precision floating point from 8 bytes in the buffer, automatically loading the next buffer if necessary. + + Boolean, true if the value should be returned with little endian byte ordering. + A double value converted from bytes in the file. + + + + Reads double precision X and Y values that are interwoven + + + + + + + Reads the specified number of doubles into an array + This uses Buffer.CopyBlock, and seems to work ok + for little-endian in windows. + + The count of doubles + An array of doubles + + + + Reads the specified number of integers into an array + + The integer count of integers to read + An array of the specified integers and length equal to count + + + + By default, this will use little Endian ordering. + + An Int32 converted from the file. + + + + Reads an integer from the file, using the isLittleEndian argument + to decide whether to flip the bits or not. + + Boolean, true if the value should be returned with little endian byte ordering. + an Int32 value converted from bytes in the file. + + + + Reads a short, sixteen bit integer as bytes in little-endian order + + A short value + + + + Reads a single-precision floading point from 4 bytes in the buffer, automatically loading the next buffer if necessary. + This assumes the value should be little endian. + + A single-precision floating point converted from four bytes + + + + Reads a single-precision floading point from 4 bytes in the buffer, automatically loading the next buffer if necessary. + + Boolean, true if the value should be returned with little endian byte ordering. + A single-precision floating point converted from four bytes + + + + Reads the specified number of bytes. This will throw an exception + if a number of bytes is specified that exeeds the file length. + + The integer count of the bytes. + An array of bytes + + + + copies count bytes from the internal buffer to the specified buffer index as the starting point in the specified buffer. + + A previously dimensioned array of byte values to fill with data + The index in the argument array to start pasting values to + The number of values to copy into the parameter buffer + + + + Fires the FinishedReading event. + + + + + Fires the FinishedBuffering event. + + + + + Gets the progress meter. + + + + + Gets a long integer specifying the starting position of the currently loaded buffer + relative to the start of the file. A value of -1 indicates that no buffer is + currently loaded. + + + + + Gets an integer value specifying the size of the buffer currently loaded into memory. + This will either be the MaxBufferSize, or a smaller buffer representing a smaller + remainder existing in the file. + + + + + Gets a boolean indicating whether there is currently any information loaded into the buffer. + + + + + Gets a boolean value once the offset has reached the end of the file, + and every byte value has been read from the file. + + + + + Gets a boolean value once the entire file has been loaded into memory. + This usually will occur before any reading even takes place. + + + + + Gets the length in bytes of the file being read. + + + + + Gets the current read position in the file in bytes. + + + + + Gets a long value specifying how many bytes have not yet been read in the file. + + + + + Gets or sets the buffer size to read in chunks. This does not + describe the size of the actual + + + + + Gets or sets the progress message that has no percentage as part of it. + + + + + This acts like a placeholder on the buffer and indicates where reading will begin (relative to the start of the buffer) + + + + + Occurs when this reader has read every byte from the file. + + + + + Occurs when the end of the last portion of the file has been + loaded into the file and the file has been closed. + + + + + The buffered binary reader was originally designed by Ted Dunsford to make shapefile reading more + efficient, but ostensibly could be used for other binary reading exercises. To use this class, + simply specify the BufferSize in bytes that you would like to use and begin reading values. + + + + + Creates a new instance of BufferedBinaryReader. + + The string path of a file to open using this BufferedBinaryReader. + + + + Creates a new instance of BufferedBinaryWriter, and specifies where to send progress messages. + + The string path of a file to open using this BufferedBinaryReader. + Any implementation of IProgressHandler for receiving progress messages. + A long specifying the number of bytes that will be written for the purposes of tracking progress + + + + Finishes writing whatever is in memory to the file, closes the + internal binary writer, the underlying file, clears the memory + and disposes the filestream. + + + + + Forces the buffer to paste all its existing values into the file, but does not + advance the buffer, or in fact do anything to the buffer. It does advance + the position of the file index. + + + + + This seeks both in the file AND in the buffer. This is used to write only + desired portions of a buffer that is in memory to a file. + + A 64 bit integer specifying where to skip to in the file. + A System.IO.SeekOrigin enumeration specifying how to estimate the location. + + + + Reads a boolean form the buffer, automatcially loading the next buffer if necessary. + + + + + Reads a character from two bytes in the buffer, automatically loading the next buffer if necessary. + + A character to write to the buffer, and eventually the file + + + + Reads an array of character from two bytes in the buffer, automatically loading + + + + + Reads a double from the buffer, automatically loading the next buffer if necessary. + + + + + Writes a double-precision floating point to 8 bytes in the buffer, automatically loading the next buffer if necessary. + + A double-precision floating point decimal value to write as 8 bytes. + Boolean, true if the value should be returned with little endian byte ordering. + + + + Writes the specified array of doubles to the file. + + The values to write. + + + + Writes the specified array of integers to the file. + + The values to write. + + + + By default, this will use little Endian ordering. + + + + + Reads an integer from the file, using the isLittleEndian argument + to decide whether to flip the bits or not. + + A 32-bit integer to write as 4 bytes in the buffer. + Boolean, true if the value should be returned with little endian byte ordering. + + + + Writes an Int16 to the buffer. + + An Int16 to convert into 2 bytes to write to the buffer. + + + + Writes a single-precision floading point to 4 bytes in the buffer, automatically loading the next buffer if necessary. + This assumes the value should be little endian. + + A Single to convert to 4 bytes to write to the buffer. + + + + Reads a single-precision floading point from 4 bytes in the buffer, automatically loading the next buffer if necessary. + + A single-precision floating point converted from four bytes + Boolean, true if the value should be returned with little endian byte ordering. + + + + Writes the specified bytes to the buffer, advancing the buffer automatically if necessary. + + An array of byte values to write to the buffer. + + + + Gets or sets the actual array of bytes currently in the buffer + + + + + Gets a long integer specifying the starting position of the currently loaded buffer + relative to the start of the file. A value of -1 indicates that no buffer is + currently loaded. + + + + + Gets an integer value specifying the size of the buffer currently loaded into memory. + This will either be the MaxBufferSize, or a smaller buffer representing a smaller + remainder existing in the file. + + + + + Gets a boolean indicating whether there is currently any information loaded into the buffer. + + + + + Gets the current read position in the file in bytes. + + + + + Gets or sets the buffer size to read in chunks. This does not + describe the size of the actual + + + + + Gets or sets the progress meter that is directly linked to the progress handler. + + + + + Gets or sets the progress handler for this binary writer + + + + + This acts like a placeholder on the buffer and indicates where reading will begin (relative to the start of the buffer) + + + + + LogException + + + + + Actually logs the exception. This happens after the message has been set in the constructors of the classes of this exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The argument %S cannot be null.. + + + + + Looks up a localized string similar to The argument %S cannot be negative.. + + + + + Looks up a localized string similar to The argument %S was null. Try testing for the null case before calling this method.. + + + + + Looks up a localized string similar to The argument %S1 was incorrect for %S2.. + + + + + Looks up a localized string similar to Calculating Statistics. + + + + + Looks up a localized string similar to The fileName %S cannot be copied to itself.. + + + + + Looks up a localized string similar to Copying Values. + + + + + Looks up a localized string similar to The current element was not defined. Before attempting to read the element, first assign the value of the current XML Element to read.. + + + + + Looks up a localized string similar to Cannot read past the end of the file.. + + + + + Looks up a localized string similar to The FeatureType of the feature you are trying to add does not match the feature type of this featureset.. + + + + + Looks up a localized string similar to The FeatureType was not specified. Please specify a featuretype before attempting to call this method.. + + + + + Looks up a localized string similar to The fileName %S already exists. Do you wish to overwrite it?. + + + + + Looks up a localized string similar to The fileName %S was not found.. + + + + + Looks up a localized string similar to The fileName %S contains a feature type other than lines.. + + + + + + + Looks up a localized string similar to The fileName %S contains a feature type other than polygons.. + + + + + Looks up a localized string similar to The specified file type is not supported.. + + + + + Looks up a localized string similar to Attepted to set the enumeration field to the value '%s', which is not known.. + + + + + Looks up a localized string similar to The specified charcter '%S' was not a known field type: 124cCesStlLfdmMbox". + + + + + Looks up a localized string similar to The number of rows and number of columns must both be greater than 0, but the header for this item returned %S1 rows and %S2 columns.. + + + + + Looks up a localized string similar to You must first compress the data before accessing this value.. + + + + + Looks up a localized string similar to Insertion via SetInstValue() is not yet supported for pointers.. + + + + + Looks up a localized string similar to There was an error while attempting to index %S. + + + + + Looks up a localized string similar to The file %S could not be found.. + + + + + Looks up a localized string similar to This has not yet been implemented.. + + + + + Looks up a localized string similar to The value %S was too large to encode with 18 ASCII characters.. + + + + + Looks up a localized string similar to The value %S was too small to be encoded with 18 ASCII characters.. + + + + + Looks up a localized string similar to The value you entered could not be parsed into a %S. Make sure the value is in the valid range.. + + + + + Looks up a localized string similar to The desired length of %S1 was too long. The total length was %S2 and the offset was %S3.. + + + + + Looks up a localized string similar to The beginning eight bytes of the specified file did not match the png signature.. + + + + + Looks up a localized string similar to The number of bytes should be 4 * rows * cols since only ARGB format is supported.. + + + + + Looks up a localized string similar to The header has not been defined for the image scale you are attempting to access.. + + + + + Looks up a localized string similar to The rows or columns would extend beyond the specified number of columns or rows for the specified scale.. + + + + + Looks up a localized string similar to To work with anything other than an in-memory raster window, you must first cast this raster to the correct data format.. + + + + + Looks up a localized string similar to The rasters must have equally sized cells to use this method.. + + + + + Looks up a localized string similar to The specified raster would be too large to store in memory.. + + + + + Looks up a localized string similar to Reading values from %S. + + + + + Looks up a localized string similar to Writing values to %S. + + + + + Box-plot: Tukey 1977 + Basically it is like subdividing the data into 4 quartiles, + denoted like Q1, Q2, Q3, Q4. + ------- + Low Outlier (less than the Quartile - 3/2 Interquartile range) + Q1 (Q1 - 3/2 the Interquartile range to Q1 + Q2 (Quartile 1 to Median) + Q3 (Median to Quartile 3) + Q4 (Q3 to Q3 + 3/2 the Interquartile range + High Outlier (Greater than Q3 plus the interquartile range + + + + + The median between the median and the highest value. + This separates the third and fourth quartiles. + + + + + The highest value that is not considered an outlier. + If the values are not numeric, this will be the Maximum. + + + + + The median between the lowest value and the median value. + This separates the first quartile from the second. + + + + + The lowest value that is not considered to be an outlier. + If the values are not numeric, this will be the minimum. + + + + + The Median value (the value of the middle member) + + + + + CoordinateTypes + + + + + X and Y coordinates only + + + + + M values are available + + + + + Z values are available + + + + + DataTableStatisticsEM + + + + + Inspects the members of the data Table, focusing on the named field. It calculates + the median of the values in the named field. + + + + + + + + Used by Segment.ClosestPointTo() to detail how the input point interacts with the line segment + + + + + The vertex found is on the line segment and between P1 and P2 + + + + + The vertex found is beyond the end of P1 + + + + + The vertex found is beyond the end of P2 + + + + + P1 equals P2 so the segment cannot be extended into an infinite line the closest vertex is P1/P2 + + + + + Clarifies whether a value is cached in a local variable or updated dynamically + + + + + The value is cached locally, rather than calculated on the fly + + + + + The value is calculated each type, rather than using a local cache + + + + + Byte order + + + + + Big Endian + + + + + Little Endian + + + + + Filetypes + + + + + An unrecognized file format + + + + + The Esri Shapefile format (*.shp) + + + + + Comma separated values (*.csv) + + + + + Google Markup Language (a variant of the Keyhole Markup Language) (*.gml) + + + + + MapInfo format (*.tab) + + + + + CAD format (Design) (*.dgn) + + + + + S-57 published by International Hydrographic Organization (IHO). (*.000) + + + + + Spatial Data Transfer Standard (*.sdts) + + + + + ? + + + + + Topologically Integrated Geographic Encoding and Referencing (*.tig) + + + + + ? + + + + + MS Excel ODBC Query File? (*.DQY) + maybe ODBC Data Source file? (*.DSN) + + + + + ? + + + + + ArcInfo Vector Coverage + + + + + Geospatial Data Abstraction Library (GDAL) File (*.VRT) + + + + + Record file? (*.REC) + + + + + This represents the column information for one column of a shapefile. + This specifies precision as well as the typical column information. + + + + + Represents the number of decimals to preserve after a 0. + + + + + The length of a field in bytes + + + + + Creates a new default field empty field - needed for datatable copy and clone methods. + + + + + Creates a new default field given the specified DataColumn. Numeric types + default to a size of 255, but will be shortened during the save opperation. + The default decimal count for double and long is 0, for Currency is 2, for float is + 3, and for double is 8. These can be changed by changing the DecimalCount property. + + A System.Data.DataColumn to create a Field from + + + + Creates a new instance of a field given only a column name + + The string Column Name for the new field + + + + Creates a new Field with a specific name for a specified data type + + The string name of the column + The System.Type describing the datatype of the field + + + + Creates a new field with a specific name and using a simplified enumeration of possible types. + + the string column name. + The type enumeration that clarifies which basic data type to use. + + + + This creates a new instance. Since the data type is + + + + + + + + + Internal method that decides an appropriate decimal count, given a data column + + + + + This is the single character dBase code. Only some of these are supported with Esri. + C - Character (Chars, Strings, objects - as ToString(), and structs - as ) + D - Date (DateTime) + T - Time (DateTime) + N - Number (Short, Integer, Long, Float, Double, byte) + L - Logic (True-False, Yes-No) + F - Float + B - Double + + + + + Gets or sets the number of places to keep after the 0 in number formats. + As far as dbf fields are concerned, all numeric datatypes use the same + database number format. + + + + + The character length of the field + + + + + The offset of the field on a row in the file + + + + + Number Converter associated with this field. + + + + + FieldDataTypes stores some very simplistic data types to help novices get started more easily. + + + + + 32 Bit integer data type + + + + + Double precision floating point data type + + + + + String data type + + + + + This is not a data class exactly, but instead is for making it easier to modify byte values of a 32 bit ARGB + bitmap, but doesn't require a file. + + + + + Creates a new instance of MemoryBitmapGrid + + + + + Creates a blank image grid. + + + + + + + Creates a clone of this memory bitmap grid by basically cloning the bitmap itself + and then building a new BitmapGrid around the clone. + + + + + + Gets an enumerator for cycling through the color values. + + + + + + Creates a disconnected duplicate of this BitmapGrid + + + + + + Clears the byte values in the grid, replacing them with 0. + + + + + Disposes the unmanaged aspect of the bmp + + + + + Erases over any current content in the values, and copies the + byte values of the specified color in its place. + + The color to fill the image with + + + + Tests the specified bitmap to verify that it is both a Bitmap and in ARGB pixel format. + If it is anything different, then this returns a newly created bitmap with a copy drawn + onto it. + + + + + + + This will calculate the difference. The width and height of the new grid will be the larger + of the rows and columns between the compare grid and this grid. Values outside the range + of one of the grids will simply be filled in as the value stored in the other grid. Because + byte values can't be negative, the difference will be the absolute value. + + + A BitmapGrid with byte values calculated by taking the difference between the two grids. + + + + By default, all the bands have a difference comparison done. This may not have the desired effect + because the alpha channel for most colors is actually just 255. The mathematical difference would + be zero, resulting in an output image that, while being the actual difference, is essentially + entirely invisibile (except where the images don't overlap.) + + + + + + + + Gets a color structure for the specified row and column. + + The zero based integer row index to get the color from + The zero based integer column index to get the color from + A System.Color structure created from the byte values in the values array + + + + Compares the bytes of this grid to the bytes of another grid. If the measurements + of the other grid don't match this, then this returns false. + + The other BitmapGrid to test against + Boolean, true if the bytes are the same in each case. + + + + Replaces all the byte values of this grid with randomly generated values. + + + + + Sets the color structure by copying the byte ARGB values into the values array. + + The integer row index to copy values to + The integer column index to copy values to + The color structure to turn into bytes + + + + Setting this will automatically replace the byte array. Getting this will + automatically convert the bytes back into bitmap form. + + + + + Gets the integer height of the bitmap in this grid in pixels. + + + + + gets the integer stride, or number of actual bytes in a single row. This is not always the + same as the number of columns. + + + + + Gets or sets the array of bytes directly. Setting this can be + dangerous and is not recommended. Setting individual values in the + array is perfectly acceptable, since it won't interfere with + the stride or number of bytes expected. + + + + + Gets the current width (number of columns) of the bitmap in pixels. + + + + + Cycles through the values of a BitmapGrid starting at the top left corner and moving in row major + fashion, (raster-scan fashion, moving across end then down.) + + + + + Creates a new instance of a BitmapGridEnumerator based on the specified parentGrid. This + automatically ignores any bytes in the range past the "width". + + The parent grid to cycle through the values of + + + + This does nothing + + + + + Advances the color to the next position + + Boolean, false if there were no more cells in the image + + + + Resets the enumeration to the top left corner of the image. + + + + + Gets the current color value from this grid + + + + + DotNetImageProvider uses the standard image object to support basic image types through standard in-ram treatments. + Images are not responsible for producing grid values that can be represented symbolically. + + + + + IImageProvider + + + + + IDataProvider is what you implement to expand the data handling methods of DotSpatial + + + + + This open method is only called if this plugin has been given priority for one + of the file extensions supported in the DialogReadFilter property supplied by + this control. Failing to provide a DialogReadFilter will result in this plugin + being added to the list of DataProviders being supplied under the Add Other Data + option in the file menu. + + A string specifying the complete path and extension of the file to open. + A List of IDataSets to be added to the Map. These can also be groups of datasets. + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimited + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceded by the name provided on this object. + In addition, the same extension mapping will be used in order to pair a string driver code to the + extension. + + + + + Gets a preferably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + Gets or sets the progress handler to use. + + + + + This provides a basic description of what your provider does. + + + + + Creates a new instance of an Image. + + The string fileName to use + The integer width in pixels + The integer height in pixels + Boolean, true if the entire contents should be stored in memory + A Progress handler to use + The ImageBandType clarifying how to organize the raster bands. + A New IImageData object allowing access to the content of the image + + + + Opens a new Image with the specified fileName + + The string file to open + An IImageData object + + + + Creates a new instance of an Image. + + The string fileName to use + The integer width in pixels + The integer height in pixels + Boolean, true if the entire contents should be stored in memory + A Progress handler to use + .Net type ignores this for now. + + A New IImageData object allowing access to the content of the image + + + + + Opens a new Image with the specified fileName + + The string file to open + An IImageData object + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided on this object. + + + + + Gets a prefereably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This provides a basic description of what your provider does. + + + + + Gets or sets the progress handler + + + + + An Image Coverage just consists of several images that can be thought of as a single image region. + Queries for pixel values for a region will simply return the first value in the set that is not + completely transparent. + + + + + IImageSet is simple interface that gives some basic information that is common between tiled images and + the more general image coverages + + + + + Uses the geographic envelope and the specified pixelSize in order to calculate an + appropriate bitmap for display based on the various images in this set. + + The geographic bounds to display + The pixelSize of the bitmap to display + A Bitmap showing the appropriate size and dimensions of the image + + + + This is very generic, but allows the user to cycle through the images currently in the image set, + regardless of whether they are in a list or an array or other data structure. + + + + + + Gets the count of the images in the image set + + + + + Gets or sets the list of tiles. + + + + + IImageData + + + + + Forces the image to read values from the graphic image format to the byte array format + + + + + Copies the values from the specified source image. + + + The source image to copy values from. + + + + + Forces the image to copy values from the byte array format to the image format. + + + + + Creates a color structure from the byte values in the values array that correspond to the + specified position. + + + The integer row index for the pixel. + + + The integer column index for the pixel. + + + A Color. + + + + + Opens the file, assuming that the fileName has already been specified + + + + + Saves the image and associated world file to the current fileName. + + + + + Saves the image to a new fileName. + + + The string fileName to save the image to. + + + + + Sets the bitmap being used for this dataset + + + + + + + This is only used in the palette indexed band type. + + + + + This should update the palette cached and in the file. + + + + + + Sets the color value into the byte array based on the row and column position of the pixel. + + + The integer row index of the pixel to set the color of. + + + The integer column index of the pixel to set the color of + + + The color to copy values from + + + + + Gets a block of data directly, converted into a bitmap. + + The zero based integer column offset from the left + The zero based integer row offset from the top + The integer number of pixel columns in the block. + The integer number of pixel rows in the block. + A Bitmap that is xSize, ySize. + + + + Saves a bitmap of data as a continuous block into the specified location. + + The bitmap value to save. + The zero based integer column offset from the left + The zero based integer row offset from the top + + + + Finalizes the blocks. In the case of a pyramid image, this forces recalculation of the + various overlays. For GDAL images, this may do nothing, since the overlay recalculation + may be on the fly. For InRam images this does nothing. + + + + + Gets or sets an integer indicating how many bytes exist for each pixel. + Eg. 32 ARGB = 4, 24 RGB = 3, 16 bit GrayScale = 2 + + + + + Gets or sets the fileName. + + + + + Gets the image height in pixels + + + + + Gets or sets the number of bands that are in the image. + One band is a gray valued image, 3 bands for color RGB and 4 bands + for ARGB. + + + + + Gets or sets the stride in bytes. + + + + + Gets a one dimensional array of byte values + + + + + Gets the image width in pixels + + + + + Gets or sets the world file that stores the georeferencing information for this image. + + + + + Gets or sets the interpretation for the image bands. This currently is only for GDAL images. + + + + + IImageSource + + + + + Returns the data from the file in the form of ARGB bytes. + + The zero based integer index of the first row (Y) + The zero based integer index of the first column (X) + The number of rows to read + The number of columns to read + The integer overview. 0 for the original image. Each successive index divides the length and height in half. + A Byte of values in ARGB order and in row-major raster-scan sequence + + + + This returns the window of data as a bitmap. + + The zero based integer index of the first row (Y) + The zero based integer index of the first column (X) + The number of rows to read + The number of columns to read + The integer overview. 0 for the original image. Each successive index divides the length and height in half. + + + + + Gets or sets the bounds + + + + + Gets the number of rows + + + + + Gets the total number of columns + + + + + Gets the number of overviews, not counting the original image + + + + + TiledImage is a class for actually controlling the data in several tiles. This does not supply + direct accessors for + modifying the bytes directly, and instead expects the user to edit the image on a tile-by-tile basis. However, + the GetBitmap method will produce a representation of the envelope scaled to the specified window. + + + + + Creates a new instance of TiledImage + + + + + Gets the bitmap for the specified geographic envelope scaled to fit on a bitmap of the specified size in pixels. + + + + + + + + + + + Cycles through each of the images and calls the open method on each one. + + + + + Cycles through each of the images and calls the save method on each one + + + + + Gets or sets the Filename + + + + + + + + + + + + + + ImageData (not named Image because of conflicting with the Dot Net Image object) + + + + + Creates a new instance of ImageData + + + + + Copies the values from the specified source image. + + The source image to copy values from. + + + + Attempts to create a bitmap for the entire image. This may cause memory exceptions. + + A Bitmap of the image. + + + + Sets the bitmap being used for this dataset + + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + The geographic extents to retrieve data for + The rectangle that defines the size of the drawing area in pixels + A bitmap captured from the main image + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + The geographic extents to retrieve data for + The rectangle that defines the size of the drawing area in pixels + A bitmap captured from the main image + + + + Opens the file, assuming that the fileName has already been specified + + + + + Forces the image to read values from the graphic image format to the byte array format + + + + + Saves the image and associated world file to the current fileName. + + + + + Saves the image to a new fileName. + + The string fileName to save the image to. + + + + Forces the image to copy values from the byte array format to the image format. + + + + + Creates a new image and world file, placing the default bounds at the origin, with one pixel per unit. + + The string fileName + The integer width + The integer height + The color band type + + + + Opens the file with the specified fileName + + The string fileName to open + + + + Creates a color structure from the byte values in the values array that correspond to the + specified position. + + The integer row index for the pixel. + The integer column index for the pixel. + A Color. + + + + Sets the color value into the byte array based on the row and column position of the pixel. + + The integer row index of the pixel to set the color of. + The integer column index of the pixel to set the color of + The color to copy values from + + + + Gets a block of data directly, converted into a bitmap. + + The zero based integer column offset from the left + The zero based integer row offset from the top + The integer number of pixel columns in the block. + The integer number of pixel rows in the block. + A Bitmap that is xSize, ySize. + + + + Saves a bitmap of data as a continuous block into the specified location. + Be sure to call UpdateOverviews after writing all blocks in pyramid images. + + The bitmap value to save. + The zero based integer column offset from the left + The zero based integer row offset from the top + + + + Finalizes the blocks. In the case of a pyramid image, this forces recalculation of the + various overlays. For GDAL images, this may do nothing, since the overlay recalculation + may be on the fly. For InRam images this does nothing. + + + + + This is only used in the palette indexed band type. + + + + + This should update the palette cached and in the file. + + + + + + Occurs when the bounds have been set. + + The new bounds. + + + + Disposes the managed memory objects in the ImageData class, and then forwards + the Dispose operation to the internal dataset in the base class, if any. + + Boolean, true if both managed and unmanaged resources should be finalized. + + + + Gets or sets the color palette + + + + + Gets or sets an integer indicating how many bytes exist for each pixel. + Eg. 32 ARGB = 4, 24 RGB = 3, 16 bit GrayScale = 2 + + + + + Gets or sets the fileName. + + + + + Gets the image height in pixels + + + + + Gets or sets the number of bands that are in the image. One band is a gray valued image, 3 bands for color RGB and 4 bands + for ARGB. + + + + + Gets or sets the stride in bytes. + + + + + Gets a one dimensional array of byte values + + + + + Gets the image width in pixels + + + + + Gets or sets the world file that stores the georeferencing information for this image. + + + + + Gets or sets the interpretation for the image bands. This currently is only for GDAL images. + + + + + ITiledImage + + + + + Gets or sets the bounds for this image + + + + + Gets or sets the fileName for this tiled image. + + + + + Gets or sets the integer height in pixels for the combined image at its maximum resolution + + + + + Gets the stride, or total width in pixels of the byte data, which might not match exactly with the visible width. + + + + + Gets the tile width + + + + + Gets the tile height + + + + + Gets or sets the integer pixel width for the combined image at its maximum resolution. + + + + + Gets or sets the WorldFile for this set of tiles. + + + + + MWImageData + + + + + The _my image. + + + + + Initializes a new instance of the class. + Creates an empty ImageData to be created or loaded + + + + + Initializes a new instance of the class. + Creates a new MWImageData class from the specified fileName. + + + The string filename. + + + + + Initializes a new instance of the class. + Creates the bitmap from the raw image specified. The bounds should be set on this later. + + + The raw image. + + + + + Initializes a new instance of the class. + Uses a bitmap and a geographic envelope in order to define a new imageData object. + + + The raw image. + + + The envelope bounds. + + + + + Initializes a new instance of the class. + Constructs a new ImageData of the specified width and height. + + + The integer width in pixels. + + + The integer height in pixels. + + + + + Closes the image content. + + + + + Forces the image to read values from the graphic image format to the byte array format + + + + + Copies the values from the specified source image. + + + The source image to copy values from. + + + + + Forces the image to copy values from the byte array format to the image format. + + + + + Creates a new image and world file, placing the default bounds at the origin, with one pixel per unit. + + + The string fileName + + + The integer width + + + The integer height + + The ImageBandType that clarifies how the separate bands are layered in the image. + + + + Returns the internal bitmap in this case. In other cases, this may have to be constructed + from the unmanaged memory content. + + + A Bitmap that represents the entire image. + + + + + The geographic envelope gives the region that the image should be created for. + The window gives the corresponding pixel dimensions for the image, so that + images matching the resolution of the screen can be used. + + + The geographic extents to retrieve data for + + + The rectangle that defines the size of the drawing area in pixels + + + A bitmap captured from the main image + + + + + Opens the file, assuming that the fileName has already been specified using a Dot Net Image object + + + + + Saves the current image and world file. + + + + + Saves the image to the specified fileName + + + The string fileName to save this as + + + + + Sets the bitmap + + + + + + + Release any unmanaged memory objects + + + The dispose Managed Resources. + + + + + The memory setup. + + + + + Gets a block of data directly, converted into a bitmap. + + The zero based integer column offset from the left + The zero based integer row offset from the top + The integer number of pixel columns in the block. + The integer number of pixel rows in the block. + A Bitmap that is xSize, ySize. + + + + Extends the normal bounds changing behavior to also update the world file. + + Updates the world file. + + + + Saves a bitmap of data as a continuous block into the specified location. + + The bitmap value to save. + The zero based integer column offset from the left + The zero based integer row offset from the top + + + + BitDepth + + + + + One bit per band pixel + + + + + Two bits per band pixel + + + + + Four bits per band pixel + + + + + Eight bits per band pixel (normal) + + + + + Sixteen bits per band pixel + + + + + ColorType + + + + + Each pixel is a greyscale sample + + + + + Each pixel is an RGB triple + + + + + Each pixel is a palette index + + + + + Each pixel is a greyscale sample followed by an alpha sample + + + + + EAch pixel is an RGB triple followed by an alhpa sample + + + + + CRC32 + + + + + A table of values + + + + + Calculates the CRC-32-IEEE 802.3 Checkzum for png according to: + x^32 + x^26 + x^23 + x^22 + x^16 + + x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x + 1 + + + + + + + Computes the Checksum + + + + + + + Computes the checksum bytes + + + + + + + Creates a table of checksum values + + + + + + Calculates the CRC-32-IEEE 802.3 Checkzum for png according to: + x^32 + x^26 + x^23 + x^22 + x^16 + + x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x + 1 + + + A UInt32 value stored in a long because UINT32 is not CLS compliant + + + + Updates the running CRC + + + + + Creates the table according to the png specification + + + + + + Deflated data content is widely understood by gzip utilities, but this system is specifically designed to work + with png data format, and so will only work with code 8 compression strategy. + + + + + Compress + + + + + + + Decompress + + + + + + + InterlaceMethods + + + + + No interlacing + + + + + Adam7 interlacing + + + + + mw.png provides read-write support for a png format that also can provide overviews etc. + This cannot work with any possible png file, but rather provides at least one common + format that can be used natively for large files that is better at compression than + just storing the values directly. + http://www.w3.org/TR/2003/REC-PNG-20031110/#11PLTE + + + + + For testing, see if we can write a png ourself that can be opened by .Net png. + + The image to write to png format + The string fileName + + + + Reads a fileName into the specified bitmap. + + + + If the file signature doesn't match the png file signature + + + + + + + + + + Writes an in Big-endian Uint format. + + + + + + Many rows may be evaluated by this process, but the first value in the array should + be aligned with the left side of the image. + + The original bytes to apply the PaethPredictor to. + The integer offset in the array where the filter should begin application. If this is 0, then + it assumes that there is no previous scan-line to work with. + The number of bytes to filter, starting at the specified offset. This should be evenly divisible by the width. + The integer width of a scan-line for grabbing the c and b bytes + The entire length of bytes starting with the specified offset + + + + Unfilters the data in order to reconstruct the original values. + + The filtered but decompressed bytes + the integer offset where reconstruction should begin + The integer length of bytes to deconstruct + The integer width of a scan-line in bytes (not counting any filter type bytes. + + + + + + B C - For the current pixel X, use the best fit from B, C or A to predict X. + A X + + + + + + + + + PngHeader + + + + + At this time, the only compression method recognized is 0 - deflate/inflate with a + sliding window of at most 32768 bytes + + + + + At this time, only filter method 0 is outlined in the international standards. + (adaptive filtering with 5 basic filter types) + + + + + Creates a new instance of PngHeader + + + + + Writes the byte-format of this png image header chunk to + + + + + + Returns the image header in bytes. + + + + + + Writes an integer in Big-endian Uint format. + + + + + + + + Writes an integer in Big-endian Uint format. + + + + + + + + Reads the important content from the stream of bytes + + + + + + Gets or sets the bit depth. Depending on the Color Type, not all are allowed: + Greyscale - 1, 2, 4, 8, 16 + Truecolor - 8, 16 + Indexed - 1, 2, 4, 8 + Greyscale/alpha - 8, 16 + TrueColor/alpha - 8, 16 + + + + + Gets or sets the color type. + + + + + Gets or sets the width + + + + + Gets or sets the height + + + + + Gets or sets the interlacing method used for this image. + + + + + PngInsuficientLengthException + + + + + Creates a new instance of PngInsuficientLengthException + + + + + PngInvalidSignatureException + + + + + Creates a new instance of PngInvalidSignatureException + + + + + PyramidByteMismatch + + + + + PyramidException + + + + + Creates a new instance of PyramidException + + + + + Creates a new instance of PyramidByteMismatch + + + + + PyramidHeader + + + + + Calculates the header size for this + + + + + + Gets or sets the array that encompasses all of the basic header content + necessary for working with this image. + + + + + The Pyramid Image is designed with the expectation that the image will be too big to access all at once. + It is stored with multiple resolutions in a "mwi or DotSpatial Image" format. It is raw bytes in argb order. + The header content is stored in xml format. + + + + + Creates a new instance of PyramidImage + + + + + Creates a new PyramidImage by reading in the header content for the specified fileName. + + + + + + Creates a new Pyramid image, and uses the raster bounds to specify the number or rows and columns. + No data is written at this time. + + + + + + + For big images this won't work, but this gets the 0 scale original image as a bitmap. + + + + + + For big images the scale that is just one step larger than the specified window will be used. + + + + + + + + + + + Creates the headers using the existing RasterBounds for this image + + + + + This takes an original image and calculates the header content for all the lower resolution tiles. + This does not actually write the bytes for those images. + + The raster bounds for the original image. + + + + This takes an original image and calculates the header content for all the lower resolution tiles. + This does not actually write the bytes for those images. + + The number of rows in the original image + The number of columns in the original image + + the array of doubles in ABCDEF order + X' = A + Bx + Cy + Y' = D + Ex + Fy + + + + + This assumes that the base image has been written to the file. This will now attempt to calculate + the down-sampled images. + + + + + This assumes that the base image has been written to the file. This will now attempt to calculate + the down-sampled images. + + + + + downsamples this row by selecting every other byte + + + + + + + This is normally weighted for calculations for the middle row. If the top or bottom row + is null, it will use mirror symetry by grabbing values from the other row instead. + + + + + + + + This writes a window of byte values (ARGB order) to the file. This assumes that the headers already exist. + If the headers have not been created or the bounds extend beyond the header numRows and numColumns for the + specified scale, this will throw an exception. + + The integer start row + The integer start column + The integer number of rows in the window + The integer number of columns in the window + The integer scale. 0 is the original image. + The bytes created by this process + Occurs when attempting to write data before the headers are defined + Occurs if the range specified is outside the bounds for the specified image scale + + + + This writes a window of byte values (ARGB order) to the file. This assumes that the headers already exist. + If the headers have not been created or the bounds extend beyond the header numRows and numColumns for the + specified scale, this will throw an exception. + + The byte array + The integer start row + The integer start column + The integer number of rows in the window + The integer number of columns in the window + The integer scale. 0 is the original image. + Occurs when attempting to write data before the headers are defined + Occurs if the range specified is outside the bounds for the specified image scale + + + + This writes a window of byte values (ARGB order) to the file. This assumes that the headers already exist. + If the headers have not been created or the bounds extend beyond the header numRows and numColumns for the + specified scale, this will throw an exception. + + The byte array + The integer start row + The integer start column + The integer number of rows in the window + The integer number of columns in the window + The integer scale. 0 is the original image. + The progress meter to advance by row. Calls Next() for each row. + Occurs when attempting to write data before the headers are defined + Occurs if the range specified is outside the bounds for the specified image scale + + + + Reads the header only from the specified mwi file. The header is in xml format. + This is a test. We may have to jurry rig the thing to ensure it ignores the actual + image content. + + Whether this is the mwi or mwh file, this reads the mwh file for the fileName. + + + + Writes the header to the specified fileName. + + The string fileName to write the header to. + + + + Gets a block of data directly, converted into a bitmap. This is a general + implementation, so assumes you are reading and writing to the 0 scale. + This is always in ARGB format. + + The zero based integer column offset from the left + The zero based integer row offset from the top + The integer number of pixel columns in the block. + The integer number of pixel rows in the block. + A Bitmap that is xSize, ySize. + + + + Saves a bitmap of data as a continuous block into the specified location. This + is a general implementation, so assumes you are reading and writing to the 0 scale. + This should be in ARGB pixel format or it will fail. + + The bitmap value to save. + The zero based integer column offset from the left + The zero based integer row offset from the top + + + + Updates overviews. In the case of a Pyramid image, this recalculates the values. + + + + + Gets or sets the pyramid image header + + + + + PyramidImageHeader + + + + + Scale is an integer value that starts at 0 for the original image and represents the number of + times the number of columns and number of rows are divided by 2. + + The affine array of the original, unmodified image + The integer scale starting at 0 for the original image, and increasing by one for each down-sampling + + + + Sets the number of rows based on the integer scale + + + integer starts at 0 for the original image + + + + Sets the number of columns based on the integer scale + + + integer starts at 0 for the original image + + + + Offsets + + + + + Integer number of rows + + + + + Integer number of columns + + + + + Gets or sets the affine coefficients for this image in ABCDEF order + X' = A + BX + CY + Y' = D + EX + FY + + + + + PyramidOutOfBoundsException + + + + + Creates a new instance of PyramidOutOfBoundsException + + + + + PyramidUndefinedHeader + + + + + Creates a new instance of PyramidUndefinedHeader + + + + + TileCollection + + + + + + + + Creates a new instance of TileCollection + + + + + Calls a method that calculates the propper image bounds for each of the extents of the tiles, + given the affine coefficients for the whole image. + + x' = A + Bx + Cy; y' = D + Ex + Fy + + + + Gets the width of the tile + + + + + + + Gets the height of the tile + + + + + + + Gets the number of tiles in the X direction + + + + + + Gets the integer number of tiles in the Y direction + + + + + + Gets or sets the integer height in pixels for the combined image at its maximum resolution + + + + + Gets or sets the integer pixel width for the combined image at its maximum resolution. + + + + + Gets or sets the 2D array of tiles + + + + + The width of the standard sized tile (not counting the remainder) + + + + + The height of the standard sized tile, not counting the remainder. + + + + + The total number of tiles + + + + + Enumerates the collection of tiles + + + + + Creates a new instance of hte TileCollectionEnumerator + + The parent tileCollection + + + + + + + + + + + + + + + + TiledImage is a special kind of image coverage where the images specifically form tiles that + are adjacent and perfectly aligned to represent a larger image. + + + + + Creates a new instance of the TiledImage where the fileName is specified. + This doesn't actually open the file until the Open method is called. + + + + + + Creates a new instance of TiledImage + + + + + This should be overridden with custom file handling + + + + + + + + + + + Even if this TiledImage has already been constructed, we can initialize the tile collection later. + + + + + + + Calls a method that calculates the proper image bounds for each of the extents of the tiles, + given the affine coefficients for the whole image. + + x' = A + Bx + Cy; y' = D + Ex + Fy + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Not Implemented + + + + + + Not Implemented. + + + + + + Not Implemented + + + + + + Not implemented + + + + + + + + + + Not Implemented + + + + + + + + Not implemented + + + + + + + + + + + Gets or sets the array of tiles used for this + + + + + + + + + + + + + + + + + + + + + + Gets or sets the number of bands + + + + + + + + + + + Not Implemented + + + + + + + + + + + + + + + + + Gets or sets the WorldFile for this set of tiles. + + + + + WorldFiles complement images, giving georeference information for those images. The basic idea is to calculate + everything based on the top left corner of the image. + + + + + Creates a new instance of WorldFile + + + + + Automatically creates a new worldfile based on the specified image fileName. + + Attempts to open the fileName for the world file for the image if it exists. + + + + Returns the string extensions that accompanies one of the dot net image formats. + + The Imaging.ImageFormat for the image itself + The string extension + + + + Given the fileName of an image, this creates a new fileName with the appropriate extension. + This will also set the fileName of this world file to that extension. + + The fileName of the image + the fileName of the world file + + + + Opens the worldfile specified by the Filename property and loads the values + + + + + Opens an existing worldfile based on the specified fileName + + + + + + Saves the current affine coordinates to the current fileName + + + + + Saves the current coordinates to a file + + Gets or sets the fileName to use for an image + + + + Creates a Matrix that is in float coordinates that represents this world file + + A Matrix that transforms an image to the geographic coordinates + + + + gets the coordinates in the Affine order: + X' = [0] + [1] X + [2] Y + Y' = [3] + [4] X + [5] Y + + + + + Gets or sets the fileName to use for this world file. + + + + + Gets or sets the cellHeight + + + + + Gets or sets the cellWidth + + + + + Gets or sets longitude or X position corresponding to the center of the cell in the top left corner of the image + + + + + Gets or sets the latitude or Y position corresponding to the center of the cell in the top left corner of the image + + + + + Gets or sets how much the longitude or X position of a cell in the image depends on the row position of the cell. + + + + + Gets or sets how much the latitude or Y position of a cell in the image depends on the column position of the cell. + + + + + Gets a string list of file extensions that might apply to world files. + + + + + Coordinate + + + + + Coordinate x-value + + + + + coordinate y-value + + + + + Datum + + + + + Creates a new instance of Datum + + + + + Gets or sets the name of the datum + + + + + Gets or sets the datum type + + + + + Gets or sets the parameters for the Parametric datum type + + + + + Gets or sets the string name of the grid file + + + + + HfaDatumType + + + + + The datum info is 7 doubles + + + + + The datum info is a name + + + + + + + + + + No Datum info + + + + + ERDAS Projection Codes + + + + + EPT ERDAS DATA TYPES + + + + + Unsigned 1 bit + + + + + Unsigned 2 bit + + + + + Unsigned 4 bit + + + + + Unsigned 8 bit + + + + + Signed 8 bit + + + + + Unsigned 16 bit + + + + + Signed 16 bit + + + + + Unsigned 32 bit + + + + + Signed 32 bit + + + + + Single precisions 32 bit floating point + + + + + Double precision 64 bit floating point + + + + + 64 bit character? + + + + + 128 bit character? + + + + + Extension Methods useful for the DotSpatial.Data.Img content + + + + + A common task seems to be parsing the text up to a certain delimiter + starting from a certain index, and then advancing the string pointer. + This advances the index, extracting the string up to the point of the + specified delimeter, or the end of the string, and advancing the string + past the delimeter itself. If the index is equal to the length, + then you are at the end of the string. + + + + + Given a string, this reads digits into a numeric value. + + The string to read the integer from + An integer read from the string + + + + This variant of the ExtractTo algorithm effectively splits the string into teh content + before the delimeter and after the delimeter, not counting the delimeter. + + The string input + The string delimeter + the string remainder + + + + This method returns a substring based on the next occurance of the + specified delimeter. + + The string input + The delimeter + + + + Hfa + + + + + Gets the bitcount of a single member of the specified data type. + + The data type to get the byte count of + An integer that represents the bit count of the specified type + + + + Reverses the byte order on Big-Endian systems like Unix to conform with the + HFA standard of little endian. + + + + + + + Return ReadType + + + + + + + + Given the byte array, this reads four bytes and converts this to a 32 bit integer. + This always uses little endian byte order. + + + + + + + + Given the byte array, this reads four bytes and converts this to a 16 bit unsigned short integer. + This always uses little endian byte order. + + + + + + + + Given the byte array, this reads four bytes and converts this to a 32 bit integer. + This always uses little endian byte order. + + + + + + + + Given the byte array, this reads four bytes and converts this to a 32 bit floating point value + This always uses little endian byte order. + + + + + + + + Given the byte array, this reads four bytes and converts this to a 64 bit floating point value + This always uses little endian byte order. + + + + + + + + Given the byte array, this reads four bytes and converts this to a 32 bit unsigned integer. + This always uses little endian byte order. + + + + A UInt32 value stored in a long because UInt32 is not CLS Compliant + + + + Obtains the 4 byte equivalent for 32 bit Unsigned Integer values + + The unsigned integer value to convert into bytes + The bytes in LittleEndian standard, regardless of the system architecture + + + + Obtains the 4 byte equivalent for 32 bit Integer values + + The unsigned integer value to convert into bytes + The bytes in LittleEndian standard, regardless of the system architecture + + + + Obtains the 4 byte equivalent for 32bit floating point values + + The unsigned integer value to convert into bytes + The bytes in LittleEndian standard, regardless of the system architecture + + + + Obtains the 8 byte equivalent for 64 bit floating point values + + The unsigned integer value to convert into bytes + The bytes in LittleEndian standard, regardless of the system architecture + + + + Gets the 2 byte equivalent of an unsigned short in little endian format + + + + + + + Gets the 2 byte equivalent of a short in little endian format + + + + + + + HfaAccess + + + + + Read Only with no update access + + + + + Read/Write access + + + + + HfaCompress - Development on hold, commented out to reduce warnings + + + + + HfaDictionary + + + + + Creates a new instance of HfaDictionary + + + + + Adds the type using the TypeName as the key + + The type to add + + + + Writes all the elements from this dictionary to the specified stream. + + + + + + Given a character type, this calculates a size. This was originally + on the Dictionary, but I moved this to the HfaInfo instead. + + + + + + + HfaEntry + + + + + Creates a new instance of HfaEntry from the file + + + + + Create a new instance of the entry with the intention that it would + be written to disk later + + + + + + + + + Creates a new instance of HfaEntry + + + + + Loads the data bytes for this element from the file + + + + + Parses a name which may have an unwanted : or multiple sub-tree + names separated with periods. + + + + + + + If this is null, then there is no further subtree + + + + + + + This parses a complete "path" separated by periods in order + to search for a specific child node. + + + + + + + Gets or sets the HfaEntry that is the child + + + + + Gets or sets a boolean indicating if this is changed + + + + + Gets or sets the long integer file position + + + + + Gets or sets the HFA Info + + + + + Gets or sets the hfa parent + + + + + Gets or sets the previous entry + + + + + Gets or sets the long integer position of the next entry in the file + + + + + Gets or sets the HfaEntry that is the next entry + + + + + Gets or sets the long position of the child + + + + + Gets or sets the 64 character name of the entry + + + + + gets or sets the 32 character typestring + + + + + Gets or sets the type for this entry + + + + + The GUInt32 Data Position of this entry + + + + + The GUInt32 Data Size of this entry + + + + + Gets the data for this entry + + + + + Gets or sets the collection of all the children. + + + + + Gets or sets the first child belonging to this entry. + + + + + HfaEnumerationNotFoundException + + + + + Creates a new instance of HfaEnumerationNotFoundException + + + + + HfaField + + + + + + + + + + + This writes formatted content for this field to the specified IO stream. + + The stream to write to. + + + + + + + + + + + + + + SetInstValue + + + + + + + + + Attempting to insert a pointer is not supported. + Occurs if the specified value is not a valid member of the enumeration for this field. + + + + Scans through the array and estimates the byte size of the field in this case. + + + + + + + + Gets the count for a particular instance of a field. This will normally be + the built in value, but for variable fields, this is extracted from the + data itself. + + + + + + + + + + + + + + + + + This is used in the case of 'object' pointers where the indexed object is further in the data block. + + Occurs if the count is less than zero for the header of a block of base data + + + + Parses the input string into a valid HfaField, or returns null + if one could not be created. + + + + + + + Gets or sets the short integer number of bytes + + + + + Gets or sets the short integer item count + + + + + Gets or sets '\0', '*' or 'p' + + + + + Gets or sets 1|2|4|e|... + + + + + If ItemType == 'o' + + + + + Gets or sets the item object type + + + + + Normally null unless this is an enum + + + + + Gets or sets the field name + + + + + HfaInfo + + + + + Creates a new instance of HfaInfo + + + + + Gets or sets the access type + + + + + Gets or sets a dictionary for looking up types based on string type names. + + + + + The directory path + + + + + The string fileName sans path + + + + + sans path + + + + + End of file + + + + + Root position + + + + + + + + + + The entry header length + + + + + The integer version + + + + + Boolean, true if the tree has changed + + + + + The file stream + + + + + HfaInvalidCountException + + + + + Creates a new instance of HfaInvalidCountException + + + + + HfaNotCompressedException + + + + + Creates a new instance of HfaNotCompressedException + + + + + HfaPointerInsertNotSupportedException + + + + + Creates a new instance of HfaPointerInsertNotSupportedException + + + + + HfaType + + + + + Completes the defenition of this type based on the existing dictionary + + + + + + This function writes content to the file for this entire type by writing + the type name and number of bytes, followed by cycling through and writing each + of the fields. + + + + + + Triggers a dump on all the fields of this type. + + + + + + + + + + Extracts the value form the byte array + + + + + + + + + + + + Gets the number of bytes for this type by adding up the byte contribution from each of its fields. + + The array of bytes to scan. + The integer index in the array where scanning should begin. + The integer count. + + + + Attempts to find the specified field in the field path and extracts the size of the specified field in bytes + + + + + + + + + + Originally Initialize + + The input string that contains content for this type + The remaining string content, unless this fails in which case this may return null + + + + + + + + + + + + + + + The short integer number of bytes + + + + + The short integer number of fields + + + + + The type name + + + + + Gets or sets the list of fields + + + + + HfaTypeException + + + + + Creates a new instance of HfaTypeException + + + + + MapInfo + + + + + Gets or sets the map coordinats of the center of the lower right pixel + + + + + Gets or sets the size of a single pixel in map units + + + + + Gets or sets the string Projection Name + + + + + Gets or sets the map units + + + + + Gets or sets the map coordinates of center of upper left pixel + + + + + NAD + + + + + Use the North American Datum 1927 + + + + + Use the North American Datum 1983 + + + + + Use the North America Datum High Accuracy Reference Network + + + + + ProParameters + + + + + Creates a new instance of the ProParameters class + + + + + Gets or sets the string exectable name for external projectiosn + + + + + Gets or sets the string projection name + + + + + Gets or sets the projection number for internal projections + + + + + Projection parameters array in the GCTP form + + + + + Gets or sets the projection type + + + + + Gets or sets the projection zone (UTM, SP only) + + + + + The projection spheroid + + + + + ProType + + + + + Indicates that hte projection is built into the eprj package as function calls + + + + + Indicates that hte projection is accessible as an exteranl executable + + + + + Size + + + + + pixelsize height + + + + + pixelsize width + + + + + Spheroid + + + + + Gets or sets the semi-major axis of the ellipsoid + + + + + Gets or sets the semi-minor axis of the ellipsoid + + + + + Gets or sets the eccentricity squared + + + + + Gets or sets the radius of the sphere + + + + + Gets or sets the string name o the ellipsoid + + + + + IDataLayer + + + + + This should finalize the transaction, saving changes to the database or disk + + + + + Creates a feature + + + + + + + Creates a feature from a shape and some data row values. + + + + + + + + Creates a new field for this data layer in the data source + + + + + + + Deletes the feature at the specified index location + + The fid + + + + + Disposes any unmanaged memory objects + + + + + Gets the feature at the specified index + + + + + + + Gets the shape + + + + + + + Gets the features + + + + + + Gets the name of the feature ID column + + + + + + Gets the string name of the geometry column + + + + + + Returns the field definitions as an array of fields. + + An array of field objects that encompass the schema + + + + Rolls back the transactions + + + + + + Gets the projection information associated with this projection + + + + + + sets the specified feature + + + + + + + + Sets the shape + + + + + + + + + Sets the spatial filter by using the specified rectangular extents instead of a geometry. + + The minimum value in the X direction. + The minimum value in the Y direction. + The maximum value in the X direction. + The maximum value in the Y direction. + Boolean, true if hte spatial filter rectangle is set. + + + + Starts the transaction + + + + + Syncrhonize to disk + + + + + Test Capability + + + + + Gets the extent of the data layer + + + + + Gets the name of this layer + + + + + Gets or sets the spatial filter so that only members that intersect with the specified + geometry will be returned. + + + + + PluginInfo + + + + + Creates a new instance of PluginInfo + + + + + Creates a new instance of a PluginInfo class with the specified parameters + + + + + + + Settings + + + + + Key + + + + + AffineTransform + + + + + Creates a new instance of AffineTransform + + + + + Given any input row or column, this returns the appropriate geographic location for the + position of the center of the cell. + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the center of the specified cell + + + + Given the row and column, this returns the geographic position of the top left corner of the cell + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the top left corner of the specified cell + + + + Given the row and column, this returns the geographic position of the top right corner of the cell + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the top right corner of the specified cell + + + + Given the row and column, this returns the geographic position of the bottom left corner of the cell + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the bottom left corner of the specified cell + + + + Given the row and column, this returns the geographic position of the bottom right corner of the cell + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the bottom right corner of the specified cell + + + + Given the row and column, this returns new affine coefficients transformed to that cell + + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + Transoformed affine coefficients + + + + Returns the row and column index. + + Gets or sets the ICoordinate + An RcIndex that shows the best row or column index for the specified coordinate. + + + + Gets or sets the array of coefficients for this transform + + + + + BinaryDataProvider + + + + + A DataProvider that is specific to raster formats. + + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance. + The string short name of the driver for creating the raster. + The number of columns in the raster. + The number of rows in the raster. + The number of bands to create in the raster. + The data type to use for the raster. + The options to be used. + An IRaster + + + + This open method is only called if this plugin has been given priority for one + of the file extensions supported in the DialogReadFilter property supplied by + this control. Failing to provide a DialogReadFilter will result in this plugin + being added to the list of DataProviders being supplied under the Add Other Data + option in the file menu. + + A string specifying the complete path and extension of the file to open. + An IDataSet to be added to the Map. These can also be groups of datasets. + + + + This open method is only called if this plugin has been given priority for one + of the file extensions supported in the DialogReadFilter property supplied by + this control. Failing to provide a DialogReadFilter will result in this plugin + being added to the list of DataProviders being supplied under the Add Other Data + option in the file menu. + + A string specifying the complete path and extension of the file to open. + An IDataSet to be added to the Map. These can also be groups of datasets. + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance + The string short name of the driver for creating the raster + The number of columns in the raster + The number of rows in the raster + The number of bands to create in the raster + The data type to use for the raster + The options to be used. + An IRaster + + + + A Non-File based open. If no DialogReadFilter is provided, DotSpatial will call + this method when this plugin is selected from the Add Other Data option in the + file menu. + + + + + Reads a binary header to determine the appropriate data type + + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided on this object. + + + + + Gets a prefereably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This is a basic description that will fall next to your plugin in the Add Other Data dialog. + This will only be shown if your plugin does not supply a DialogReadFilter. + + + + + Gets or sets the control or method that should report on progress + + + + + RasterBoundsEM + + + + + Calculates the area of this envelope. Because the word Area, + like Volume, is dimension specific, this method only looks + at the X and Y ordinates, and requires at least 2 ordinates. + + The IEnvelope to use with this method + The 2D area as a double value. + + + + Gets the minY, which is Y - Height. + + The IRasterBounds that this calculation is for. + + + + + Uses the specified distance to expand the envelope by that amount in all dimensions. + + The IRasterBounds that this calculation is for. + The double distance to expand in all directions. + + + + Gets the left value for this rectangle. This should be the + X coordinate, but is added for clarity. + + The IRasterBounds that this calculation is for. + + + + + Gets the right value, which is X + Width. + + The IRasterBounds that this calculation is for. + + + + + Gets the maxY value, which should be Y. + + The IRasterBounds that this calculation is for. + The double value representing the Max Y value of this rectangle + + + + Use the Open method instead of this extension. This only provides + a default behavior that can optionally be used by implementers + of the IRasterBounds interface. + + The bounds to open + The *.wld or *.**w world file to open + + + + Use the Save method instead of this extension. This only provides + a default behavior that can optionally be used by implementers + of the IRasterBounds interface. + + + + + Generates a new version of the affine transform that will + cover the same region, but using the specified number of + rows and columns instead. + + The raster bounds to resample + The new number of rows + The new number of columns + + X = [0] + [1] * Column + [2] * Row + Y = [3] + [4] * Column + [5] * Row + + + + + Attempts to save the affine coefficients to the specified worldfile file name + + The bounds to save + The fileName to save this bounds to + + + + Converts creates a float precisions drawing matrix from the double precision affine + coordinates. The Matrix can be manipulated and then set back. Some precision will + be lost, however, as only floats are supported. + + + + + Re-defines the double precision affine transform values based on the specified + system.Drawing.Matrix. + + The bounds to adjust based on the matrix + The matrix to use as a guide for adjustments. + + + + Images can be skewed, so this gets the point that actually defines the bottom left + corner of the data in geographic coordinates + + + + + Images can be skewed, so this gets the point that actually defines the bottom right + corner of the data in geographic coordinates + + + + + Images can be skewed, so this gets the point that actually defines the top left + corner of the data in geographic coordinates + + The IRasterBounds to obtain the top left of + + + + Images can be skewed, so this gets the point that actually defines the top right + corner of the data in geographic coordinates + + + + + Given any input row or column, this returns the appropriate geographic location for the + position of the center of the cell. + + The raster bounds to perform the calculation on + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the center of the specified cell + + + + Given the row and column, this returns the geographic position of the top left corner of the cell + + The raster bounds to perform the calculation on + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the top left corner of the specified cell + + + + Given the row and column, this returns the geographic position of the top right corner of the cell + + The raster bounds to perform the calculation on + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the top right corner of the specified cell + + + + Given the row and column, this returns the geographic position of the bottom left corner of the cell + + The raster bounds to perform the calculation on + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the bottom left corner of the specified cell + + + + Given the row and column, this returns the geographic position of the bottom right corner of the cell + + The raster bounds to perform the calculation on + The integer row index from 0 to numRows - 1 + The integer column index from 0 to numColumns - 1 + The geographic position of the bottom right corner of the specified cell + + + + Returns the row col index + + The raster bounds to perform the calculation on + Gets or sets the ICoordinate + An RcIndex that shows the best row or column index for the specified coordinate. + + + + The affine transform can make figuring out what rows and columns are needed from the original image + in order to correctly fill a geographic extent challenging. This attempts to handle that back projection + problem. It returns a System.Drawing.Rectangle in pixel (cell) coordinates that is completely contains + the geographic extents, but is not larger than the bounds of the underlying image. + If geographic extent fully contains extent of IRasterBounds, than returns rectangle which contains full raster image. + If geographic extent partially contains extent of IRasterBounds, than returns rectangle which contains needed edges of full raster image. + It back projects all four corners of the extent and returns the bounding rectangle clipped by the image rectangle. + + Instance of + Extent to test. + Rectangle in pixel (cell) coordinates. + + + + A new model, now that we support 3.5 framework and extension methods that are essentially + derived characteristics away from the IRaster interface, essentially reducing it + to the simplest interface possible for future implementers, while extending the most + easy-to-find functionality to the users. + + + + + determine if the shape is partially inside grid extents + + false, if the shape is completely outside grid extents + true, if it's at least partially inside + + + + Gets a boolean that is true if the Window extents contain are all the information for the raster. + In otherwords, StartRow = StartColumn = 0, EndRow = NumRowsInFile - 1, and EndColumn = NumColumnsInFile - 1 + + + + + This doesn't change the data, but instead performs a translation where the upper left coordinate + is specified in world coordinates. + + Moves this raster so that the upper left coordinate will match the specified position. The skew and cellsize will remain unaltered + The location to move the upper left corner of the raster to in world coordinates. + + + + Rotates the geospatial reference points for this image by rotating the affine coordinates. + The center for this rotation will be the center of the image. + + The raster to rotate + The angle in degrees to rotate the image counter clockwise. + + + + Rotates the geospatial reference points for this image by rotating the affine coordinates. + The center for this rotation will be the center of the image. + + The raster to rotate about the specified coordinate + The angle in degrees to rotate the image counterclockwise. + The point that marks the center of the desired rotation in geographic coordiantes. + + + + This method uses a matrix transform to adjust the scale. The precision of using + a Drawing2D transform is float precision, so some accuracy may be lost. + + The raster to apply the scale transform to + The multiplier to adjust the geographic extents of the raster in the X direction + The multiplier to adjust the geographic extents of the raster in the Y direction + + + + This method uses a matrix transform to adjust the shear. The precision of using + a Drawing2D transform is float precision, so some accuracy may be lost. + + The raster to apply the transform to + The floating point horizontal shear factor + The floating ponit vertical shear factor + + + + Applies a translation transform to the georeferenced coordinates on this raster. + + The raster to apply the translation to + An ICoordinate with shear values + + + + Retrieves the data from the cell that is closest to the specified coordinates. This will + return a No-Data value if the specified coordintes are outside of the grid. + + The raster to get the value from + A valid implementation of Icoordinate specifying the geographic location. + The value of type T of the cell that has a center closest to the specified coordinates + + + + Retrieves the data from the cell that is closest to the specified coordinates. This will + return a No-Data value if the specified coordintes are outside of the grid. + + The raster to get the value from + The longitude or horizontal coordinate + The latitude or vertical coordinate + The double value of the cell that has a center closest to the specified coordinates + + + + Retrieves the location from the cell that is closest to the specified coordinates. This will + do nothing if the specified coordinates are outside of the raster. + + The IRaster to set the value for + The longitude or horizontal coordinate + The latitude or vertical coordinate + The value to assign to the nearest cell to the specified location + + + + Retrieves the location from the cell that is closest to the specified coordinates. This will + do nothing if the specified coordinates are outside of the raster. + + The IRaster to set the value for + An Icoordinate specifying the location + The value to assign to the nearest cell to the specified location + + + + Extends the IRaster interface to return the coordinate of the center of a row column position. + + The raster interface to extend + The zero based integer index of the row and column of the cell to locate + The geographic location of the center of the specified cell + + + + Extends the IRaster interface to return the coordinate of the center of a row column position. + + The raster interface to extend + The zero based integer index of the row of the cell to locate + The zero based integer index of the column of the cell to locate + The geographic location of the center of the specified cell + + + + Extends the IRaster interface to return the zero based integer row and column indices + + The raster interface to extend + The geographic coordinate describing the latitude and longitude + The RcIndex that describes the zero based integer row and column indices + + + + Extends the IRaster interface to return the zero based integer row and column indices + + The raster interface to extend + A double precision floating point describing the longitude + A double precision floating point describing the latitude + The RcIndex that describes the zero based integer row and column indices + + + + BgdRaster + + + + + Raster + + + + + Handles the native file functions for float grids, without relying on GDAL. + + + + + A general + + + + + This only works for in-ram rasters. This basically makes a new raster that has all the same + in memory values + + An IRaster that is a duplicate of this class + + + + Creates a duplicate version of this file. If copyValues is set to false, then a raster of NoData values is created + that has the same georeferencing information as the source file of this Raster, even if this raster is just a window. + + The string fileName specifying where to create the new file. + If this is false, the same size and georeferencing values are used, but they are all set to NoData. + + + + Even if this is a window, this will cause this raster to show statistics calculated from the entire file. + + + + + Most raster methods are optimized for reading in lines or blocks at a time. This one is designed + to be used for scattered points. + + The zero based integer index that is Row * NumColumnsInFile + Column + The list of double values + + + + Returns a subset from the file that includes only the specified offsets. The result is a raster, + and the extents are calculated, but the row and column values are in terms of the window, + not the original raster. The band can be controlled by setting the "Current Band" first. + + X axis or horizontal offset (0 based from left) + Y axis or vertical offset (0 based from top) + Number of columns + Number of rows + An IRaster created from the appropriate type;. + + + + This writes the values to the file, even if the IRaster has more values than the xSize or ySize + stipulate, and even if the source raster has values of a different type. + + The IRaster that contains data values to write to the file + The 0 based integer horizontal offset from the left + The 0 based integer vertical offset from the top + The integer number of columns to write + The integer number of rows to write + + + + Saves changes from any values that are in memory to the file. This will preserve the existing + structure and attempt to only write values to the parts of the file that match the loaded window. + + + + + This will save whatever is specified in the startRow, endRow, startColumn, endColumn bounds + to a new file with the specified fileName. + + The string fileName to save the current raster to. + + + + This code is required to allow a new format to save data from an old format quickly. + It essentially quickly transfers the underlying data values to the new raster. + + + + + + Gets this raster (or its Internal Raster) as the appropriately typed raster + so that strong typed access methods are available, instead of just the + regular methods, or null if the type is incorrect. (Check datatype property). + + The type (int, short, float, etc.) + The Raster<T> where T are value types like int, short and float. Returns null if the type is wrong. + + + + Instructs the raster to write only the header content. This is especially useful if you just want to update + the extents or the projection of the raster, without changing the data values. + + + + + A raster can contain predefined names for its categories + + null if raster has no category names + + + + A raster can contain predefined colors for its categories, for example NLCD GeoTIFF has a palette + + null if raster has no category colors + + + + Gets the integer size of each data member of the raster in bytes. + + + + + Gets or sets the list of bands, which are in turn rasters. The rasters + contain only one band each, instead of the list of all the bands like the + parent raster. + + + + + The geographic height of a cell the projected units. Setting this will + automatically adjust the affine coefficient to a negative value. + + + + + The geographic width of a cell in the projected units + + + + + This provides a zero-based integer band index that specifies which of the internal bands + is currently being used for requests for data. + + + + + This does nothing unless the FileType property is set to custom. + In such a case, this string allows new file types to be managed. + + + + + This reveals the underlying data type + + + + + Gets or sets a short string to identify which driver to use. This is primarilly used by GDAL rasters. + + + + + The integer column index for the right column of this raster. Most of the time this will + be NumColumns - 1. However, if this raster is a window taken from a larger raster, then + it will be the index of the endColumn from the window. + + + + + The integer row index for the end row of this raster. Most of the time this will + be numRows - 1. However, if this raster is a window taken from a larger raster, then + it will be the index of the endRow from the window. + + + + + Gets the complete path and fileName of the current file + + + + + Gets the file type of this grid. + + + + + Gets a boolean that is true if the data for this raster is in memory. + + + + + Gets the maximum data value, not counting no-data values in the grid. + + + + + Gets the mean of the non-NoData values in this grid. If the data is not InRam, then + the GetStatistics method must be called before these values will be correct. + + + + + Gets the minimum data value that is not classified as a no data value in this raster. + + + + + A float showing the no-data values + + + + + For binary rasters this will get cut to only 256 characters. + + + + + Gets the number of bands. In most traditional grid formats, this is 1. For RGB images, + this would be 3. Some formats may have many bands. + + + + + Gets the horizontal count of the cells in the raster. + + + + + Gets the integer count of columns in the file, as opposed to the + number represented by this raster, which might just represent a window. + + + + + Gets the vertical count of the cells in the raster. + + + + + Gets the number of rows in the source file, as opposed to the number + represented by this raster, which might just represent part of a file. + + + + + Gets the count of the cells that are not no-data. If the data is not InRam, then + you will have to first call the GetStatistics() method to gain meaningul values. + + + + + Gets or sets the string array of options to use when saving this raster. + + + + + Gets a list of the rows in this raster that can be accessed independantly. + + + + + The integer column index for the left column of this raster. Most of the time this will + be 0. However, if this raster is a window taken from a file, then + it will be the row index in the file for the top row of this raster. + + + + + The integer row index for the top row of this raster. Most of the time this will + be 0. However, if this raster is a window taken from a file, then + it will be the row index in the file for the left row of this raster. + + + + + Gets the standard deviation of all the Non-nodata cells. If the data is not InRam, + then you will have to first call the GetStatistics() method to get meaningful values. + + + + + This is provided for future developers to link this raster to other entities. + It has no function internally, so it can be manipulated safely. + + + + + Gets or sets the value on the CurrentBand given a row and column undex + + + + + The horizontal or longitude coordinate for the lower left cell in the grid + + + + + The vertical or latitude coordinate for the lower left cell in the grid + + + + + This doesn't perform calculations, but is simply a place holder where sample + values can be stored and retrieved as a cache. + + + + + Occurs when attempting to copy or save to a fileName that already exists. A developer can tap into this event + in order to display an appropriate message. A cancel property allows the developer (and ultimately the user) + decide if the specified event should ultimately be cancelled. + + + + + Set up the default values + + + + + Creates a memberwise clone of this object. Reference types will be copied, but + they will still point to the same original object. So a clone of this raster + is pointing to the same underlying array of values etc. + + A Raster clone of this raster. + + + + Creates a new IRaster that has the identical characteristics and in-ram data to the original. + + A Copy of the original raster. + + + + Creates a duplicate version of this file. If copyValues is set to false, then a raster of NoData values is created + that has the same georeferencing information as the source file of this Raster, even if this raster is just a window. + + The string fileName specifying where to create the new file. + If this is false, the same size and georeferencing values are used, but they are all set to NoData. + + + + + + + Even if this is a window, this will cause this raster to show statistics calculated from the entire file. + + + + + Saves the values to a the same file that was created or loaded. + + + + + Saves the curretn raster to the specified file. The current driver code and options are used. + + The string fileName to save the raster to. + + + + + + + + + + This code is empty, but can be overridden in subtypes + + + + + + Instructs the file to write header changes only. This is espcially useful for changing the + extents without altering the actual raster values themselves. + + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance. + The string short name of the driver for creating the raster. + The number of columns in the raster. + The number of rows in the raster. + The number of bands to create in the raster. + The data type to use for the raster. + The options to be used. + + + + Gets the no data cell count. Calls GetStatistics() internally. + + The number of cells which are equal to NoDataValue. + + + + Opens the specified fileName. The DefaultDataManager will determine the best type of raster to handle the specified + file based on the fileName or characteristics of the file. + + The string fileName of the raster to open. + + + + Opens the specified fileName. The DefaultDataManager will determine the best type of raster to handle the specified + file based on the fileName or characteristics of the file. + + + + + Saves the current raster to the specified file, using the specified driver, but with the + options currently specified in the Options property. + + The string fileName to save this raster as + The string driver code. + + + + Saves the current raster to the specified file. + + The string fileName to save the current raster to. + The driver code to use. + the string array of options that depend on the format. + + + + By default, Raster does not have any CategoryNames, but this can be overridden + + + + + By default, Raster does not have any CategoryColors, but this can be overridden + + + + + Gets this raster (or its Internal Raster) as the appropriately typed raster + so that strong typed access methods are available, instead of just the + regular methods. + + The type (int, short, float, etc.) + The Raster<T> where T are value types like int, short, float"/> + + + + Overrides dispose to correctly handle disposing the objects at the raster level. + + + + + + Fires the FileExists method. If this returns true, then the action should be cancelled. + + The fileName to write to + Boolean, true if the user doesn't want to overwrite + + + + Gets this raster (or its Internal Raster) as the appropriately typed raster + so that strong typed access methods are available, instead of just the + regular methods. + + A Raster<short> + + + + Gets this raster (or its Internal Raster) as the appropriately typed raster + so that strong typed access methods are available, instead of just the + regular methods. + + A Raster<short> + + + + Gets this raster (or its Internal Raster) as the appropriately typed raster + so that strong typed access methods are available, instead of just the + regular methods. + + A Raster<short> + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance. + The string short name of the driver for creating the raster. + The number of columns in the raster. + The number of rows in the raster. + The number of bands to create in the raster. + The data type to use for the raster. + The options to be used. + An IRaster + + + + For DotSpatial style binary grids, this returns the filetype + + The fileName with extension to test + A GridFileTypes enumeration listing which file type this is + + + + This is significantly m + + The string full path for the fileName to open + A Raster object which is actually one of the type specific rasters, like FloatRaster. + + + + Returns a native raster of the appropriate file type and data type by parsing the fileName. + + The string fileName to attempt to open with a native format + The boolean value. + An IRaster which has been opened to the specified file. + + + + Returns a native raster of the appropriate file type and data type by parsing the fileName. + + The string fileName to attempt to open with a native format + The boolean value. + An overriding progress manager for this process + An IRaster which has been opened to the specified file. + + + + Occurs when attempting to copy or save to a fileName that already exists. A developer can tap into this event + in order to display an appropriate message. A cancel property allows the developer (and ultimately the user) + decide if the specified event should ultimately be cancelled. + + + + + Gets or sets a statistical sampling. This is designed to cache a small, + representative sample of no more than about 10,000 values. This property + does not automatically produce the sample, and so this can be null. + + + + + A parameter for accessing some GDAL data. This frequently does nothing and is usually 0. + + + + + A parameter for accessing GDAL. This frequently does nothing and is usually 0. + + + + + Gets the size of each raster element in bytes. + + + + + Gets or sets the list of bands, which are in turn rasters. The rasters + contain only one band each, instead of the list of all the bands like the + parent raster. + + + + + The geographic height of a cell the projected units. Setting this will + automatically adjust the affine coefficient to a negative value. + + + + + The geographic width of a cell in the projected units + + + + + This provides a zero-based integer band index that specifies which of the internal bands + is currently being used for requests for data. + + + + + This does nothing unless the FileType property is set to custom. + In such a case, this string allows new file types to be managed. + + + + + This returns the RasterDataTypes enumeration clarifying the underlying data type for this raster. + + + + + Gets or sets the driver code for this raster. + + + + + The integer column index for the right column of this raster. Most of the time this will + be NumColumns - 1. However, if this raster is a window taken from a larger raster, then + it will be the index of the endColumn from the window. + + + + + The integer row index for the end row of this raster. Most of the time this will + be numRows - 1. However, if this raster is a window taken from a larger raster, then + it will be the index of the endRow from the window. + + + + + Gets or Sets the complete path and fileName of the current file + + + + + Returns the grid file type. Only Binary or ASCII are supported natively, without GDAL. + + + + + Gets or sets a boolean that is true if the data for this raster is in memory. + + + + + Gets the maximum data value, not counting no-data values in the grid. + + + + + Gets the mean of the non-NoData values in this grid. If the data is not InRam, then + the GetStatistics method must be called before these values will be correct. + + + + + Gets the minimum data value that is not classified as a no data value in this raster. + + + + + A double showing the no-data value for this raster. + + + + + For binary rasters this will get cut to only 256 characters. + + + + + Gets the number of bands. In most traditional grid formats, this is 1. For RGB images, + this would be 3. Some formats may have many bands. + + + + + Gets the horizontal count of the cells in the raster. + + + + + Gets the integer count of the number of columns in the source or file that this + raster is a window from. (Usually this will be the same as NumColumns) + + + + + Gets the vertical count of the cells in the raster. + + + + + Gets the integer count of the number of rows in the source or file that this + raster is a window from. (Usually this will be the same as NumColumns.) + + + + + Gets the count of the cells that are not no-data. If the data is not InRam, then + you will have to first call the GetStatistics() method to gain meaningul values. + + + + + An extra string array of options that exist for support of some types of GDAL supported raster drivers + + + + + Gets a list of the rows in this raster that can be accessed independantly. + + + + + The integer column index for the left column of this raster. Most of the time this will + be 0. However, if this raster is a window taken from a file, then + it will be the row index in the file for the top row of this raster. + + + + + The integer row index for the top row of this raster. Most of the time this will + be 0. However, if this raster is a window taken from a file, then + it will be the row index in the file for the left row of this raster. + + + + + Gets the standard deviation of all the Non-nodata cells. If the data is not InRam, + then you will have to first call the GetStatistics() method to get meaningful values. + + + + + This is provided for future developers to link this raster to other entities. + It has no function internally, so it can be manipulated safely. + + + + + Gets or sets the value on the CurrentBand given a row and column undex + + + + + Gets or sets the X position of the lower left data cell. + Setting this will adjust only the _affine[0] coefficient to ensure that the + lower left corner ends up in the specified location, while keeping all the + other affine coefficients the same. This is like a horizontal Translate + that locks into place the center of the lower left corner of the image. + + + + + Gets or sets the Y position of the lower left data cell. + Setting this will adjust only the _affine[0] coefficient to ensure that the + lower left corner ends up in the specified location, while keeping all the + other affine coefficients the same. This is like a horizontal Translate + that locks into place the center of the lower left corner of the image. + + + + + The actual data values, stored as a jagged array of values of type T + + + + + Creates a new instance of Raster + + + + + Creates an raster of data type T + + The number of rows in the raster + The number of columns in the raster + The default ValueGrid only supports standard numeric types, but if a different kind of value grid is needed, this allows it. + + + + Creates a raster of data type T. + + The number of rows in the raster + The number of columns in the raster + + + + Used especially by the "save as" situation, this simply creates a new reference pointer for the actual data values. + + + + + + Calls the basic setup for the raster + + + + + + + + Creates a deep copy of this raster object so that the data values can be manipulated without + interfering with the original raster. + + + + + + This creates a completely new raster from the windowed domain on the original raster. This new raster + will not have a source file, and values like NumRowsInFile will correspond to the in memory version. + All the values will be copied to the new source file. InRam must be true at this level. + + + The 0 based integer index of the top row to copy from this raster. If this raster is itself a window, 0 represents the startRow from the file. + The integer index of the bottom row to copy from this raster. The largest allowed value is NumRows - 1. + The 0 based integer index of the leftmost column to copy from this raster. If this raster is a window, 0 represents the startColumn from the file. + The 0 based integer index of the rightmost column to copy from this raster. The largest allowed value is NumColumns - 1 + If this is true, the values are saved to the file. If this is false and the data can be loaded into Ram, no file handling is done. Otherwise, a file of NoData values is created. + Boolean. If this is true and the window is small enough, a copy of the values will be loaded into memory. + An implementation of IRaster + + + + Gets the statistics all the values. If the entire content is not currently in-ram, + ReadRow will be used to read individual lines and performing the calculations. + + + + + This creates an IN MEMORY ONLY window from the in-memory window of this raster. If, however, the requested range + is outside of what is contained in the in-memory portions of this raster, an appropriate cast + is required to ensure that you have the correct File handling, like a BinaryRaster etc. + + The 0 based integer index of the top row to get from this raster. If this raster is itself a window, 0 represents the startRow from the file. + The integer index of the bottom row to get from this raster. The largest allowed value is NumRows - 1. + The 0 based integer index of the leftmost column to get from this raster. If this raster is a window, 0 represents the startColumn from the file. + The 0 based integer index of the rightmost column to get from this raster. The largest allowed value is NumColumns - 1 + Boolean. If this is true and the window is small enough, a copy of the values will be loaded into memory. + An implementation of IRaster + + + + Obtains only the statistics for the small window specified by startRow, endRow etc. + this only works if the window is also InRam. + + + + + Prevent the base raster "factory" style open function from working in subclasses. + + + + + This saves content from memory stored in the Data field to the file using whatever + file format the file already exists as. + + + + + Reads a specific + + + + + + + This method reads the values from the entire band into an array and returns the array as a single array. + This assumes 0 offsets, the size of the entire image, and 0 for the pixel or line space. + + An array of values of type T, in row major order + + + + Most reading is optimized to read in a block at a time and process it. This method is designed + for seeking through the file. It should work faster than the buffered methods in cases where + an unusually arranged collection of values are required. Sorting the list before calling + this should significantly improve performance. + + A list or array of long values that are (Row * NumRowsInFile + Column) + + + + + + + + + + This Method should be overrridden by classes, and provides the primary ability. + + The horizontal offset of the area to read values from. + The vertical offset of the window to read values from. + The number of values to read into the buffer. + The vertical size of the window to read into the buffer. + The jagged array of raster values of type T. + + + + Reads a specific + + The one dimensional array of values containing all the data for this particular content. + The integer row to write to the raster + + + + This method reads the values from the entire band into an array and returns the array as a single array. + This assumes 0 offsets, the size of the entire image, and 0 for the pixel or line space. + + The one dimensional array of values containing all the data for this particular content. + + + + This method reads the values from the entire band into an array and returns the array as a single array. + This specifies a window where the xSize and ySize specified and 0 is used for the pixel and line space. + + The one dimensional array of values containing all the data for this particular content. + The horizontal offset of the area to read values from. + The vertical offset of the window to read values from. + The number of values to read into the buffer. + The vertical size of the window to read into the buffer. + + + + + + + During a save opperation, this instructs the program to perform any writing that is not handled by + the write raster content. + + + + + This is the same as the "Value" member except that it is type specific. + This also supports the "ToDouble" method. + + + + + Gets the size of each raster element in bytes. + + + This only works for a few numeric types, and will return 0 if it is not identifiable as one + of these basic types: byte, short, int, long, float, double, decimal, sbyte, ushort, uint, ulong, bool. + + + + + A BgdRaster in created this way probably expects to open a file using the "Open" method, + which allows for progress handlers or other things to be set before what might be a + time consuming read-value process. + + + + + Creates a new instance of a BGD raster, attempting to store the entire structure in memory if possible. + + + + + + + This creates a new BGD raster. + + + + + + + + This Method should be overrridden by classes, and provides the primary ability. + + The horizontal offset of the area to read values from. + The vertical offset of the window to read values from. + The number of values to read into the buffer. + The vertical size of the window to read into the buffer. + A jagged array of type T. + + + + Most reading is optimized to read in a block at a time and process it. This method is designed + for seeking through the file. It should work faster than the buffered methods in cases where + an unusually arranged collection of values are required. Sorting the list before calling + this should significantly improve performance. + + A list or array of long values that are (Row * NumRowsInFile + Column) + + + + Writes the bgd content from the specified jagged array of values to the file. + + The data + The horizontal offset + The vertical offset + The number of values to write horizontally + The number of values to write vertically + + + + Copies the raster header, and if copyValues is true, the values to the specified file + The full path of the file to copy content to to + Boolean, true if this should copy values as well as just header information + + + + Opens the specified file + + + + + Saves the content from this file using the current fileName and header information + + + + + If no file exists, this writes the header and no-data values. If a file exists, it will assume + that data already has been filled in the file and will attempt to insert the data values + as a window into the file. If you want to create a copy of the file and values, just use + System.IO.File.Copy, it almost certainly would be much more optimized. + + + + + Writes the header to the fileName + + + + + The string fileName where this will begin to write data by clearing the existing file + + + + + Writes the header, regardless of which subtype of binary raster this is written for + + The string fileName specifying what file to load + + + + Gets the size of the header. There is one no-data value in the header. + + + + + An inteface specification for any of the multiple types of IDataBlock. + + + + + Gets or sets a value at the 0 row, 0 column index. + + The 0 based vertical row index from the top + The 0 based horizontal column index from the left + An object reference to the actual value in the data member. + + + + Boolean, gets or sets the flag indicating if the values have been changed + since the last time this flag was set to false. + + + + + Constructing an ObjectGrid this way assumes the values are not in ram and will + simply buffer 3 rows. + + + + + + This involves boxing and unboxing as well as a convert to double, but IConvertible was + not CLS Compliant, so we were always getting warnings about it. I am trying to make + all the code CLS Compliant to remove warnings. + + + + + + + Gets or sets a value at the 0 row, 0 column index. + + The 0 based vertical row index from the top + The 0 based horizontal column index from the left + An object reference to the actual value in the data member. + + + + This is just a boolean flag that is set to true when the values + are updated. It is the responsibility of the user to set this + value to false again when the situation warents it. + + + + + This basically demonstrates how you would combine a type with a calculator in order to + construct a Binary Raster for the Integer type. It is effectively the same as + constructing a new BinaryRaster and specifying the parameter types int and IntCalculator. + + + + + Creates a completely empty raster that can be custom configured + + + + + Creates a new BinaryRaster with the specified rows and columns. + If if the raster is less than 64 Million cells, it will be created only in memory, + and a Save method should be called when ready to save it to a file. Otherwise, it creates a blank file with + NoData values...which start out as 0. + + The fileName to write to + Integer number of rows + Integer number of columns + + + + Creates a new BinaryRaster with the specified rows and columns. + If inRam is true and the raster is less than 64 Million cells, it will be created only in memory, + and a Save method should be called when ready to save it to a file. Otherwise, it creates a blank file with + NoData values. + + The fileName to write to + Integer number of rows + Integer number of columns + If this is true and the raster is small enough, it will load this into memory and not save anything to the file. + + + + Creates a duplicate version of this file. If copyValues is set to false, then a raster of NoData values is created + that has the same georeferencing information as the source file of this Raster, even if this raster is just a window. + If the specified fileName exists, rather than throwing an exception or taking an "overwrite" parameter, this + will throw the FileExists event, and cancel the copy if the cancel argument is set to true. + + The string fileName specifying where to create the new file. + If this is false, the same size and georeferencing values are used, but they are all set to NoData. + + + + This creates a completely new raster from the windowed domain on the original raster. This new raster + will have a separate source file, and values like NumRowsInFile will correspond to the newly created file. + All the values will be copied to the new source file. If inRam = true and the new raster is small enough, + the raster values will be loaded into memory. + + + The 0 based integer index of the top row to copy from this raster. If this raster is itself a window, 0 represents the startRow from the file. + The integer index of the bottom row to copy from this raster. The largest allowed value is NumRows - 1. + The 0 based integer index of the leftmost column to copy from this raster. If this raster is a window, 0 represents the startColumn from the file. + The 0 based integer index of the rightmost column to copy from this raster. The largest allowed value is NumColumns - 1 + If this is true, the values are saved to the file. If this is false and the data can be loaded into Ram, no file handling is done. Otherwise, a file of NoData values is created. + Boolean. If this is true and the window is small enough, a copy of the values will be loaded into memory. + An implementation of IRaster + + + + Gets the statistics for the entire file, not just the window portion specified for this raster. + + + + + This creates a window from this raster. The window will still save to the same + source file, but only has access to a small window of data, so it can be loaded like a buffer. + The georeferenced extents will be for the new window, not the original raster. startRow and endRow + will exist in the new raster, however, so that it knows how to copy values back to the original raster. + + The 0 based integer index of the top row to get from this raster. If this raster is itself a window, 0 represents the startRow from the file. + The integer index of the bottom row to get from this raster. The largest allowed value is NumRows - 1. + The 0 based integer index of the leftmost column to get from this raster. If this raster is a window, 0 represents the startColumn from the file. + The 0 based integer index of the rightmost column to get from this raster. The largest allowed value is NumColumns - 1 + Boolean. If this is true and the window is small enough, a copy of the values will be loaded into memory. + An implementation of IRaster + + + + Obtains only the statistics for the small window specified by startRow, endRow etc. + + + + + Opens the specified file into this raster. + + + + + Opens a new instance of the BinaryRaster + + The string fileName of the raster file to open + Boolean, indicates whether or not the values for the raster should be loaded into memory + + + + This converts this object into a raster defined by the specified window dimensions. + + The string fileName to open + The integer row index to become the first row to load into this raster. + The 0 based integer row index to become the last row included in this raster. + The 0 based integer column index for the first column of the raster. + The 0 based integer column index for the last column to include in this raster. + Boolean. If this is true and the window is small enough, this will load the window into ram. + + + + Copies the contents from the specified sourceRaster into this sourceRaster. If both rasters are InRam, this does not affect the files. + + The raster of values to paste into this raster. If the CellWidth and CellHeight values do not match between the files, + an exception will be thrown. If the sourceRaster overlaps with the edge of this raster, only the intersecting region will be + pasted. + Specifies the row in this raster where the top row of the sourceRaster will be pasted + Specifies the column in this raster where the left column of the sourceRaster will be pasted. + + + + Reads the the contents for the "window" specified by the start and end values + for the rows and columns. + + + + + Writes the header, regardless of which subtype of binary raster this is written for + + The string fileName specifying what file to load + + + + The string fileName where this will begin to write data by clearing the existing file + + a fileName to write data to + + + + This would be a horrible choice for any kind of serious process, but is provided as + a way to write values directly to the file. + + The 0 based integer row index for the file to write to. + The 0 based column index for the file to write to. + The actual value to write. + + + + Saves the values in memory to the disk. + + + + + If no file exists, this writes the header and no-data values. If a file exists, it will assume + that data already has been filled in the file and will attempt to insert the data values + as a window into the file. If you want to create a copy of the file and values, just use + System.IO.File.Copy, it almost certainly would be much more optimized. + + The string fileName to write values to. + + + + Returns the size of T in bytes. This should be overridden, but + exists as a "just-in-case" implementation that works for structs, + but definitely won't work correctly for objects. + + + + + All the binary rasters use the Binary file type + + + + + This is always 1 band + + + + + Gets the size of the header. There is one no-data value in the header. + + + + + RasterEnumerator + + + + + Creates a new instance of RasterEnumerator + + The list to build an enumarator for + + + + Disposes any unmanaged memory objects + + + + + Advances the enumerator to the next member. + + A boolean which is false if there are no more members in the list. + + + + Resets the enumerator to the position before the start of the list. + + + + + Retrieves the current IntRaster from this calculator. + + + + + IRasterBounds + + + + + Returns a deep copy of this raster bounds object. + + An IRasterBounds interface. + + + + This is the overridable open method that should be used. + The OpenWorldFile method is called by our RasterBounds class, + but this allows custom files to be loaded and saved. + + + + + This is the overridable save method that should be used. + The OpenWorldFile method is called by our RasterBounds class, + but this allows custom files to be loaded and saved. + + + + + Gets or sets the double affine coefficients that control the world-file + positioning of this image. X' and Y' are real world coords. + X' = [0] + [1] * Column + [2] * Row + Y' = [3] + [4] * Column + [5] * Row + + + + + Gets or sets the desired width per cell. This will keep the skew the same, but + will adjust both the column based and row based width coefficients in order + to match the specified cell width. This can be thought of as the width + of a bounding box that contains an entire grid cell, no matter if it is skewed. + + + + + Gets or sets the desired height per cell. This will keep the skew the same, but + will adjust both the column based and row based height coefficients in order + to match the specified cell height. This can be thought of as the height + of a bounding box that contains an entire grid cell, no matter if it is skewed. + + + + + Gets or sets the rectangular confines for this envelope. The skew will remain + the same when setting this, but the image will be translated and stretched + to fit in the specified envelope. + + + + + Gets the number of rows in the raster. + + + + + Gets the number of columns in the raster. + + + + + Gets or sets the world file name. This won't do anything until the "Load" or "Save" methods are called. + + + + + A public interface definition for a single row of values that should be supported + by any of the generic data row types. + + + + + Gets or sets the value in the position of column. + + The 0 based integer column index to access on this row. + An object reference to the actual data value, which can be many types. + + + + RasterBounds + + + + + Creates a new RasterBounds + + + + + Attempts to read the very simple 6 number world file associated with an image + + The number of rows in this raster + The number of columns in this raster + A world file to attempt to read + + + + Creates a new instance of the RasterBounds class + + The number of rows for this raster + The number of columns for this raster + The affine coefficients describing the location of this raster. + + + + Creates a new raster bounds that is georeferenced to the specified envelope. + + The number of rows + The number of columns + The bounding envelope + + + + Attempts to load the data from the file listed in WorldFile + + + + + Attempts to save the data to the file listed in WorldFile + + + + + Returns a duplicate of this object as an object. + + A duplicate of this object as an object. + + + + Creates a duplicate of this RasterBounds class. + + A RasterBounds that has the same properties but does not point to the same internal array. + + + + Gets or sets the double affine coefficients that control the world-file + positioning of this image. X' and Y' are real world coords. + X' = [0] + [1] * Column + [2] * Row + Y' = [3] + [4] * Column + [5] * Row + + + + + Gets or sets the desired width per cell. This will keep the skew the same, but + will adjust both the column based and row based width coefficients in order + to match the specified cell width. This can be thought of as the width + of a bounding box that contains an entire grid cell, no matter if it is skewed. + + + + + Gets or sets the desired height per cell. This will keep the skew the same, but + will adjust both the column based and row based height coefficients in order + to match the specified cell height. This can be thought of as the height + of a bounding box that contains an entire grid cell, no matter if it is skewed. + + + + + Gets or sets the rectangular bounding box for this raster. + + + + + Gets or sets the height of the entire bounds. This is derived by considering both the + column and row based contributions to the overall height. Changing this will keep + the skew ratio the same, but adjust both portions so that the overall height + will match the specified height. + + + + + Gets the number of rows in the raster. + + + + + Gets the number of columns in the raster. + + + + + Gets or sets the geographic width of this raster. This will include the skew term + in the width estimate, so it will adjust both the width and the skew coefficient, + but preserve the ratio of skew to cell width. + + + + + Gets or sets the fileName of the wordfile that describes the geographic coordinates of this raster. + + + + + Gets or sets the horizontal placement of the upper left corner of this bounds. Because + of the skew, this upper left position may not actually be the same as the upper left + corner of the image itself (_affine[0]). Instead, this is the top left corner of + the rectangular extent for this raster. + + + + + Gets or sets the vertical placement of the upper left corner of this bounds, which is the + same as the top. The top left corner of the actual image may not be in this position + because of skew, but this represents the maximum Y value of the rectangular extents + that contains the image. + + + + + Data types specific to grids + + + + + An invalid data type + + + + + Short 16 Bit integers + + + + + 32 Bit Integers (old style long) + + + + + Float or Single + + + + + Double + + + + + Unknown + + + + + Byte + + + + + Specified as the CustomType string + + + + + Signed 64 Bit Integers + + + + + Unsigned short 16 Bit Integers + + + + + Unsigned 32 Bit Integers + + + + + Unsigned 64 Bit Integers + + + + + Signed 8-bit Integers: -128 to 127 + + + + + Booleans: True(1) or False(0). + + + + + RasterFileTypes + + + + + Ascii + + + + + Binary interlaced Layers + + + + + BGD (Original DotSpatial format) + + + + + DTED + + + + + Wavelet format + + + + + ArcGIS format + + + + + FLT + + + + + GeoTiff + + + + + SID + + + + + AUX + + + + + PCIDsk + + + + + SDTS + + + + + Custom - specified as string + + + + + A Row, Column indexer for some return types. + + + + + The zero based integer column index + + + + + The zero based integer row index + + + + + Creates a new RcIndex structure with the specified coordinates + + The integer row index + The integer column index + + + + Gets a boolean that is true if either row or column index has no value + + Boolean, true if either row or column has no value + + + + Implements the operator ==. + + A. + The b. + + The result of the operator. + + + + + Implements the operator !=. + + A. + The b. + + The result of the operator. + + + + + Returns a new RcIndex that is defined as empty when both indices are int. + + + + + Creates a new instance of Smoother + + + + + Creates a new instance of Smoother with IntPtr for input array + + + + + Calculates the smoothing by cycling through the values + + + + + ScaleBarInfo + + + + + Gets or sets the backcolor + + + + + Gets or sets the forecolor + + + + + Gets or sets what position that the scalebar should load in + + + + + Gets or sets the unit for the scalebar. + + + + + Gets or sets whether to show the scale bar. + + + + + ScaleBarPositions + + + + + The scalebar should appear in the lower left corner + + + + + The scalebar should appear in the lower right corner + + + + + The scalebar should appear in the upper left corner + + + + + The scalebar should apepar int eh upper right corner + + + + + SpaceTimeSupport + + + + + Spatial (X, Y, Z or M information only) + + + + + Temporal (time information only) + + + + + SpatioTemporal (time and space information) + + + + + Other (no temporal or spatial information) + + + + + StatusBarInfo + + + + + Gets or sets the alternate string to show in the event that GetFromProjection is false. + + + + + Gets or sets a boolean indicating whether or not status bar coordinates should display the unites derived from the projection string. + + + + + Stream extensions + + + + + Attempts to read count of bytes from stream. + + Input stream. + Count of bytes. + Bytes array. + + + + Attempts to read the specified T. If this system is + doesn't match the specified endian, then this will reverse the array of bytes, + so that it corresponds with the big-endian format. + + The stream to read the value from + Specifies what endian property should be used. + The integer value + + + + Reads the specified number of integers. If a value other than the + systems endian format is specified the values will be reversed. + + The stream to read from + The integer count of integers to read + The endian order of the bytes. + The array of integers that will have count integers. + + + + Reads a double precision value from the stream. If this system + is not little endian, it will reverse the individual memebrs. + + The stream to read the values from. + A double precision value + + + + Reads the specified number of double precision values. If this system + does not match the specified endian, the bytes will be reversed. + + The stream to read the values from. + The integer count of doubles to read. + The endian to use. + + + + + Writes the integer as big endian + + The IO stream + + + + + Writes the endian as little endian + + + + + + + Checks that the endian order is ok for integers and then writes + the entire array to the stream. + + + + + + + + + Writes the specified double value to the stream as little endian + + + + + + + Checks that the endian order is ok for doubles and then writes + the entire array to the stream. + + The stream to write to + The double values to write in little endian form + The integer start index in the double array to begin writing + The integer count of doubles to write. + + + + ByteBlock + + + + + The block size of the arrays + + + + + All the blocks + + + + + The current block index + + + + + The offset + + + + + Creates a new instance of ByteBlock + + + + + Reads the number of bytes using the specified reader. + This handles copying across blocks if necessary. + + The integer number of bytes to read + The file or data stream to read from. + + + + Reads the number of bytes using the specified reader. + This handles copying across blocks if necessary. + + + + + + + If the bytes were converted to a single, contiguous integer array, this returns + the current offset in that array. + + + + + + If the bytes were converted to a single contiguous double array, this returns + the offset in that array. + + + + + + Resets the indices + + + + + Combines all the blocks into a single array of the specified datatype + + + + + + Combines all the blocks into a single array of the specified datatype + + + + + + A generic vector feature that has the geometry and data components but no drawing information + + + + + A feature doesn't need to be abstract because the geometry is generic and the other + properties are all the same. It supports IRenderable so that even if you don't + know what type of feature this is, you can still tell it to draw itself. You won't + be able to specify any drawing characteristics from this object however. + + + + + Creates a deep copy of this feature. the new datarow created will not be connected + to a data Table, so it should be added to one. + + Returns a deep copy of this feature as an IFeature + + + + Creates a new shape based on this feature by itself. + + A Shape object + + + + This uses the field names to copy attribute values from the source to this feature. + Even if columns are missing or if there are extra columns, this method should work. + + The IFeature source to copy attributes from. + + + + Gets the datarow containing all the attributes related to this geometry + + + + + Gets or sets a valid IBasicGeometry associated with the data elements of this feature. + This will be enough geometry information to cast into a full fledged geometry + that can be used in coordination with DotSpatial.Analysis + + + + + Gets or sets the content length. If the geometry for this shape was loaded from a file, this contains the size + of this shape in 16-bit words as per the Esri Shapefile specification. + + + + + Gets or sets a DotSpatial.Data.CacheTypes enumeration specifying whether the Envelope property + returns a cached value in this object or is retrieved directly from the geometry. The + initial case for Shapefiles is to use a cache. Setting the envelope assumes that you + are going to use a cached value and will set this to Cached. Setting this to Dynamic + will cause the Envelope property to reference the geometry. + + + + + Gets the key that is associated with this feature. This returns -1 if + this feature is not a member of a feature layer. + + + + + Gets a reference to the IFeatureLayer that contains this item. + + + + + An index value that is saved in some file formats. + + + + + When a shape is loaded from a Shapefile, this will identify whether M or Z values are used + and whether or not the shape is null. + + + + + This is simply a quick access to the Vertices list for this specific + feature. If the Vertices have not yet been defined, this will be null. + + + + + Gets or sets the column to use when sorting lists of features. + If this is set to a column not in the field, the FID is used instead. + This should be assigned before attempting to sort features. Because + this is static, it only has to be set once, and will affect + all the individual comparisions until it is set differently. + + + + + Creates a feature from the specified shape. This will not handle the attribute content, + which should be handles separately, with full knowledge of the desired schema. + + The shape to read the vertices from in order to build a proper geometry. + + + + Creates a complete geometric feature based on a single point. The attribute datarow is null. + + The vertex + + + + Creates a single point feature from a new point. + + + + + + Creates a feature from a geometry + + The geometry to turn into a feature + + + + This constructor allows the creation of a feature but will automatically + add the feature to the parent featureset. + + The IBasicGeometry to use for this feature + The IFeatureSet to add this feature to. + + + + Constructs a new Feature + + + + + Creates a new instance of a feature, by specifying the feature type enumeration and a + set of coordinates that can be either a list or an array as long as it is enumerable. + + The feature type + The coordinates to pass + + + + The FID comparison will be very slow, so this should only be used + if the ComparisonField property is set. This will allow sorting + features based on their data-row attributes. The data rows + do not have to be identical, as long as both contain a column + with the comparison field. + + The other IFeature to compare to. + An integer that controls the sorting based on the values for the specified field name. + + + + This returns itself as the first geometry + + An IBasicGeometry interface + Index cannot be less than 0 or greater than 1 + + + + Test if a point is in a list of coordinates. + + TestPoint the point to test for. + PointList the list of points to look through. + true if testPoint is a point in the pointList list. + + + + Creates a deep copy of this feature. + + Returns a deep copy of this feature as an IFeature + + + + This uses the field names to copy attribute values from the source to this feature. + Even if columns are missing or if there are extra columns, this method should work. + + The IFeature source to copy attributes from. + + + + Creates a deep copy of this feature. + + Returns a deep copy of this feature as an object + + + + Forces the geometry to update its envelope, and then updates the cached envelope of the feature. + + + + + Creates a new GML string describing the location of this point + + A String representing the Geographic Markup Language version of this point + + + + Returns the Well-known Binary representation of this Geometry. + For a definition of the Well-known Binary format, see the OpenGIS Simple + Features Specification. + + The Well-known Binary representation of this Geometry. + + + + Creates a new shape based on this feature by itself. + + A Shape object + + + + Copies this feature, creating an independant, but identical feature. + + + + + + Occurs during the cloning process and this method also duplicates the envelope and basic geometry. + + The feature being copied + + + + Gets or sets the integer number of parts associated with this feature. + Setting this will set a cached value on the feature that is separate + from the geometry and set the NumParts to Cached. + + + + + Gets or sets a DotSpatial.Data.CacheTypes enumeration. If the value + is dynamic, then NumParts will be read from the geometry on this feature. + If it is cached, then the value is separate from the geometry. + + + + + This specifies the offset, if any in the data file + + + + + Gets or sets a valid IBasicGeometry associated with the data elements of this feature. + This will be enough geometry information to cast into a full fledged geometry + that can be used in coordination with DotSpatial.Analysis + + + + + If the geometry for this shape was loaded from a file, this contains the size + of this shape in 16-bit words as per the Esri Shapefile specification. + + + + + Returns an array of coordinates corresponding to the basic feature. + + + + + Gets the datarow containing all the attributes related to this geometry. + This will query the parent feature layer's data Table by FID and then + cache the value locally. If no parent feature layer exists, then + this is meaningless. You should create a new Feature by doing + FeatureLayer.Features.Add(), which will return a new Feature. + + + + + This is an envelope, but specified by the file, not by calculating from the geometry. + To obtain a calculated envelope, calling the DynamicEnvelope() + + + + + Gets or sets a DotSpatial.Data.CacheTypes enumeration specifying whether the Envelope property + returns a cached value in this object or is retrieved directly from the geometry. The + initial case for Shapefiles is to use a cache. Setting the envelope assumes that you + are going to use a cached value and will set this to Cached. Setting this to Dynamic + will cause the Envelope property to reference the geometry. + + + + + Returns either Point, Polygon or Line + + + + + Gets the key that is associated with this feature. This returns -1 if + this feature is not a member of a feature layer. + + + + + Shows the type of geometry for this feature + + + + + Returns the NumGeometries in the BasicGeometry of this feature + + + + + Gets the integer number of points associated with features. + + + + + An index value that is saved in some file formats. + + + + + Gets a reference to the IFeatureLayer that contains this item. + + + + + When a shape is loaded from a Shapefile, this will identify whether M or Z values are used + and whether or not the shape is null. + + + + + This is simply a quick access to the Vertices list for this specific + feature. If the Vertices have not yet been defined, this will be null. + + + + + Extension Methods for the Features + + + + + Calculates the area of the geometric portion of this feature. This is 0 unless the feature + is a polygon, or multi-polygon. + + The feature to test + The double valued area + + + + Generates a new feature from the buffer of this feature. The DataRow of + the new feature will be null. + + This feature + The double distance + An IFeature representing the output from the buffer operation + + + + Generates a new feature from the buffer of this feature. The DataRow of + the new feature will be null. + + This feature + The double distance + The end cap style to use + An IFeature representing the output from the buffer operation + + + + Generates a new feature from the buffer of this feature. The DataRow of + the new feature will be null. + + This feature + The double distance + The number of segments to use to approximate a quadrant of a circle + An IFeature representing the output from the buffer operation + + + + Generates a new feature from the buffer of this feature. The DataRow of + the new feature will be null. + + This feature + The double distance + The number of segments to use to approximate a quadrant of a circle + The end cap style to use + An IFeature representing the output from the buffer operation + + + + Generates a buffer, but also adds the newly created feature to the specified output featureset. + This will also compare the field names of the input featureset with the destination featureset. + If a column name exists in both places, it will copy those values to the destination featureset. + + The feature to calcualate the buffer for. + The double distance to use for calculating the buffer + The output featureset to add this feature to and use + as a reference for determining which data columns to copy. + The IFeature that represents the buffer feature. + + + + Generates a buffer, but also adds the newly created feature to the specified output featureset. + This will also compare the field names of the input featureset with the destination featureset. + If a column name exists in both places, it will copy those values to the destination featureset. + + The feature to calcualate the buffer for. + The double distance to use for calculating the buffer + The end cap style to use + The output featureset to add this feature to and use + as a reference for determining which data columns to copy. + The IFeature that represents the buffer feature. + + + + Generates a buffer, but also adds the newly created feature to the specified output featureset. + This will also compare the field names of the input featureset with the destination featureset. + If a column name exists in both places, it will copy those values to the destination featureset. + + The feature to calcualate the buffer for. + The double distance to use for calculating the buffer + The number of segments to use to approximate a quadrant of a circle + The output featureset to add this feature to and use + as a reference for determining which data columns to copy. + The IFeature that represents the buffer feature. + + + + Generates a buffer, but also adds the newly created feature to the specified output featureset. + This will also compare the field names of the input featureset with the destination featureset. + If a column name exists in both places, it will copy those values to the destination featureset. + + The feature to calcualate the buffer for. + The double distance to use for calculating the buffer + The number of segments to use to approximate a quadrant of a circle + The end cap style to use + The output featureset to add this feature to and use + as a reference for determining which data columns to copy. + The IFeature that represents the buffer feature. + + + + Returns a feature constructed from the centroid of this feature + + This feature + An IFeature that is also a point geometry + + + + Gets a boolean that is true if this feature contains the specified feature + + This feature + The other feature to test + Boolean, true if this feature contains the other feature + + + + Gets a boolean that is true if this feature contains the specified feature + + This feature + The other feature to test + Boolean, true if this feature contains the other feature + + + + Calculates a new feature that has a geometry that is the convex hull of this feature. + + This feature + A new feature that is the convex hull of this feature. + + + + Calculates a new feature that has a geometry that is the convex hull of this feature. + This also copies the attributes that are shared between this featureset and the + specified destination featureset, and adds this feature to the destination featureset. + + This feature + The destination featureset to add this feature to + The newly created IFeature + + + + Gets a boolean that is true if the geometry of this feature is covered by the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature is covered by the specified feature + + + + Gets a boolean that is true if the geometry of this feature is covered by the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature is covered by the specified feature + + + + Gets a boolean that is true if the geometry of this feature covers the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature covers the specified feature + + + + Gets a boolean that is true if the geometry of this feature covers the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature covers the specified feature + + + + Gets a boolean that is true if the geometry of this feature crosses the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature crosses the specified feature + + + + Gets a boolean that is true if the geometry of this feature crosses the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature crosses the specified feature + + + + Creates a new Feature that has a geometry that is the difference between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric difference between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the difference between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric difference between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the difference between this feature and the specified feature. + This also copies the attributes that are shared between this featureset and the + specified destination featureset, and adds this feature to the destination featureset. + + This feature + The other feature to compare to. + The featureset to add the new feature to. + This clarifies the overall join strategy being used with regards to attribute fields. + A new feature that is the geometric difference between this feature and the specified feature. + + + + Gets a boolean that is true if the geometry of this feature is disjoint with the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature is disjoint with the specified feature + + + + Gets a boolean that is true if the geometry of this feature is disjoint with the geometry + of the specified feature. + + This feature + The feature to compare this feature to + Boolean, true if this feature is disjoint with the specified feature + + + + Distance between features. + + This feature + The feature to compare this feature to + + + + + Gets a boolean that is true if the geometry of this feature is disjoint with the geometry + of the specified feature + + This feature + The feature to compare this feature to + Boolean, true if this feature is disjoint with the specified feature + + + + Creates a new Feature that has a geometry that is the intersection between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric intersection between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the intersection between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric intersection between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the intersection between this feature and the specified feature. + This also copies the attributes that are shared between this featureset and the + specified destination featureset, and adds this feature to the destination featureset. + + This feature + The other feature to compare to. + The featureset to add the new feature to. + This clarifies the overall join strategy being used with regards to attribute fields. + A new feature that is the geometric intersection between this feature and the specified feature. + + + + Gets a boolean that is true if this feature intersects the other feature. + + This feature + The other feature to test + Boolean, true if the two IFeatures intersect + + + + Gets a boolean that is true if this feature intersects the other feature. + + This feature + The other feature to test + Boolean, true if the two IFeatures intersect + + + + This tests the current feature to see if the geometry intersects with the specified + coordinate. + + This feature + The coordinate + Boolean if the coordinate intersects with this feature + + + + Gets a boolean that is true if this feature is within the specified distance of the other feature. + + This feature + The other feature to test + The double distance criteria + Boolean, true if the other feature is within the specified distance of this feature + + + + Gets a boolean that is true if this feature is within the specified distance of the other feature. + + This feature + The other feature to test + The double distance criteria + Boolean, true if the other feature is within the specified distance of this feature + + + + Gets a boolean that is true if this feature overlaps the specified feature + + This feature + The other feature to test + Boolean, true if the two IFeatures overlap + + + + Gets a boolean that is true if this feature overlaps the specified feature + + This feature + The other feature to test + Boolean, true if the two IFeatures overlap + + + + Gets a boolean that is true if the relationship between this feature and the other feature + matches the relationship matrix specified by other + + This feature + The other feature to test + The string relationship pattern to test + Boolean, true if the other feature's relationship to this feature matches the relate expression. + + + + Gets a boolean that is true if the relationship between this feature and the other feature + matches the relationship matrix specified by other + + This feature + The other feature to test + The string relationship pattern to test + Boolean, true if the other feature's relationship to this feature matches the relate expression. + + + + Rotates the BasicGeometry of the feature by the given radian angle around the given Origin. + + This feature. + The coordinate the feature gets rotated around. + The rotation angle in radian. + + + + Creates a new Feature that has a geometry that is the symmetric difference between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric symmetric difference between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the symmetric difference between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric symmetric difference between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the symmetric difference between this feature and the specified feature. + This also copies the attributes that are shared between this featureset and the + specified destination featureset, and adds this feature to the destination featureset. + + This feature + The other feature to compare to. + The featureset to add the new feature to. + This clarifies the overall join strategy being used with regards to attribute fields. + A new feature that is the geometric symmetric difference between this feature and the specified feature. + + + + Gets a boolean that is true if this feature touches the specified feature + + This feature + The other feature to test + Boolean, true if the two IFeatures touch + + + + Gets a boolean that is true if this feature touches the specified feature + + This feature + The other feature to test + Boolean, true if the two IFeatures touch + + + + Creates a new Feature that has a geometry that is the union between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric union between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the union between this feature and the specified feature. + + This feature + The other feature to compare to. + A new feature that is the geometric union between this feature and the specified feature. + + + + Creates a new Feature that has a geometry that is the union between this feature and the specified feature. + This also copies the attributes that are shared between this featureset and the + specified destination featureset, and adds this feature to the destination featureset. + + This feature + The other feature to compare to. + The featureset to add the new feature to. + Clarifies how the attributes should be handled during the union + A new feature that is the geometric symmetric difference between this feature and the specified feature. + + + + Gets a boolean that is true if this feature is within the specified feature + + This feature + The other feature to test + Boolean, true if this feature is within the specified feature + + + + Gets a boolean that is true if this feature is within the specified feature + + This feature + The other feature to test + Boolean, true if this feature is within the specified feature + + + + FeatureEvent + + + + + Creates a new instance of FeatureEvent + + + + + Gets the feature being referenced by this event. + + + + + A list that keeps track of a "parent" body that is also of type IFeature. + Whenever a member is added to the list, it sets the parent property. + + + + + IFeatureList + + + + + Resumes events + + + + + Temporarilly disables events + + + + + This is a re-expression of the features using a strong typed + list. This may be the inner list or a copy depending on + implementation. + + The features as a List of IFeature. + + + + Occurs when a new feature is added to the list + + + + + Occurs when a feature is removed from the list. + + + + + Gets or sets whether or not the events have been suspended + + + + + If this is false, then features will be added to the list without copying over attribute Table information. + This will allow the attributes to be loaded in a more on-demand later. + + + + + Gets the parent featureset for this list. + + + + + Instantiates a new instance of a FeatureList where no parent is specified. + This will basically simply act as a list and will not allow the features + to be aware of the parent featureset. + + + + + Instantiates a new instance of a FeatureList where the ParentFeatureSet + is specified so that each feature will be aware of its parent. + + The ParentFeatureSet of the specified item + + + + Removes all elements from the EventList<IFeature>. + + Unable to clear while the ReadOnly property is set to true. + + + + Determines whether an element is in the System.Collections.Generic.List<IFeature>. + + The object to locate in the System.Collections.Generic.List<IFeature>. The value can be null for reference types. + true if item is found in the System.Collections.Generic.List<IFeature> otherwise, false. + + + + Returns an enumerator that iterates through this list + + + + + + Resumes events + + + + + Temporarilly disables events + + + + + Gets the internal list of features. This is quite fast in this case because + the actual internal data store is a list. This does not create a new collection. + + The internal list. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + index and count do not denote a valid range of elements in the EventList<IFeature>. + index is less than 0.-or-count is less than 0. + Unable to reverse while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the entire EventList<IFeature>. + + Unable to reverse while the ReadOnly property is set to true. + + + + Sorts the elements in the entire EventList<IFeature> using the specified System.Comparison<IFeature>. + + The System.Comparison<IFeature> to use when comparing elements. + The implementation of comparison caused an error during the sort. For example, comparison might not return 0 when comparing an item with itself. + comparison is null. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in a range of elements in EventList<IFeature> using the specified comparer. + + The zero-based starting index of the range to sort. + The length of the range to sort. + The System.Collections.Generic.IComparer<IFeature> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<IFeature>.Default. + index and count do not specify a valid range in the EventList<IFeature>.-or-The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + index is less than 0.-or-count is less than 0. + comparer is null, and the default comparer + System.Collections.Generic.Comparer<IFeature>.Default cannot find implementation of the System.IComparable<IFeature> + generic interface or the System.IComparable interface for type IFeature. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<IFeature> using the specified comparer. + + The System.Collections.Generic.IComparer<IFeature> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<IFeature>.Default. + The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + comparer is null, and the default comparer System.Collections.Generic.Comparer<IFeature>.Default cannot find implementation of the System.IComparable<IFeature> generic interface or the System.IComparable interface for type IFeature. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<IFeature> using the default comparer. + + The default comparer System.Collections.Generic.Comparer<IFeature>.Default cannot find an implementation of the System.IComparable<IFeature> generic interface or the System.IComparable interface for type IFeature. + Unable to sort while the ReadOnly property is set to true. + + + + Copies the entire System.Collections.Generic.List<IFeature> to a compatible one-dimensional array, starting at the specified index of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from System.Collections.Generic.List<IFeature>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + System.ArgumentException: arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source System.Collections.Generic.List<T> is greater than the available space from arrayIndex to the end of the destination array. + arrayIndex is less than 0 + array is null + + + + Copies a range of elements from the EventList<IFeature> to a compatible one-dimensional array, starting at the specified index of the target array. + + The zero-based index in the source EventList<T> at which copying begins + The one-dimensional System.Array that is the destination of the elements copied from EventList<IFeature>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + array is null. + index is less than 0.-or-arrayIndex is less than 0.-or-count is less than 0. + index is equal to or greater than the EventList<IFeature>.Count of the source EventList<T>.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements from index to the end of the source EventList<IFeature> is greater than the available space from arrayIndex to the end of the destination array. + + + + Copies the entire EventList<IFeature> to a compatible one-dimensional array, starting at the beginning of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from EventList<IFeature>. The System.Array must have zero-based indexing. + The number of elements in the source EventList<IFeature> is greater than the number of elements that the destination array can contain. + array is null. + + + + Includes the Feature in the parents DataTable at the given index and raises the FeatureAdded event. + + Feature that gets included. + Index, where the feature gets included. (-1 = add at the end) + + + + Removes the given Feature from the parents DataTable and raises the FeatureRemoved event. + + Feature that gets excluded. + + + + Converts the elements in the current EventList<IFeature> to another type, and returns a list containing the converted elements. + + The output type to convert to + A System.Converter<TInput, TOutput> delegate that converts each element from one type to another type. + A List<T> of the target type containing the converted elements from the current EventList<T>. + converter is null. + + + + Determines whether the EventList<IFeature> contains elements that match the conditions defined by the specified predicate. + + The System.Predicate<IFeature> delegate that defines the conditions of the elements to search for. + true if the EventList<T> contains one or more elements that match the conditions defined by the specified predicate; otherwise, false. + match is null. + + + + Creates a shallow copy of a range of elements in the source EventList<IFeature>. + + The zero-based EventList<IFeature> index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source EventList<IFeature>. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<IFeature>. + + + + Copies the elements of the DotSpatial.Interfaces.Framework.IEventList<IFeature> to a new array. + + An array containing copies of the elements of the DotSpatial.Interfaces.Framework.IEventList<IFeature>. + + + + Sets the capacity to the actual number of elements in the DotSpatial.Interfaces.Framework.IEventList<IFeature>, if that number is less than a threshold value. + + + + + Determines whether every element in the DotSpatial.Interfaces.Framework.IEventList<IFeature> matches the conditions defined by the specified predicate. + + The System.Predicate<IFeature> delegate that defines the conditions to check against the elements. + true if every element in the DotSpatial.Interfaces.Framework.IEventList<IFeature> matches the conditions defined by the specified predicate; otherwise, false. If the list has no elements, the return value is true. + match is null. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire System.Collections.Generic.List<IFeature>. + + The object to locate in the System.Collections.Generic.List<IFeature>. The value can be null for reference types. + The zero-based index of the first occurrence of item within the entire System.Collections.Generic.List<IFeature>, if found; otherwise, –1. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<IFeature> that starts at the specified index and contains the specified number of elements. + + The object to locate in the EventList<IFeature>. The value can be null for reference types. + The zero-based starting index of the search. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<IFeature> that starts at index and contains count number of elements, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<IFeature>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<IFeature>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<IFeature> that extends from the specified index to the last element. + + The object to locate in the EventList<IFeature>. The value can be null for reference types. + The zero-based starting index of the search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<IFeature> that extends from index to the last element, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<IFeature>. + + + + Inserts an element into the System.Collections.Generic.List<IFeature> at the specified index. + + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + index is less than 0.-or-index is greater than System.Collections.Generic.List<IFeature>.Count. + Unable to insert while the ReadOnly property is set to true. + + + + Inserts the elements of a collection into the EventList<IFeature> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the EventList<IFeature>. The collection itself cannot be null, but it can contain elements that are null, if type IFeature is a reference type. + index is less than 0.-or-index is greater than EventList<IFeature>.Count. + collection is null. + Unable to insert while the ReadOnly property is set to true. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<IFeature> that contains the specified number of elements and ends at the specified index. + + The object to locate in the EventList<IFeature>. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<IFeature> that contains count number of elements and ends at index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<IFeature>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<IFeature>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<IFeature> that extends from the first element to the specified index. + + The object to locate in the EventList<IFeature>. The value can be null for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<IFeature> that extends from the first element to index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<IFeature>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire EventList<IFeature>. + + The object to locate in the EventList<IFeature>. The value can be null for reference types. + The zero-based index of the last occurrence of item within the entire the EventList<IFeature>, if found; otherwise, –1. + + + + Removes the first occurrence of a specific object from the System.Collections.Generic.List<IFeature>. + + The object to remove from the System.Collections.Generic.List<IFeature>. The value can be null for reference types. + true if item is successfully removed; otherwise, false. This method also returns false if item was not + found in the System.Collections.Generic.List<IFeature>. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the element at the specified index of the System.Collections.Generic.List<IFeature>. + + The zero-based index of the element to remove. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the all the elements that match the conditions defined by the specified predicate. + + The System.Predicate<IFeature> delegate that defines the conditions of the elements to remove. + The number of elements removed from the EventList<IFeature> + match is null. + Unable to remove while the ReadOnly property is set to true. + + + + Removes a range of elements from the EventList<IFeature>. + + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<IFeature>. + Unable to remove while the ReadOnly property is set to true. + + + + Retrieves all the elements that match the conditions described by the specified predicate + + The System.Predicate that defines the conditions to search for + A List of matches + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<IFeature> that starts at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1 + startIndex is outside the range of valid indexes for the EventList<IFeature>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<IFeature>. + match is null + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<IFeature> that extends from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + startIndex is outside the range of valid indexes for the EventList<IFeature>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire EventList<IFeature>. + + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire EventList<IFeature>. + + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type IFeature. + match is null." + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<IFeature> that contains the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + startIndex is outside the range of valid indexes for the EventList<IFeature>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<IFeature>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<IFeature> that extends from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + : startIndex is outside the range of valid indexes for the EventList<IFeature>. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire EventList<IFeature>. + + The System.Predicate<IFeature> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Adds the item to the list, setting the parent to be the list's parent + + + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to true. + + + + Searches the entire sorted System.Collections.Generic.List<IFeature> for an element using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The zero-based index of item in the sorted System.Collections.Generic.List<IFeature>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<IFeature>.Count. + The default comparer System.Collections.Generic.Comparer<IFeature>.Default cannot find an implementation of the System.IComparable<IFeature> generic interface or the System.IComparable interface for type IFeature. + + + + Occurs each time a feature is added to the list. This should only be called + if suspend events is false. + + The feature that was added. + + + + Occurs each time a feature is removed from the list. This should only be + called if suspend events is false. + + he feature that was removed + + + + Occurs when a new feature is added to the list + + + + + Occurs when a feature is removed from the list. + + + + + Gets or sets whether or not the events have been suspended + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + The number of elements that the DotSpatial.Interfaces.Framework.IEventList<IFeature> can contain before resizing is required. + + DotSpatial.Interfaces.Framework.IEventList<IFeature>.Capacity is set to a value that is less than DotSpatial.Interfaces.Framework.IEventList<IFeature>.Count. + + + + Gets the count of the members in the list + + + + + The default, indexed value of type IFeature + + The numeric index + An object of type IFeature corresponding to the index value specified + + + + Gets a boolean property indicating whether this list can be written to. + + + + + If this is false, then features will be added to the list without copying over attribute Table information. + This will allow the attributes to be loaded in a more on-demand later. + + + + + Gets the parent featureset for this list of features. + + + + + FeatureListEm + + + + + adding a single coordinate will assume that the feature type should be point for this featureset, even + if it has not already been specified. + + This IFeatureList + The point to add to the featureset + Thrown when the feature type already exists, there are already features in the featureset and the featuretype is not equal to point. + + + + This adds the coordinates and specifies what sort of feature type should be added. + + This IFeatureList + The list or array of coordinates to be added after it is built into the appropriate feature. + The feature type. + + + + If the feature type is specified, then this will automatically generate a new feature from the specified coordinates. + This will not work unless the featuretype is specified. + + This IFeatureList + + The list or array of coordinates to build into a new feature. + If the feature type is point, then this will create separate features for each coordinate. + For polygons, all the points will be assumed to be in the shell. + + Thrown if the current FeatureType for the shapefile is unspecified. + + + + This method will attempt to add the specified geometry to the list. + If the feature type is currently unspecified, this will specify the feature type. + + This feature list + The geometry to create a new feature from. + Thrown if the new geometry does not match the currently specified feature type. + + + + Rather than being an abstract base class, this is a "router" class that will + make decisions based on the file extension or whatever being used and decide the best + IFeatureSet that matches the specifications. + + + + + A layer contains a list of features of a specific type that matches the geometry type. + While this supports IRenderable, this merely forwards the drawing instructions to + each of its members, but does not allow the control of any default layer properties here. + Calling FeatureDataSource.Open will create a number of layers of the appropriate + specific type and also create a specific layer type that is derived from this class + that does expose default "layer" properties, as well as the symbology elements. + + + + + IDataPageRetriever + + + + + Supplies a page of content in the form of a data Table. + + The integer lower page boundary + The integer number of rows to return for the page + A DataTable made up with the virtual row content. + + + + Reads just the content requested in order to satisfy the paging ability of VirtualMode for the DataGridView + + The integer lower page boundary + The integer number of attribute values to return for the page + The list or array of fieldnames to return. + A DataTable populated with data rows with only the specified values. + + + + Converts a page of content from a DataTable format, saving it back to the source. + + The 0 based integer index representing the first row in the file (corresponding to the 0 row of the data table) + The DataTable representing the rows to set. If the row count is larger than the dataset, this will add the rows instead. + + + + The number of rows + + + + + + Gets the column with the specified name + + the name to search + the Field matching the specified name + + + + Gets a copy of the fields used to build the data structure. This is useful for learning + about the existing fields, but doesn't allow direct changes to the underlying data structure. + + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + saves a single row to the data source. + + the integer row (or FID) index + The dictionary of object values by string field name holding the new values to store. + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + saves a single row to the data source. + + the integer row (or FID) index + The dictionary of object values by string field name holding the new values to store. + + + + Given a string expression, this returns the count of the members that satisfy that expression. + + The array of string expressions to test + The progress handler that might also instruct this step to be canceled. + The integer maximum sample size from which to draw counts. If this is negative, it will not be used. + An array of integer counts of the members that match the expression + + + + Gets the list of string names available as columns from the specified excel file. + + + + + + + For attributes that are small enough to be loaded into a data table, this + will join attributes from a foreign table (from an excel file). This method + won't create new rows in this table, so only matching members are brought in, + but no rows are removed either, so not all rows will receive data. + + The complete path of the file to join + The field name to join on in this table + The field in the foreign table. + + + + If this featureset is in index mode, this will append the vertices and shapeindex of the shape. + Otherwise, this will add a new feature based on this shape. If the attributes of the shape are not null, + this will attempt to append a new datarow It is up to the developer + to ensure that the object array of attributes matches the this featureset. If the Attributes of this feature are loaded, + this will add the attributes in ram only. Otherwise, this will attempt to insert the attributes as a + new record using the "AddRow" method. The schema of the object array should match this featureset's column schema. + + The shape to add to this featureset. + + + + Adds any type of list or array of shapes. If this featureset is not in index moded, + it will add the features to the featurelist and suspend events for faster copying. + + An enumerable collection of shapes. + + + + Gets the specified feature by constructing it from the vertices, rather + than requiring that all the features be created. (which takes up a lot of memory). + + The integer index + + + + Gets a shape at the specified shape index. If the featureset is in + indexmode, this returns a copy of the shape. If not, it will create + a new shape based on the specified feature. + + The zero based integer index of the shape. + If getAttributes is true, then this also try to get attributes for that shape. + If attributes are loaded, then it will use the existing datarow. Otherwise, it will read the attributes + from the file. (This second option is not recommended for large repeats. In such a case, the attributes + can be set manually from a larger bulk query of the data source.) + The Shape object + + + + Given a datarow, this will return the associated feature. This FeatureSet + uses an internal dictionary, so that even if the items are re-ordered + or have new members inserted, this lookup will still work. + + The DataRow for which to obtaind the feature + The feature to obtain that is associated with the specified data row. + + + + Generates a new feature, adds it to the features and returns the value. + + The feature that was added to this featureset + + + + Adds the FID values as a field called FID, but only if the FID field + does not already exist + + + + + Copies all the features from the specified featureset. + + The source IFeatureSet to copy features from. + Boolean, true if the attributes should be copied as well. If this is true, + and the attributes are not loaded, a FillAttributes call will be made. + + + + Retrieves a subset using exclusively the features matching the specified values. + + An integer list of indices to copy into the new FeatureSet + A FeatureSet with the new items. + + + + Copies the subset of specified features to create a new featureset that is restricted to + just the members specified. + + The string expression to test. + A FeatureSet that has members that only match the specified members. + + + + Copies only the names and types of the attribute fields, without copying any of the attributes or features. + + The source featureSet to obtain the schema from. + + + + Copies the Table schema (column names/data types) + from a DatatTable, but doesn't copy any values. + + The Table to obtain schema from. + + + + Instructs the shapefile to read all the attributes from the file. + This may also be a cue to read values from a database. + + + + + Instructs the shapefile to read all the attributes from the file. + This may also be a cue to read values from a database. + + + + + Obtains the list of feature indices that match the specified filter expression. + + The filter expression to find features for. + The list of integers that are the FIDs of the specified values. + + + + This forces the vertex initialization so that Vertices, ShapeIndices, and the + ShapeIndex property on each feature will no longer be null. + + + + + Switches a boolean so that the next time that the vertices are requested, + they must be re-calculated from the feature coordinates. + + This only affects reading values from the Vertices cache + + + + Attempts to remove the specified shape. + + + The integer index of the shape to remove. + + + Boolean, true if the remove was successful. + + + + + Attempts to remove a range of shapes by index. This is optimized to + work better for large numbers. For one or two, using RemoveShapeAt might + be faster. + + + The enumerable set of indices to remove. + + + + + Skips the features themselves and uses the shapeindicies instead. + + The region to select members from + A list of integer valued shape indices that are selected. + + + + Saves the information in the Layers provided by this datasource onto its existing file location + + + + + Saves a datasource to the file. + + The string fileName location to save to + Boolean, if this is true then it will overwrite a file of the existing name. + + + + returns only the features that have envelopes that + intersect with the specified envelope. + + The specified region to test for intersect with + A List of the IFeature elements that are contained in this region + + + + returns only the features that have envelopes that + intersect with the specified envelope. + + The specified region to test for intersect with + This returns the geographic extents for the entire selected area. + A List of the IFeature elements that are contained in this region + + + + The string filter expression to use in order to return the desired features. + + The features to return. + The list of desired features. + + + + This version is more tightly integrated to the DataTable and returns the row indices, rather + than attempting to link the results to features themselves, which may not even exist. + + The filter expression + The list of indices + + + + After changing coordinates, this will force the re-calculation of envelopes on a feature + level as well as on the featureset level. + + + + + Occurs when the vertices are invalidated, encouraging a re-draw + + + + + Occurs when a new feature is added to the list + + + + + Occurs when a feature is removed from the list. + + + + + Gets whether or not the attributes have all been loaded into the data table. + + + + + Gets or sets the coordinate type across the entire featureset. + + + + + Gets the DataTable associated with this specific feature. + + + + + Gets the list of all the features that are included in this layer. + + + + + This is an optional GeometryFactory that can be set to control how the geometries on features are + created. if this is not specified, the default from DotSptaial.Topology is used. + + + + + Gets the feature lookup Table itself. + + + + + Gets an enumeration indicating the type of feature represented in this dataset, if any. + + + + + Gets the string fileName for this feature layer, if any + + + + + These specifically allow the user to make sense of the Vertices array. These are + fast acting sealed classes and are not meant to be overridden or support clever + new implementations. + + + + + If this is true, then the ShapeIndices and Vertex values are used, + and features are created on demand. Otherwise the list of Features + is used directly. + + + + + Gets an array of Vertex structures with X and Y coordinates + + + + + Z coordinates + + + + + M coordinates + + + + + Gets a boolean that indicates whether or not the InvalidateVertices has been called + more recently than the cached vertex array has been built. + + + + + The _data table. + + + + + The _feature lookup. + + + + + The _features. + + + + + The _m. + + + + + The _shape indices. + + + + + The _vertices. + + + + + The _vertices are valid. + + + + + The _z. + + + + + Initializes a new instance of the class. + This doesn't do anything exactly because there is no file-specific information yet + + + + + Initializes a new instance of the class. + Creates a new FeatureSet + + + The Feature type like point, line or polygon + + + + + Initializes a new instance of the class. + This creates a new featureset by checking each row of the table. If the WKB feature + type matches the specified featureTypes, then it will copy that. + + + + + + + + + + + + + Initializes a new instance of the class. + Creates a new FeatureSet using a given list of IFeatures. + This will copy the existing features, rather than removing + them from their parent feature set. + + + The list of IFeatures + + + + + Generates a new feature, adds it to the features and returns the value. + + + The geometry. + + + The feature that was added to this featureset + + + + + The data table row deleted. + + + The sender. + + + The e. + + + + + The features feature added. + + + The sender. + + + The e. + + + + + The features feature removed. + + + The object sender. + + + The FeatureEventArgs. + + + + + Adds the FID values as a field called FID, but only if the FID field + does not already exist. + + + + + + + + + + + + + + The copy subset. + + + The indices. + + + + + + + The copy subset. + + + The filter expression. + + + + + + + + + + + + + + + + + + + + + + + + + Gets the list of string names available as columns from the specified excel file. + + + + + + Warning. This method should be moved outside of FeatureSet. + + + + + + + + + + + + + + + + For attributes that are small enough to be loaded into a data table, this + will join attributes from a foreign table (from an excel file). This method + won't create new rows in this table, so only matching members are brought in, + but no rows are removed either, so not all rows will receive data. + + + The complete path of the file to join + + + The field name to join on in this table + + + The field in the foreign table. + + + A modified featureset with the changes. + + + + + + + + + + + + + + + + + Selects using a string filter expression to obtain the desired features. + Field names should be in square brackets. Alternately, if the field name of [FID] + is used, then it will use the row index instead if no FID field is found. + + + The features to return. + + + The list of desired features. + + + + + This version is more tightly integrated to the DataTable and returns the row indices, rather + than attempting to link the results to features themselves, which may not even exist. + + + The filter expression + + + The list of indices + + + + + + + + Retrieves a subset using exclusively the features matching the specified values. + + + An integer list of indices to copy into the new FeatureSet. + + + A FeatureSet with the new items. + + + + + + + + This attempts to open the specified file as a valid IFeatureSet. This will require that + the default data manager can work with the file format at runtime. + + + The string fileName for this featureset. + + + + + This will return the correct feature type by reading the fileName. + + + A string specifying the file with the extension .shp to open. + + + A correct featureSet which is exclusively for reading the .shp data + + + + + Generates a new FeatureSet, if possible, from the specified fileName. + + + The string fileName to attempt to load into a new FeatureSet. + + + An IProgressHandler for progress messages + + + + + Gets the line for the specified index + + + + + Returns a single multipoint feature for the shape at the specified index + + + + + Gets the point for the shape at the specified index + + + + + If the FeatureType is polygon, this is the code for converting the vertex array + into a feature. + + + + + handles the attributes while adding a shape + + + + + A data row, but only if attributes are populated + + + + + Copies the subset of specified features to create a new featureset that is restricted to + just the members specified. + + + The string expression to test. + + + A FeatureSet that has members that only match the specified members. + + + + + Test if a point is in a list of coordinates. + + + TestPoint the point to test for. + + + PointList the list of points to look through. + + + true if testPoint is a point in the pointList list. + + + + + Attempts to remove the specified shape. If in memory, this will also remove the + corresponding database row. This has no affect on the underlying datasets. + To impact those, use the + + + The integer index o the shape to remove. + + + Boolean, true if the remove was successful. + + + + + Attempts to remove a range of shapes by index. This is optimized to + work better for large numbers. For one or two, using RemoveShapeAt might + be faster. + + + The enumerable set of indices to remove. + + + + + Reprojects all of the in-ram vertices of this featureset. + This will also update the projection to be the specified projection. + + + The projection information to reproject the coordinates to. + + + + + After changing coordinates, this will force the re-calculation of envelopes on a feature + level or test the shapes in index mode to rebuild an Extent. + + + + + Creates a relative path from one file + or folder to another. + + + Contains the path that defines the + endpoint of the relative path. + + + The relative path from the start + directory to the end path. + + Occurs when the toPath is NULL + + + + Creates a relative path from one file or folder to another. + + Contains the directory that defines the start of the relative path. + Contains the path that defines the endpoint of the relative path. + The relative path from the start directory to the end path. + + + + + Calculates the features from the shape indices and vertex array. + + + + + Allows the un-wiring of event handlers related to the data Table. + + + + + + + Allows the wiring of event handlers related to the data Table. + + + + + + + Occurs when removing the feature list, allowing events to be disconnected + + + + + + + Occurs when setting the feature list, allowing events to be connected + + + + + + + + + + + + + + + + + + + + + + Reads just the content requested in order to satisfy the paging ability of VirtualMode for the DataGridView + + + The integer lower page boundary. + + + The integer number of attribute rows to return for the page. + + + The list or array of fieldnames to return. + + + A DataTable populated with data rows with only the specified values. + + + + + + + + + + + + + + + + + + + + Occurs when the vertices are being re-calculated. + + + + + Fires the VerticesInvalidated event + + + + + This forces the cached vertices array to be copied back to the individual X and Y values + of the coordinates themselves. + + + + + Disposes the unmanaged memory objects. + + If this is true, managed resources are set to null. + + + + Occurs when a new feature is added to the list + + + + + Occurs when a feature is removed from the list. + + + + + Occurs when the vertices are invalidated, encouraging a re-draw + + + + + Gets or sets the current file path. This is the relative path relative to + the current project folder. For feature sets coming from a database + or a web service, the FilePath property is NULL. + + + The relative file path. + + This property is used when saving source file information to a DSPX project. + + + + Gets whether or not the attributes have all been loaded into the data table. + + + + + Gets or sets the coordinate type across the entire featureset. + + + + + DataTable is the System.Data.DataTable for all the attributes of this FeatureSet. + This will call FillAttributes if it is accessed and that has not yet been called. + + + + + This is the envelope in Extent form. This may be cached. + + + + + This is an optional GeometryFactory that can be set to control how the geometries on features are + created. The "Feature" prefix allows us to access the static Default instance on GeometryFactory. + + + + + Gets the feature lookup Table itself. + + + + + Gets or sets an enumeration specifying whether this + featureset contains Lines, Points, Polygons or an + unspecified type. + + + + + A list of the features in this layer + + + + + Gets or sets the file name of a file based feature set. The file name should be the + absolute path including the file extension. For feature sets coming from a database + or a web service, the Filename property is NULL. + + + + + If this is true, then the ShapeIndices and Vertex values are used, + and features are created on demand. Otherwise the list of Features + is used directly. + + + + + + + + These specifically allow the user to make sense of the Vertices array. These are + fast acting sealed classes and are not meant to be overridden or support clever + new implementations. + + + + + + + + Gets a Boolean that indicates whether or not the InvalidateVertices has been called + more recently than the cached vertex array has been built. + + + + + + + + FeatureSetEM contains extension methods that should work for any IFeatureSet + + + + + Creates a new polygon featureset that is created by buffering each of the individual shapes. + + The IFeatureSet to buffer + The double distance to buffer + Boolean, if this is true, then the new featureset will have + the same attributes as the original. + The newly created IFeatureSet + + + + Generates an empty featureset that has the combined fields from this featureset + and the specified featureset. + + This featureset + The other featureset to combine fields with. + + + + + Calculates a union of any features that have a common value in the specified field. + The output will only contain the specified field. Example: Disolving a county + shapefile based on state name to produce a single polygon shaped like the state. + + The original featureSet to disolve the features of + The string field name to use for the disolve operation + A featureset where the geometries of features with the same attribute in the specified field have been combined. + + + + Tests to see if this feature intersects with the specified envelope + + This feature + The envelope to test + Boolean, true if the intersection occurs + + + + This method will create a new IFeatureSet with the the shapes that intersect merged into single shapes, + or else it will return a new featureset where EVERY shape is unioned into a single, multi-part shape. + + The source of features to union + This controls whether intersecting or all features are unioned + An IFeatureSet with the unioned shapes. + + + + This tests each feature of the input + + This featureSet + The featureSet to perform intersection with + The attribute join type + A progress handler for status messages + An IFeatureSet with the intersecting features, broken down based on the join Type + + + + FeatureTypeMismatchException + + + + + Creates a new instance of FeatureTypeMismatchException + + + + + FieldJoinType + + + + + Output datasets have all fields from both input and output sets. Fields with duplicate field names will be appended with a number. + Features from this dataset may appear more than once if more than one valid intersection occurs with the features from the + other featureset. + + + + + The fields will be created from the fields in the other featureset. + + + + + All the fields from this FeatureSet are used, and all of the features from the other featureset are considered + to be a single geometry so that features from this set will appear no more than once in the output set. + + + + + No fields will be copied, but features from this featureset will be considered independantly and added as separate + features to the output featureset. + + + + + The row being edited + + + + + The pages currently stored in the cache + + + + + Constructs a new Cache object that can create data tables by using a DataPageRetriever + + Any structure that implements IDataPageRetriever + The rows per page + + + + + + + Saves the changes in the edit row to the tabular cache as well as the underlying database + + + + + Obtains the element at the specified index + + + + + + + Obtains the element at the specified index + + + + + + + + The integer index of the row being edited + + + + + The number of rows in the data supply + + + + + Enumerates the dictionaries that represent row content stored by field name. + + + + + Creates a new AttributeCacheEnumerator + + + + + + + + + + + + + + + + + + + + + Represents one page of data. + + + + + The data Table + + + + + A Data page representing one page of data-row values + + The DataTable that controls the content + The integer row index + + + + Tests to see if the specified index is in this page. + + + + + + + Given an arbitrary row index, this calculates what the lower boundary would be for the page containing the index + + + + + + + Given an arbitrary row index, this calculates the upper boundary for the page containing the index + + + + + + + The integer lowest index of the page + + + + + The integer highest index of the page + + + + + AttributePager + + + + + Creates a new instance of AttributePager + + + + + + + + Does nothing + + + + + Advances to the next attribute + + + + + + reset the attribute pager + + + + + The integer number of pages + + the number of pages + + + + Gets the number of rows on the specified page. + + The page index + The number of rows that should be on that page. + + + + Loads the appropriate page if it isn't loaded already and returns the DataRow that + matches the specified index + + The integer row index + The DataRow + + + + Returns the page that the specified row is on + + The integer row index + The page of the row in question + + + + Gets the current table + + + + + Gets the starting row index of the current page. + + + + + Gets the pages size as a count of the number of rows each data table page should hold + + + + + This returns the data table for the corresponding page index, but also sets the + Pager so that it is sitting on the specified page index. + + + + + + + A class for controlling the attribute Table related information for a shapefile. + + + + + Indicates that the Fill methode is called from inside itself. + + + + + Creates a new instance of an attribute Table with no file reference + + + + + Creates a new AttributeTable with the specified fileName, or opens + an existing file with that name. + + + + + + Reads just the content requested in order to satisfy the paging ability of VirtualMode for the DataGridView + + + + + + + + Reads just the content requested. + + starting row + number of rows to return + field for which data is to be returned + + + + + Reads just the contents requested. Faster than returning the entire record if you have lots of attributes but only want a few. + + starting row + number of rows to return + fields for which data is to be returned + + + + + Reads just the content requested in order to satisfy the paging ability of VirtualMode for the DataGridView + + The 0 based integer index of the start row + The DataTable with the 0 row corresponding to the start row. If this exceeds the size of the data table, it will add rows. + + + + Get a DataTable containing the specified rows + + + + + + + Accounts for deleted rows and returns the index as it appears in the file + + + + + + + Accounts for deleted rows and adjusts a file index to a row index + + + + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + Removes the row at the specified row index from both the table in memory + and by marking it as deleted in the file. This should work even in cases + where the file is very large and working as an AttributeSource. + + + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + saves a single row to the data source. + + the integer row (or FID) index + The object array holding the new values to store. + + + + saves a single row to the data source. + + the integer row (or FID) index + The object array holding the new values to store. + + + + saves a collection of rows to the data source + + + + + + Edit the specified rows via a client supplied callback + + rows to edit + client supplied callback + + + + Setup before calls to OverwriteDataRow + + + + + + Cleanup after finished calling OverwriteDataRow + + + + + Common code for editing an existing row in the data source + + + + + + + + Read a single dbase record + + Returns an IFeature with information appropriate for the current row in the Table + + + + Reads all the information from the file, including the vector shapes and the database component. + + + + + Reads the header and if deletedRows is null, searches file for deletedRows if file size indicates possibility of deleted rows. + + + + + + + This populates the Table with data from the file. + + In the event that the dbf file is not found, this indicates how many blank rows should exist in the attribute Table. + + + + Attempts to save the file to the path specified by the Filename property. + This should be the .shp extension. + + + + + Saves this Table to the specified fileName + + The string fileName to save to + A boolean indicating whether or not to write over the file if it exists. + + + + Tests to see if the list of columns contains the specified name or not. + + Name of the column we're looking for. + True, if the column exists. + + + + This appends the content of one datarow to a dBase file. + + The columnValues parameter was null + Header records need to be written first. + Table property of columnValues parameter cannot be null. + + + + Writes a number of spaces equal to numspaces + + The integer number of spaces to write + + + + + + + + + + + + Writes an integer so that it is formatted for dbf. This is still buggy since it is possible to lose info here. + + The long value + The length of the field. + The number of digits after the decimal + + + + + + + + + + + + + + + + + + + + + + + Write the header data to the DBF file. + + + + + + Read a single dbase record + + Returns an IFeature with information appropriate for the current row in the Table + + + + Parse the character data for one column into an object ready for insertion into a data row + + + + + + + + + + Read the header data from the DBF file. + + BinaryReader containing the header. + + + + This systematically copies all the existing values to a new data column with the same properties, + but with a new data type. Values that cannot convert will be set to null. + + The old data column to update + The new data type that the column should become + The row up to which values should be changed for + The column index of the field being changed + The Table to apply this strategy to. + An integer list showing the index values of the rows where the conversion failed. + + + + Fires the AttributesFilled event + + + + + Occurs after content has been loaded into the attribute data. + + + + + gets or sets whether the Attributes have been populated. If data was "opened" from a file, + and a query is made to the DataTable while _attributesPopulated is false, then + a Fill method will be called automatically + + + + + The byte length of the header + + + + + The columns + + + + + The file type + + + + + The fileName of the dbf file + + + + + Number of records + + + + + Gets or sets the progress handler for this Attribute Table. + + + + + Gets or sets the progress meter that is directly tied to the progress handler + + + + + The byte length of each record + + + + + Gets the language driver ID (LDID) for this file + + + + + Gets the encoding used for text-based data and column names (based on LDID) + + + + + DataSet + + + + + Last date written to + + + + + Gets the list of raw row numbers that have been marked for deletion + + + + + A shapefile class that handles the special case where the vectors are lines + + + + + This is a generic shapefile that is inherited by other specific shapefile types. + + + + + When creating a new shapefile, this simply prevents the basic values from being null. + + + + + Creates a new shapefile that has a specific feature type + + + + + + Creates a new instance of a shapefile based on a fileName + + + + + + Gets the count of members that match the expression + + The string expression to test + THe progress handler that can also cancel the counting + The integer maximum sample size from which to draw counts. If this is negative, it will not be used. + The integer count of the members that match the expression. + + + + This makes the assumption that the organization of the feature list has not + changed since loading the attribute content. + + + + + + + This will return the correct shapefile type by reading the fileName. + + A string specifying the file with the extension .shp to open. + A correct shapefile object which is exclusively for reading the .shp data + + + + This will return the correct shapefile type by reading the fileName. + + A string specifying the file with the extension .shp to open. + receives progress messages and overrides the ProgressHandler on the DataManager.DefaultDataManager + A correct shapefile object which is exclusively for reading the .shp data + + + + saves a single row to the data source. + + the integer row (or FID) index + The object array holding the new values to store. + + + + saves a single row to the data source. + + the integer row (or FID) index + The object array holding the new values to store. + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + Saves the new row to the data source and updates the file with new content. + + The values organized against the dictionary of field names. + + + + + + + Converts a page of content from a DataTable format, saving it back to the source. + + The 0 based integer index representing the first row in the file (corresponding to the 0 row of the data table) + The DataTable representing the rows to set. If the row count is larger than the dataset, this will add the rows instead. + + + + + + + Reads the attributes from the specified attribute Table. + + + + + Sets up the feature lookup, if it has not been already. + + + + + This doesn't rewrite the entire header or erase the existing content. This simply replaces the file length + in the file with the new file length. This is generally because we want to write the header first, + but don't know the total length of a new file until cycling through the entire file. It is easier, therefore + to update the length after editing. + + A string fileName + The integer length of the file in 16-bit words + + + + Reads 4 bytes from the specified byte array starting with offset. + If IsBigEndian = true, then this flips the order of the byte values. + + An array of bytes that is at least 4 bytes in length from the startIndex + A 0 based integer index where the double value begins + If this is true, then the order of the bytes is reversed before being converted to a double + A double created from reading the byte array + + + + Reads 8 bytes from the specified byte array starting with offset. + If IsBigEndian = true, then this flips the order of the byte values. + + An array of bytes that is at least 8 bytes in length from the startIndex + A 0 based integer index where the double value begins + If this is true, then the order of the bytes is reversed before being converted to a double + A double created from reading the byte array + + + + Converts the double value into bytes and inserts them starting at startIndex into the destArray + + A byte array where the values should be written + The starting index where the values should be inserted + The double value to convert + Specifies whether the value should be written as big or little endian + + + + Converts the double value into bytes and inserts them starting at startIndex into the destArray. + This will correct this system's natural byte order to reflect what is required to match the + shapefiles specification. + + A byte array where the values should be written + The starting index where the values should be inserted + The integer value to convert + Specifies whether the value should be written as big or little endian + + + + Reads the entire index file in order to get a breakdown of how shapes are broken up. + + A string fileName of the .shx file to read. + A List of ShapeHeaders that give offsets and lengths so that reading can be optimized + + + + Ensures that the attribute Table will have information that matches the current Table of attribute information + + + + + This uses the fileName of this shapefile to read the prj file of the same name + and stores the result in the Projection class. + + + + + Automatically uses the fileName of this shapefile to save the projection + + + + + Reads just the content requested in order to satisfy the paging ability of VirtualMode for the DataGridView + + The integer lower page boundary + The integer number of attribute rows to return for the page + The list or array of fieldnames to return. + A DataTable populated with data rows with only the specified values. + + + + The number of rows + + + + + + This gets a copy of the actual internal list of columns. + This should never be used to make changes to the column collection. + + + + + Checks that shape file can be saved to given fileName. + + File name to save. + Overwrite file or not. + + + + Saves header + + File to save. + + + + The buffer size is an integer value in bytes specifying how large a piece of memory can be used at any one time. + Reading and writing from the disk is faster when done all at once. The larger this number the more effective + the disk management, but the more ram will be required (and the more likely to trip an out of memory error). + + + + + Gets whether or not the attributes have all been loaded into the data table. + + + + + This re-directs the DataTable to work with the attribute Table instead. + + + + + A general header structure that stores some basic information about the shapefile. + + + + + Gets or sets the attribute Table used by this shapefile. + + + + + + + + Creates a new instance of a LineShapefile for in-ram handling only. + + + + + Creates a new instance of a LineShapefile that is loaded from the supplied fileName. + + The string fileName of the polygon shapefile to load + + + + Opens a shapefile + + The string fileName of the line shapefile to load + Any valid implementation of the DotSpatial.Data.IProgressHandler + + + + Gets the specified feature by constructing it from the vertices, rather + than requiring that all the features be created. (which takes up a lot of memory). + + The integer index + + + + Saves the file to a new location + + The fileName to save + Boolean that specifies whether or not to overwrite the existing file + + + + A shapefile class that handles the special case where each features has multiple points + + + + + Creates a new instance of a MultiPointShapefile for in-ram handling only. + + + + + Creates a new instance of a MultiPointShapefile that is loaded from the supplied fileName. + + The string fileName of the polygon shapefile to load + + + + Gets the feature at the specified index offset + + the integer index + An IFeature created from the shape at the specified offset + + + + Opens a shapefile + + The string fileName of the point shapefile to load + Any valid implementation of the DotSpatial.Data.IProgressHandler + + + + Saves the file to a new location + + The fileName to save + Boolean that specifies whether or not to overwrite the existing file + + + + Numbers are based on the old school dbf definitions of data formats, and so can only store + a very limited range of values. + + + + + Numbers can contain ASCII text up till 18 characters long, but no longer + + + + + Format provider to use to convert DBF numbers to strings and characters + + + + + Creates a new instance of NumberConverter where the length and decimal count are known. + + + + + Cycles through the numeric values in the specified column and determines a selection of + length and decimal count can accurately store the data. + + + + + Creates a new, random double that is constrained by the specified length and decimal count. + + + + + + Creates a new, random float that is constrained by the specified length and decimal count. + + A new float. Floats can only store about 8 digits of precision, so specifying a high + + + + Creates a new, random decimal that is constrained by the specified length and decimal count. + + + + + + Creates a new random array of characters that represents a number and is constrained by the specified length and decimal count + + The integer number of significant (non-zero) digits that should be created as part of the number. + A character array of that matches the length and decimal count specified by this properties on this number converter + + + + Converts from a string, or 0 if the parse failed + + The string value to parse + + + + + Converts the specified double value to a string that can be used for the number field + + The double precision floating point value to convert to a string + A string version of the specified number + + + + Converts the specified decimal value to a string that can be used for the number field + + The decimal value to convert to a string + A string version of the specified number + + + + Converts the specified float value to a string that can be used for the number field + + The floating point value to convert to a string + A string version of the specified number + + + + Converts the specified decimal value to a string that can be used for the number field + + The decimal value to convert to a string + A string version of the specified number + + + + Converts the specified decimal value to a string that can be used for the number field + + The decimal value to convert to a string + A string version of the specified number + + + + Converts the specified decimal value to a string that can be used for the number field + + The decimal value to convert to a string + A string version of the specified number + + + + Compute and update the DecimalFormatString from the precision specifier + + + + + Gets or set the length + + + + + Gets or sets the decimal count to use for this number converter + + + + + Gets or sets the format string used to convert doubles, floats, and decimals to strings + + + + + NumberException + + + + + An exception that is specifically fo the NumberConverter class + + The message for the exception + + + + A shapefile class that handles the special case where the data type is point + + + + + Creates a new instance of a PointShapefile for in-ram handling only. + + + + + Creates a new instance of a PointShapefile that is loaded from the supplied fileName. + + The string fileName of the polygon shapefile to load + + + + Opens a shapefile + + The string fileName of the point shapefile to load + Any valid implementation of the DotSpatial.Data.IProgressHandler + + + + Obtains a typed list of ShapefilePoint structures with double values associated with the various coordinates. + + A string fileName + Progress handler + + + + + + + Saves the shapefile to a different fileName, but still as a shapefile. This method does not support saving to + any other file format. + + The string fileName to save as + A boolean that is true if the file should be overwritten + + + + A shapefile class that handles the special case where the data is made up of polygons + + + + + Creates a new instance of a PolygonShapefile for in-ram handling only. + + + + + Creates a new instance of a PolygonShapefile that is loaded from the supplied fileName. + + The string fileName of the polygon shapefile to load + + + + Opens a shapefile + + The string fileName of the polygon shapefile to load + Any valid implementation of the DotSpatial.Data.IProgressHandler + + + + Gets the specified feature by constructing it from the vertices, rather + than requiring that all the features be created. (which takes up a lot of memory). + + The integer index + + + + Saves the file to a new location + + The fileName to save + Boolean that specifies whether or not to overwrite the existing file + + + + The header for the .shp file and the .shx file that support shapefiles + + + + + Creates a new, blank ShapeHeader + + + + + Opens the specified fileName directly + + The string fileName to open as a header. + + + + Resets all the extent values to 0 + + + + + Parses the first 100 bytes of a shapefile into the important values + + The fileName to read + + + + Saves changes to the .shp file will also automatically update the .shx file. + + + + + Saves changes to the .shp file and will also automatically create the header for the .shx file. + This will no longer automatically delete an existing shapefile. + + The string fileName to create. + + + + Writes the current content to the specified file. + + The string fileName to write to + The only difference between the shp header and the + shx header is the file length parameter. + + + + Generates a new envelope based on the extents of this shapefile. + + An Envelope + + + + Generates a new extent from the shape header. This will infer the whether the ExtentMZ, ExtentM + or Extent class is the best implementation. Casting is required to access the higher + values from the Extent return type. + + Extent, which can be Extent, ExtentM, or ExtentMZ + + + + The shape type is assumed to be fixed, and will control how the input extent is treated as far + as M and Z values, rather than updating the shape type based on the extent. + + + + + Gets or sets the integer file code that should always be 9994. + + + + + Gets or sets the integer file length in bytes + + + + + Gets or sets the string fileName to use for this header + + + + + Gets or sets the DotSpatial.Data.Shapefiles.ShapeType enumeration specifying + whether the shapes are points, lines, polygons etc. + + + + + Changes the extension of the fileName to .shx instead of .shp + + + + + Gets or sets the version, which should be 1000 + + + + + The minimum X coordinate for the values in the shapefile + + + + + The maximum X coordinate for the shapes in the shapefile + + + + + The minimum Y coordinate for the values in the shapefile + + + + + The maximum Y coordinate for the shapes in the shapefile + + + + + The minimum Z coordinate for the values in the shapefile + + + + + The maximum Z coordinate for the shapes in the shapefile + + + + + The minimum M coordinate for the values in the shapefile + + + + + The maximum M coordinate for the shapes in the shapefile + + + + + Gets or sets the length of the shx file in 16 bit words. + + + + + A simple structure that contains the elements of a shapefile that must exist + + + + + The content length + + + + + The offset in 16-bit words + + + + + The offset in bytes + + + + + The length in bytes + + + + + The FeatureSetPack contains a MultiPoint, Line and Polygon FeatureSet which can + handle the various types of geometries that can arrive from a mixed geometry. + + + + + The featureset with all the lines + + + + + The featureset with all the points + + + + + The featureset with all the polygons + + + + + Stores the raw vertices from the different shapes in a list while being created. + That way, the final array can be created one time. + + + + + Creates a new instance of the FeatureSetPack + + + + + + + + Clears the vertices and sets up new featuresets. + + + + + Adds the shape. Assumes that the "part" indices are created with a 0 base, and the number of + vertices is specified. The start range of each part will be updated with the new shape range. + The vertices array itself iwll be updated during hte stop editing step. + + + + + + + Finishes the featuresets by converting the lists + + + + + Combines the vertices, finalizing the creation + + + + + + + + Enuemratres the FeatureSetPack in Polygon, Line, Point order. If any member + is null, it skips that member. + + + + + Creates the FeatureSetPackEnumerator based on the specified FeaturSetPack + + The Pack + + + + + + + + + + + + + + + + WKBPointReader + + + + + Given the array of bytes, this reverses the bytes based on size. So if size if 4, the + reversal will flip uints of 4 bytes at a time. + + + + + + + + + The raw byte data. + + + + + + + The raw byte data. + The count of integers, not bytes. + + + + + Reads the specified number of doubles + + + + + + + + Since WKB can in fact store different kinds of shapes, this will split out + each type of shape into a different featureset. If all the shapes are + the same kind of feature, thre will only be one list of feature types. + + + + + + + Gets a FeatureSetPack from the wkb + + + + + + + Reads only a single geometry into a feature. This may be a multi-part geometry. + + + + + + + Reads only a single geometry into a feature. This may be a multi-part geometry, + but cannot be a mixed part geometry. Anything that registers as "geometryCollection" + will trigger an exception. + + + + + + + Attempts to read in an entry to the specified feature type. If the feature type does not match + the geometry type, this will return null. (A Point geometry will be accepted by MultiPoint + feature type, but not the other way arround. Either way, this will advance the reader + through the shape feature. Using the Unspecified will always return the shape it reads, + or null in the case of mixed feature collections which are not supported. + + + + + + + + This assumes that the byte order and shapetype have already been read. + + + + + + This assumes that the byte order and shapetype have already been read. + + + + + + + Reads one multipoint shape from a data stream. + (this assumes that the two bytes (endian and type) have already been read. + + + + + + + Fix introduced by JamesP@esdm.co.uk. 3/11/2010 + Using Array.Reverse does not work because it has the unwanted effect of flipping + the X and Y values. + + The double precision XY coordinate array of vertices + The double array in reverse order. + + + + Calculates the area and if the area is negative, this is considered a hole. + + Boolean, true if this has a negative area and should be thought of as a hole + + + + Vertices require methods to work quickly with data. These are not designed to be inherited, + overridden or equiped with interfaces and properties. + + + + + RangeIndex + + + + + Creates an empty vertex range that can have the vertices and number of vertices assigned later + + + + + Creates a new instance of RangeIndex + + An array of all the vertex locations + + + + + + Gets an enumerator. This exists to make it easier to cycle values, + but in truth should not be used because it re-adds the property accessor + which slows down the data access, which is the whole point of putting + all the vertices into a jagged array of doubles in the first place. + + + + + + For parts, controlling the part offset is perhaps more useful that controlling the shape offset. + + + + + The StartIndex is the sum of the shape offset and the part offset. Controlling them separately + allows the entire shape offset to be adjusted independantly after the part is created. + + + + + The integer index of the first vertex included in this range. This is overridden + in the case of part ranges to also take into account the shape start index. + + + + + the integer index of the last vertex included in this range + + + + + Gets or sets the number of vertices. This will also set the EndIndex + relative to the start position. + + + + + Gets or sets the vertices + + + + + The enumerator is here to provide an easy method for cycling vertex values + in each range. This sort of defeats the point because it adds + two method calls for advancing each step (one to MoveNext and one to + access the property. The whole point of loading everything + into a single array of vertices in the first place is to avoid + property accessors slowing down the process. However, it's here + if someone wants it. + + + + + Creates a new instance of the VertexRangeEnumerator + + The vertices to create + The integer index of the first included vertex + The integer index of the last included vertex + + + + This does nothing + + + + + Advances the enumerator to the next position + + + + + + Resets this enumerator to the beginning of the range of vertices + + + + + Gets the current value. + + + + + StartRange, count and vertices will be declared later. + + + + + + Creates a new instance of Part + + An array of all the vertex locations + The point index of the shape. + The ponit index of the part. + The type of features. + + + + This returns a shallow copy, and expects any resetting of the vertex arrays to occur at a + higher level. + + + + + + Calculates the area and if the area is negative, this is considered a hole. + + Boolean, true if this has a negative area and should be thought of as a hole + + + + This creates a new extent and cylces through the coordinates to calculate what it is. + Since the vertices may change so easilly, this is not cached. + + + + + + Gets a segment range enumerator. + + + + + Segment + + + + + The start point of the segment + + + + + the end point of the segment + + + + + Creates a segment from double valued ordinates. + + + + + + + + + Creates a new instance of Segment + + + + + Uses the intersection count to detect if there is an intersection + + + + + + + Calculates the shortest distance to this line segment from the specified MapWinGIS.Point + + A MapWinGIS.Point specifing the location to find the distance to the line + A double value that is the shortest distance from the given Point to this line segment + + + + Returns a vertex representing the closest point on this line segment from a given vertex + + The point we want to be close to + The point on this segment that is closest to the given point + + + + Returns a vertex representing the closest point on this line segment from a given vertex + + The point we want to be close to + If true treat the line as infinitly long + Outputs 0 if the vertex is on the line segment, 1 if beyond P0, 2 if beyong P1 and -1 if P1=P2 + The point on this segment or infinite line that is closest to the given point + + + + Casts this to a vector + + + + + + Determines the shortest distance between two segments + + Segment, The line segment to test against this segment + Double, the shortest distance between two segments + + + + Returns 0 if no intersections occur, 1 if an intersection point is found, + and 2 if the segments are colinear and overlap. + + + + + + + Tests to see if the specified segment contains the point within Epsilon tollerance. + + + + + + Gets or sets the precision for calculating equality, but this is just a re-direction to Vertex.Epsilon + + + + + SegmentSet + + + + + + + + Creates a new instance of SegmentSet + + + + + Gets the feature type + + + + + Gets the part + + + + + Cycles through the points, creating segments. If the feature type is a polygon, then this will + loop around again at the end of the part to create a segment from the first and last vertex. + + + + + Creates a new enumerator given the SegmentRange + + + + + + Does nothing + + + + + Advances the enumerator to the next member + + True if a member is found, false if there are no more members + + + + + + + Gets the current segment + + + + + The shape caries information about the raw vertices as well as a shapeRange. + It is effectively away to move around a single shape. + + + + + Creates a new instance of Shape + + + + + Creates a new shape type where the shaperange exists and has a type specified + + + + + + Creates a shape based on the specified feature. This shape will be standing alone, + all by itself. The fieldnames and field types will be null. + + + + + + Creates a shape based on the specified geometry. This shape will be standing alone, + all by itself. The attributes will be null. + + The geometry to create a shape from. + + + + Creates a point shape from a coordinate + + + + + + Creates a point shape from a vertex + + + + + + Creates a clockwise polygon shape from an extent + + + + + + Creates a clockwise polygon shape from an envelope + + + + + + Converts this shape into a Geometry using the default factory. + + The geometry version of this shape. + + + + Converts this shape into a Geometry. + + The geometry version of this shape. + + + + Get the point for this shape if this is a point shape. + + + + + + + Creates a new MultiPoint geometry from a MultiPoint shape + + The IGeometryFactory to use to create the new shape. + + + + + Gets the line for the specified index + + A LineString or MultiLineString geometry created from this shape. + + + + Creates a Polygon or MultiPolygon from this Polygon shape. + + The IGeometryFactory to use to create the new IGeometry. + The IPolygon or IMultiPolygon created from this shape. + + + + Test if a point is in a list of coordinates. + + TestPoint the point to test for. + PointList the list of points to look through. + true if testPoint is a point in the pointList list. + + + + Copies the field names and types from the parent feature set if they are currently null. + Attempts to copy the members of the feature's datarow. This assumes the features have been + loaded into memory and are available on the feature's DataRow property. + + An IFeature to copy the attributes from. If the schema is null, this will try to use the parent featureset schema. + + + + Create a ShapeRange from a Geometry to use in constructing a Shape + + + + offset into vertices array where this feature starts + + + + + Create a ShapeRange from a Feature to use in constructing a Shape + + + + offset into vertices array where this feature starts + + + + + Create a ShapeRange from a Feature to use in constructing a Shape + + + + + + + + Without changing the feature type or anything else, simply update the local coordinates + to include the new coordinates. All the new coordinates will be considered one part. + Since point and multi-point shapes don't have parts, they will just be appended to the + original part. + + + + + This creates a duplicate shape, also copying the vertex array to + a new array containing just this shape, as well as duplicating the attribute array. + The FieldNames and FieldTypes are a shallow copy since this shouldn't change. + + + + + + Gets or sets the minimum M + + + + + Gets or sets the maximum M + + + + + Gets or sets the minimum Z + + + + + Gets or sets the maximum Z + + + + + Gives a way to cycle through the vertices of this shape. + + + + + The double vertices in X1, Y1, X2, Y2, ..., Xn, Yn order. + + + + + The Z values if any + + + + + The M values if any, organized in order. + + + + + Gets or sets the attributes. Since the most likely use is to copy values from one source to + another, this should be an independant array in each shape and be deep-copied. + + + + + ShapefileDataProvider + + + + + IFeatureProvider + + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance + Point, Line, Polygon etc. Sometimes this will be specified, sometimes it will be "Unspecified" + Boolean, true if the dataset should attempt to store data entirely in ram + An IProgressHandler for status messages. + An IRaster + + + + This tests the specified file in order to determine what type of vector the file contains. + This returns unspecified if the file format is not supported by this provider. + + The string fileName to test + A FeatureType clarifying what sort of features are stored on the data type. + + + + This tests the specified file in order to determine what type of vector the file contains. + This returns unspecified if the file format is not supported by this provider. + + The string fileName to test + A FeatureType clarifying what sort of features are stored on the data type. + + + + This create new method implies that this provider has the priority for creating a new file. + An instance of the dataset should be created and then returned. By this time, the fileName + will already be checked to see if it exists, and deleted if the user wants to overwrite it. + + The string fileName for the new instance + Point, Line, Polygon etc. Sometimes this will be specified, sometimes it will be "Unspecified" + Boolean, true if the dataset should attempt to store data entirely in ram + An IProgressHandler for status messages. + An IRaster + + + + This open method is only called if this plugin has been given priority for one + of the file extensions supported in the DialogReadFilter property supplied by + this control. Failing to provide a DialogReadFilter will result in this plugin + being added to the list of DataProviders being supplied under the Add Other Data + option in the file menu. + + A string specifying the complete path and extension of the file to open. + A List of IDataSets to be added to the Map. These can also be groups of datasets. + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceded by the name provided on this object. + + + + + Gets a preferably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This is a basic description that will fall next to your plugin in the Add Other Data dialog. + This will only be shown if your plugin does not supply a DialogReadFilter. + + + + + Gets or sets the progress handler + + + + + Control the epsilon to use for the intersect calculations + + + + + Creates a shallow copy of everything except the parts list and extent, which are deep copies. + + + + + + Considers the ShapeType and upgrades the extent class to accommodate M and Z. + This is automatically called form the setter of ShapeType. + + + + + Creates a blank instance of a shaperange where vertices can be assigned later. + the feature type clarifies point, line, or polygon. + The coordinate type clarifies whether M or Z values exist. + + + + + Creates a new "point" shape that has only the one point. + + + + + + Initializes a new instance of the ShapeRange class. + + The envelope to turn into a shape range. + + + + This creates a polygon shape from an extent. + + The extent to turn into a polygon shape. + + + + Forces each of the parts to adopt an extent equal to a calculated extents. + The extents for the shape will expand to include those. + + + + + Gets the first vertex from the first part. + + + + + + Tests the intersection with an extents + + + + + + + Tests the intersection using an envelope + + + + + + + Tests the intersection with a coordinate + + + + + + + Tests the intersection with a vertex + + + + + + + Tests the intersection with a shape + + + + + + + This calculations processes the intersections + + The shape to do intersection calculations with. + + + + This sets the vertex array by cycling through each part index and updates. + + The double array of vertices that should be referenced by the parts. + + + + Given a vertex, this will determine the part that the vertex is within. + + + + + + + gets the integer end index as calculated from the number of points and the start index + + + + + + The feature type + + + + + The content length + + + + + If this is null, then there is only one part for this ShapeIndex. + + + + + The record number (for .shp files usually 1-based) + + + + + The starting index for the entire shape range. + + + + + Gets or sets the extent of this shape range. Setting this will prevent + the automatic calculations. + + + + + The shape type for the header of this shape + + + + + The number of points in the entire shape + + + + + If this is set, then it will cache an integer count that is independant from Parts.Count. + If this is not set, (or set to a negative value) then getting this will return Parts.Count + + + + + An enumeration listing the various valid shape types supported by Esri Shapefile formats + + + + + 0 - No shape type specified, or the shapetype is invalid + + + + + 1 - Each shape is a single point + + + + + 3 - Each shape is a collection of vertices that should be connected to form a striaght line + + + + + 5 - Each shape is a closed linestring + + + + + 8 - Each shape consists of severel, unconnected points + + + + + 11 - Each shape is a point with a Z value + + + + + 13 - Each shape is a linestring with each vertex having a z value + + + + + 15 - Each shape is a closed linestring with each vertex having a z value + + + + + 18 - Each shape has several unconnected points, each of which has a z value + + + + + 21 - Each shape has several unconnected points, each of which has an m and z value + + + + + 23 - Each shape is made up of several points connected to form a line, each vertex having an m and z value + + + + + 25 - Each shape is a closed linestring with each vertex having a z value and m value + + + + + 28 - Each shape has several unconnected points, each of which has a z value and m value + + + + + 31 - Not sure what this does + + + + + UnspecifiedFeaturetypeException + + + + + Creates a new instance of UnspecifiedFeaturetypeException + + + + + A vertex is a two dimensional structure with an X and a Y value. This is deliberately kept as small as possibl.e + + + + + The tolerance for testing equality + + + + + An X coordinate + + + + + The Y coordinate + + + + + Creates a new instance of Vertex + + + + + Casts this vertex to a coordinate + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This class handles some extension methods that also require System.Drawing. + + + + + This method assumes that there was a direct correlation between this envelope and the original + rectangle. This reproportions this window to match the specified newRectangle. + + The original envelope + The original rectangle + The new rectangle + A new IEnvelope + + + + This allows the creation of the correct kind of Extent class from an Envelope, which can contain + M or Z values. + + The Envelope to convert into an Extent. + + + + + Contains various extensions for Rectangle + + + + + Calculates the intersection by casting the floating point values to integer values. + + This rectangle + The floating point rectangle to calculate against + + + + + Tests the location of the point. If the point is outside of the current rectangle, then the bounds + of the rectangle are adjusted to include the new point. + + + + + + + Expands the rectangle by the specified integer distance in all directions. + + The rectangle to expand + The distance + + + + NullExceptioncs + + + + + Creates a new instance of the NullLogException, but does not set the message + or log the exception. + + + + + Creates a new instance of NullException + + + + + A list that also includes several events during its existing activities. + List is fussy about inheritance, unfortunately, so this wraps a list + and then makes this class much more inheritable + + + + + A Copy list is something that is specifically designed to allow internal items + to be cloned. + + + + + Returns a duplicate of this entire list, where each item has been cloned + if it implements ICloneable. Otherwise, the values will be a shallow copy. + + + + + + This copies any individual members of the list. If the item can be + cloned, then it copies the cloned item. Otherwise it copies the + regular item. This method can be overridden to handle special behavior + in sub-classes. + + + + + + IChangeEventList + + + + + IChangeEvent + + + + + Resumes event sending and fires a ListChanged event if any changes have taken place. + This will not track all the individual changes that may have fired in the meantime. + + + + + Temporarilly suspends notice events, allowing a large number of changes. + + + + + Gets whether or not the list is currently suspended + + + + + IChangeItem + + + + + Occurs when internal properties or characteristics of this member change. + The member should send itself as the sender of the event. + + + + + An instruction has been sent to remove the specified item from its container. + + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain + elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to + true. + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to true. + + + + Resumes event sending and fires a ListChanged event if any changes have taken place. + This will not track all the individual changes that may have fired in the meantime. + + + + + Temporarilly suspends notice events, allowing a large number of changes. + + + + + An overriding event handler so that we can signfiy the list has changed + when the inner list has been set to a new list. + + + + + Overrides the normal clear situation so that we only update after all the members are cleared. + + + + + Occurs during the copy process and overrides the base behavior so that events are suspended. + + + + + + Occurs when ResumeEvents has been called enough times so that events are re-enabled. + + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + index and count do not denote a valid range of elements in the EventList<T>. + index is less than 0.-or-count is less than 0. + Unable to reverse while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the entire EventList<T>. + + Unable to reverse while the ReadOnly property is set to true. + + + + Inserts the elements of a collection into the EventList<T> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the EventList<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + index is less than 0.-or-index is greater than EventList<T>.Count. + collection is null. + Unable to insert while the ReadOnly property is set to true. + + + + Removes a range of elements from the EventList<T>. + + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + This is a notification that characteristics of one of the members of the list may have changed, + requiring a refresh, but may not involve a change to the the list itself + + + + + + + Occurs when the item is changed. If this list is not suspended, it will forward the change event + on. Otherwise, it will ensure that when resume events is called that the on change method + is fired at that time. + + + + + + Fires the ListChanged Event + + + + + This is either a layer collection or a colorbreak collection, and so + this won't be called by us, but someone might want to override this for their own reasons. + + + + + Occurs when wiring events on a new item + + + + + + Occurs when unwiring events on new items + + + + + + This event is for when it is necessary to do something if any of the internal + members changes. It will also forward the original item calling the message. + + + + + Occurs when this list should be removed from its container + + + + + Gets whether or not the list is currently suspended + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + The IEnumerable<T> specified during the event"/> + + + + Gets the list item being referenced by this event + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + Creates a new instance of a ListEventArgs class + + the IEnumerable<T> responsible for the event + + + + Gets the list item being referenced by this event + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + The IEnumerable<T> specified during the event"/> + The integer index associated with this event + + + + Gets the IEnumerable<T> collection of items involved in this event + + + + + Gets the index in the list where the event is associated + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + Creates a new instance of a ListEventArgs class + + the IEnumerable<T> responsible for the event + the Integer index associated with this event + + + + Gets the IEnumerable<T> collection involved in this event + + + + + Gets the integer index in the IEventList where this event occured + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + Creates a new instance of a ListEventArgs class. + + the IEnumerable<T> responsible for the event. + The System.Collections.Generic.IComparer<T> being used by this action. + the Integer index associated with this event. + + + + Gets the IEnumerable<T> collection involved in this event + + + + + Gets the integer index in the IEventList where this event occured + + + + + The System.Collections.Generic.IComparer<T> being used by this action + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + Creates a new instance of a ListEventArgs class. + + the IEnumerable<T> responsible for the event. + The System.Collections.Generic.IComparer<T> being used by this action. + the Integer index associated with this event. + + + + Gets the IEnumerable<T> collection involved in this event + + + + + Gets the integer index in the IEventList where this event occured + + + + + The System.Collections.Generic.IComparer<T> being used by this action + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + The System.Collections.Generic.IComparer<T> being used by this action + + + + Gets the System.Collections.Generic.IComparer<T> being referenced by this event + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + Creates a new instance of a ListEventArgs class + + The System.Collections.Generic.IComparer<T> being used by this action + + + + Gets the comparer being used in this action + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + The System.Comparison<T> being used by this action + + + + Gets System.Comparison being referenced by this event + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + The protected System.Collections.Generic.IComparer<T> being used by this action + + + + + Creates a new instance of a ListEventArgs class + + The System.Collections.Generic.IComparer<T> being used by this action + + + + Gets the comparer being used in this action + + + + + A list that also includes several events during its existing activities. + List is fussy about inheritance, unfortunately, so this wraps a list + and then makes this class much more inheritable + + + + + This describes a generic tool to help with keeping track of strong typed lists. + The usual list, however, provides no event handling whatsoever. + This list also provides an event for each of the major actions. + + The type of the members in the list. + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the specified comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T>generic interface or the System.IComparable interface for type T. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> for an element using the specified comparer and returns the zero-based index of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + + + Converts the elements in the current DotSpatial.Interfaces.Framework.IEventList<T> to another type, and returns a list containing the converted elements. + + The output type to convert to + A System.Converter<TInput, TOutput> delegate that converts each element from one type to another type. + A DotSpatial.Interfaces.Framework.IEventList<T> of the target type containing the converted elements from the current DotSpatial.Interfaces.Framework.IEventList<T>. + converter is null. + + + + Determines whether the DotSpatial.Interfaces.Framework.IEventList<T> contains elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to search for. + true if the DotSpatial.Interfaces.Framework.IEventList<T> contains one or more elements that match the conditions defined by the specified predicate; otherwise, false. + match is null. + + + + Performs the specified action on each element of the DotSpatial.Interfaces.Framework.IEventList<T>. + + The System.Action<T> delegate to perform on each element of the DotSpatial.Interfaces.Framework.IEventList<T>. + action is null. + + + + Creates a shallow copy of a range of elements in the source DotSpatial.Interfaces.Framework.IEventList<T>. + + The zero-based DotSpatial.Interfaces.Framework.IEventList<T> index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source DotSpatial.Interfaces.Framework.IEventList<T>. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + index and count do not denote a valid range of elements in the DotSpatial.Interfaces.Framework.IEventList<T>. + index is less than 0.-or-count is less than 0. + + + + Reverses the order of the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T>. + + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the specified System.Comparison<T>. + + The System.Comparison<T> to use when comparing elements. + The implementation of comparison caused an error during the sort. For example, comparison might not return 0 when comparing an item with itself. + comparison is null. + + + + Sorts the elements in a range of elements in DotSpatial.Interfaces.Framework.IEventList<T> using the specified comparer. + + The zero-based starting index of the range to sort. + The length of the range to sort. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + index and count do not specify a valid range in the DotSpatial.Interfaces.Framework.IEventList<T>.-or-The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + index is less than 0.-or-count is less than 0. + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the specified comparer. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the default comparer. + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Copies the elements of the DotSpatial.Interfaces.Framework.IEventList<T> to a new array. + + An array containing copies of the elements of the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Sets the capacity to the actual number of elements in the DotSpatial.Interfaces.Framework.IEventList<T>, if that number is less than a threshold value. + + + + + Determines whether every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions to check against the elements. + true if every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate; otherwise, false. If the list has no elements, the return value is true. + match is null. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that starts at the specified index and contains the specified number of elements. + + The object to locate in the DotSpatial.Interfaces.Framework.IEventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that starts at index and contains count number of elements, if found; otherwise, –1. + index is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from the specified index to the last element. + + The object to locate in the DotSpatial.Interfaces.Framework.IEventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The zero-based index of the first occurrence of item within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from index to the last element, if found; otherwise, –1. + index is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Inserts the elements of a collection into the DotSpatial.Interfaces.Framework.IEventList<T> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the DotSpatial.Interfaces.Framework.IEventList<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + index is less than 0.-or-index is greater than DotSpatial.Interfaces.Framework.IEventList<T>.Count. + collection is null. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that contains the specified number of elements and ends at the specified index. + + The object to locate in the DotSpatial.Interfaces.Framework.IEventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of item within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that contains count number of elements and ends at index, if found; otherwise, –1. + index is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from the first element to the specified index. + + The object to locate in the DotSpatial.Interfaces.Framework.IEventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of item within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from the first element to index, if found; otherwise, –1. + index is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire DotSpatial.Interfaces.Framework.IEventList<T>. + + The object to locate in the DotSpatial.Interfaces.Framework.IEventList<T>. The value can be null for reference types. + The zero-based index of the last occurrence of item within the entire the DotSpatial.Interfaces.Framework.IEventList<T>, if found; otherwise, –1. + + + + Removes the all the elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to remove. + The number of elements removed from the DotSpatial.Interfaces.Framework.IEventList<T> + match is null. + + + + Removes a range of elements from the DotSpatial.Interfaces.Framework.IEventList<T>. + + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that starts at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1 + startIndex is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the DotSpatial.Interfaces.Framework.IEventList<T>. + match is null + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + startIndex is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire DotSpatial.Interfaces.Framework.IEventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire DotSpatial.Interfaces.Framework.IEventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type T. + match is null." + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that contains the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + startIndex is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the DotSpatial.Interfaces.Framework.IEventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the DotSpatial.Interfaces.Framework.IEventList<T> that extends from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + : startIndex is outside the range of valid indexes for the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire DotSpatial.Interfaces.Framework.IEventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Copies a range of elements from the DotSpatial.Interfaces.Framework.IEventList<T> to a compatible one-dimensional array, starting at the specified index of the target array. + + The zero-based index in the source DotSpatial.Interfaces.Framework.IEventList<T> at which copying begins + The one-dimensional System.Array that is the destination of the elements copied from DotSpatial.Interfaces.Framework.IEventList<T>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + array is null. + index is less than 0.-or-arrayIndex is less than 0.-or-count is less than 0. + index is equal to or greater than the DotSpatial.Interfaces.Framework.IEventList<T>.Count of the source DotSpatial.Interfaces.Framework.IEventList<T>.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements from index to the end of the source DotSpatial.Interfaces.Framework.IEventList<T> is greater than the available space from arrayIndex to the end of the destination array. + + + + Copies the entire DotSpatial.Interfaces.Framework.IEventList<T> to a compatible one-dimensional array, starting at the beginning of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from DotSpatial.Interfaces.Framework.IEventList<T>. The System.Array must have zero-based indexing. + The number of elements in the source DotSpatial.Interfaces.Framework.IEventList<T> is greater than the number of elements that the destination array can contain. + array is null. + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + The number of elements that the DotSpatial.Interfaces.Framework.IEventList<T> can contain before resizing is required. + + DotSpatial.Interfaces.Framework.IEventList<T>.Capacity is set to a value that is less than DotSpatial.Interfaces.Framework.IEventList<T>.Count. + + + + Occurs before an item is added to the List. + There is no index yet specified because it will be added to the + end of the list. + + + + + Occurs before a range of items is added to the list. + There is no index yet, but this event can be cancelled. + + + + + Occurs after an item has already been added to the list. + The index where the item was added is specified. + + + + + Occurs after a range has already been added to the list. + This reveals the index where the beginning of the range + was added, but cannot be canceled. + + + + + Occurs before an item is inserted. The index of the requested + insertion as well as the item being inserted and an option to + cancel the event are specified + + + + + Occurs before a range is inserted. The index of the requested + insertion location as well as the item being inserted and an option to + cancel the event are provided in the event arguments + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs before an item is removed from the List. + Specifies the item, the current index and an option to cancel. + + + + + Occurs before a range is removed from the List. + Specifies the range, the current index and an option to cancel. + + + + + Occurs after an item is removed from the List. + Gives a handle to the item that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs after an item is removed from the List. + Gives a handle to the range that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs before all the elements that match a predicate are removed. + Supplies an IEnumerable list in the event args of all the items + that will match the expression. This action can be cancelled. + + + + + Occurs after all the elements that matched a predicate were + removed. The values are the items that were successfully removed. + The action has already happened, and so cannot be cancelled here. + + + + + Occurs before the list is cleared and can cancel the event. + + + + + Occurs after the list is cleared and this cannot be canceled. + + + + + Occurs after a method that sorts or reorganizes the list + + + + + Occurs before a specific range is reversed + + + + + Occurs after a specific range is reversed + + + + + Occurs before the entire list is reversed + + + + + Occurs after the entire list is reversed + + + + + Occurs just after the list or any sub portion + of the list is sorted. This event occurs in + addition to the specific reversal case. + + + + + Occurs just before the list or any sub portion + of the list is sorted. This event occurs in + addition to the specific reversal case. + + + + + Occurs just before any of the specific sorting methodsin addition + to the event associated with the specific method. + + + + + Occurs after any of the specific sorting methods in addition + to the event associated with the specific method. + + + + + Occurs just before the entire list is sorted + + + + + Occurs after the entire list has been sorted + + + + + Occurs just before the Sort method that uses a System.Comparison<T> + This event can cancel the action. + + + + + Occurs just after the Sort method that uses a System.Comparison<T> + + + + + Occurs just before the Sort method that only sorts a specified range. + This event can cancel the action. + + + + + Occurs just after the Sort method that only sorts a specified range. + + + + + Decides whether or not this list can be changed. This characteristic + can be set, so that once it becomes readonly, methods that would normally + change the sequence or number of members will be prevented and throw an + Application error. + + + + + The internal list of items + + + + + Initializes a new instance of the EventList<T> class that is empty and has the default initial capacity. + + + + + Initializes a new instance of the EventList<T> class that is empty and has the specified initial capacity. + + The number of elements that the new list can initially store. + capacity is less than 0. + + + + Initializes a new instance of the EventList<T> class that contains elements copied from the specified collection and has sufficient capacity to accommodate the number of elements copied. + + The collection whose elements are copied to the new list. + collection is null. + + + + Adds an object to the end of the System.Collections.Generic.List<T>. + + The object to be added to the end of the System.Collections.Generic.List<T>. + The value can be null for reference types. + Unable to add while the ReadOnly property is set to true. + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to true. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the specified comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + comparer is null, and the default comparer + System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T>generic + interface or the System.IComparable interface for type T. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> for an element using the specified comparer and returns the zero-based index of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + + + Removes all elements from the EventList<T>. + + Unable to clear while the ReadOnly property is set to true. + + + + Determines whether an element is in the System.Collections.Generic.List<T>. + + The object to locate in the System.Collections.Generic.List<T>. The value can be null for reference types. + true if item is found in the System.Collections.Generic.List<T> otherwise, false. + + + + Determines whether the EventList<T> contains elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to search for. + true if the EventList<T> contains one or more elements that match the conditions defined by the specified predicate; otherwise, false. + match is null. + + + + Performs the specified action on each element of the EventList<T>. + + The System.Action<T> delegate to perform on each element of the EventList<T>. + action is null. + + + + Returns an enumerator that iterates through this list + + + + + + Creates a shallow copy of a range of elements in the source EventList<T>. + + The zero-based EventList<T> index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source EventList<T>. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that starts at the specified index and contains the specified number of elements. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<T> that starts at index and contains count number of elements, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that extends from the specified index to the last element. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<T> that extends from index to the last element, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire System.Collections.Generic.List<T>. + + The object to locate in the System.Collections.Generic.List<T>. The value can be null for reference types. + The zero-based index of the first occurrence of item within the entire System.Collections.Generic.List<T>, if found; otherwise, –1. + + + + Inserts the elements of a collection into the EventList<T> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the EventList<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + index is less than 0.-or-index is greater than EventList<T>.Count. + collection is null. + Unable to insert while the ReadOnly property is set to true. + + + + Inserts an element into the System.Collections.Generic.List<T> at the specified index. + + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + index is less than 0.-or-index is greater than System.Collections.Generic.List<T>.Count. + Unable to insert while the ReadOnly property is set to true. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that contains the specified number of elements and ends at the specified index. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<T> that contains count number of elements and ends at index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that extends from the first element to the specified index. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<T> that extends from the first element to index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire EventList<T>. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based index of the last occurrence of item within the entire the EventList<T>, if found; otherwise, –1. + + + + Removes the first occurrence of a specific object from the System.Collections.Generic.List<T>. + + The object to remove from the System.Collections.Generic.List<T>. The value can be null for reference types. + true if item is successfully removed; otherwise, false. This method also returns false if item was not + found in the System.Collections.Generic.List<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the all the elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to remove. + The number of elements removed from the EventList<T> + match is null. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the element at the specified index of the System.Collections.Generic.List<T>. + + The zero-based index of the element to remove. + Unable to remove while the ReadOnly property is set to true. + + + + Removes a range of elements from the EventList<T>. + + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + index and count do not denote a valid range of elements in the EventList<T>. + index is less than 0.-or-count is less than 0. + Unable to reverse while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the entire EventList<T>. + + Unable to reverse while the ReadOnly property is set to true. + + + + Sorts the elements in the entire EventList<T> using the specified System.Comparison<T>. + + The System.Comparison<T> to use when comparing elements. + The implementation of comparison caused an error during the sort. For example, comparison might not return 0 when comparing an item with itself. + comparison is null. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in a range of elements in EventList<T> using the specified comparer. + + The zero-based starting index of the range to sort. + The length of the range to sort. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + index and count do not specify a valid range in the EventList<T>.-or-The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + index is less than 0.-or-count is less than 0. + comparer is null, and the default comparer + System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> + generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the specified comparer. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the default comparer. + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Copies the elements of the DotSpatial.Interfaces.Framework.IEventList<T> to a new array. + + An array containing copies of the elements of the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Sets the capacity to the actual number of elements in the DotSpatial.Interfaces.Framework.IEventList<T>, if that number is less than a threshold value. + + Unable to trim while the ReadOnly property is set to true. + + + + Determines whether every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions to check against the elements. + true if every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate; otherwise, false. If the list has no elements, the return value is true. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that starts at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1 + startIndex is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<T>. + match is null + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that extends from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + startIndex is outside the range of valid indexes for the EventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type T. + match is null." + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that contains the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + startIndex is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that extends from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + : startIndex is outside the range of valid indexes for the EventList<T>. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Copies a range of elements from the EventList<T> to a compatible one-dimensional array, starting at the specified index of the target array. + + The zero-based index in the source EventList<T> at which copying begins + The one-dimensional System.Array that is the destination of the elements copied from EventList<T>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + array is null. + index is less than 0.-or-arrayIndex is less than 0.-or-count is less than 0. + index is equal to or greater than the EventList<T>.Count of the source EventList<T>.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements from index to the end of the source EventList<T> is greater than the available space from arrayIndex to the end of the destination array. + + + + Copies the entire System.Collections.Generic.List<T> to a compatible one-dimensional array, starting at the specified index of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from System.Collections.Generic.List<T>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + System.ArgumentException: arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source System.Collections.Generic.List<T> is greater than the available space from arrayIndex to the end of the destination array. + arrayIndex is less than 0 + array is null + + + + Copies the entire EventList<T> to a compatible one-dimensional array, starting at the beginning of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from EventList<T>. The System.Array must have zero-based indexing. + The number of elements in the source EventList<T> is greater than the number of elements that the destination array can contain. + array is null. + + + + Converts the elements in the current EventList<T> to another type, and returns a list containing the converted elements. + + The output type to convert to + A System.Converter<TInput, TOutput> delegate that converts each element from one type to another type. + A EventList<T> of the target type containing the converted elements from the current EventList<T>. + converter is null. + + + + Fires the AfterItemAdded Event + + + + + + + Fires the AfterRangeAdded method + + + + + + + Fires the BeforeItemAdded Event + + + + + + + Fires the BeforeRangeAdded Event + + + + + + + Fires the AfterListCleared event + + + + + Fires the BeforeListCleared event + + + + + + Fires the AfterItemInserted event + + + + + + + Fires the AfterRangeInserted event + + + + + + + Fires the BeforeItemInserted event + + + + + + + + Fires the BeforeRangeInserted event + + + + + + + + Fires the ListChanged Event + + + + + fires the AfterReversed event + + + + + Fires the BeforeReversed event + + + + + + Fires the BeforeRangeReversed event + + + + + + + + Fires the AfterRangeReversed event + + + + + + + Fires the BeforeLiestReversed event + + + + + + fires the AfterListReversed Event + + + + + Fires the BeforeItemRemoved event + + + + + + + + Fires the BeforeRangeRemoved event + + + + + + + + Fires the BeforeAllMatchingRemoved event + + + + + + + Fires the AfterAllMatchingRemoved event + + + + + + Fires the AfterItemRemoved event + + + + + + Fires the AfterRangeRemoved Event + + + + + + Fires the BeforeSort event + + + + + + Fires the AfterSort event + + + + + Fires the BeforeListSorted event + + + + + + + Fires the AfterListSorted event + + + + + + Fires the BeforeSortByComparison + + + + + + + Fires the AfterSortByComparison event + + + + + + Fires the BeforeRangeSorted event + + + + + + + + + Fires the AfterRangeSorted event + + + + + + + + Converts between one output an another + + + + + + + + Gets an Enumerator + + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + The number of elements that the DotSpatial.Interfaces.Framework.IEventList<T> can contain before resizing is required. + + DotSpatial.Interfaces.Framework.IEventList<T>.Capacity is set to a value that is less than DotSpatial.Interfaces.Framework.IEventList<T>.Count. + + + + The default, indexed value of type T + + The numeric index + An object of type T corresponding to the index value specified + + + + Integer, the total number of items currently stored in the list + + + + + Gets a boolean property indicating whether this list can be written to. + + + + + Occurs after an item has already been added to the list. + The index where the item was added is specified. + + + + + Occurs after a range has already been added to the list. + This reveals the index where the beginning of the range + was added, but cannot be canceled. + + + + + Occurs before an item is added to the List. + There is no index yet specified because it will be added to the + end of the list. + + + + + Occurs before a range of items is added to the list. + There is no index yet, but this event can be cancelled. + + + + + Occurs after the the list is cleared. + + + + + Occurs before the list is cleared and can cancel the event. + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs before an item is inserted. The index of the requested + insertion as well as the item being inserted and an option to + cancel the event are specified + + + + + Occurs before a range is inserted. The index of the requested + insertion location as well as the item being inserted and an option to + cancel the event are provided in the event arguments + + + + + Occurs after a method that sorts or reorganizes the list + + + + + Occurs just after the list or any sub portion + of the list is sorted. This event occurs in + addition to the specific reversal case. + + + + + Occurs just before the list or any sub portion + of the list is sorted. This event occurs in + addition to the specific reversal case. + + + + + Occurs before a specific range is reversed + + + + + Occurs after a specific range is reversed + + + + + Occurs before the entire list is reversed + + + + + Occurs after the entire list is reversed + + + + + Occurs before an item is removed from the List. + Specifies the item, the current index and an option to cancel. + + + + + Occurs before a range is removed from the List. + Specifies the range, the current index and an option to cancel. + + + + + Occurs before all the elements that match a predicate are removed. + Supplies an IEnumerable list in the event args of all the items + that will match the expression. This action can be cancelled. + + + + + Occurs after all the elements that matched a predicate were + removed. The values are the items that were successfully removed. + The action has already happened, and so cannot be cancelled here. + + + + + Occurs after an item is removed from the List. + Gives a handle to the item that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs after an item is removed from the List. + Gives a handle to the range that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs just before any of the specific sorting methodsin addition + to the event associated with the specific method. + + + + + Occurs after any of the specific sorting methods in addition + to the event associated with the specific method. + + + + + Occurs just before the entire list is sorted + + + + + Occurs after the entire list has been sorted + + + + + Occurs just before the Sort method that uses a System.Comparison<T> + This event can cancel the action. + + + + + Occurs just after the Sort method that uses a System.Comparison<T> + + + + + Occurs just before the Sort method that only sorts a specified range. + This event can cancel the action. + + + + + Occurs just after the Sort method that only sorts a specified range. + + + + + Global has some basic methods that may be useful in lots of places. + TODO: This class needs to be removed and these methods relocated to easier to find places. + + + + + Converts a double numeric value into the appropriate T data type using a ChangeType process. + + The numeric output type created from the double value. + The double value to retrieve the equivalent numeric value for. + A variable of type T with the value of the value parameter. + + + + This involves boxing and unboxing as well as a convert to double, but IConvertible was + not CLS Compliant, so we were always getting warnings about it. Ted was trying to make + all the code CLS Compliant to remove warnings. + + + + + + + For numeric types, this will return the maximum value. + + The type of the numeric range to find the maximum for. + The maximum value for the numeric type specified by T. + + + + For Numeric types, this will return the minimum value. + + The type of the numeric range to return the minimum for. + The the minimum value possible for a numeric value of type T. + + + + A Generic Safe Casting method that should simply exist as part of the core framework + + The type of the member to attempt to cast to. + The original object to attempt to System.Convert. + An output variable of type T. + + + + Uses the standard enum parsing, but returns it cast as the specified T parameter + + The type of the enum to use + The string to parse into a copy of the enumeration + an enumeration of the specified type + + + + This attempts to convert a value into a byte. If it fails, the byte will be 0. + + The expression (like a string) to System.Convert. + A byte that is 0 if the test fails. + + + + This attempts to convert a value into a double. If it fails, the double will be double.NaN. + + The expression (like a string) to System.Convert. + A double that is double.NAN if the test fails. + + + + This attempts to convert a value into a float. If it fails, the float will be 0. + + The expression (like a string) to System.Convert. + A float that is 0 if the test fails. + + + + This attempts to convert a value into an integer. If it fails, it returns 0. + + The expression to test + true if the value could be cast as a double, false otherwise + + + + This attempts to convert a value into a short. If it fails, it returns 0. + + The expression (like a string) to System.Convert. + A short that is 0 if the test fails. + + + + Gets the string form of the number using culture settings + + The expression to obtain the string for + A string + + + + Tests an expression to see if it can be converted into a byte. + + The expression to test + true if the value could be cast as a double, false otherwise + + + + Tests an expression to see if it can be converted into a double. + + The expression to test + true if the value could be cast as a double, false otherwise + + + + Tests an expression to see if it can be converted into a float. + + The expression to test + true if the value could be cast as a double, false otherwise + + + + Tests an expression to see if it can be converted into an integer. + + The expression to test + true if the value could be cast as an integer, false otherwise + + + + Tests an expression to see if it can be converted into a short. + + The expression to test + true if the value could be cast as a double, false otherwise + + + + a IProgressHandler that carries a boolean property allowing the process using the handler to know if you should cancelled + + + + + An interface for sending progress messages. Percent is an integer from 0 to 100. + + + + + Progress is the method that should receive a progress message. + + The message string without any information about the status of completion. + An integer from 0 to 100 that indicates the condition for a status bar etc. + A string containing both information on what the process is, as well as its completion status. + + + + Returns true if the progress handler has been notified that the running process should be cancelled + + + + + Represents a nongeneric collection of key/value pairs. + + + + + Determines whether the IEventDictionary<TKey, TValue> contains a specific value. + + The value to locate in the IEventDictionary<TKey, TValue>. The value can be null for reference types. + true if the IEventDictionary<TKey, TValue> contains an element with the specified value; otherwise, false. + + + + Two separate forms of count exist and are ambiguous so this provides a single new count + + + + + Gets or sets the specific KeyValuePair for the specified index + + The integer index representing the order in the list + A KeyValuePair that is currently stored at the specified index + + + + Occurs before an item is added to the List. + There is no index yet specified because it will be added to the + end of the list. + + + + + Occurs before a range of items is added to the list. + There is no index yet, but this event can be cancelled. + + + + + Occurs after an item has already been added to the list. + The index where the item was added is specified. + + + + + Occurs after a range has already been added to the list. + This reveals the index where the beginning of the range + was added, but cannot be canceled. + + + + + Occurs before a clear action, allowing the event to be canceled. + + + + + Occurs after a clear action, allowing the event to be cancled + + + + + Occurs after a method that changes either the order or the members of this EventDictionary + + + + + Occurs before an item is inserted. The index of the requested + insertion as well as the item being inserted and an option to + cancel the event are specified + + + + + Occurs before a range is inserted. The index of the requested + insertion location as well as the item being inserted and an option to + cancel the event are provided in the event arguments + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs after an item is inserted. + Shows the true index of the item after it was actually added. + + + + + Occurs before an item is removed from the List. + Specifies the item, the current index and an option to cancel. + + + + + Occurs before a range is removed from the List. + Specifies the range, the current index and an option to cancel. + + + + + Occurs after an item is removed from the List. + Gives a handle to the item that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs after an item is removed from the List. + Gives a handle to the range that was removed, but it no longer + has a meaningful index value or an option to cancel. + + + + + Occurs before all the elements that match a predicate are removed. + Supplies an IEnumerable list in the event args of all the items + that will match the expression. This action can be cancelled. + + + + + Occurs after all the elements that matched a predicate were + removed. The values are the items that were successfully removed. + The action has already happened, and so cannot be cancelled here. + + + + + Occurs before an item is set. This event can cancel the set opperation. + + + + + Occurs after an item is successfully set + + + + + IListEM + + + + + This extension method helps by simply increasing the index value of the specified item + by one. + + The generic type of this list + This list + The item to increase the index of + + + + Decreases the index of the specified item by one. + + The type of the list + This list + the item of type T to decrease the index of. + + + + INamedList + + + + + Re-orders the list so that the index of the specifeid item is lower, + and threfore will be drawn earlier, and therefore should appear + in a lower position on the list. + + The name of the item to demote + + + + Gets the item with the specified name as an object. + This enables the INamedList to work with items even + if it doesn't know the strong type. + + The string name of the item to retrieve + The actual item cast as an object. + + + + Gets the name of the specified item, even if the strong type of the + item is not known. + + The item to get the name of cast as an object + The string name of the specified object. + + + + Gets the list of names for the items currently stored in the list, + in the sequence defined by the list of items. + + + + + Re-orders the list so that the index of the specified item is higher, + and therefore will be drawn later, and therefore should appear + in a higher position on the list. + + + + + + Updates the names to match the current set of actual items. + + + + + Removes the item with the specified name from the list. + + The string name of the item to remove + + + + Gets or sets the base name to use for naming items + + + + + Gets the count of the items in the list. + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + an object that is being interacted with in the list + + + + Gets the list item being referenced by this event + + + + + The same as a ListEventArgs, but provides an option to cancel the event + + + + + The protected object internal to this list event args class + + + + + Creates a new instance of a ListEventArgs class + + an object that is being interacted with in the list + + + + Gets the list item being referenced by this event + + + + + Carries event arguments for the generic IEventList + + + + + Creates a new instance of a ListEventArgs class + + The key of type <TKey> being referenced + an object of type <TValue> that is being referenced + + + + Gets the key of the item being referenced by this event + + + + + Gets the actual item being referenced by this event + + + + + Contains properties for both a specified item and an integer index + as well as the option to cancel. + + + + + Creates a new instance of a ListEventArgs class + + The key that provides direct access to the value member being interacted with + an object that is being interacted with in the list + + + + Gets the key for the member referenced by this event + + + + + Gets the specific item being accessed + + + + + Carries event arguments for the generic IEventList + + + + + The protected object internal to this list event args class + + + + + Creates a new instance of a ListEventArgs class + + an object that is being interacted with in the list + + + + Creates a new instance of a ListEventArgs class + + The list item that the event belongs to + The list index, if any, that is specified. + + + + Gets the list item being referenced by this event + + + + + Gets the index for the ListItem + + + + + Contains properties for both a specified item and an integer index + as well as the option to cancel. + + + + + Creates a new instance of a ListEventArgs class + + an object that is being interacted with in the list + + + + Creates a new instance of a ListEventArgs class + + The list item that the event belongs to + The list index, if any, that is specified. + + + + Gets the list item being referenced by this event + + + + + Gets the index for the ListItem + + + + + This has the indexing and ordering capabilities, but without all the events of an EventDictionary + + + + + Determines whether the IEventDictionary<TKey, TValue> contains a specific value. + + The value to locate in the IEventDictionary<TKey, TValue>. The value can be null for reference types. + true if the IEventDictionary<TKey, TValue> contains an element with the specified value; otherwise, false. + + + + Obtains a value in the dictionary based on a key. This happens without consulting the + index at all. + + The Tkey key to search for. + The TValue to obtain a value for. + + + + Sets the value associated with a key that is already in the dictionary. + + The key currently found in the index + the value to be changed + + + + Gets a pair based on the index value + + + + + + + Sets a pair based on the index value + + + + + + + Two separate forms of count exist and are ambiguous so this provides a single new count + + + + + For ordered dictionaries, the default accessor returns the Key Value Pair associated with the + index. + + + + + + + Any item which can be contained by a parent item + + The type class of the potential parent + + + + Gets the parent item relative to this item. + + + + + Sets teh parent legend item for this item + + + + + + IReadOnlyList + + + + + Tests to see if the specified item is contained in the list. This returns true if the item is contained in the list. + + The item to test for. + Boolean, true if the item is found in the list + + + + Copies the specified memebers into the array, starting at the specified index. + + The array to copy values to. + The array index where the 0 member of this list should be copied to. + + + + Obtains the index of the specified item + + The item to find the index of + An integer representing the index of the specified item + + + + Gets the integer count of items in this list. + + + + + Return true because this is a read-only list. + + + + + Gets the item at the specified index. Ideally, this ReadOnlyList is used with + value types, or else this gives the user considerable power over the core content. + + The item to obtain from this list + The item at the specified index. + + + + An all purpose item + + + + + A set of PaintEventArgs that can be used before a drawing function in order to cancel an event. + + + + + Creates a new instance of the MessageCancel Event Arguments + + A string message to convey with this event. + + + + Returns a boolean specifying whether the action that caused this event should be canceled. + + + + + The message allowing someone to decide whether or not the process should be cancelled. For instance, + when writing a new file, a message might show "The file C:\bob.txt already exists, overwrite it?" + + + + + A named list preserves a 1:1 mapping between names and items. It can be used to + reference information in either direction. It essentially provides a string + handle for working with generic typed ILists. This cannot instantiate new + items. (Creating a default T would not work, for instance, for an interface). + + + + + Creates a new instance of NamedList + + + + + Creates a new instance of a named list. + + The values to use for the content. + + + + Creates a new instance of a named list. + + The values to use for the content. + The string that should preceed the numbering to describe the individual items. + + + + Re-orders the list so that the index of the specifeid item is lower, + and threfore will be drawn earlier, and therefore should appear + in a lower position on the list. + + + + + + Gets the name of the item corresponding + + The item cast as an object. + The string name of the specified object, or null if the cast fails. + + + + Gets the item with the specified name as an object. + This enables the INamedList to work with items even + if it doesn't know the strong type. + + The string name of the item to retrieve + The actual item cast as an object. + + + + Gets the list of names for the items currently stored in the list, + in the sequence defined by the list of items. + + + + + Re-orders the list so that the index of the specified item is higher, + and therefore will be drawn later, and therefore should appear + in a higher position on the list. + + + + + + Updates the names to match the current set of actual items. + + + + + Removes the item with the specified name from the list. + + The string name of the item to remove + + + + Re-orders the list so that this item appears closer to the 0 index. + + + + + + Gets the string name for the specified item + + The item of type T to find the name for + The string name corresponding to the specified item. + + + + Re-orders the list so that the index of the specified item is higher, + and therefore will be drawn later, and therefore should appear + in a higher position on the list. + + + + + + Removes the specified item + + The item to remove. + + + + Gets or sets the item corresponding to the specified name. Setting this + will re-use the same name and position in the list, but set a new object. + + The string name of the item to obtain + The item of type T corresponding to the specified name + + + + Gets the list of actual items. This is basically a reference copy of + the actual collection of items to be contained in this named list. + + + + + Gets or sets the base name to use for naming items + + + + + Gets the count of the items in the list. + + + + + NonNumericException + + + + + Creates a new instance of NonNumericException + + The string name of the variable, or value that cannot be parsed as a number. + + + + NumberFormat + + + + + Creates a value from an object + + A numeric value that is, or can be parsed to a numeric value. + Not Numeric + + + + Creates a number to fit the specified double value. + + A double + + + + Creates a number to fit the specified int value + + An integer + + + + Creates a number to fit the specified float value + + The value to work with + + + + Creates a number from a short + + A short + + + + Compares this with the specified value. Returns 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + The value to be tested. + An integer: 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + + + Compares this with the specified value. Returns 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + The value to be tested. + An integer: 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + + + Compares this with the specified value. Returns 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + The value to be tested. + An integer: 1 if the other + item is greater than this value, 0 if they are equal and -1 if + the other value is less than this value. + + + + Returns this Number as a string. + + The string created using the specified number format and precision. + + + + Returns this Number as a string. + + An IFormatProvider that provides culture specific formatting information. + A string with the formatted number. + + + + Returns this Number as a string. + + A string that controls how this value should be formatted. + A string with the formatted number. + + + + Returns this Number as a string. + + A string that controls how this value should be formatted. + An IFormatProvider that provides culture specific formatting information. + A string with the formatted number. + + + + Gets this number as an int 32 + + An integer + + + + Gets this number as a short, or a short.MaxValue/short.MinValue + + A short + + + + Gets this number as a float + + A float + + + + Gets the alphabetical letter code for ToString(-Code-) + + + + + A NumberFormats enumeration giving the various formatting options + + + + + Tests to see if a value has been assigned to this Number + + + + + Gets or sets the number of digits that folow the decimal + when converting this value to string notation. + + + + + Gets the precision (determined by the data type) which + effectively describes how many significant figures there are. + + + + + Gets this number as a double + + a double + + + + NumberFormats + + + + + Currency - C + + + + + Scientific Notation Exponential - E + + + + + Fixed point - F + The number is converted to a string of the form "-ddd.ddd…" where each 'd' + indicates a digit (0-9). The string starts with a minus sign if the number + is negative. + + + + + Shortest text - G + + + + + Number - N, The number is converted to a string of the form "-d, ddd, ddd.ddd…", + where '-' indicates a negative number symbol if required, 'd' indicates a digit + (0-9), ',' indicates a thousand separator between number groups, and '.' indicates + a decimal point symbol + + + + + Percent, value is multiplied by 100 and shown with a % symbol (cultural specific) + + + + + No format specified. + + + + + In cases where we want to allow some basic cycling or checking of values, but we don't want the user to change + the values directly, we can wrap the values in this read-only list, which restricts what the user can do. + + + + + Creates a new instance of ReadOnlyList + + + + + Tests to see if the specified item is contained in the list. This returns true if the item is contained in the list. + + The item to test for. + Boolean, true if the item is found in the list + + + + Copies the specified memebers into the array, starting at the specified index. + + The array to copy values to. + The array index where the 0 member of this list should be copied to. + + + + Obtains an enumerator for cycling through the values in this list. + + An enumerator for the items in this list. + + + + Obtains the index of the specified item + + The item to find the index of + An integer representing the index of the specified item + + + + Gets the integer count of items in this list. + + + + + Return true because this is a read-only list. + + + + + Gets the item at the specified index. Ideally, this ReadOnlyList is used with + value types, or else this gives the user considerable power over the core content. + + The item to obtain from this list + The item at the specified index. + + + + SubclassList is brilliant if I do say so myself. Let's say you have a list of IPointCategory, which is a subclass of IFeatureCategory. + You can't have a strong typed List that is both without creating a special class that can deal with the specific implementations of + each. So I was writing all of the stupid type specific collection classes, when in reality, I just needed a class like this + that could handle the business logic. Then specific instances can just inherit from this class, but specify the two types. + + The base type that is inherited + The sub type that inherits from the base type + + + + Allows adding of the sub type + + + + + + Adds the entire range of enumerable elements. + + The items to add + + + + Tests to see if the list contains the specified item. + + The item to check the list for. + Boolean, true if the item is contained in the list. + + + + Copies each of the members to the specified array. + + The array to copy items to. + The zero based integer index in the destination array where the first item should be saved. + + + + Gets an enumerator of type TSub for cycling through the list. + + + + + + Gets the zero based integer index of the specified item of type TSub + + The item to obtain the index of + The zero based integer index of the specified item + + + + inserts the specified item into the specified index + + The zero based integer index where insertion can take place + The item to insert of type TSub + + + + Removes the specified item from the list. + + The item to remove + Boolean, true if the item was found in the list and removed + + + + Gets or sets the specific item in the list + + + + + + + I can't simply return the enumerator of the internal list because it would be the wrong type. + Furthermore, I need to know both types so that I can cast them appropriately. + + The base type that is inherited + The sub type that inherits from the base type + + + + Creates a new instance of the enumerator of the sub-type given an enumerator + of the base type. + + The internal enumerator. + + + + Disposes any unmanaged memory objects + + + + + Advances the enumerator to the next position + + Boolean, false at the end of the list. + + + + Resets the enumerator to the beginning of the list + + + + + Gets the current member returned as type TSub. + + + + + A list that keeps track of a "parent" body that is also of type T. + Whenever a member is added to the list, it sets the parent property. + + + + + Initializes a new instance of list with no parent + + + + + Instantiates a new instance of a TreeList of type T, where the specified parent + will be used as the parent for each of the items of type T in the list. + + The ParentItem of the specified item + + + + Adds the item to the list, setting the parent to be the list's parent + + + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to true. + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + The zero-based index of item in the sorted System.Collections.Generic.List<T>, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + + + + Removes all elements from the EventList<T>. + + Unable to clear while the ReadOnly property is set to true. + + + + Determines whether an element is in the System.Collections.Generic.List<T>. + + The object to locate in the System.Collections.Generic.List<T>. The value can be null for reference types. + true if item is found in the System.Collections.Generic.List<T>; otherwise, false. + + + + Returns an enumerator that iterates through this list + + + + + + Copies the entire System.Collections.Generic.List<T> to a compatible one-dimensional array, starting at the specified index of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from System.Collections.Generic.List<T>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + System.ArgumentException: arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source System.Collections.Generic.List<T> is greater than the available space from arrayIndex to the end of the destination array. + arrayIndex is less than 0 + array is null + + + + Copies a range of elements from the EventList<T> to a compatible one-dimensional array, starting at the specified index of the target array. + + The zero-based index in the source EventList<T> at which copying begins + The one-dimensional System.Array that is the destination of the elements copied from EventList<T>. The System.Array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + array is null. + index is less than 0.-or-arrayIndex is less than 0.-or-count is less than 0. + index is equal to or greater than the EventList<T>.Count of the source EventList<T>.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements from index to the end of the source EventList<T> is greater than the available space from arrayIndex to the end of the destination array. + + + + Copies the entire EventList<T> to a compatible one-dimensional array, starting at the beginning of the target array. + + The one-dimensional System.Array that is the destination of the elements copied from EventList<T>. The System.Array must have zero-based indexing. + The number of elements in the source EventList<T> is greater than the number of elements that the destination array can contain. + array is null. + + + + Converts the elements in the current EventList<T> to another type, and returns a list containing the converted elements. + + The output type to convert to + A System.Converter<TInput, TOutput> delegate that converts each element from one type to another type. + A List<T> of the target type containing the converted elements from the current EventList<T>. + converter is null. + + + + Determines whether the EventList<T> contains elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to search for. + true if the EventList<T> contains one or more elements that match the conditions defined by the specified predicate; otherwise, false. + match is null. + + + + Creates a shallow copy of a range of elements in the source EventList<T>. + + The zero-based EventList<T> index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source EventList<T>. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<T>. + + + + Copies the elements of the DotSpatial.Interfaces.Framework.IEventList<T> to a new array. + + An array containing copies of the elements of the DotSpatial.Interfaces.Framework.IEventList<T>. + + + + Sets the capacity to the actual number of elements in the DotSpatial.Interfaces.Framework.IEventList<T>, if that number is less than a threshold value. + + + + + Determines whether every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions to check against the elements. + true if every element in the DotSpatial.Interfaces.Framework.IEventList<T> matches the conditions defined by the specified predicate; otherwise, false. If the list has no elements, the return value is true. + match is null. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire System.Collections.Generic.List<T>. + + The object to locate in the System.Collections.Generic.List<T>. The value can be null for reference types. + The zero-based index of the first occurrence of item within the entire System.Collections.Generic.List<T>, if found; otherwise, –1. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that starts at the specified index and contains the specified number of elements. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<T> that starts at index and contains count number of elements, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that extends from the specified index to the last element. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the search. + The zero-based index of the first occurrence of item within the range of elements in the EventList<T> that extends from index to the last element, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>. + + + + Inserts an element into the System.Collections.Generic.List<T> at the specified index. + + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + index is less than 0.-or-index is greater than System.Collections.Generic.List<T>.Count. + Unable to insert while the ReadOnly property is set to true. + + + + Inserts the elements of a collection into the EventList<T> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the EventList<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + index is less than 0.-or-index is greater than EventList<T>.Count. + collection is null. + Unable to insert while the ReadOnly property is set to true. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that contains the specified number of elements and ends at the specified index. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<T> that contains count number of elements and ends at index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-index and count do not specify a valid section in the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that extends from the first element to the specified index. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of item within the range of elements in the EventList<T> that extends from the first element to index, if found; otherwise, –1. + index is outside the range of valid indexes for the EventList<T>. + + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire EventList<T>. + + The object to locate in the EventList<T>. The value can be null for reference types. + The zero-based index of the last occurrence of item within the entire the EventList<T>, if found; otherwise, –1. + + + + Removes the first occurrence of a specific object from the System.Collections.Generic.List<T>. + + The object to remove from the System.Collections.Generic.List<T>. The value can be null for reference types. + true if item is successfully removed; otherwise, false. This method also returns false if item was not + found in the System.Collections.Generic.List<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the element at the specified index of the System.Collections.Generic.List<T>. + + The zero-based index of the element to remove. + Unable to remove while the ReadOnly property is set to true. + + + + Removes the all the elements that match the conditions defined by the specified predicate. + + The System.Predicate<T> delegate that defines the conditions of the elements to remove. + The number of elements removed from the EventList<T> + match is null. + Unable to remove while the ReadOnly property is set to true. + + + + Removes a range of elements from the EventList<T>. + + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + index is less than 0.-or-count is less than 0. + index and count do not denote a valid range of elements in the EventList<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + index and count do not denote a valid range of elements in the EventList<T>. + index is less than 0.-or-count is less than 0. + Unable to reverse while the ReadOnly property is set to true. + + + + Reverses the order of the elements in the entire EventList<T>. + + Unable to reverse while the ReadOnly property is set to true. + + + + Sorts the elements in the entire EventList<T> using the specified System.Comparison<T>. + + The System.Comparison<T> to use when comparing elements. + The implementation of comparison caused an error during the sort. For example, comparison might not return 0 when comparing an item with itself. + comparison is null. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in a range of elements in EventList<T> using the specified comparer. + + The zero-based starting index of the range to sort. + The length of the range to sort. + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + index and count do not specify a valid range in the EventList<T>.-or-The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + index is less than 0.-or-count is less than 0. + comparer is null, and the default comparer + System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> + generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the specified comparer. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + The implementation of comparer caused an error during the sort. For example, comparer might not return 0 when comparing an item with itself. + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default cannot find implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Sorts the elements in the entire DotSpatial.Interfaces.Framework.IEventList<T> using the default comparer. + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot find an implementation of the System.IComparable<T> generic interface or the System.IComparable interface for type T. + Unable to sort while the ReadOnly property is set to true. + + + + Retrieves all the elements that match the conditions described by the specified predicate + + The System.Predicate that defines the conditions to search for + A List of matches + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that starts at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1 + startIndex is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<T>. + match is null + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the EventList<T> that extends from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + startIndex is outside the range of valid indexes for the EventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type T. + match is null." + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that contains the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + startIndex is outside the range of valid indexes for the EventList<T>.-or-count is less than 0.-or-startIndex and count do not specify a valid section in the EventList<T>. + match is null. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the EventList<T> that extends from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + : startIndex is outside the range of valid indexes for the EventList<T>. + + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire EventList<T>. + + The System.Predicate<T> delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by match, if found; otherwise, –1. + match is null. + + + + This sets the parent item of the item being added to this treelist. + + The item being included + + + + This reverts the parent item of an item when it is removed from this treelist + + The item being removed from the list + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + The number of elements that the DotSpatial.Interfaces.Framework.IEventList<T> can contain before resizing is required. + + DotSpatial.Interfaces.Framework.IEventList<T>.Capacity is set to a value that is less than DotSpatial.Interfaces.Framework.IEventList<T>.Count. + + + + Gets the count of the members in the list + + + + + The default, indexed value of type T + + The numeric index + An object of type T corresponding to the index value specified + + + + Gets a boolean property indicating whether this list can be written to. + + + + + ValidationType + + + + + No validation will be performed + + + + + Any string value, including null will be accepted + + + + + Only values that can be parsed to byte values will be accepted + + + + + Only values that can be parsed to short values will be accepted + + + + + Only values that can be parsed to integer values will be accepted + + + + + Only values that can be parsed to float values will be accepted + + + + + Only values that can be parsed to double values will be accepted + + + + + Only values that can be parsed to positive short values will be accepted + + + + + Only values that can be parsed to positive integer values will be accepted + + + + + Only values that can be parsed to positive float values will be accepted + + + + + Only values that can be parsed to positive double values will be accepted + + + + + This class converts an IProgressHandler to an ICancelProgressHandler. It wraps the IProgressHandler so that + it can be used by a class that requires an ICancelProgressHandler. Cancel will always return false. + + + + + Initializes a new instance of the class. + + The progress handler. + + + + Progress is the method that should receive a progress message. + + The message string without any information about the status of completion. + An integer from 0 to 100 that indicates the condition for a status bar etc. + A string containing both information on what the process is, as well as its completion status. + + + + Returns true if the running process should be cancelled + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/openjpeg.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Design.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Design.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Design.xml (revision 2866) @@ -0,0 +1,623 @@ + + + + DotSpatial.Positioning.Design + + + + + Provides functionality to converting values to and from Angle + objects. + + + This class allows any Angle object to be converted between + other data types, such as Double, Integer and + String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Angle, and also allows developers to type in string values such as + "1.50" and have them converted to Angle objects automatically. + Finally, this class controls design-time serialization of Angle + object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + An abstract class that is inherited by several other classes to handle type conversions. + + + + + A base Expandable object converter + + + + + + + + + + + + + + + + + Indicates the name of the type handled by this type converter. + + + + + Indicates the full nume of the assembly housing objects handled by this type converter. + + + + + Gets the hard coded assembly version of the library that this designer handles. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides functionality to convert string values to and from Area objects at design time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from Azimuth + objects. + + + This class allows any Azimuth object to be converted between + other data types, such as Double, Integer and + String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Azimuth, and also allows developers to type in string values such + as "NNW" and have them converted to Azimuth objects automatically. + Finally, this class controls design-time serialization of Azimuth + object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from CartesianPoint + objects. + + + This class allows any CartesianPoint object to be converted between + other data types, such as String. This class is used primarily + during the Windows Forms designer to give detailed information about properties of + type CartesianPoint, and also allows developers to type in string values + such as "10m, 20m, 100m" and have them converted to CartesianPoint objects + automatically. Finally, this class controls design-time serialization of + CartesianPoint object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to convert string values to and from DilutionOfPrecision objects at design time. + + + + + The PositioningFormsNumericObjectConverter handles the object conversion but is tailored to work with the DotSpatial.Positioning.Forms class. + + + + + + + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from Distance + objects. + + + This class allows any Distance object to be converted + between other data types, such as String. This class is used + primarily during the Windows Forms designer to give detailed information about + properties of type Distance, and also allows developers to type in + string values such as "2 miles" and have them converted to + Distance objects automatically. Finally, this class controls + design-time serialization of Distance object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from + Elevation objects. + + + This class allows any Elevation object to be converted + between other data types, such as Double, Integer + and String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Elevation, and also allows developers to type in string values + such as "45" and have them converted to Elevation objects + automatically. Finally, this class controls design-time serialization of + Elevation object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from + GeographicRectangle objects. + + + This class allows any GeographicRectangle object to be + converted between other data types, such as String. This class is + used primarily during the Windows Forms designer to give detailed information about + properties of type GeographicRectangle, and also allows developers + to type in string values such as "1, 2, 10, 10" and have them converted to + GeographicRectangle objects automatically. Finally, this class + controls design-time serialization of GeographicRectangle object + properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from + GeographicSize objects. + + + This class allows any GeographicSize object to be converted + between other data types, such as String. This class is used + primarily during the Windows Forms designer to give detailed information about + properties of type GeographicSize, and also allows developers to + type in string values such as "1, 2" and have them converted to + GeographicSize objects automatically. Finally, this class controls + design-time serialization of GeographicSize object + properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to convert string values to and from Latitude objects at design time. + + + This class allows any Latitude object to be converted + between other data types, such as Double, Integer + and String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Latitude, and also allows developers to type in string values such + as "12N" (for 12° North) and have them converted to Latitude + objects automatically. Finally, this class controls design-time serialization of + Latitude object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to convert string values to and from Longitude objects at design time. + + + This class allows any Longitude object to be converted + between other data types, such as Double, Integer + and String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Longitude, and also allows developers to type in string values + such as "54E" (for 54° East) and have them converted to Longitude + objects automatically. Finally, this class controls design-time serialization of + Longitude object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from Percent + objects. + + + This class allows any Percent object to be converted between + other data types, such as Double, Integer and + String. This class is used primarily during the Windows Forms + designer to give detailed information about properties of type + Percent, and also allows developers to type in string values such as + "1.50" and have them converted to Percent objects automatically. + Finally, this class controls design-time serialization of Percent + object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from PointD + objects. + + + This class allows any PointD object to be converted between + other data types, such as String. This class is used primarily + during the Windows Forms designer to give detailed information about properties of + type PointD, and also allows developers to type in string values + such as "10.123, 20.123" and have them converted to PointD objects + automatically. Finally, this class controls design-time serialization of + PointD object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from Position + objects. + + + This class allows any Position object to be converted + between other data types, such as String. This class is used + primarily during the Windows Forms designer to give detailed information about + properties of type Position, and also allows developers to type in + string values such as "29N, 42W" (for 29°North by 42°West) and have them converted + to Position objects automatically. Finally, this class controls + design-time serialization of Position object properties. UTM + coordinates such as "13S 12345E 12345N" are also accepted. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Type converter for angles in radians + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from + RectangleD objects. + + + This class allows any RectangleD object to be converted + between other data types, such as String. This class is used + primarily during the Windows Forms designer to give detailed information about + properties of type RectangleD, and also allows developers to type + in string values such as "1.5, 2.5, 4.5, 7.8" and have them converted to + RectangleD objects automatically. Finally, this class controls + design-time serialization of RectangleD object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to convert string values to and from SignalToNoiseRatio objects at design time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from SizeD + objects. + + + This class allows any Position object to be converted + between other data types, such as String. This class is used + primarily during the Windows Forms designer to give detailed information about + properties of type Position, and also allows developers to type in + string values such as "29.23, 15.65" and have them converted to + Position objects automatically. Finally, this class controls + design-time serialization of Position object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + + + + + + + + + + + Provides functionality to converting values to and from Speed + objects. + + + This class allows any Speed object to be converted between + other data types, such as String. This class is used primarily + during the Windows Forms designer to give detailed information about properties of + type Speed, and also allows developers to type in string values + such as "120 km/h" and have them converted to Speed objects + automatically. Finally, this class controls design-time serialization of + Speed object properties. + In most situations this class is used by the Visual Studio.NET IDE and is + rarely created at run-time. + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/Readme.txt (revision 2866) @@ -0,0 +1,2 @@ +Allow to view various web maps: google, osm, bing, wms. +Brutile: used 0.10.1 from official repo at https://brutile.codeplex.com/ \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/x64/SQLite.Interop.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/vertcs.csv (revision 2866) @@ -0,0 +1,130 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","UOM_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_METHOD_CODE_1","PARM_1_1" +3855,EGM2008 geoid height,1027,EGM2008 geoid,9001,1,0,6499,9665,"egm08_25.gtx" +3886,Fao 1979 height,1028,Fao 1979,9001,1,0,6499,, +3900,N2000 height,1030,N2000,9001,1,0,6499,, +4440,NZVD2009 height,1039,New Zealand Vertical Datum 2009,9001,1,0,6499,, +4458,Dunedin-Bluff 1960 height,1040,Dunedin-Bluff 1960,9001,1,0,6499,, +5193,Incheon height,1049,Incheon,9001,1,0,6499,, +5195,Trieste height,1050,Trieste,9001,1,0,6499,, +5214,Genoa height,1051,Genoa,9001,1,0,6499,, +5237,SLVD height,1054,Sri Lanka Vertical Datum,9001,1,0,6499,, +5317,FVR09 height,1059,Faroe Islands Vertical Reference 2009,9001,1,0,6499,, +5600,NGPF height,5195,Nivellement General de Polynesie Francaise,9001,1,0,6499,, +5601,IGN 1966 height,5196,IGN 1966,9001,1,0,6499,, +5602,Moorea SAU 1981 height,5197,Moorea SAU 1981,9001,1,0,6499,, +5603,Raiatea SAU 2001 height,5198,Raiatea SAU 2001,9001,1,0,6499,, +5604,Maupiti SAU 2001 height,5199,Maupiti SAU 2001,9001,1,0,6499,, +5605,Huahine SAU 2001 height,5200,Huahine SAU 2001,9001,1,0,6499,, +5606,Tahaa SAU 2001 height,5201,Tahaa SAU 2001,9001,1,0,6499,, +5607,Bora Bora SAU 2001 height,5202,Bora Bora SAU 2001,9001,1,0,6499,, +5608,IGLD 1955 height,5204,International Great Lakes Datum 1955,9001,1,0,6499,, +5609,IGLD 1985 height,5205,International Great Lakes Datum 1985,9001,1,0,6499,, +5610,HVRS71 height,5207,Croatian Vertical Reference System 1971,9001,1,0,6499,, +5611,Caspian height,5106,Caspian Sea,9001,1,0,6499,, +5612,Baltic depth,5105,Baltic Sea,9001,1,0,6498,, +5613,RH2000 height,5208,Rikets hojdsystem 2000,9001,1,0,6499,, +5614,"KOC WD depth (ft)",5187,KOC Well Datum,9002,1,0,6495,, +5615,RH00 height,5209,Rikets hojdsystem 1900,9001,1,0,6499,, +5616,IGN 1988 LS height,5210,IGN 1988 LS,9001,1,0,6499,, +5617,IGN 1988 MG height,5211,IGN 1988 MG,9001,1,0,6499,, +5618,IGN 1992 LD height,5212,IGN 1992 LD,9001,1,0,6499,, +5619,IGN 1988 SB height,5213,IGN 1988 SB,9001,1,0,6499,, +5620,IGN 1988 SM height,5214,IGN 1988 SM,9001,1,0,6499,, +5621,EVRF2007 height,5215,European Vertical Reference Frame 2007,9001,1,0,6499,, +5701,ODN height,5101,Ordnance Datum Newlyn,9001,1,0,6499,, +5702,NGVD29 height,5102,National Geodetic Vertical Datum 1929,9003,1,0,6497,, +5703,NAVD88 height,5103,North American Vertical Datum 1988,9001,1,0,6499,9665,"g2003conus.gtx,g2003alaska.gtx,g2003h01.gtx,g2003p01.gtx" +5704,Yellow Sea,5104,Yellow Sea 1956,9001,1,1,6499,, +5705,Baltic height,5105,Baltic Sea,9001,1,0,6499,, +5706,Caspian depth,5106,Caspian Sea,9001,1,0,6498,, +5709,NAP height,5109,Normaal Amsterdams Peil,9001,1,0,6499,, +5710,Oostende height,5110,Oostende,9001,1,0,6499,, +5711,AHD height,5111,Australian Height Datum,9001,1,0,6499,, +5712,"AHD (Tasmania) height",5112,"Australian Height Datum (Tasmania)",9001,1,0,6499,, +5713,CGVD28 height,5114,Canadian Geodetic Vertical Datum of 1928,9001,1,0,6499,, +5714,msl height,5100,Mean Sea Level,9001,1,0,6499,, +5715,msl depth,5100,Mean Sea Level,9001,1,0,6498,, +5716,Piraeus height,5115,Piraeus Harbour 1986,9001,1,0,6499,, +5717,N60 height,5116,Helsinki 1960,9001,1,0,6499,, +5718,RH70 height,5117,Rikets hojdsystem 1970,9001,1,0,6499,, +5719,NGF Lallemand height,5118,Nivellement General de la France - Lallemand,9001,1,0,6499,, +5720,NGF IGN69 height,5119,Nivellement General de la France - IGN69,9001,1,0,6499,, +5721,IGN78 Corsica height,5120,IGN78 Corsica,9001,1,0,6499,, +5722,Maputo height,5121,Maputo,9001,1,0,6499,, +5723,JSLD height,5122,Japanese Standard Levelling Datum 1949,9001,1,0,6499,, +5724,PHD93 height,5123,PDO Height Datum 1993,9001,1,0,6499,, +5725,Fahud HD height,5124,Fahud Height Datum,9001,1,0,6499,, +5726,Ha Tien 1960 height,5125,Ha Tien 1960,9001,1,0,6499,, +5727,Hon Dau 1992 height,5126,Hon Dau 1992,9001,1,0,6499,, +5728,LN02 height,5127,Landesnivellement 1902,9001,1,0,6499,, +5729,LHN95 height,5128,Landeshohennetz 1995,9001,1,0,6499,, +5730,EVRF2000 height,5129,European Vertical Reference Frame 2000,9001,1,0,6499,, +5731,Malin Head height,5130,Malin Head,9001,1,0,6499,, +5732,Belfast height,5131,Belfast Lough,9001,1,0,6499,, +5733,DNN height,5132,Dansk Normal Nul,9001,1,0,6499,, +5734,AIOC95 depth,5133,AIOC 1995,9001,1,0,6498,, +5735,Black Sea height,5134,Black Sea,9001,1,0,6499,, +5736,Yellow Sea 1956 height,5104,Yellow Sea 1956,9001,1,0,6499,, +5737,Yellow Sea 1985 height,5137,Yellow Sea 1985,9001,1,0,6499,, +5738,HKPD height,5135,Hong Kong Principal Datum,9001,1,0,6499,, +5739,HKCD depth,5136,Hong Kong Chart Datum,9001,1,0,6498,, +5740,ODN Orkney height,5138,"Ordnance Datum Newlyn (Orkney Isles)",9001,1,0,6499,, +5741,Fair Isle height,5139,Fair Isle,9001,1,0,6499,, +5742,Lerwick height,5140,Lerwick,9001,1,0,6499,, +5743,Foula height,5141,Foula,9001,1,0,6499,, +5744,Sule Skerry height,5142,Sule Skerry,9001,1,0,6499,, +5745,North Rona height,5143,North Rona,9001,1,0,6499,, +5746,Stornoway height,5144,Stornoway,9001,1,0,6499,, +5747,St Kilda height,5145,St Kilda,9001,1,0,6499,, +5748,Flannan Isles height,5146,Flannan Isles,9001,1,0,6499,, +5749,St Marys height,5147,St Marys,9001,1,0,6499,, +5750,Douglas height,5148,Douglas,9001,1,0,6499,, +5751,Fao height,5149,Fao,9001,1,0,6499,, +5752,Bandar Abbas height,5150,Bandar Abbas,9001,1,0,6499,, +5753,NGNC height,5151,Nivellement General de Nouvelle Caledonie,9001,1,0,6499,, +5754,Poolbeg height,5152,Poolbeg,9095,1,0,6496,, +5755,NGG1977 height,5153,Nivellement General Guyanais 1977,9001,1,0,6499,, +5756,Martinique 1987 height,5154,Martinique 1987,9001,1,0,6499,, +5757,Guadeloupe 1988 height,5155,Guadeloupe 1988,9001,1,0,6499,, +5758,Reunion 1989 height,5156,Reunion 1989,9001,1,0,6499,, +5759,Auckland 1946 height,5157,Auckland 1946,9001,1,0,6499,, +5760,Bluff 1955 height,5158,Bluff 1955,9001,1,0,6499,, +5761,Dunedin 1958 height,5159,Dunedin 1958,9001,1,0,6499,, +5762,Gisborne 1926 height,5160,Gisborne 1926,9001,1,0,6499,, +5763,Lyttelton 1937 height,5161,Lyttelton 1937,9001,1,0,6499,, +5764,Moturiki 1953 height,5162,Moturiki 1953,9001,1,0,6499,, +5765,Napier 1962 height,5163,Napier 1962,9001,1,0,6499,, +5766,Nelson 1955 height,5164,Nelson 1955,9001,1,0,6499,, +5767,One Tree Point 1964 height,5165,One Tree Point 1964,9001,1,0,6499,, +5768,Tararu 1952 height,5166,Tararu 1952,9001,1,0,6499,, +5769,Taranaki 1970 height,5167,Taranaki 1970,9001,1,0,6499,, +5770,Wellington 1953 height,5168,Wellington 1953,9001,1,0,6499,, +5771,Chatham Island 1959 height,5169,"Waitangi (Chatham Island) 1959",9001,1,0,6499,, +5772,Stewart Island 1977 height,5170,Stewart Island 1977,9001,1,0,6499,, +5773,EGM96 geoid height,5171,EGM96 geoid,9001,1,0,6499,9665,"egm96_15.gtx" +5774,NG-L height,5172,Nivellement General du Luxembourg,9001,1,0,6499,, +5775,Antalya height,5173,Antalya,9001,1,0,6499,, +5776,NN54 height,5174,Norway Normal Nul 1954,9001,1,0,6499,, +5777,Durres height,5175,Durres,9001,1,0,6499,, +5778,GHA height,5176,Gebrauchshohen ADRIA,9001,1,0,6499,, +5779,NVN99 height,5177,National Vertical Network 1999,9001,1,0,6499,, +5780,Cascais height,5178,Cascais,9001,1,0,6499,, +5781,Constanta height,5179,Constanta,9001,1,0,6499,, +5782,Alicante height,5180,Alicante,9001,1,0,6499,, +5783,DHHN92 height,5181,Deutches Haupthohennetz 1992,9001,1,0,6499,, +5784,DHHN85 height,5182,Deutches Haupthohennetz 1985,9001,1,0,6499,, +5785,SNN76 height,5183,SNN76,9001,1,0,6499,, +5786,Baltic 1982 height,5184,Baltic 1982,9001,1,0,6499,, +5787,EOMA 1980 height,5185,Baltic 1980,9001,1,0,6499,, +5788,Kuwait PWD height,5186,Kuwait PWD,9001,1,0,6499,, +5789,KOC WD depth,5187,KOC Well Datum,9001,1,0,6498,, +5790,KOC CD height,5188,KOC Construction Datum,9001,1,0,6499,, +5791,NGC 1948 height,5189,Nivellement General de la Corse 1948,9001,1,0,6499,, +5792,Danger 1950 height,5190,Danger 1950,9001,1,0,6499,, +5793,Mayotte 1950 height,5191,Mayotte 1950,9001,1,0,6499,, +5794,Martinique 1955 height,5192,Martinique 1955,9001,1,0,6499,, +5795,Guadeloupe 1951 height,5193,Guadeloupe 1951,9001,1,0,6499,, +5796,Lagos 1955 height,5194,Lagos 1955,9001,1,0,6499,, +5797,AIOC95 height,5133,AIOC 1995,9001,1,0,6499,, +5798,EGM84 geoid height,5203,EGM84 geoid,9001,1,0,6499,, +5799,DVR90 height,5206,Dansk Vertikal Reference 1990,9001,1,0,6499,, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/cs/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allow tu run MapWindow scripts. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTestScriptsTransform.xsl =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTestScriptsTransform.xsl (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTestScriptsTransform.xsl (revision 2866) @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + $(var.ProjectDir)Harvest\DamDefines.wxi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + no + + + + + + + + + + + + + + + Tutorials + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/DotSpatial.Plugins.LiDAR.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/pdal.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/DotSpatial.Plugins.LiDAR.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/de/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/Manuals.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/Manuals.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Manuals/Manuals.wxi (revision 2866) @@ -0,0 +1,4 @@ + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DemoMap.exe =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/gdal19.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/iconv.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/coordinate_axis.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/coordinate_axis.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/coordinate_axis.csv (revision 2866) @@ -0,0 +1,241 @@ +coord_sys_code,coord_axis_name_code,coord_axis_orientation,coord_axis_abbreviation,uom_code,coord_axis_order +1024,9906,east,M,9001,1 +1024,9907,north,P,9001,2 +1025,9906,North along 130°W,X,9001,1 +1025,9907,North along 140°E,Y,9001,2 +1026,9906,South along 90°E,E,9001,1 +1026,9907,South along 180°E,N,9001,2 +1027,9906,North along 90°E,E,9001,1 +1027,9907,North along 0°E,N,9001,2 +1028,9906,east,E,9037,1 +1028,9907,north,N,9037,2 +4400,9906,east,E,9001,1 +4400,9907,north,N,9001,2 +4401,9906,east,E,9062,1 +4401,9907,north,N,9062,2 +4402,9906,east,E,9042,1 +4402,9907,north,N,9042,2 +4403,9906,east,E,9005,1 +4403,9907,north,N,9005,2 +4404,9906,east,E,9094,1 +4404,9907,north,N,9094,2 +4405,9906,east,E,9041,1 +4405,9907,north,N,9041,2 +4406,9906,east,X,9036,1 +4406,9907,north,Y,9036,2 +4407,9906,east,E,9039,1 +4407,9907,north,N,9039,2 +4408,9906,east,E,9084,1 +4408,9907,north,N,9084,2 +4409,9906,east,E,9040,1 +4409,9907,north,N,9040,2 +4410,9906,east,E,9301,1 +4410,9907,north,N,9301,2 +4460,9906,South along 90°E.,E,9001,1 +4460,9907,South along 180°E,N,9001,2 +4461,9929,up,W,9001,3 +4461,9930,east,U,9001,1 +4461,9931,north,V,9001,2 +4462,9906,South along 180°W,X,9001,1 +4462,9907,South along 90°W,Y,9001,2 +4463,9906,South along 100°E,X,9001,1 +4463,9907,South along 170°W,Y,9001,2 +4464,9906,South along 90°W,X,9001,1 +4464,9907,South along 0°E,Y,9001,2 +4465,9906,South along 50°E,X,9001,1 +4465,9907,South along 140°E,Y,9001,2 +4466,9906,South along 10°W,X,9001,1 +4466,9907,South along 80°E,Y,9001,2 +4467,9906,South along 60°W,X,9001,1 +4467,9907,South along 30°E,Y,9001,2 +4468,9906,South along 45°E,X,9001,1 +4468,9907,South along 135°E,Y,9001,2 +4469,9906,South along 90°E,X,9001,1 +4469,9907,South along 180°E,Y,9001,2 +4470,9906,North along 90°E,X,9001,1 +4470,9907,North along 0°E,Y,9001,2 +4471,9906,North along 75°W,E,9001,1 +4471,9907,North along 165°W,N,9001,2 +4472,9906,North along 60°W,E,9001,1 +4472,9907,North along 150°W,N,9001,2 +4473,9906,North along 45°W,E,9001,1 +4473,9907,North along 135°W,N,9001,2 +4474,9906,North along 15°W,E,9001,1 +4474,9907,North along 105°W,N,9001,2 +4475,9906,North along 0°E,E,9001,1 +4475,9907,North along 90°W,N,9001,2 +4476,9906,North along 15°E,E,9001,1 +4476,9907,North along 75°W,N,9001,2 +4477,9906,North along 45°E,E,9001,1 +4477,9907,North along 45°W,N,9001,2 +4478,9906,North along 60°E,E,9001,1 +4478,9907,North along 30°W,N,9001,2 +4479,9906,North along 75°E,E,9001,1 +4479,9907,North along 15°W,N,9001,2 +4480,9906,North along 105°E,E,9001,1 +4480,9907,North along 15°E,N,9001,2 +4481,9906,North along 120°E,E,9001,1 +4481,9907,North along 30°E,N,9001,2 +4482,9906,North along 135°E,E,9001,1 +4482,9907,North along 45°E,N,9001,2 +4483,9906,North along 165°E,E,9001,1 +4483,9907,North along 75°E,N,9001,2 +4484,9906,North along 180°E,E,9001,1 +4484,9907,North along 90°E,N,9001,2 +4485,9906,North along 165°W,E,9001,1 +4485,9907,North along 105°E,N,9001,2 +4486,9906,North along 135°W,E,9001,1 +4486,9907,North along 135°E,N,9001,2 +4487,9906,North along 120°W,E,9001,1 +4487,9907,North along 150°E,N,9001,2 +4488,9906,North along 105°W,E,9001,1 +4488,9907,North along 165°E,N,9001,2 +4489,9906,North along 160°E,E,9001,1 +4489,9907,North along 70°E,N,9001,2 +4490,9906,North along 90°E,E,9001,1 +4490,9907,North along 0°E,N,9001,2 +4491,9907,north,N,9001,2 +4491,9908,west,W,9001,1 +4492,9913,North along 130°W,X,9001,1 +4492,9914,North along 140°E,Y,9001,2 +4493,9906,South along 90°E,E,9001,2 +4493,9907,South along 180°E,N,9001,1 +4494,9906,North along 90°E,E,9001,2 +4494,9907,North along 0°E,N,9001,1 +4495,9906,east,X,9002,1 +4495,9907,north,Y,9002,2 +4496,9906,east,E(X),9001,1 +4496,9907,north,N(Y),9001,2 +4497,9906,east,X,9003,1 +4497,9907,north,Y,9003,2 +4498,9906,east,Y,9001,1 +4498,9907,north,X,9001,2 +4499,9906,east,X,9001,1 +4499,9907,north,Y,9001,2 +4500,9906,east,E,9001,2 +4500,9907,north,N,9001,1 +4501,9907,north,N,9001,1 +4501,9908,west,E,9001,2 +4502,9906,east,E,9005,2 +4502,9907,north,N,9005,1 +4530,9906,east,Y,9001,2 +4530,9907,north,X,9001,1 +4531,9906,east,y,9001,2 +4531,9907,north,x,9001,1 +4532,9906,east,X,9001,2 +4532,9907,north,Y,9001,1 +4533,9906,east,Y,9098,2 +4533,9907,north,X,9098,1 +4534,9906,east,none,9001,2 +4534,9907,north,none,9001,1 +6401,9901,north,Lat,9108,1 +6401,9902,east,Long,9108,2 +6401,9903,up,h,9001,3 +6402,9901,north,Lat,9108,1 +6402,9902,east,Long,9108,2 +6403,9901,north,Lat,9105,1 +6403,9902,east,Long,9105,2 +6404,9926,north,Lat,9122,1 +6404,9927,east,Long,9122,2 +6404,9928,up,R,9001,3 +6405,9901,north,Lat,9102,1 +6405,9902,east,Long,9102,2 +6406,9901,north,Lat,9116,1 +6406,9902,east,Long,9116,2 +6407,9901,north,Lat,9117,1 +6407,9902,east,Long,9117,2 +6408,9901,north,Lat,9115,1 +6408,9902,east,Long,9115,2 +6409,9901,north,Lat,9118,1 +6409,9902,east,Long,9118,2 +6410,9901,north,Lat,9119,1 +6410,9902,east,Long,9119,2 +6411,9901,north,Lat,9107,1 +6411,9902,east,Long,9107,2 +6412,9901,north,Lat,9120,1 +6412,9902,east,Long,9120,2 +6413,9901,north,Lat,9102,1 +6413,9902,east,Long,9102,2 +6413,9903,up,h,9001,3 +6414,9901,north,Lat,9116,1 +6414,9902,east,Long,9116,2 +6414,9903,up,h,9001,3 +6415,9901,north,Lat,9117,1 +6415,9902,east,Long,9117,2 +6415,9903,up,h,9001,3 +6416,9901,north,Lat,9115,1 +6416,9902,east,Long,9115,2 +6416,9903,up,h,9001,3 +6417,9901,north,Lat,9118,1 +6417,9902,east,Long,9118,2 +6417,9903,up,h,9001,3 +6418,9901,north,Lat,9119,1 +6418,9902,east,Long,9119,2 +6418,9903,up,h,9001,3 +6419,9901,north,Lat,9107,1 +6419,9902,east,Long,9107,2 +6419,9903,up,h,9001,3 +6420,9901,north,Lat,9120,1 +6420,9902,east,Long,9120,2 +6420,9903,up,h,9001,3 +6421,9901,north,Lat,9105,1 +6421,9902,east,Long,9105,2 +6421,9903,up,h,9001,3 +6422,9901,north,Lat,9122,1 +6422,9902,east,Long,9122,2 +6423,9901,north,Lat,9122,1 +6423,9902,east,Long,9122,2 +6423,9903,up,h,9001,3 +6424,9901,north,Lat,9122,2 +6424,9902,east,Long,9122,1 +6425,9901,north,Lat,9105,2 +6425,9902,east,Long,9105,1 +6426,9901,north,Lat,9122,2 +6426,9902,east,Long,9122,1 +6426,9903,up,h,9001,3 +6427,9901,north,Lat,9105,2 +6427,9902,east,Long,9105,1 +6427,9903,up,h,9001,3 +6428,9901,north,Lat,9101,1 +6428,9902,east,Long,9101,2 +6429,9901,north,Lat,9101,2 +6429,9902,east,Long,9101,1 +6430,9901,north,Lat,9101,1 +6430,9902,east,Long,9101,2 +6430,9903,up,h,9001,3 +6431,9901,north,Lat,9101,2 +6431,9902,east,Long,9101,1 +6431,9903,up,h,9001,3 +6495,9905,down,D,9002,1 +6496,9904,up,H,9095,1 +6497,9904,up,H,9003,1 +6498,9905,down,D,9001,1 +6499,9904,up,H,9001,1 +6500,9910,Geocentre > equator/0°E,X,9001,1 +6500,9911,Geocentre > equator/90°E,Y,9001,2 +6500,9912,Geocentre > north pole,Z,9001,3 +6501,9908,west,Y,9001,2 +6501,9909,south,X,9001,1 +6502,9908,west,Y,9031,1 +6502,9909,south,X,9031,2 +6503,9908,west,Y,9001,1 +6503,9909,south,X,9001,2 +6504,9918,north-east,e,9001,2 +6504,9919,north-west,n,9001,1 +6505,9913,north-west,n,9001,1 +6505,9914,north-east,e,9001,2 +6506,9913,east-south-east,I,9205,1 +6506,9914,north-north-east,J,9204,2 +6507,9913,north,X,9001,1 +6507,9914,west,Y,9001,2 +6508,9920,east south east,I,9208,2 +6508,9921,north north east,J,9209,1 +6509,9908,west,M,9001,2 +6509,9909,south,P,9001,1 +6510,9918,north-east,x,9001,1 +6510,9919,north-west,y,9001,2 +6511,9922,Along receiver lines,I,9208,1 +6511,9923,Across receiver lines,J,9209,2 +6512,9916,up,z,9001,3 +6512,9918,east,x,9001,1 +6512,9919,north,y,9001,2 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/DotSpatial.Plugins.MapWindowProjectFileCompatibility.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Design.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/netcdf.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Modeling.Forms.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/libecwj2.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_HDF5Image.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/nad.lst =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/nad.lst (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/nad.lst (revision 2866) @@ -0,0 +1,142 @@ + Listing of State Plane North American Datum Zones + + NGS zone number + State and zone 1927 1983 + +Alabama east .................. 101 101 +Alabama west .................. 102 102 +Alaska zone no. 1 ............. 5001 5001 +Alaska zone no. 2 ............. 5002 5002 +Alaska zone no. 3 ............. 5003 5003 +Alaska zone no. 4 ............. 5004 5004 +Alaska zone no. 5 ............. 5005 5005 +Alaska zone no. 6 ............. 5006 5006 +Alaska zone no. 7 ............. 5007 5007 +Alaska zone no. 8 ............. 5008 5008 +Alaska zone no. 9 ............. 5009 5009 +Alaska zone no. 10 ............ 5010 5010 +American Samoa ................ 5300 +Arizona central ............... 202 202 +Arizona east .................. 201 201 +Arizona west .................. 203 203 +Arkansas north ................ 301 301 +Arkansas south ................ 302 302 +California I .................. 401 401 +California II ................. 402 402 +California III ................ 403 403 +California IV ................. 404 404 +California V .................. 405 405 +California VI ................. 406 406 +California VII ................ 407 +Colorado central .............. 502 502 +Colorado north ................ 501 501 +Colorado south ................ 503 503 +Connecticut ................... 600 600 +Delaware ...................... 700 700 +Florida east .................. 901 901 +Florida north ................. 903 903 +Florida west .................. 902 902 +Georgia east .................. 1001 1001 +Georgia west .................. 1002 1002 +Guam Island ................... 5400 +Hawaii 1 ...................... 5101 5101 +Hawaii 2 ...................... 5102 5102 +Hawaii 3 ...................... 5103 5103 +Hawaii 4 ...................... 5104 5104 +Hawaii 5 ...................... 5105 5105 +Idaho central ................. 1102 1102 +Idaho east .................... 1101 1101 +Idaho west .................... 1103 1103 +Illinois east ................. 1201 1201 +Illinois west ................. 1202 1202 +Indiana east .................. 1301 1301 +Indiana west .................. 1302 1302 +Iowa north .................... 1401 1401 +Iowa south .................... 1402 1402 +Kansas north .................. 1501 1501 +Kansas south .................. 1502 1502 +Kentucky north ................ 1601 1601 +Kentucky south ................ 1602 1602 +Louisiana north ............... 1701 1701 +Louisiana offshore ............ 1703 1703 +Louisiana south ............... 1702 1702 +Maine east .................... 1801 1801 +Maine west .................... 1802 1802 +Maryland ...................... 1900 1900 +Massachusetts island .......... 2002 2002 +Massachusetts mainland ........ 2001 2001 +Michigan central/l ............ 2112 2112 current +Michigan central/m ............ 2102 old +Michigan east ................. 2101 old +Michigan north ................ 2111 2111 current +Michigan south ................ 2113 2113 current +Michigan west ................. 2103 old +Minnesota central ............. 2202 2202 +Minnesota north ............... 2201 2201 +Minnesota south ............... 2203 2203 +Mississippi east .............. 2301 2301 +Mississippi west .............. 2302 2302 +Missouri central .............. 2402 2402 +Missouri east ................. 2401 2401 +Missouri west ................. 2403 2403 +Montana ....................... 2500 +Montana central ............... 2502 +Montana north ................. 2501 +Montana south ................. 2503 +Nebraska ...................... 2600 +Nebraska north ................ 2601 +Nebraska south ................ 2602 +Nevada central ................ 2702 2702 +Nevada east ................... 2701 2701 +Nevada west ................... 2703 2703 +New hampshire ................. 2800 2800 +New jersey .................... 2900 2900 +New mexico central ............ 3002 3002 +New mexico east ............... 3001 3001 +New mexico west ............... 3003 3003 +New york central .............. 3102 3102 +New york east ................. 3101 3101 +New york long island .......... 3104 3104 +New york west ................. 3103 3103 +North carolina ................ 3200 3200 +North dakota north ............ 3301 3301 +North dakota south ............ 3302 3302 +Ohio north .................... 3401 3401 +Ohio south .................... 3402 3402 +Oklahoma north ................ 3501 3501 +Oklahoma south ................ 3502 3502 +Oregon north .................. 3601 3601 +Oregon south .................. 3602 3602 +Pennsylvania north ............ 3701 3701 +Pennsylvania south ............ 3702 3702 +Puerto Rico, Virgin Islands ... 5201 5200 +Rhode Island .................. 3800 3800 +South Carolina ................ 3900 +South Carolina north .......... 3901 +South Carolina south .......... 3902 +South Dakota north ............ 4001 4001 +South Dakota south ............ 4002 4002 +Tennessee ..................... 4100 4100 +Texas central ................. 4203 4203 +Texas north ................... 4201 4201 +Texas north central ........... 4202 4202 +Texas south ................... 4205 4205 +Texas south central ........... 4204 4204 +Utah central .................. 4302 4302 +Utah north .................... 4301 4301 +Utah south .................... 4303 4303 +Vermont ....................... 4400 4400 +Virgin Islands, St. Croix ..... 5202 +Virginia north ................ 4501 4501 +Virginia south ................ 4502 4502 +Washington north .............. 4601 4601 +Washington south .............. 4602 4602 +West Virginia north ........... 4701 4701 +West Virginia south ........... 4702 4702 +Wisconsin central ............. 4802 4802 +Wisconsin north ............... 4801 4801 +Wisconsin south ............... 4803 4803 +Wyoming east .................. 4901 4901 +Wyoming east central .......... 4902 4902 +Wyoming west .................. 4904 4904 +Wyoming west central .......... 4903 4903 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Design.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/el/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/DotSpatial.Plugins.MapWindowProjectFileCompatibility.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Topology.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoBW.svg =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoBW.svg (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoBW.svg (revision 2866) @@ -0,0 +1,140 @@ + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/gdal_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/System.Data.SQLite.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/proj_def.dat =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/proj_def.dat (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/proj_def.dat (revision 2866) @@ -0,0 +1,17 @@ +# Projection library defaults file +# SCCSID--- @(#)proj_def.dat 4.3 94/02/23 GIE REL" +# very preliminary version + +ellps=WGS84 +<> + # Conterminous U.S. map +lat_1=29.5 +lat_2=45.5 +<> + # Conterminous U.S. map +lat_1=33 +lat_2=45 +<> + +W=2 +<> Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Mono.XML =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Mono.XML (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Mono.XML (revision 2866) @@ -0,0 +1,8 @@ + + + + DotSpatial.Mono + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTransform.xsl =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTransform.xsl (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamTransform.xsl (revision 2866) @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + $(var.ProjectDir)Harvest\DamDefines.wxi + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/ja-JP/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_HDF5.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/zh-CN/DotSpatial.Plugins.ShapeEditor.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ToolManager/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ToolManager/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ToolManager/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allow to use DotSpatial ToolManager. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Topology.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/zlib1.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/iconv.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Forms.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Positioning.Forms.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/netcdf.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/zh-CN/DotSpatial.Plugins.Measure.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/Harvest.targets =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/Harvest.targets (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/Harvest.targets (revision 2866) @@ -0,0 +1,63 @@ + + + + $(SolutionDir)release\Install_Version + + + + + + + + + + $(SolutionDir)data\Tutorials\DAMDesign + + + + + + + + + + + HarvestDam; + HarvestDamTestScripts; + $(BuildDependsOn); + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/libecwj2.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ellipsoid.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ellipsoid.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/ellipsoid.csv (revision 2866) @@ -0,0 +1,54 @@ +ellipsoid_code,ellipsoid_name,semi_major_axis,uom_code,inv_flattening,semi_minor_axis,ellipsoid_shape,remarks,information_source,data_source,revision_date,change_id,deprecated +1024,CGCS2000,6378137,9001,298.257222101,,1,"Defining parameters semi-major axis, flattening and angular velocity are same as for GRS 1980 (ellipsoid code 7019); GM = 3986004.4e8 m*m*m/s/s (from NASA 1986 Lageos determination).",Chinese Academy of Surveying and Mapping.,OGP,2009/11/12,2009.084,0 +7001,Airy 1830,6377563.396,9001,299.3249646,,1,"Original definition is a=20923713, b=20853810 feet of 1796. 1/f is given to 7 decimal places. For the 1936 retriangulation OSGB defines the relationship of 10 feet of 1796 to the International metre through ([10^0.48401603]/10) exactly = 0.3048007491...",Ordnance Survey of Great Britain.,OGP,2006/11/27,1998.321 1998.340 2006.932,0 +7002,Airy Modified 1849,6377340.189,9001,299.3249646,,1,OSGB Airy 1830 figure (ellipsoid code 7001) rescaled by 0.999965 to best fit the scale of the 19th century primary triangulation of Ireland.,"""The Irish Grid - A Description of the Co-ordinate Reference System"" published by Ordnance Survey of Ireland, Dublin and Ordnance Survey of Northern Ireland, Belfast.",OGP,2003/06/27,1998.321 2002.622,0 +7003,Australian National Spheroid,6378160,9001,298.25,,1,Based on the GRS 1967 figure but with 1/f taken to 2 decimal places exactly. The dimensions are also used as the GRS 1967 Modified ellipsoid (see code 7050).,"""Australian Map Grid Technical Manual""; National Mapping Council of Australia Special Publication #7; 1972",OGP,2008/08/11,2002.500 2008.017,0 +7004,Bessel 1841,6377397.155,9001,299.1528128,,1,"Original Bessel definition is a=3272077.14 and b=3261139.33 toise. This used a weighted mean of values from several authors but did not account for differences in the length of the various toise: the ""Bessel toise"" is therefore of uncertain length.","US Army Map Service Technical Manual; 1943.",OGP,1999/04/22,1998.321 1998.340,0 +7005,Bessel Modified,6377492.018,9001,299.1528128,,1,Used in Norway and also in Sweden with a 1mm increase in semi-major axis.,,OGP,1999/04/22,1998.321,0 +7006,Bessel Namibia,6377483.865,9001,299.1528128,,1,a = 6377397.155 German legal metres. This is the same value as the Bessel 1841 figure (code 7004) but in different units. Used in Namibia.,"Chief Directorate: Surveys and Mapping, Mowbray, South Africa.",OGP,1999/04/22,1997.160,1 +7007,Clarke 1858,20926348,9005,,20855233,1,"Clarke's 1858/II solution. Derived parameters: a = 6378293.645m using his 1865 ratio of 0.3047972654 feet per metre; 1/f = 294.26068… In Australia and Amoco Trinidad 1/f taken to two decimal places (294.26 exactly); elsewhere a and b used to derive 1/f.","""Ellipsoidisch Parameter der Erdfigur (1800-1950)"" by Georg Strasser.",OGP,2005/08/14,1999.700 2005.370,0 +7008,Clarke 1866,6378206.4,9001,,6356583.8,1,Original definition a=20926062 and b=20855121 (British) feet. Uses Clarke's 1865 inch-metre ratio of 39.370432 to obtain metres. (Metric value then converted to US survey feet for use in the United States using 39.37 exactly giving a=20925832.16 ft US).,"US Army Map Service Technical Manual No. 7; 1943.",OGP,1995/06/02,1998.340,0 +7009,Clarke 1866 Michigan,20926631.531,9003,,20855688.674,1,"Used for Michigan NAD27 State Plane zones. Radius = ellipsoid radius + 800 feet; this approximates the average elevation of the state. Derived parameter: 1/f = 294.97870",USGS Professional Paper #1395.,OGP,1995/06/02,1998.220,0 +7010,Clarke 1880 (Benoit),6378300.789,9001,,6356566.435,1,Adopts Clarke's values for a and b. Uses Benoit's 1895 ratio of 0.9143992 metres per yard to convert to metres.,,OGP,1995/06/02,,0 +7011,Clarke 1880 (IGN),6378249.2,9001,,6356515,1,Adopts Clarke's values for a and b using his 1865 ratio of 39.370432 inches per metre to convert axes to metres.,,OGP,1998/04/16,1998.120,0 +7012,Clarke 1880 (RGS),6378249.145,9001,293.465,,1,Adopts Clarke's values for a and 1/f. Adopts his 1865 ratio of 39.370432 inches per metre to convert semi-major axis to metres. Also known as Clarke Modified 1880.,"Empire Survey Review #32; 1939.",OGP,1995/06/02,,0 +7013,Clarke 1880 (Arc),6378249.145,9001,293.4663077,,1,Adopts Clarke's value for a with derived 1/f. Uses his 1865 ratio of 39.370432 inch per metre to convert semi-major axis to metres.,"Chief Directorate: Surveys and Mapping, Mowbray, South Africa.",OGP,2001/06/05,2001.052,0 +7014,Clarke 1880 (SGA 1922),6378249.2,9001,293.46598,,1,Used in Old French Triangulation (ATF). Uses Clarke's 1865 inch-metre ratio of 39.370432 to convert axes to metres.,,OGP,1995/06/02,,0 +7015,Everest 1830 (1937 Adjustment),6377276.345,9001,300.8017,,1,Used for the 1937 readjustment of Indian triangulation. Clarke's 1865 Indian-British foot ratio (0.99999566) and Benoit's 1898 British inch-metre ratio (39.370113) rounded as 0.30479841 exactly and applied to Everest's 1830 definition taken as a and 1/f,"Survey of India professional paper #28; 1939",OGP,1996/10/18,1996.200,0 +7016,Everest 1830 (1967 Definition),6377298.556,9001,300.8017,,1,Adopted 1967 for use in East Malaysia. Applies Sears 1922 inch-metre ratio of 39.370147 to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.,,OGP,1995/06/02,,0 +7018,Everest 1830 Modified,6377304.063,9001,300.8017,,1,Adopted 1967 for use in West Malaysia. Applies Benoit 1898 inch-metre ratio of 39.370113 to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.,,OGP,1995/06/02,,0 +7019,GRS 1980,6378137,9001,298.257222101,,1,"Adopted by IUGG 1979 Canberra. Inverse flattening is derived from geocentric gravitational constant GM = 3986005e8 m*m*m/s/s; dynamic form factor J2 = 108263e8 and Earth's angular velocity = 7292115e-11 rad/s.","""Geodetic Reference System 1980"" by H. Moritz; Bulletin Geodesique",OGP,1998/11/11,1998.110 1998.320,0 +7020,Helmert 1906,6378200,9001,298.3,,1,Helmert 1906/III solution.,"""Ellipsoidisch Parameter der Erdfigur (1800-1950)"" by Georg Strasser",OGP,1995/06/02,,0 +7021,Indonesian National Spheroid,6378160,9001,298.247,,1,Based on the GRS 1967 figure but with 1/f taken to 3 decimal places exactly.,Rais paper.,OGP,1995/06/02,,0 +7022,International 1924,6378388,9001,297,,1,Adopted by IUGG 1924 in Madrid. Based on Hayford 1909/1910 figures. ,,OGP,1995/06/02,,0 +7024,Krassowsky 1940,6378245,9001,298.3,,1,,,OGP,1995/06/02,,0 +7025,NWL 9D,6378145,9001,298.25,,1,Used by Transit Precise Ephemeris between October 1971 and January 1987.,,OGP,1995/06/02,,0 +7027,Plessis 1817,6376523,9001,308.64,,1,Rescaling of Delambre 1810 figure (a=6376985 m) to make meridional arc from equator to pole equal to 10000000 metres exactly. (Ref: Strasser).,"IGN Paris ""Constants d'Ellipsoides"" February 1972.",OGP,1995/06/02,,0 +7028,Struve 1860,6378298.3,9001,294.73,,1,"Original definition of semi-major axis given as 3272539 toise. In ""Ellipsoidisch Parameter der Erdfigur (1800-1950)"" , Strasser suggests a conversion factor of 1.94903631 which gives a=6378297.337 metres.","""Geodesia y Cartografia Matematica"" by Fernando Martin Asin; ISBN 84-398-0248-X.",OGP,1998/11/11,1998.070 1998.340,0 +7029,War Office,6378300,9001,296,,1,"In non-metric form, a=20926201 Gold Coast feet. DMA Technical Manual 8358.1 and data derived from this quotes value for semi-major axis as 6378300.58m: OGP recommends use of defined value 6378300m exactly.","Tables for the use of the Gold Coast Survey Department, 1935.",OGP,2009/10/29,2009.075,0 +7030,WGS 84,6378137,9001,298.257223563,,1,"Inverse flattening derived from four defining parameters (semi-major axis; C20 = -484.16685*10e-6; earth's angular velocity w = 7292115e11 rad/sec; gravitational constant GM = 3986005e8 m*m*m/s/s).",DMA Technical Manual 8350.2-B ,OGP,1998/11/11,1998.320,0 +7031,GEM 10C,6378137,9001,298.257223563,,1,Used for GEM 10C Gravity Potential Model.,,OGP,1995/06/02,1998.320,0 +7032,OSU86F,6378136.2,9001,298.257223563,,1,Used for OSU86 gravity potential (geoidal) model.,,OGP,1995/06/02,1998.320,0 +7033,OSU91A,6378136.3,9001,298.257223563,,1,Used for OSU91 gravity potential (geoidal) model.,,OGP,1995/06/02,1998.320,0 +7034,Clarke 1880,20926202,9005,,20854895,1,Clarke gave a and b and also 1/f=293.465 (to 3 decimal places exactly). In the 19th century b was normally given as the second defining parameter.,"""Ellipsoidisch Parameter der Erdfigur (1800-1950)"" by Georg Strasser.",OGP,2008/06/26,2008.057,0 +7035,Sphere,6371000,9001,,6371000,0,Authalic sphere. 1/f is infinite. Superseded by GRS 1980 authalic sphere (code 7047).,,OGP,1995/06/02,,1 +7036,GRS 1967,6378160,9001,298.247167427,,1,"Adopted by IUGG 1967 Lucerne. 1/f given is derived from geocentric gravitational constant (GM)= 398603e9 m*m*m/s/s; dynamic form factor (J2) = 0.0010827 and Earth's angular velocity w = 7.2921151467e-5 rad/s. See also GRS 1967 Modified (code 7050).","""Geodetic Reference System 1967""; International Association of Geodesy special publication number 3; August 1971.",OGP,2011/02/25,1996.090 1997.252 1998.320 2002.500 2011.016,0 +7041,Average Terrestrial System 1977,6378135,9001,298.257,,1,,New Brunswick Geographic Information Corporation land and water information standards manual,OGP,1997/07/22,1998.321,0 +7042,Everest (1830 Definition),20922931.8,9080,,20853374.58,1,Everest gave a and b to 2 decimal places and also 1/f=300.8017 (to 4 decimal places exactly). In the 19th century b was normally given as the second defining parameter.,"""Ellipsoidisch Parameter der Erdfigur (1800-1950)"" by Georg Strasser",OGP,2008/06/26,1997.231 2008.057,0 +7043,WGS 72,6378135,9001,298.26,,1,,,OGP,1999/04/22,1999.030,0 +7044,Everest 1830 (1962 Definition),6377301.243,9001,300.8017255,,1,Used by Pakistan since metrication. Clarke's 1865 Indian foot-British foot ratio (0.99999566) and his 1865 British inch-metre ratio (39.369971) rounded with slight error as 1 Ind ft = 0.3047995m exactly and applied to Everest's 1830 definition of a & b.,,OGP,1999/10/20,,0 +7045,Everest 1830 (1975 Definition),6377299.151,9001,300.8017255,,1,Used by India since metrication. Clarke's 1865 Indian foot-British foot ratio (0.99999566) and his 1865 British inch-metre ratio (39.369971) rounded as 1 Ind ft = 0.3047995m exactly applied to Everest's 1830 original definition taken as a and b.,,OGP,1999/10/20,,0 +7046,Bessel Namibia (GLM),6377397.155,9031,299.1528128,,1,The semi-major axis has the same value as the Bessel 1841 ellipsoid (code 7004) but is in different units - German Legal Metres rather than International metres - hence a different size. a = 6377483.865 International metres. Used in Namibia.,"Chief Directorate: Surveys and Mapping, Mowbray, South Africa.",OGP,2007/09/21,2007.091,0 +7047,GRS 1980 Authalic Sphere,6370997,9001,,6370997,0,"Authalic sphere derived from Clarke 1866 ellipsoid (code 7008). Deprecated as name and parameter values do not match; replaced by 7048.",OGP,OGP,2001/06/05,,1 +7048,GRS 1980 Authalic Sphere,6371007,9001,,6371007,0,Authalic sphere derived from GRS 1980 ellipsoid (code 7019). (An authalic sphere is one with a surface area equal to the surface area of the ellipsoid). 1/f is infinite.,OGP,OGP,2001/06/25,,0 +7049,IAG 1975,6378140,9001,298.257,,1,,"Chinese Sceience Bulletin, 2009, 54:2714-2721.",OGP,2009/11/24,2009.084,0 +7050,GRS 1967 Modified,6378160,9001,298.25,,1,Based on the GRS 1967 figure (code 7036) but with 1/f taken to 2 decimal places exactly. Used with SAD69 and TWD67 datums. The dimensions are also used as the Australian National Spheroid (code 7003).,"""Geodetic Reference System 1967""; International Association of Geodesy special publication number 3; August 1971.",OGP,2008/08/11,2008.017,0 +7051,Danish 1876,6377019.27,9001,300,,1,Semi-major axis originally given as 3271883.25 toise. Uses toise to French metre ratio of 1.94903631 to two decimal place precision. An alternative ratio with the German legal metre of 1.9490622 giving 6377104m has not been used in Danish work.,"Kort og Matrikelstyrelsen (KMS), Copenhagen.",OGP,2003/06/27,,0 +7052,Clarke 1866 Authalic Sphere,6370997,9001,,6370997,0,Authalic sphere derived from Clarke 1866 ellipsoid (code 7008).,OGP,OGP,2004/04/27,,0 +7053,Hough 1960,6378270,9001,297,,1,,DMA / NIMA / NGA TR8350.2,OGP,2006/01/26,,0 +7054,PZ-90,6378136,9001,298.257839303,,1,,"Geodeziya i Katografiya, 1993.",OGP,2006/02/03,,0 +7055,Clarke 1880 (international foot),20926202,9002,,20854895,1,Clark'es 1880 definition in feet assumed for the purposes of metric conversion to be international foot. a = 6378306.370…metres. 1/f derived from a and b = 293.4663077… Used in Fiji.,"Department of Lands and Survey, Fiji.",OGP,2006/07/14,,0 +7056,Everest 1830 (RSO 1969),6377295.664,9001,300.8017,,1,Adopted for 1969 metrication of peninsula Malaysia RSO grid. Uses Sears 1922 yard-metre ratio truncated to 6 significant figures applied to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.,Defence Geographic Centre,OGP,2006/07/24,,0 +7057,International 1924 Authalic Sphere,6371228,9001,,6371228,0,Authalic sphere derived from International 1924 ellipsoid (code 7022).,OGP,OGP,2006/09/22,,0 +7058,Hughes 1980,6378273,9001,,6356889.449,1,Used in US DMSP SSM/I microwave sensor processing software. Semi-minor axis derived from eccentricity=0.081816153. Semi-major axis (a) sometimes given as 3443.992nm which OGP suspects is a derived approximation. OGP conversion assumes 1nm=1852m exactly.,US National Snow and Ice Data Center,OGP,2006/09/22,,0 +7059,Popular Visualisation Sphere,6378137,9001,,6378137,0,Sphere with radius equal to the semi-major axis of the GRS80 and WGS 84 ellipsoids. Used only for Web approximate mapping and visualisation. Not recognised by geodetic authorities.,Microsoft.,OGP,2008/03/14,2008.114,1 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_aml.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_aml.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes_aml.csv (revision 2866) @@ -0,0 +1,440 @@ +"Code","Attribute","Acronym","Attributetype","Class" +1,Agency responsible for production,AGENCY,A,F +2,Beacon shape,BCNSHP,E,F +3,Building shape,BUISHP,E,F +4,Buoy shape,BOYSHP,E,F +5,Buried depth,BURDEP,F,F +6,Call sign,CALSGN,S,F +7,Category of airport/airfield,CATAIR,L,F +8,Category of anchorage,CATACH,L,F +9,Category of bridge,CATBRG,L,F +10,Category of built-up area,CATBUA,E,F +11,Category of cable,CATCBL,E,F +12,Category of canal,CATCAN,E,F +13,Category of cardinal mark,CATCAM,E,F +14,Category of checkpoint,CATCHP,E,F +15,Category of coastline,CATCOA,E,F +16,Category of control point,CATCTR,E,F +17,Category of conveyor,CATCON,E,F +18,Category of coverage,CATCOV,E,F +19,Category of crane,CATCRN,E,F +20,Category of dam,CATDAM,E,F +21,Category of distance mark,CATDIS,E,F +22,Category of dock,CATDOC,E,F +23,Category of dumping ground,CATDPG,L,F +24,Category of fence/wall,CATFNC,E,F +25,Category of ferry,CATFRY,E,F +26,Category of fishing facility,CATFIF,E,F +27,Category of fog signal,CATFOG,E,F +28,Category of fortified structure,CATFOR,E,F +29,Category of gate,CATGAT,E,F +30,Category of harbour facility,CATHAF,L,F +31,Category of hulk,CATHLK,L,F +32,Category of ice,CATICE,E,F +33,Category of installation buoy,CATINB,E,F +34,Category of land region,CATLND,L,F +35,Category of landmark,CATLMK,L,F +36,Category of lateral mark,CATLAM,E,F +37,Category of light,CATLIT,L,F +38,Category of marine farm/culture,CATMFA,E,F +39,Category of military practice area,CATMPA,L,F +40,Category of mooring/warping facility,CATMOR,E,F +41,Category of navigation line,CATNAV,E,F +42,Category of obstruction,CATOBS,E,F +43,Category of offshore platform,CATOFP,L,F +44,Category of oil barrier,CATOLB,E,F +45,Category of pile,CATPLE,E,F +46,Category of pilot boarding place,CATPIL,E,F +47,Category of pipeline / pipe,CATPIP,L,F +48,Category of production area,CATPRA,E,F +49,Category of pylon,CATPYL,E,F +50,Category of quality of data,CATQUA,E,F +51,Category of radar station,CATRAS,E,F +52,Category of radar transponder beacon,CATRTB,E,F +53,Category of radio station,CATROS,L,F +54,Category of recommended track,CATTRK,E,F +55,Category of rescue station,CATRSC,L,F +56,Category of restricted area,CATREA,L,F +57,Category of road,CATROD,E,F +58,Category of runway,CATRUN,E,F +59,Category of sea area,CATSEA,E,F +60,Category of shoreline construction,CATSLC,E,F +61,"Category of signal station, traffic",CATSIT,L,F +62,"Category of signal station, warning",CATSIW,L,F +63,Category of silo/tank,CATSIL,E,F +64,Category of slope,CATSLO,E,F +65,Category of small craft facility,CATSCF,L,F +66,Category of special purpose mark,CATSPM,L,F +67,Category of Traffic Separation Scheme,CATTSS,E,F +68,Category of vegetation,CATVEG,L,F +69,Category of water turbulence,CATWAT,E,F +70,Category of weed/kelp,CATWED,E,F +71,Category of wreck,CATWRK,E,F +72,Category of zone of confidence data,CATZOC,E,F +73,Character spacing,$SPACE,E,$ +74,Character specification,$CHARS,A,$ +75,Colour,COLOUR,L,F +76,Colour pattern,COLPAT,L,F +77,Communication channel,COMCHA,A,F +78,Compass size,$CSIZE,F,$ +79,Compilation date,CPDATE,A,F +80,Compilation scale,CSCALE,I,F +81,Condition,CONDTN,E,F +82,"Conspicuous, Radar",CONRAD,E,F +83,"Conspicuous, visual",CONVIS,E,F +84,Current velocity,CURVEL,F,F +85,Date end,DATEND,A,F +86,Date start,DATSTA,A,F +87,Depth range value 1,DRVAL1,F,F +88,Depth range value 2,DRVAL2,F,F +89,Depth units,DUNITS,E,F +90,Elevation,ELEVAT,F,F +91,Estimated range of transmission,ESTRNG,F,F +92,Exhibition condition of light,EXCLIT,E,F +93,Exposition of sounding,EXPSOU,E,F +94,Function,FUNCTN,L,F +95,Height,HEIGHT,F,F +96,Height/length units,HUNITS,E,F +97,Horizontal accuracy,HORACC,F,F +98,Horizontal clearance,HORCLR,F,F +99,Horizontal length,HORLEN,F,F +100,Horizontal width,HORWID,F,F +101,Ice factor,ICEFAC,F,F +102,Information,INFORM,S,F +103,Jurisdiction,JRSDTN,E,F +104,Justification - horizontal,$JUSTH,E,$ +105,Justification - vertical,$JUSTV,E,$ +106,Lifting capacity,LIFCAP,F,F +107,Light characteristic,LITCHR,E,F +108,Light visibility,LITVIS,L,F +109,Marks navigational - System of,MARSYS,E,F +110,Multiplicity of lights,MLTYLT,I,F +111,Nationality,NATION,A,F +112,Nature of construction,NATCON,L,F +113,Nature of surface,NATSUR,L,F +114,Nature of surface - qualifying terms,NATQUA,L,F +115,Notice to Mariners date,NMDATE,A,F +116,Object name,OBJNAM,S,F +117,Orientation,ORIENT,F,F +118,Periodic date end,PEREND,A,F +119,Periodic date start,PERSTA,A,F +120,Pictorial representation,PICREP,S,F +121,Pilot district,PILDST,S,F +122,Producing country,PRCTRY,A,F +123,Product,PRODCT,L,F +124,Publication reference,PUBREF,S,F +125,Quality of sounding measurement,QUASOU,L,F +126,Radar wave length,RADWAL,A,F +127,Radius,RADIUS,F,F +128,Recording date,RECDAT,A,F +129,Recording indication,RECIND,A,F +130,Reference year for magnetic variation,RYRMGV,A,F +131,Restriction,RESTRN,L,F +132,Scale maximum,SCAMAX,I,F +133,Scale minimum,SCAMIN,I,F +134,Scale value one,SCVAL1,I,F +135,Scale value two,SCVAL2,I,F +136,Sector limit one,SECTR1,F,F +137,Sector limit two,SECTR2,F,F +138,Shift parameters,SHIPAM,A,F +139,Signal frequency,SIGFRQ,I,F +140,Signal generation,SIGGEN,E,F +141,Signal group,SIGGRP,A,F +142,Signal period,SIGPER,F,F +143,Signal sequence,SIGSEQ,A,F +144,Sounding accuracy,SOUACC,F,F +145,Sounding distance - maximum,SDISMX,I,F +146,Sounding distance - minimum,SDISMN,I,F +147,Source date,SORDAT,A,F +148,Source indication,SORIND,A,F +149,Status,STATUS,L,F +150,Survey authority,SURATH,S,F +151,Survey date - end,SUREND,A,F +152,Survey date - start,SURSTA,A,F +153,Survey type,SURTYP,L,F +154,Symbol scaling factor,$SCALE,F,$ +155,Symbolization code,$SCODE,A,$ +156,Technique of sounding measurement,TECSOU,L,F +157,Text string,$TXSTR,S,$ +158,Textual description,TXTDSC,S,F +159,Tidal stream - panel values,TS_TSP,A,F +160,"Tidal stream, current - time series values",TS_TSV,A,F +161,Tide - accuracy of water level,T_ACWL,E,F +162,Tide - high and low water values,T_HWLW,A,F +163,Tide - method of tidal prediction,T_MTOD,E,F +164,Tide - time and height differences,T_THDF,A,F +165,"Tide, current - time interval of values",T_TINT,I,F +166,Tide - time series values,T_TSVL,A,F +167,Tide - value of harmonic constituents,T_VAHC,A,F +168,Time end,TIMEND,A,F +169,Time start,TIMSTA,A,F +170,Tint,$TINTS,E,$ +171,Topmark/daymark shape,TOPSHP,E,F +172,Traffic flow,TRAFIC,E,F +173,Value of annual change in magnetic variation,VALACM,F,F +174,Value of depth contour,VALDCO,F,F +175,Value of local magnetic anomaly,VALLMA,F,F +176,Value of magnetic variation,VALMAG,F,F +177,Value of maximum range,VALMXR,F,F +178,Value of nominal range,VALNMR,F,F +179,Value of sounding,VALSOU,F,F +180,Vertical accuracy,VERACC,F,F +181,Vertical clearance,VERCLR,F,F +182,"Vertical clearance, closed",VERCCL,F,F +183,"Vertical clearance, open",VERCOP,F,F +184,"Vertical clearance, safe",VERCSA,F,F +185,Vertical datum,VERDAT,E,F +186,Vertical length,VERLEN,F,F +187,Water level effect,WATLEV,E,F +188,Category of Tidal stream,CAT_TS,E,F +189,Positional accuracy units,PUNITS,E,F +300,Information in national language,NINFOM,S,N +301,Object name in national language,NOBJNM,S,N +302,Pilot district in national language,NPLDST,S,N +303,Text string in national language,$NTXST,S,N +304,Textual description in national language,NTXTDS,S,N +400,Horizontal datum,HORDAT,E,S +401,Positional Accuracy,POSACC,F,S +402,Quality of position,QUAPOS,E,S +20484,"Abandonment Date","databa","A","?" +20485,"Attenuation","attutn","F","?" +20486,"Beam of Vessel","vesbem","F","?" +20487,"Bearing","bearng","F","?" +20488,"Blind Zone","blndzn","A","?" +20489,"Breaker Type","brktyp","E","?" +20490,"Density","bulkdn","F","?" +20491,"Burial Mechanism","brmchm","E","?" +20492,"Burial Percentage","brpctg","I","?" +20493,"Burial Period","brperd","I","?" +20494,"Burial Probability","brprob","E","?" +20495,"Cardinal Point Orientation","orcard","E","?" +20496,"Category of administration area","catadm","E","?" +20497,"Category of airspace restriction","catasr","E","?" +20498,"Category of bedrock","N/A","N/A","?" +20499,"Bottom Feature Classification","catbot","E","?" +20500,"Category of coastguard station","catcgs","E","?" +20501,"Category of controlled airspace","catcas","E","?" +20502,"Fishing Activity","catfsh","E","?" +20503,"Type of Imagery","catimg","L","?" +20504,"Category of marine management area","catmma","E","?" +20505,"Category of maritime safety information","catmsi","E","?" +20506,"Category of military exercise airspace ","catmea","E","?" +20507,"Category of patrol area","catpat","E","?" +20508,"Category of reporting/radio calling-in point","catrep","E","?" +20509,"Category of regulated airspace","N/A","N/A","?" +20510,"Category of territorial sea baseline","catsbl","E","?" +20511,"Trafficability","cattrf","E","?" +20512,"Command System","comsys","S","?" +20515,"Controlled airspace class designation","caircd","E","?" +20516,"Controlling authority","authty","S","?" +20517,"Current Scour Dimensions","scrdim","A","?" +20518,"Dangerous Marine and Land Life","dgmrlf","L","?" +20519,"Date Sunk","datsnk","A","?" +20520,"Debris Field","debfld","A","?" +20521,"Depth of Activity","depact","F","?" +20522,"Depth of Layer","deplyr","F","?" +20523,"Distance from Small Bottom Object","discon","F","?" +20524,"Diver’s Thrust Test Depth","dttdep","E","?" +20525,"Diver’s Thrust Test Number","dttnum","I","?" +20526,"Diving Activity","divact","E","?" +20527,"Draught of Vessel","vesdgh","F","?" +20528,"Exit Usability","exitus","E","?" +20529,"Field Name","fldnam","S","?" +20530,"First Detection Year","datfir","A","?" +20531,"First Sensor","senfir","E","?" +20532,"First Source","sorfir","E","?" +20533,"Foliar Index","folinx","F","?" +20534,"Gas Content","gascon","I","?" +20535,"General Water Depth","gendep","I","?" +20536,"Gradient","gradnt","E","?" +20537,"Grain Size","grnsiz","F","?" +20538,"Inclination","incltn","F","?" +20539,"Internal Data Record Identification Number","N/A","N/A","?" +20540,"Last Detection Year","datlst","A","?" +20541,"Last Sensor","senlst","E","?" +20542,"Last Source","sorlst","E","?" +20543,"Lay Platform","layptm","E","?" +20544,"Lay Reference Number","layrfn","S","?" +20545,"Lay Time","laytim","A","?" +20546,"Layer Number","laynum","I","?" +20547,"Legal Status","legsta","S","?" +20548,"Length of Vessel","veslen","F","?" +20549,"Magnetic Anomaly Detector (MAD) Signature","madsig","E","?" +20550,"Magnetic Intensity","magint","I","?" +20551,"Mean Shear Strength","msstrg","F","?" +20552,"Migration Direction","migdir","I","?" +20553,"Migration Speed","migspd","F","?" +20554,"Milec Density","milden","E","?" +20555,"Mine Index Mine Case","mnimnc","E","?" +20556,"Mine Index Mine Type","mnimnt","L","?" +20557,"Mine Reference Number","minern","S","?" +20558,"Mine-Hunting Classification","mhclas","E","?" +20559,"Minehunting System","mnhsys","S","?" +20560,"Minesweeping System","mnssys","S","?" +20561,"Mission Classification","miscls","E","?" +20562,"Mission Comments","miscom","S","?" +20563,"Mission Date","misdat","A","?" +20564,"Mission Name","misnme","S","?" +20565,"MWDC Reference Number","mwdcrn","S","?" +20566,"Nature of Geological Layer","natsed","E","?" +20567,"Navigation System","navsys","S","?" +20568,"NOMBO Density","nomden","E","?" +20569,"Not Found","notfnd","S","?" +20570,"Number of Previous Observations","nmprob","I","?" +20571,"Operator","oprtor","S","?" +20572,"Orientation of Best Observation","orbobn","F","?" +20573,"Origin of Data","orgdat","E","?" +20574,"Originator","orgntr","S","?" +20575,"Porosity","porsty","I","?" +20576,"Quality of Beach Data","quabch","A","?" +20577,"Re-entered Date","datren","A","?" +20578,"Re-suspended Date","datres","A","?" +20579,"Reverberation","revebn","E","?" +20580,"Safety Zone","N/A","N/A","?" +20581,"Sample Retained","samret","S","?" +20582,"Seabed Coverage","sbdcov","I","?" +20583,"Ships Speed","shpspd","F","?" +20584,"Sonar Frequency","snrfrq","E","?" +20585,"Sonar Range Scale","snrrsc","F","?" +20586,"Sonar Reflectivity","snrflc","E","?" +20587,"Sonar Signal Strength","sonsig","E","?" +20588,"Sound Velocity","sndvel","F","?" +20589,"Sounding Datum","soudat","E","?" +20590,"Spudded Date","datspd","A","?" +20592,"Steepest Face Orientation","stfotn","F","?" +20593,"Strength According to Richter Scale","ricsca","I","?" +20594,"Strength of Magnetic Anomaly","magany","E","?" +20595,"Suitability for ACV Use","stbacv","E","?" +20596,"Surf Height","srfhgt","F","?" +20597,"Surf Zone","srfzne","I","?" +20598,"Survey Date and Time","surdat","A","?" +20599,"Suspension Date","datsus","A","?" +20600,"Swell Height","swlhgt","F","?" +20601,"Tidal Range","tdlrng","F","?" +20602,"Time of Year","timeyr","L","?" +20603,"Tonnage","tonage","I","?" +20604,"Towed Body Depth","twdbdp","F","?" +20605,"Type of military activity","milact","L","?" +20606,"Type of Tonnage","typton","E","?" +20607,"Type of Wreck","typewk","E","?" +20608,"Underwater Reference Mark","unwrfm","E","?" +20609,"Unique ID from a Navigational Product","N/A","N/A","?" +20610,"Water Clarity","watclr","F","?" +20611,"Wavelength","wavlen","F","?" +20612,"Weight Bearing Capability","wbrcap","I","?" +20613,"Width (left)","lftwid","F","?" +20614,"Width (right)","rgtwid","F","?" +20615,"Contour Type","hypcat","E","?" +20616,"Sounding Velocity","souvel","E","?" +20617,"Access Restriction","accres","S","?" +20618,"Approach","apprch","S","?" +20619,"Category of Beach","catbch","E","?" +20620,"Clearance Percentage","clperc","I","?" +20621,"Communications","commns","L","?" +20622,"Confidence Level","conlev","F","?" +20624,"Exit Description","extdes","S","?" +20625,"Industry","indtry","S","?" +20626,"Landing Conditions","lndcon","S","?" +20627,"Leisure Activity","lsract","S","?" +20628,"Logistics","logtcs","L","?" +20629,"Manoeuvring","manvrg","S","?" +20630,"Mine Threat Density","mntden","I","?" +20631,"Multiple Contacts","mulcon","I","?" +20632,"Navigational Description","navdes","S","?" +20633,"Navigational Difficulty","navdif","E","?" +20634,"Number of Remaining Mines","numrmn","I","?" +20635,"Pier Contact Details","pierod","S","?" +20636,"Pier Description","pierdn","S","?" +20637,"Prairies Density","prsden","I","?" +20638,"Probability for Remaining Mines","prbrmn","F","?" +20639,"Remaining Mines Likely, Maximum Number","rmnlmn","I","?" +20640,"Self Protection (Air)","sfptna","E","?" +20641,"Self Protection (Near Defence)","sptnnd","E","?" +20642,"Self Protection (Surface)","sfptns","E","?" +20643,"Sensor Coverage","sencov","S","?" +20644,"Simple Initial Threat","sminth","F","?" +20645,"Target Reference Weight","tgrfwt","E","?" +20646,"Tidal Type","tdltyp","E","?" +20647,"Type of Resource Location","typres","E","?" +20648,"Undetectable Mines Ratio","undmnr","F","?" +20649,"Undetectable Mines Ratio with Burial","umnrwb","F","?" +20650,"Undetectable Mines Ratio without Burial","umrwob","F","?" +20651,"Weapon Coverage","wpncov","S","?" +20652,"On Sonar","onsonr","E","?" +20653,"HF Bottom Loss","hfbmls","F","?" +20654,"LF Bottom Loss","lfbmls","F","?" +20655,"Detection Probability","dtprob","F","?" +20656,"Disposal Probability","dsprob","F","?" +20657,"Classification Probability","clprob","F","?" +20658,"Characteristic Detection Width (A)","cswidt","I","?" +20659,"Characteristic Detection Probability (B)","csprob","F","?" +20660,"Zone Colour","znecol","E","?" +20661,"Reverberation Frequency","revfqy","F","?" +20662,"Reverberation Grazing Angle","revgan","F","?" +20663,"International Defence Organisation (IDO) status","secido","E","?" +20664,"Protective Marking","secpmk","E","?" +20665,"Owner Authority","secown","S","?" +20666,"Caveat ","seccvt","S","?" +20667,"Species","spcies","S","?" +20668,"Swept date","swpdat","A","?" +20669,"Runway length","rwylen","I","?" +20670,"Active period","actper","S","?" +20671,"Maximum altitude","maxalt","I","?" +20672,"Minimum altitude","minalt","I","?" +20673,"Maximum Flight Level","maxftl","I","?" +20674,"Minimum Flight Level","minftl","I","?" +20675,"Bottom Vertical Safety Separation","bverss","I","?" +20676,"Minimum Safe Depth","mindep","I","?" +20677,"Interpolated line characteristic","linech","E","?" +20678,"Identification","identy","S","?" +20679,"Route Classification","rclass","E","?" +20680,"Population","popltn","I","?" +20681,"Surface Threat","surtht","E","?" +20682,"Heading-Up Bearing","upbear","F","?" +20683,"Heading-Down Bearing","dnbear","F","?" +20684,"Ice Concentration","icencn","I","?" +20685,"Danger height","dgrhgt","I","?" +20686,"Depth Restriction","depres","S","?" +20687,"Area Category","arecat","E","?" +20688,"Existence of Restricted Area","exzres","E","?" +20689,"Target Strength","tarstg","I","?" +20690,"Qualification of Radar Coverage","quarad","I","?" +20691,"Contact Details","condet","S","?" +20692,"Limit of Anchors and Chains","limanc","F","?" +20693,"CCM Index","ccmidx","I","?" +20694,"Military Load Classification","mlclas","E","?" +20695,"MGS Type","mgstyp","E","?" +20696,"Ice Attribute Concentration Total","iceact","E","?" +20697,"Ice Stage of Development","icesod","E","?" +20698,"Ice Advisory Code","iceadc","S","?" +20699,"Number of Icebergs in Area","icebnm","I","?" +20700,"Ice Line Category","icelnc","E","?" +20701,"Ice Polynya Type","icepty","E","?" +20702,"Ice Polynya Status","icepst","E","?" +20703,"Ice Lead Type","icelty","E","?" +20704,"Ice Lead Status","icelst","E","?" +20705,"Iceberg Size","icebsz","E","?" +20706,"Iceberg Shape","icebsh","E","?" +20707,"Icedrift or Iceberg Direction","icebdr","E","?" +20708,"Icedrift or Iceberg Speed","icebsp","F","?" +20709,"Maximum Ice Thickness","icemax","F","?" +20710,"Minimum Ice Thickness","icemin","F","?" +20711,"Ice Ridge Development","icerdv","E","?" +20712,"Land Ice","icelnd","E","?" +20713,"Sea Direction","seadir","E","?" +20714,"Traffic density","traden","S","?" +20715,"Type of shipping","typshp","L","?" +20716,"Ice Coverage Type","icecvt","E","?" +20718,"Status of Small Bottom Object","staobj","L","?" +20719,"ICAO code","icaocd","S","?" +20720,"textual description","txtdes","S","?" +20721,"Object Reference Number","objtrn","S","?" +20722,"Object Shape","objshp","S","?" +22484,"Category of completeness","catcnf","E","?" +22485,"Error Ellipse","errell","A","?" +22486,"Object classes","N/A","N/A","?" +22487,"Security classification","N/A","N/A","?" +22488,"Vertical Datum Shift Parameter","vershf","F","?" +22489,"Absolute Vertical Accuracy","elvacc","F","?" +22490,"Reflection Coefficient","reflco","F","?" +22491,"Copyright statement","cpyrit","S","?" Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/ntv1_can.dat =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/gdal_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/pt/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/DotSpatial.Plugins.SpatiaLite.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/BruTile.Desktop.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/prime_meridian.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/prime_meridian.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/prime_meridian.csv (revision 2866) @@ -0,0 +1,15 @@ +prime_meridian_code,prime_meridian_name,greenwich_longitude,uom_code,remarks,information_source,data_source,revision_date,change_id,deprecated +8901,Greenwich,0,9102,,,OGP,1995/06/02,1996.290,0 +8902,Lisbon,-9.0754862,9110,,"Instituto Geografico e Cadastral; Lisbon",OGP,1995/06/02,1996.290,0 +8903,Paris,2.5969213,9105,"Value adopted by IGN (Paris) in 1936. Equivalent to 2°20'14.025"". Preferred by EPSG to earlier value of 2°20'13.95"" (2.596898 grads) used by RGS London.","Institut Geographique National (IGN); Paris",OGP,2008/06/24,2008.045,0 +8904,Bogota,-74.04513,9110,,"Instituto Geografico ""Augustin Cadazzi"" (IGAC); Bogota",OGP,1995/06/02,1996.290,0 +8905,Madrid,-3.411658,9110,,,OGP,1995/06/02,1996.290,0 +8906,Rome,12.27084,9110,,,OGP,1995/06/02,1996.290,0 +8907,Bern,7.26225,9110,"1895 value. Newer value of 7°26'22.335"" determined in 1938.",Bundesamt für Landestopographie,OGP,2008/06/24,1996.290 2008.045,0 +8908,Jakarta,106.482779,9110,,,OGP,1995/06/02,1996.290,0 +8909,Ferro,-17.4,9110,Used in Austria and former Czechoslovakia.,,OGP,1995/06/02,1996.290,0 +8910,Brussels,4.220471,9110,,,OGP,1995/06/02,1996.290,0 +8911,Stockholm,18.03298,9110,,,OGP,1995/06/02,1996.290,0 +8912,Athens,23.4258815,9110,Used in Greece for older mapping based on Hatt projection.,"Topography Department; National Technical University of Athens.",OGP,1997/06/16,,0 +8913,Oslo,10.43225,9110,Formerly known as Kristiania or Christiania.,Statens Kartverk - Geodesidivisjonen,OGP,1999/10/20,,0 +8914,Paris RGS,2.201395,9110,Value replaced by IGN (France) in 1936 - see code 8903. Equivalent to 2.596898 grads.,"Royal Geographic Society, London",OGP,2007/11/01,,0 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/Readme.txt (revision 2866) @@ -0,0 +1 @@ +An extension for create contour from raste. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/MapWinUtility.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/MapWinUtility.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/MapWinUtility.xml (revision 2866) @@ -0,0 +1,672 @@ + + + + +MapWinUtility + + + + + + Label of the default button of the message box + + + + Label of the button activated by the "Esc" key + + + + Label to return when the timeout expires without the user pressing a button + + + + Number of seconds to wait before returning LabelTimeout (not used if not greater than zero) + + + + Application Name to get and set registry value for checkbox + + + + Registry Section to get and set registry value for checkbox + + + + Registry Key to get and set registry value for checkbox + + + + Text displayed for checkbox that offers to never again show this message + + Only used if RegistryAppName, RegistrySection, and RegistryKey are set + + + Number of pixels left empty around edges and between controls + + + + The label of the button that was clicked + + + + Display aTitle and aMessage and ask the user to choose a button from aButtonLabels + + Text in main area of message box + Text for title area of message box + Labels for buttons + Label of button that was clicked + + + Display aTitle and aMessage and ask the user to choose a button from aButtonLabels + + Text in main area of message box + Text for title area of message box + Labels for buttons + Label of button that was clicked + + + Launch a program and redirect its standard output and error into Logger.Dbg + + Full path of program to launch + Folder to start program in + Command-line arguments to program to launch + + True to wait until program finishes before returning from LaunchProgram, + False to return immediately while program continues to run + + + 0 if aWait=False and launch was successful + -1 if launch was unsuccessful + exit code of program if aWait=True and launch was successful + + + Create a new instance from an XML string + + XML file containing metadata + + + Metadata structure as a System.Xml.XmlDocument + + Internal representation of this object + Manipulation of this object may render it non-compliant with DTD + + + Create a new blank instance with all required elements present with "missing" values + + + + Set bounding box in geographic coordinates + + west bounding coordinate (decimal degress of longitude) + east bounding coordinate (decimal degress of longitude) + north bounding coordinate (decimal degress of latitude) + north bounding coordinate (decimal degress of latitude) + + + + Get bounding box in geographic coordinates + + west bounding coordinate (decimal degress of longitude) + east bounding coordinate (decimal degress of longitude) + north bounding coordinate (decimal degress of latitude) + north bounding coordinate (decimal degress of latitude) + + + + Add a processing step to lineage within dataqual + + Description of the processing step + + + Add a processing step to lineage within dataqual + + Description of the processing step + Date of the processing step, defaults to current date and time if omitted + + + Add processing steps to lineage within dataqual + + Processing steps to add + + + Find a child node by case-insensitive search for the given tag + Create a new child with the given tag if not found + + Node whose children will be searched + Search for a child with this tag + the found or created node + + + Replace the entire state of this object with an XML string + + New metadata XML string to use instead of current metadata + + + Return an XML string containing current metadata + + + + + + Calling save with a file name will write an XML text file with the specified name. + If no file name is given, the file name this object was created with or previously saved to is used. + + Specifying a filename will save the metadata to a new location. + + + + Create and manage FGDC metadata in XML format + + + +Chris Michaelis July 2 2005 +Used to compare write times between the first and second file. +Returns true if File2 is newer than File1 + + + + Make a System.Net.WebRequest and return its response + + URL to retrieve + Optional headers for web request + Milliseconds to wait for a response before deciding it has failed + WebResponse that comes from the requested URL + If a proxy server is needed, prompt for it then proceed + + + Private routine for using locally cached proxy server information + + Set the proxy server of this request + + + Private function for parsing proxy server information from a string + + Proxy information formatted as: + servername:port + or for servers requiring authentication: + servername:port:username:password + + + True if proxy server information was parsed from string into m_WebProxy + False if proxy server information could not be parsed from aProxyString + + port must be numeric, 80 and 8080 are popular ports + + + Private routine to handle a WebException that is a result of needing proxy information + + WebException that may be the result of needing proxy information + + True if proxy information was found. True implies that another attempt at the same action which produced the given exception may succeed. + False means one of the following: + a) the exception was not (407) Proxy Authentication Required + b) proxy information was not found + c) too many tries have been made to get proxy information + + + The first time this is called, it checks the registry for saved proxy information. + If no information is found in the registry, or another proxy exception occurs, + the user is prompted for proxy information which is then saved in the registry. + + + + Send an HTTP POST to a URL and return the results as a string + + URL to access + data to sent in POST + True to allow redirection from fullUrl + fail after not getting a response for this many milliseconds + response from web server as a string + + + Download from a URL to a string + + URL to request + Response from URL as string + + + Check for an internet connection by attempting to get a response from CheckAgainstURL + + URL to access + Fail after not getting a response for this many milliseconds + True if a response was received from CheckAgainstURL, False if there was an error or timeout + + + Unicode prefix sometimes gets included in a string, we have to remove it before interpreting as a filename or script + + + + + + + + + + an assembly built by compiling aCode or the contents of the file referenced by aCode + + Broke out the run method into PrepareScript and Run. + No longer have to pass in a reference to the Mainform. + Output assembly can be loaded by the appropriate Plugin manager from the calling code. + + + + Parses double value from string. Uses invariant culture first (. separator). On failure replces '.' to ',' and tries again. + + A string to parse value from + Default value to return if parsing has faield + True on success, false otherwise + + + A generic method for serialization of object as a child of the given XML node + + + + A generic method for serialization of object as a child of the given XML node + + + + Generic method for deserialization of an object from the given node + + + + + + + Generic method for deserialization of an object from the given node + + + + + + +Deletes all previous error messages. + + + +Provides access to the last message recieved through +the MapWinX library. + + A description of the problem encountered. + + + +Sets the last message recieved through +the MapWinX library. + + A string describing the problem encountered or the message to write. + + + Log the progress of a long-running task + + Current position/item of task + Final position/item of task + + A final call when the task is done with aCurrent = aLast + indicates completion and should clear the progress display. + + + + Update the current status message + + Description of current processing status + + + + Interface for handling status and progress updates + + + + True if user has requested to abort the activity monitored by Progress + + Automatically resets to False after returning True + + + Interface that can also be implemented when implementing IProgressStatus if also providing the option to cancel a long-running action + + + + + Default implementation does nothing + + + + Create a new level in the stack of logger progress levels + + True to increment progress by one at level above new level after finishing, Default = False + True to keep new level at the same level we are already on rather than adding to the stack + Recommendation: Using myLevel as new ProgressLevel()...[call other code that contains progress]...End Using + + + Reset the progress without destroying this level and creating a new one + + + + + Ensure the stack of logger progress levels is consistent after we are finished with this level + + + + Another IProgressStatus which will also get a copy of Status and Progress messages + + + This lets us send Progress and Status to MapWindow's status bar while also sending to StatusMonitor.exe + + + + True if user has requested to cancel current operation + Automatically cleared after level 1 progress hears that it is True + + + + True while user has requested a pause in execution + + + True when paused, False when not paused + + A button in StatusMonitor.exe labeled "Pause" + sends a message "P" through MonitorMessageHandler. + The button then changes label to "Run" and if pressed + sends a message "R", which changes Paused back to False. + Pausing is enforced by the While Paused loop in Sub Progress + + + + Start status monitor as a separate executable + + Full path to status monitor program + Directory to start running in, probably no need to specify this + Arguments to status monitor. If not specified, current process ID is used as only argument + True if started or decided to use already running monitor, False if failed to start + pMonitorProcess is set if monitor is successfully started + + + Stop StatusMonitor which was started by StartMonitor + + + + Messages from standard output of StatusMonitor.exe are handled + + + + + All messages are logged, "P" pauses, "R" resumes, "C" cancels + + + + Use StatusMonitor.exe to display Status and Progress and allow user to cancel long-running actions + + + + True to flush after each write to log file + False to buffer writes to log file and wait for explicit Flush() or operating system + + False may save some time, True makes log files more likely to be helpful + + + Icon to be used on custom message boxes + + + + New is private to ensure Logger is a singleton + + + + Start logging to a file + + Name of file to put subsequent log messages in + True to append to existing file, False to create new file + True to rename old log files as needed to use aLogFileName, + False to overwrite existing log file + True to change log file even if already logging to a file + If aLogFileName is blank and aForceNameChange = True, logging to file is stopped. + + File name being logged to + + Append a number to a given file name if needed to make it unique + + True to enable time stamping each log event + + + True to start time stamps at zero when execution starts, stamp elapsed hh:mm:ss.milliseconds, + False to stamp each event with current date/time YYYY-MM-DD@hh:mm:ss.milliseconds + + + Progress and status messages are displayed by this object + + + True if user has requested to cancel current operation + + + Write any pending log messages to the log file (if logging to a file) + + + Add a "debug" message to the log. + + Any number of strings to add to the log, usually just one + + Debug messages are commonly used to indicate that execution has reached a certain line. + Important values just computed or about to be used are often included. + + + + Create a custom message box form + + + + Log the use of a Microsoft.VisualBasic.MsgBox + + Message to display + Message box style + Title of message box + MsgBoxResult + Logs when the message box is displayed and what the user selects + + + Log the use of a Microsoft.VisualBasic.MsgBox + + Message to display + Message box style + Message box default result + Title of message box + MsgBoxResult + Logs when the message box is displayed and what the user selects + + + Log the use of a Windows.Forms.MessageBox + + Message to show + Caption for top of message box + Buttons to display + Icon to include in message box + Button to press when user presses Enter + DialogResult selected by user + Logs when the message box is displayed and what the user selects + + + Log the use of a Windows.Forms.MessageBox + + Message to show + Caption for top of message box + Buttons to display + Icon to include in message box + Button to press when user presses Enter + DialogResult selected by user + Logs when the message box is displayed and what the user selects + + + Translate MessageBoxDefaultButton and a set of MessageBoxButtons into a DialogResult + + + + + + + + Display the current status in the status bar + + Status message + + + + Display the current status in the status bar + + Status message + Write to log file flag + + + + Log the progress of a long-running task + + Current position/item of task + Final position/item of task + + A final call when the task is done with aCurrent = aLast + is desirable to clear the progress display. + If aLast = 100, then aCurrent is percent progress, but + the caller should not convert aCurrent into percent if + aLast is not 100. + + + + Combination of Status(aMessage) and Progress(aCurrent, aLast) + + Status message + Current position/item of task + Final position/item of task + It is preferred to use Status or Progress(aCurrent, aLast) if + only the functionality of one of them is desired. + + + Time in milliseconds that must elapse before a new progress update is passed to ProgressStatus + + + A delay is desirable for tasks that make progress quickly because the + time to update displayed progress can become significant. + Default is 200 milliseconds so progress display is refreshed at most 5 times per second. + Set to zero to disable this feature. + + + Walks up the stack to find the method that called into this class + file name (if available) and method name of the method that called into this class + stack is not available if not compiled in debug mode, so an empty string is returned + + + Logger provides program logging to a file and progress messages. + All methods and variables are shared, so there is no need to + create or pass an instance of Logger. Just make a reference to + this library and use Logger.Dbg, Logger.Msg, Logger.Status, Logger.Progress + + If a clsProgressStatus is set, then progress and status messages + are sent to it, allowing display. + + + + + Divides string into 2 portions at position of 1st occurence of specified delimeter. Quote specifies a particular string that is exempt from the delimeter search. + + String to be analyzed + Single-character string delimeter + Multi-character string exempted from search + + Returns leading portion of incoming string up to first occurence of delimeter. + Returns input parameter without that portion. + If no delimiter in string, returns whole string, and input parameter reduced to null string. + + + Example: StrSplit("Julie, Todd, Jane, and Ray", ",", "") = "Julie", and "Todd, Jane, and Ray" is returned as Source. + Example: StrSplit("'Julie, Todd', Jane, and Ray", ",", "'") = "Julie, Todd", and "Jane, and Ray" is returned as Source. + + + + Converts specified text file to a string. + + Name of text file to read + Keep trying for this much time + Contents of specified text file as string. + + + + See if a String is empty or Nothing + + String to check + True is empty or Nothing, otherwise False + + + + Saves incoming string to a text file. + + Name of output text file + Incoming string to be saved to file + + + + Tests for existence of a specified file or directory + + file or directory name to check for + True to look for a directory matching PathName + True to look for a file matching PathName + True if the specified file or directory exists, False if it does not + AcceptDirectories and AcceptFiles can both be true to check for a file or directory at the same time. + + + Converts full path, filename, and extension to only path and filename without extension + + Complete file name + path and file name without extension + Example: FilenameNoExt ("C:\foo\bar.txt") = "C:\foo\bar" + + + Compare two files and return True if contents are identical. + + Name of first file to compare + Name of second file to compare + true if files are identical, false if not + An exception will occur if either file cannot be read. + + + Compare two files and return True if contents are identical. + + Name of first file to compare + Name of second file to compare + Ignore case flag + true if files are identical, false if not + An exception will occur if either file cannot be read. + + + Create the specified directory and any above it that are not yet there. + + new directory to create + Example: MkDirPath("C:\foo\bar") creates the "C:\foo" and "C:\foo\bar" directories if they do not already exist. + + + Reduces full path, filename, and extension to only path + + path and file name + path portion of aFilename + Example: PathNameOnly ("C:\foo\bar.txt") = "C:\foo" + + + Try to delete a file or directory. + If it cannot not be deleted, log a message instead of throwing an exception + + Full path of file or directory to be deleted + + True if aPath was deleted without error or did not exist + False if there was an exception while trying to delete + + + If aPath is a directory, all the contents are deleted too. + Helpful for non-critical cleanup of temporary files that may be locked + + + + Try copying file from aFromPath to aToPath + If it cannot not be copied, log a message instead of throwing an exception + + Path of existing file + Location for new copy of file + True if file was copied, False if file did not exist or could not be copied + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/DotSpatial.Plugins.SpatiaLite.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/System.Data.SQLite.Linq.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/libeay32.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.StatusBarImprovements/DotSpatial.Plugins.StatusBarImprovements.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/proj.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.xml (revision 2866) @@ -0,0 +1,11141 @@ + + + + DotSpatial.Controls + + + + + Based on Ted's original idea in https://dotspatial.codeplex.com/discussions/232535 discussion thread, + a second frame is added to complement the main frame to handle dateline crossing. + First the main frame is normalized so that its left edge is in range [-180..180] and its width is bound to 360 but + retain its aspect ratio. + After the normalization, if main frame's right edge > 180 which indicates dateline crossing, then the main frame is clipped + to 180 degrees, and the secondary frame takes over, shifted to -180 degrees to the required width. + + Dateline crossing map works correctly only with WGS84 datum Mercator projection. + + + + The Map Control for 2D applications. + + + A Map Component that can be dropped on a form + + + + + This map draws geographic coordinates directly to pixel coordinates + + + + + IBasicMap + + + + + IClient + + + + + Converts a single point location into an equivalent geographic coordinate + + The client coordinate relative to the map control + The geographic ICoordinate interface + + + + Converts a rectangle in pixel coordinates relative to the map control into + a geographic envelope. + + The rectangle to convert + An IEnvelope interface + + + + Converts a single geographic location into the equivalent point on the + screen relative to the top left corner of the map. + + The geographic position to transform + A Point with the new location. + + + + Converts a single geographic envelope into an equivalent Rectangle + as it would be drawn on the screen. + + The geographic IEnvelope + A Rectangle + + + + Gets or sets the geographic extents to show in the view. + + + + + Adds a new layer to the map using an open file dialog. + + + + + Converts a point from client coordinates to screen coordinates. + + The client location. + A Point in screen coordinates + + + + Converst a point from screen coordinates to client coordinates + + The Point representing the screen position + The Point + + + + Invalidates the entire Map control, forcing it to redraw itself from the back buffer stencils. + This is good for drawing on top of the map, or when a layer is visible or not. If you need + to change the colorscheme as well + + + + + Invalidates the specified clipRectangle so that only that small region needs + to redraw itself. + + + + + + Instructs the map to update the specified clipRectangle by drawing it to the back buffer. + + + + + + Instructs the map to change the perspective to include the entire drawing content, and + in the case of 3D maps, changes the perspective to look from directly overhead. + + + + + // Added by Eric Hullinger 12/28/2012 for use in preventing zooming out too far. + Gets the MaxExtents of current Map. + + Indicates whether the extent should be expanded by 10% to satisfy issue 84 (Expand target envelope by 10%). + + + + Instructs the map to clear the layers. + + + + + returns a functional list of the ILayer members. This list will be + separate from the actual list stored, but contains a shallow copy + of the members, so the layers themselves can be accessed directly. + + + + + + Gets the bounding rectangle representing this map in screen coordinates + + + + + Gets an image that has been buffered + + + + + Gets the client rectangle of the map control + + + + + Gets or sets the current tool mode. This rapidly enables or disables specific tools to give + a combination of functionality. Selecting None will disable all the tools, which can be + enabled manually by enabling the specific tool in the GeoTools dictionary. + + + + + Gets the geographic bounds of all of the different data layers currently visible on the map. + + + + + Gets the height of the control + + + + + Gets or sets a boolean that indicates whether a map-function is currently interacting with the map. + If this is true, then any tool-tip like popups or other mechanisms that require lots of re-drawing + should suspend themselves to prevent conflict. Setting this actually increments an internal integer, + so when that integer is 0, the map is "Not" busy, but multiple busy processes can work independently. + + + + + Indicates whether the Map is Zoomed out to full extent or not. + Added 1/3/2013 by Eric Hullinger + + + + + Gets the screen coordinates of the + + + + + Gets the legend, if any, associated with this map control. + + + + + A MapFrame + + + + + Gets the screen coordinates of the top of this control + + + + + Gets the width of the control + + + + + This allows to zoom out farther than the extent of the map. This is useful if we have only layers with small extents and want to look at them from farther out. + + + + + If the specified function is already in the list of functions, this will properly test the yield style of various + map functions that are currently on and then activate the function. If this function is not in the list, then + it will add it to the list. If you need to control the position, then insert the function before using this + method to activate. Be warned that calling "Activate" directly on your function will activate your function + but not disable any other functions. You can set "Map.FunctionMode = FunctionModes.None" first, and then + specifically activate the function that you want. + + The MapFunction to activate, or add. + + + + Adds a new layer to the map by using an open file dialog + + An IMapLayer that represents the layer in the map. + + + + Creates a new layer from the specified fileName and adds it to the map. + + The string fileName to add to the map + The newly created IMapLayer + + + + Uses the file dialog to allow selection of a fileName for opening the + new layer, but does not allow multiple files to be added at once. + + The newly opened IMapLayer + + + + This will add a new label category that will only apply to the specified filter expression. This will not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this category. + The name of the category. + + + + This will add a new label category that will only apply to the specified filter expression. This will not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this category. + A geographic width, so that if the map is zoomed to a geographic width smaller than this value, labels should appear. + + + + Gets the subset of layers that are specifically raster layers, allowing + you to control their symbology. + + + + + + Gets the subset of layers that are specifically raster layers, allowing + you to control their symbology. + + + + + + Gets a list of just the line layers (and not the general layers) + + + + + + Gets a list of just the polygon layers (and not the general layers) + + + + + + Gets a list of just the point layers (and not the general layers) + + + + + + Gets a list of just the feature layers regardless of whether they are lines, points, or polygons + + An array of IMapFeatureLayers + + + + Allows a multi-select file dialog to add raster layers, applying a + filter so that only supported raster formats will appear. + + A list of the IMapRasterLayers that were opened. + + + + Allows an open file dialog without multi-select enabled to add a single + raster to the map as a layer, and returns the added layer. + + The IMapRasterLayer that was added + + + + Allows a mult-select open file dialog to specify several fileNames to add. + Only files with supported vector extensions will be shown. + + The list of added MapFeatureLayers + + + + Allows an open file dialog without multi-select enabled to add a single + raster tot he map as a layer, and returns the added layer. + + + + + + Allows a mult-select open file dialog to specify several fileNames to add. + Only files with supported image extensions will be shown. + + The list of added MapImageLayers + + + + Allows an open dialog without multi-select to specify a single fileName + to be added to the map as a new layer and returns the newly added layer. + + The layer that was added to the map. + + + + Gets the MapFunction based on the string name + + The string name to find + The MapFunction with the specified name + + + + This causes all of the datalayers to re-draw themselves to the buffer, rather than just drawing + the buffer itself like what happens during "Invalidate" + + + + + This can be called any time, and is currently being used to capture + the end of a resize event when the actual data should be updated. + + + + + + + + + + Zooms in one notch, so that the scale becomes larger and the features become larger. + + + + + Zooms out one notch so that the scale becomes smaller and the features become smaller. + + + + + Zooms to the next extent of the map + + + + + Zooms to the previous extent of the map + + + + + Occurs after a layer has been added to the mapframe, or any of the child groups of that mapframe. + + + + + Occurs after the map is refreshed + + + + + Occurs after the map is resized + + + + + Occurs when the map function mode is changed + for example when function mode is changed from 'zoom' to 'select' + + + + + + + + + + Gets or sets the Cursor. This will be changed as the cursor mode changes. + + + + + Gets or sets the dictionary of tools built into this project + + + + + If this is true, then point layers in the map will only draw points that are + more than 50% revealed. This should increase drawing speed for layers that have + a large number of points. + + + + + Returns a MapFrame + + + + + The layers for this map + + + + + Gets or sets the progress handler for this component. + + + + + Gets or sets the projection. This should reflect the projection of the first data layer loaded. + Loading subsequent, but non-matching projections should throw an alert, and allow reprojection. + + + + + Creates a new instance of a map component that can be dropped on a form. + + + + + Handles the resizing in the case where the map uses docking, and therefore + needs to be updated whenever the form changes size. + + + + + + + + + + + + This will add a new label category that will only apply to the specified filter expression. + This will not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. + Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this + category. + The name of the category. + + + + This will add a new label category that will only apply to the specified filter expression. This will + not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. + Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this + category. + A geographic width, so that if the map is zoomed to a geographic width smaller than + this value, labels should appear. + + + + Gets the subset of layers that are specifically raster layers, allowing + you to control their symbology. + + + + + + Gets the subset of layers that are specifically raster layers, allowing + you to control their symbology. + + + + + + Gets a list of just the line layers (and not the general layers) + + + + + + Gets a list of just the line layers (and not the general layers) + + + + + + Gets a list of just the line layers (and not the general layers) + + + + + + Gets a list of just the feature layers regardless of whether they are lines, points, or polygons + + An array of IMapFeatureLayers + + + + Gets the MapFunction based on the string name + + The string name to find + The MapFunction with the specified name + + + + Removes any members from existing in the selected state + + + + + Adds any members found in the specified region to the selected state as long as SelectionEnabled is set to true. + + The geographic region where selection occurs that is tolerant for point or linestrings. + The tight envelope to use for polygons. + The selection mode. + The envelope affected area. + Boolean, true if any members were added to the selection. + + + + Inverts the selected state of any members in the specified region. + + The geographic region where selection occurs that is tolerant for point or linestrings. + The tight envelope to use for polygons. + The selection mode determining how to test for intersection. + The geographic region encapsulating the changed members. + boolean, true if members were changed by the selection process. + + + + Adds any members found in the specified region to the selected state as long as SelectionEnabled is set to true. + + The geographic region where selection occurs that is tolerant for point or linestrings. + The tight envelope to use for polygons. + The selection mode. + The envelope affected area. + Boolean, true if any members were added to the selection. + + + + Allows the user to add a new layer to the map using an open file dialog to choose a layer file. + Multi-select is an option, so this return a list with all the layers. + + + + + Adds the fileName as a new layer to the map, returning the new layer. + + The string fileName of the layer to add + The IMapLayer added to the file. + + + + This is so that if you have a basic map interface you can still prompt + to add a layer, you just won't get an IMapLayer back. + + + + + Uses the file dialog to allow selection of a fileName for opening the + new layer, but does not allow multiple files to be added at once. + + The newly opened IMapLayer + + + + Allows a multi-select file dialog to add raster layers, applying a + filter so that only supported raster formats will appear. + + A list of the IMapRasterLayers that were opened. + + + + Allows an open file dialog without multi-select enabled to add a single + raster to the map as a layer, and returns the added layer. + + The IMapRasterLayer that was added, or null. + + + + Allows a mult-select open file dialog to specify several fileNames to add. + Only files with supported vector extensions will be shown. + + The list of added MapFeatureLayers + + + + Allows an open file dialog without multi-select enabled to add a single + raster tot he map as a layer, and returns the added layer. + + The IMapFeatureLayer that was added, or null. + + + + Allows a mult-select open file dialog to specify several fileNames to add. + Only files with supported image extensions will be shown. + + The list of added MapImageLayers + + + + Allows an open dialog without multi-select to specify a single fileName + to be added to the map as a new layer and returns the newly added layer. + + The layer that was added to the map, or null. + + + + This can be called any time, and is currently being used to capture + the end of a resize event when the actual data should be updated. + + + + + Saves the dataset belonging to the layer. + + + + + Instructs the map to change the perspective to include the entire drawing content, and + in the case of 3D maps, changes the perspective to look from directly overhead. + + + + + Gets the MaxExtent Window of the current Map. + + Indicates whether the extent should be expanded by 10% to satisfy issue 84 (Expand target envelope by 10%). + + + + This activates the labels for the specified feature layer that will be the specified expression + where field names are in square brackets like "[Name]: [Value]". This will label all the features, + and remove any previous labeling. + + The FeatureLayer to apply the labels to. + The string label expression to use where field names are in square brackets like + [Name] + The font to use for these labels + The color for the labels + + + + Removes any existing label categories + + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + The graphics device to print to + the rectangle where the map content should be drawn. + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + The graphics device to print to + the rectangle where the map content should be drawn. + the extents to print in the target rectangle + + + + Instructs the map to clear the layers. + + + + + If the specified function is already in the list of functions, this will properly test the yield style of various + map functions that are currently on and then activate the function. If this function is not in the list, then + it will add it to the list. If you need to control the position, then insert the function before using this + method to activate. Be warned that calling "Activate" directly on your function will activate your function + but not disable any other functions. You can set "Map.FunctionMode = FunctionModes.None" first, and then + specifically activate the function that you want. + + The MapFunction to activate, or add. + + + + returns a functional list of the ILayer members. This list will be + separate from the actual list stored, but contains a shallow copy + of the members, so the layers themselves can be accessed directly. + + + + + + Handles removing event handlers for the map frame + + + + + + Handles adding new event handlers to the map frame + + + + + + Fires the LayerAdded event + + + + + Occurs after the selection is updated on all the layers + + + + + Gets all layers of the map including layers which are nested + within groups. The group objects themselves are not included in this list, + but all FeatureLayers, RasterLayers, ImageLayers and other layers are included. + + The list of the layers + + + + Gets all map groups in the map including the nested groups + + the list of the groups + + + + This causes all of the data layers to re-draw themselves to the buffer, rather than just drawing + the buffer itself like what happens during "Invalidate" + + + + + Instructs the map to update the specified clipRectangle by drawing it to the back buffer. + + + + + + Converts a single point location into an equivalent geographic coordinate + + The client coordinate relative to the map control + The geographic ICoordinate interface + + + + Converts a rectangle in pixel coordinates relative to the map control into + a geographic envelope. + + The rectangle to convert + An IEnvelope interface + + + + Converts a single geographic location into the equivalent point on the + screen relative to the top left corner of the map. + + The geographic position to transform + A Point with the new location. + + + + Converts a single geographic envelope into an equivalent Rectangle + as it would be drawn on the screen. + + The geographic IEnvelope + A Rectangle + + + + Zooms in one notch, so that the scale becomes larger and the features become larger. + + + + + Zooms out one notch so that the scale becomes smaller and the features become smaller. + + + + + Zooms to the next extent + + + + + Zooms to the previous extent + + + + + Occurs when this control tries to paint the background. + + + + + + Perform custom drawing + + + + + + Captures an image of whatever the contents of the back buffer would be at the size of the screen. + + + + + + Creates a snapshot that is scaled to fit to a bitmap of the specified width. + + The width of the desired bitmap + A bitmap with the specified width + + + + Fires the DoMouseDoubleClick method on the ActiveTools + + + + + + Fires the OnMouseDown event on the Active Tools + + + + + + Fires the OnMouseUp event on the Active Tools + + + + + + Fires the OnMouseMove event on the Active Tools + + + + + + Fires the OnMouseWheel event for the active tools + + + + + + Fires the ProjectionChanged event. + + + + + Fires the ViewExtentsChanged event. Corrects the ViewExtent if it is smaller than 1e-7. If ZoomOutFartherThanMaxExtent is set, it corrects the + ViewExtent if it is bigger then 1e+9. Otherwise it corrects the ViewExtent if it is bigger than the Maps extent + 10%. + + + + + + + Fires the FunctionModeChanged event. + + + + + Occurs after this object has been resized. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs after the map refreshes the image + + + + + Occurs when the map function mode has changed + + Example of changing the function mode + is changing from zoom mode to select mode. + + + + Occurs after a resize event + + + + + Occurs after the selection has changed for all the layers + + + + + Occurs after a layer has been added to the mapframe, or any of the child groups of that mapframe. + + + + + Public event advertising the mouse movement + + + + + Fires after the view extents have been altered and the map has redrawn to the new extents. + This is an echo of the MapFrame.ViewExtentsChanged, so you only want one handler. + + + + + Occurs after the projection of the map has been changed + + + + + Gets or sets a boolean that indicates whether or not + the drawing layers should cache off-screen data to + the buffer. Panning will be much more elegant, + but zooming, selecting and resizing will take a + performance penalty. + + + + + Gets or sets the Projection Esri string of the map. This property is used for serializing + the projection string to the project file. + + + + + Gets or sets a PromptMode enumeration that controls how users are prompted before adding layers + that have a coordinate system that is different from the map. + + + + + Gets or sets a PromptMode enumeration that controls how users are prompted before adding layers + that have a coordinate system that is different from the map. + + + + + Gets or sets a value indicating whether layers should draw during the actual resize itself. The + normal behavior is to draw the existing image buffer in the new size and position which is much + faster for large datasets, but is not as visually appealing if you only work with small datasets. + + + + + Cursor hiding from designer + + + + + Gets or sets a boolean indicating whether or not the sel + + + + + Gets or sets a boolean that indicates whether the Garbage collector should collect after drawing. + This can be disabled for fast-action panning, but should normally be enabled. + + + + + Gets or sets the dictionary of tools built into this project + + + + + Gets or sets the current tool mode. This rapidly enables or disables specific tools to give + a combination of functionality. Selecting None will disable all the tools, which can be + enabled manually by enabling the specific tool in the GeoTools dictionary. + + + + + Gets or sets a boolean that indicates whether a map-function is currently interacting with the map. + If this is true, then any tool-tip like popups or other mechanisms that require lots of re-drawing + should suspend themselves to prevent conflict. Setting this actually increments an internal integer, + so when that integer is 0, the map is "Not" busy, but multiple busy processess can work independantly. + + + + + If true then the map is zoomed to its full extents + Added by Eric Hullinger 1/3/2013 + + + + + Gets or sets the back buffer. The back buffer should be in Format32bbpArgb bitmap. + If it is not, then the image on the back buffer will be copied from the supplied image. + + + + + If this is true, then point layers in the map will only draw points that are + more than 50% revealed. This should increase drawing speed for layers that have + a large number of points. + + + + + Gets the geographic bounds of all of the different data layers currently visible on the map. + + + + + Gets or sets the geographic extents to show in the view. + + + + + Gets or sets the MapFrame that should be displayed in this map. + + + + + Gets or sets the collection of layers + + + + + Gets or sets the projection. This should reflect the projection of the first data layer loaded. + Loading subsequent, but non-matching projections should throw an alert, and allow reprojection. + + + + + Gets or sets the legend to use when showing the layers from this map + + + + + Gets or sets the progress handler for this component. + + + + + This allows to zoom out farther than the extent of the map. This is useful if we have only layers with small extents and want to look at them from farther out. + + + + + Extension of Extent class to deal with dateline crossing + + + + + Add Data to the Map + + + + + Identifier Tool + + + + + Shows the options dialog. + + + + + Set the function mode to pan so user can move it with a mouse. + + + + + Handles the Click event of the PrintLayout control. + + The source of the event. + The instance containing the event data. + + + + Remove currently selected layer from the Map + + + + + Select or deselect Features + + + + + Deselect all features in all layers + + + + + Zoom In + + + + + Zoom to previous extent + + + + + Zoom Out + + + + + Zoom to previous extent + + + + + Zoom to the currently selected layer + + + + + Zoom to maximum extents + + The source of the event. + The instance containing the event data. + + + + Special marker for default required imports + + + + + Default Dock Manager. It will used when no custom implementation of IDockManager where found. + + + + + An interface that allows plugins to add controls which are managed by the application as forms or docking panels. + + + + + Adds the specified panel. + + + The panel. + + + + + Removes the specified panel. + + + The key. + + + + + Resets the layout of the dock panels to a developer specified location. + + + + + Activates and selects the panel. + + + The key. + + + + + Hides the panel. A subsequent call to SelectPanel will show this panel in the same place it was when hidden. + + The key. + + + + Shows the panel but does not select it. + + The key. + + + + Occurs when the active panel is changed, meaning a difference panel is activated. + + + + + Occurs when a panel is closed, which means the panel can still be activated or removed. + + + + + Occurs after a panel is added. + + + + + Occurs after a panel is removed. + + + + + Occurs when a panel is hidden. + + + + + Default Header control. It will used when no custom implementation of IHeaderControl where found. + + + + + Implementation of toolbar header. + + + + + HeaderControl which takes care of implementing RemoveItems. + + + + + By using this interface, the developers can create a button, menu, ribbon tab. etc + without considering whether the user interface is ribbon style or standard toolbar + style + + + + + This will add a new item that will appear on the standard toolbar or ribbon control. + + + + + Remove item from the standard toolbar or ribbon control + + The string itemName to remove from the standard toolbar or ribbon control + + + + Removes all items the plugin created. + + + + + Selects the root, making it the active root. + + The key. + + + + This event occurs when a root item is selected + + + + + The key of the home root item. + + + + + The key of the Application Menu item. + + + + + Used as the group caption for icons that should appear near the ribbon + maximize/minimize chevron. + + + + + A key to use for the root container of any extensions that do not provider a root key. + + + + + Removes all items the plugin created by calling Remove() individually for each. + + Should only be called by the plugin (from the plugin assembly). + + + + This will add a new item that will appear on the standard toolbar or ribbon control. + + Should only be called by the plugin (from the plugin assembly). + + + + Remove item from the standard toolbar or ribbon control. Also removes groups or parents when all + items have been removed from them. + + The string itemName to remove from the standard toolbar or ribbon control + + If passed a root item the behavior is not defined. The root item should never be empty because + it will be removed when all of its child items are removed. + + + + + Selects the root, making it the active root. + + The key. + + + + Adds the specified item. + + The item. + + + + Adds the menu container item. + + The item. + + + + Adds the specified root item. + + The root item. + The RootItem should not be visible until it contains other items. + + + + Adds a combo box style item + + The item. + + + + Adds a visible separator. + + The item. + + + + Adds the specified textbox item. + + The item. + + + + Adds the item to dictionary so that it can be removed later. + + Item to add. + Full name of the assembly. + + + + Gets header item by key + + Key + Header item or null if not found. + + + + Occurs when a root item is selected by the user. + This event also occurs after the SelectRoot method is called. + + The key of the new selected root item + + + + Occurs when a root item is selected + + + + + Adds the item. + + + The item. + + + + + Adds the separator. + + The item. + + + + Adds the specified root item. + + + The root item. + + + + + + + This will add a new item that will appear on the standard toolbar or ribbon control. + + + The item. + + + + + + + Adds a combo box style item + + The item. + + + + Adds the specified textbox item. + + The item. + + + + Initializes the specified container. + + The tool strip panel. + Menu strip. + + + + Loads the toolstrips in the order, that was saved on the last exit. + + + + + Remove item from the standard toolbar or ribbon control + + + The string itemName to remove from the standard toolbar or ribbon control + + + + + + + Selects the root. (Does nothing.) + + The key. + + + + Determines whether [is for tool strip] being that it has an icon. Otherwise it should go on a menu. + + + The item. + + + true if [is for tool strip] [the specified item]; otherwise, false. + + + + + Loads the saved toolstrippositions from file. + + + + + When the user moves toolstrips, the new position gets remembered for saving. + + + + + Gets the path to the MenuBarHeaderControl.config-file in which the toolstrip-order is saved. + + + + + Saves the toolstrips positions so that the user doesn't have to reorder them on next start. + + + + + Adds a toolstrip with the given name to the _strips-List. If the toolbars were already loaded it is added to the _tsPanel as well. + + Name of the toolstrip that will be added. + ToolStrip that was created. + + + + Ensure the extensions tab exists. + + + + + Make sure the root key is present or use a default. + + + + + + + Unchecks all toolstrip buttons except the current button + + + The toolstrip button which should + stay checked + + + + + If set the userdefined toolstrip-order won't be saved/loaded; + + Enables the user to ignore Toolstrippositionsaving (e.g. in DesignMode) + + + + Default Status Control. It will used when no custom implementation of IStatusControl where found. + + + + + Used to display status information. + + + + + Adds the specified panel. + + The panel. + + + + Removes the specified panel. + + The panel. + + + + The active panel changed event args. + + + + + Initializes a new instance of the ActivePanelChangedEventArgs class. + + + The active Panel Key. + + + + + Gets or sets the active panel key. + + + The active panel key. + + + + + Named DockablePanel to avoid the name conflict with DockPanel in WPF and most control libraries. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The key. + The caption. + The inner control. + The dock. + + + + Triggers the PropertyChanged event. + + + The ea. + + + + + Occurs when a property value changes. + + + + + Gets or sets the caption of the panel and any tab button. + + + The caption. + + + + + Gets or sets The dock location. + + + The dock location. + + + + + Gets or sets the InnerControl. + + + The InnerControl. + + + + + Gets or sets the key. + + The unique identifier. + + + + Gets or sets the small image. + + The small image. + + + + Gets or sets the sort order. Lower values will suggest that an item should appear further left in a LeftToRight environment. Or higher up in a top to bottom environment. + + Use a multiple of 100 or so to allow other developers some 'space' to place their panels. + + The sort order. + + + + + A provider is the base class that enables plug-ins to work with the Application Manager. + This is true whether it is a plug-in or a data provider or some other extension. + + + + + Activates this provider + + + + + Deactivates this provider + + + + + Gets or sets a boolean that is true if the extension is active and running. + + + + + Gets a value indicating whether [deactivation is allowed]. + + + true if [deactivation is allowed]; otherwise, false. + + + + + Specifies the activation priority order + + + + + Gets the AppManager that is responsible for activating and deactivating plugins as well as coordinating + all of the other properties. + + + + + Feature Identifier form used to display output from MapFunctionIdentify. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of FeatureIdentifier + + + + + Clears the items in the tree + + + + + Adds a new node to the tree view with the layer name + + + + + + + Adds a new node to the tree view with the layer name + + The layer. + The bounds. + + + + Re-selects the same layer that was being investigated before. + + + + + The StatusPanel class allows adding user-defined status panels to the + status bar + + + + + Initializes a new instance of the StatusPanel class. + + + + + Triggers the PropertyChanged event. + + + + + Gets or sets the caption. + + + The caption. + + + + + Gets or sets the width. + + + The width. + + + + + Gets or sets the key. + + + The key. + + + + + Occurs when a property value changes. + + + + + Gets or sets the progress percent. + + + + + This activates the labels for the specified feature layer that will be the specified expression + where field names are in square brackets like "[Name]: [Value]". This will label all the features, + and remove any previous labeling. + + The FeatureLayer to apply the labels to. + The string label expression to use where field names are in square brackets like + [Name] + The font to use for these labels + The color for the labels + + + + This will add a new label category that will only apply to the specified filter expression. + This will not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. + Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this + category. + The name of the category. + + + + This will add a new label category that will only apply to the specified filter expression. This will + not remove any existing categories. + + The feature layer that the labels should be applied to + The string expression where field names are in square brackets + The string filter expression that controls which features are labeled. + Field names are in square brackets, strings in single quotes. + The label symbolizer that controls the basic appearance of the labels in this + category. + A geographic width, so that if the map is zoomed to a geographic width smaller than + this value, labels should appear. + + + + Removes any existing label categories + + + + + Saves the changed settings. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + The PackageManager performs file based operations on packages. + + + + + Marks the package for removal. + + The app manager. + The path. + + + + Marks the extension for removal. This will leave any dependencies. + + The AppManager. + Name of the file. + + + + Ensures the extension is deactivated. + + The AppManager. + Name of the extension. + + + + + Removes the pending packages and extensions. + + + + + Deletes everything in the DotSpatial.Controls.AppManager.AbsolutePathToExtensions folder. + + + + + Deletes the directory and any files, recursively. + + The path. + + + + A list of options for enabling Apps. + + + + + The "Extensions" menu item will appear on the HeaderControl. Clicking it launches the AppDialog. + + + + + A "plugin" glyph will appear suspended in the lower right corner of the map. Clicking it launches + the AppDialog. + + + + + The AppDialog will button not be shown. This allows the application developer to provide a custom implementation. + + + + + A list of options for enabling Apps. + + + + + The "Extensions" menu item will appear on the HeaderControl. Clicking it launches the AppDialog. + + + + + A "plugin" glyph will appear suspended in the lower right corner of the map. Clicking it launches + the AppDialog. + + + + + The AppDialog will button not be shown. This allows the application developer to provide a custom implementation. + + + + + A component that manages the loading of extensions (including data providers), and helps with file serialization. + + Will soon be responsible for tools and layer providers, too. + + + + Name of the folder where packages reside. + Found within the Extensions Directory. + + + + + Initializes a new instance of the class. + + + + + Activates the extensions passed in and deactivates the rest. + If null is passed in, all extensions are deactivated. + Only affects extensions where DeactivationAllowed is true. + + The names. + + + + Ensures the required imports are available for IExtension implementors. We guarantee DockManager, HeaderControl and ProgressHandler + are available when an IExtension loads, so that the developer of an IExtension doesn't need to check to see whether they are null. + We make sure these are available before activating an IExtension. + + + + + + Gets the extension. + + The assembly title. + + Null if the extension is not present. + + + + + Gets the extension. + + The assembly title. + The version. + + Null if the extension is not present. + + + + + Loads Extensions using MEF and then activates them. + Should only be called once on startup. + + + + + Triggers the ExtensionsActivated event. + + + The ea. + + + + + Refreshes the extensions - activating any newly discovered ones. + + + + + Updates the ProgressHandler. + + The message. + + + + Catalogs all extensions and then composes their parts. + + + + + Clean up any resources being used. + + + true if managed resources should be disposed; otherwise, false. + + + + + Looks for the assembly in a path like Extensions\Packages\ + + + + + Gets the directories in Directories and those nested one level deep. + + + + + + Gets the paths of dlls for extensions that were downloaded as packages. + + The absolute path to extensions. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when all plugins are loaded. + + + + + Occurs just before starting to activate extensions. + Use this event to run a custom task before extensions + are activated. + + + + + Occurs after the extensions that are of type + SatisfyImportsExtensions have been activated. At this stage + the DockManager, ProgressHandler and HeaderControl are available. + Use this event to add custom items to the DockManager, ProgressHandler + or HeaderControl before other extensions are activated. + + + + + Occurs when HeaderControl changed. + + + + + Occurs when Map Changed + + + + + A known directory from where extensions will be loaded, in addition to the configurable Directories list. + Assemblies placed directly in this directory will not be loaded, but rather those nested inside of a folder + more than one level deep. + + + + + Gets the catalog containing all off the know extensions. Add any additional extensions to Catalog.Catalogs. + + + + + Gets or sets the composition container. + + + The composition container. + + + + + Gets or sets the list of string paths (relative to this one) to search for plugins. + + + + + Gets or sets the dock manager that is being used to storing dock panels. You can leave this empty to use default dock manager. + + + The dock manager. + + + + + Gets the extensions. + + + + + Gets or sets the header control + + + + + Gets or sets the Legend (Table of Contents) associated with the plugin manager + + + + + Gets or sets the Map associated with the plugin manager + + + + + Gets or sets the progress handler that is being used to display status messages. + + + + + Gets or sets the serialization manager. + + + + + Gets or sets the method for enabling extension Apps. + + + + + Gets or sets the method for enabling extension Apps. + + + + + Gets or sets a value indicating whether extensions should be placed in AppDomain.CurrentDomain.BaseDirectory. + + + true if extensions should be placed in AppDomain.CurrentDomain.BaseDirectory; otherwise, extensions will be placed in a user profile folder based on the entry assembly name. + This must be set before calling LoadExtensions(); + + + + + CohenSutherland Line(string) clipping algorithm + + + + + Clip a line segment. Coordinates are modified in place. + + + + + + + + + + + Clip status indicating how the line was clipped. + + + + + Clip a linestring + + + + + + + + List of clipped linestrings. + + + + + Result of individual line segment clip + + + + + Initial untested value + + + + + Line is completely inside the clip area + + + + + Line is completely outside the clip area + + + + + Line was partially contained and first vertex was clipped + + + + + Line was partially contained and last vertex was clipped + + + + + An interactive element. + + + + + A visually distinguished container of instances that are Grouped inside of s. + + + + + An item that has a visible presence in the + + + + + Initializes a new instance of the class. + + The key. + + + + Initializes a new instance of the class. + + + + + Triggers the PropertyChanged event. + + + + + Gets or sets the key. + + The unique identifier. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the GroupItem class. + + + + + Initializes a new instance of the HeaderItem class. + + + + + Initializes a new instance of the class. + + The key. + + + + Gets or sets the group. This is a logical unit. + + The group. + + + + Gets or sets the root key. + + The root key. + + + + Initializes a new instance of the ActionItem class. + + + + + Initializes a new instance of the class. + + The key. + + + + Initializes a new instance of the ActionItem class. + + + + + Gets or sets the caption. + + The caption. + + + + Gets or sets the simple tool tip. + + The simple tool tip. + + + + Gets or sets a value indicating whether this is enabled. + + + true if enabled; otherwise, false. + + + + + Gets or sets a value indicating whether this is visible. + + + true if visible; otherwise, false. + + + + + A dropdown (combo box) style item. + + + + + Initializes a new instance of the DropDownActionItem class. + + + + + Initializes a new instance of the DropDownActionItem class. + + + + + Triggers the SelectedValueChanged event. + + + + + Gets or sets a value indicating whether the user may enter their own value into the dropdown. + + + true if [allow editing text]; otherwise, false. + + + + + Gets the items contained in the dropdown. Changes are not supported after the item is added to the header control. + + + + + Gets or sets a value indicating whether the user is selecting multiple elements from the dropdownlist or not. + + + + + Gets or sets a value indicating the color of the text in the dropdownbox + + + + + Gets or sets a value indicating the display text in the dropdownbox + + + + + Gets or sets the width of the item displayed in the header control. + + + The width. + + + + + Gets or sets the text displayed grayed out (as a watermark) when the editor doesn't have focus, and its edit value is null. + + + The prompt. + + + + + Gets or sets the selected item. + + + The selected item. + + + + + Gets or sets an event handler fired on selected value changed. + + + The on selected value changed. + + + + + A container of other instances. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the MenuContainerItem class. + + + + + Initializes a new instance of the MenuContainerItem class. + + + + + Gets or sets the large image. + + The large image. + + + + An item that appears as a root-level container of other instances. + + + + + Initializes a new instance of RootItem MenuContainerItem class. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the caption. + + The caption. + + + + Gets or sets the sort order. Lower values will suggest that an item should appear further left in a LeftToRight environment. + + Use a multiple of 10 or so to allow other developers some 'space' to place their menus. + + The sort order. + + + + + Gets or sets a value indicating whether this is visible. + + + true if visible; otherwise, false. + + Will generally bring this into focus when Visible is set to true. + + + + Information about the selected root item + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the RootItemEventArgs class. + + The key of the selected root item + + + + Gets or sets the selected root item key. + + + The selected root item key + + + + + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the SelectedValueChangedEventArgs class. + + + + + + Gets or sets the selected item. + + + The selected item. + + + + + A thin, typically vertical separation bar. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the SeparatorItem class. + + + + + A simple action which is represented by a button or clickable surface. + + + + + Initializes a new instance of the SimpleActionItem class. + + + + + Initializes a new instance of the SimpleActionItem class. + + + + + Initializes a new instance of the SimpleActionItem class. + + + + + Triggers the Click event. + + + + + Checks the button it it is unchecked and unchecks the button it if is checked. + + This method has no effect if ToggleGroupKey is null. + + + + Triggers the Toggling event. + + + + + Gets or sets the click event handler. + + The click event handler. + + + + Thrown when the Toggle method is executed. + + + + + True if an associated quick-access button is shown. + False if the associated quick-access button is not shown. + + + + + Gets or sets the large image. + + The large image. + + + + Gets or sets the menu container key. + + The menu container key. + + + + Gets or sets the small image. + + The small image. + + + + Gets or sets the sort order. Lower values will suggest that an item should appear further left in a LeftToRight environment. Or higher up in a top to bottom environment. + + Use a multiple of 100 or so to allow other developers some 'space' to place their groups. + + The sort order. + + + + + Gets or sets the toggle button group key used to select what buttons should toggle each other.. + + The toggle button key. + + + + Helper-Class to remember the Toolstrip-Positions to save to file on exit. + + + + + A textbox item + + + + + Gets or sets the width of the item displayed in the header control. + + + The width. + + + + + Gets or sets the text. + + + The text. + + + + + Gets or sets a value indicating the color of the text in the dropdownbox + + + + + The actual control controling the layout. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Removes the specified layoutElement from the layout + + + + + + Clears the the layout of all layoutElements + + + + + Adds the specified LayoutElement le to the selection + + + + + Adds the specified LayoutElement le to the selection + + + + + Removes the specified layoutElement from the selection + + + + + Clears the current selection + + + + + This is the constructor, it makes a LayoutControl + + + + + Creates a new blank layout + + Prompts the user if they want to save first + + + + Shows a load dialog box and prompts the user to open a layout file + + Prompts the user if they want to save first + Loads the paper settings (size, margins, orientation) from the layout + Warn the user if the paper size stored in the file doesn't exist in current printer and ask them if they want to load it anyways + + + + Loads the selected layoutfile + + The layout file to load + Loads the paper settings (size, margins, orientation) from the layout + Warn the user if the paper size stored in the file doesn't exist in current printer and ask them if they want to load it anyways + + + + Prepapres the layoutcontrol for closing, prompts the user to save if needed + + + + + Shows a save dialog box and prompts the user to save a layout file. + + Show prompt dialog or not. Note that dialog will be always shown when Filename is null or empty. + + + + Saves the layout to the specified fileName. + If file name has .mwl extension then it will be saved as DotSpatial Layout File. + Otherwise it will be trying to save as Bitmap. + + Specified file name + Throws when fileName is null. + + + + Export layout to bitmap. + + Bitmap file name + Throws when fileName is null. + + + + Export layout to DotSpatial Layout File. + + DotSpatial Layout File + Throws when fileName is null. + + + + Adds a layout element to the layout + + + + + This shows the choose printer dialog + + + + + This shows the pageSetup dialog + + + + + Prints to the printer currently in PrinterSettings + + + + + Refreshes all of the elements in the layout + + + + + This event handler is fired by the print document when it prints and draws the layout to the print document + + + + + Draws page to layout + + + + + Zooms into the paper + + + + + Zooms out of the paper + + + + + Zooms the page to fit to the screen and centers it + + + + + Zooms the specified map element in by 10% + + + + + Zooms all map elements in by 10% + + + + + Zooms the specified map element out by 10% + + + + + Zooms all map element out by 10% + + + + + Zooms the specified map element to the full extent of its layers + + + + + Zooms all map elements to the full extent of their layers + + + + + Zoom the specified map to the extent of the data view + + + + + Zoom all maps to the extent of their data view + + + + + Pans the map the specified amount + + the layout map to pan + The distance to pan the map on x-axis in screen coord + The distance to pan the map on y-axis in screen coord + + + + Deletes all of the selected elements from the model + + + + + Inverts the selection + + + + + Moves the selection up by one + + + + + Moves the selection down by one + + + + + Selects All the elements in the layout + + + + + Allows the user to click on the layout and drag a rectangle where they want to insert an element + + + + + Creates an instance of the MapElement and returns it + + + + + Creates an instance of the LegendElement and returns it + + + + + Creates an instance of the ScaleBarElement and returns it + + + + + Converts all of the selected layout elements to bitmaps + + + + + Converts a selected layout element into a bitmap and saves it a the specified location removing the old element and replacing it + + + + + + + Aligns elements with each other or with the margins + + A list of elements to align + The side to align to + True to align to paper margins, false to align to the most extreme element of the indicated side + + + + Makes all of the input layout elements have the same width or height + + A list of elements to resize to the max size of all elements or the margins + Fit the width or the height + True if use margin size false to use arges element in input list + + + + Converts a point in screen coordinants to paper coordinants in 1/100 of an inch + + + + + + Converts a point in screen coordinants to paper coordinants in 1/100 of an inch + + + + + + Converts a rectangle in screen coordinants to paper coordiants in 1/100 of an inch + + + + + + Converts a rectangle in screen coordinants to paper coordiants in 1/100 of an inch + + + + + + Converts between a point in paper coordinants in 1/100th of an inch to screen coordinants + + + + + + Converts between a point in paper coordinants in 1/100th of an inch to screen coordinants + + + + + + Converts between a rectangle in paper coordinants in 1/100th of an inch to screen coordinants + + + + + + Converts a rectangle in screen coordinants to paper coordiants in 1/100 of an inch + + + + + + Centers the layout on a given point + + A Point on the paper to center on + + + + Updates the scroll bars so the look and act right + + + + + Calculates which edge of a rectangle the point intersects with, within a certain limit + + + + + Drawing code + + + + + + Prevents flicker from any default on paint background operations + + + + + + This gets fired when one of the layoutElements gets invalidated + + + + + Fires whenever the LayoutControl is resized + + + + + This fires when the vscrollbar is moved + + + + + This fires when the hscrollbar is moved + + + + + This allows elements to be refreshed, deleted by key press. + + + + + Calls this to indicate the fileName has been changed + + + + + + Calls this to indicate the zoom has been changed + + + + + + Call this to indicate the selection has changed + + + + + + Call this to indicate elements were added or removed. + + + + + + Call this to indicate that a layout was loaded from file. + + + + + + This fires after a element was added or removed. + + + + + This fires after a layout was loaded from file. + + + + + This fires after the selection has changed. + + + + + This fires when the zoom of the layout changes. + + + + + This fires when the projects file name is changed. + + + + + Gets the list of layoutElements currently selected in the project + + + + + Gets the list of layoutElements currently loaded in the project + + + + + Gets or sets the fileName of the current project + + + + + Gets or sets the printer settings for the layout + + + + + Gets or sets the layout menu strip to use + + + + + Gets or sets the layoutproperty grip to use + + + + + Gets or sets the Map control to use + + + + + Gets or sets the layout tool strip to use + + + + + Gets or sets the layout list box + + + + + Gets or sets the LayoutDocToolStrip + + + + + Gets or sets the LayoutInsertToolStrip + + + + + Gets of sets the LayoutMapToolStrip + + + + + Sets a boolean flag indicating if margins should be shown. + + + + + Gets or sets the zoom of the paper + + + + + Gets or sets the smoothing mode to use to draw the map + + + + + Gets or sets the map pan mode + \ + + + + Gets the width of the paper in 1/100 of an inch + + + + + Gets the heigh of the paper in 1/100 of an inch + + + + + This is the primary form where the print layout content is organized before printing + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Default constructor for creating a new instance of hte Layout form + + + + + Gets or sets the map that will be used in the layout + + + + + Gets layout control. + + + + + A Brian Marchioni original toolstrip... preloaded with content. + + + + + Creates an instance of the toolstrip + + + + + The layout control associated with this toolstrip + + + + + A dialog for changing the projection of the map frame. + + + The Designer for the AppDialog Class + + + + + use the mapFrame with this dialog + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the map frame for this dialog + + + + + Gets or sets projection + + + + + CanConvertTo + + + + + + + + + + + + + + + + + + Can convert from + + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Byte[]. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Provides an empty control that can be used to create other controls. + + + + + Gets or sets how the control will resize itself. + + + A value from the AutoSizeMode enumeration. The default is AutoSizeMode.GrowOnly. + + + + + Gets or sets the border style of the tree view control. + + + One of the BorderStyle values. The default is BorderStyle.Fixed3D. + + + InvalidEnumArgumentException: The assigned value is not one of the BorderStyle values. + + + + + Occurs when the AutoSize changes + + + + + Occurs when the UserControl.AutoValidate property changes. + + + + + Occurs before the control becomes visible for the first time. + + + + + The extended and complete set of events associated with the PreviewMap + Implementing this avoids having to manually add handlers for every event. + + + + + Occurs when a drag-and-drop operation is completed. + + An instance of the calling object + A DragEventArgs with the drag parameters + + + + Occurs when the visible region being displayed on the map changes + + + + + Occurs when the control is clicked by the mouse. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the control is double clicked by the mouse. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is over the control and a mouse button is pressed. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is moved over the control. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is over the control and a mouse button is released. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse wheel moves while the control has focus. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the control is redrawn. + + An instance of the calling object + A PaintEventArgs with any parameters + + + + The layout bitmap provides the ability to add any custom image to the layout + + + + + The interface for all elements that can be added to the layout control + + + + + Creates an instance of the layout element + + + + + Fires when the background is modified + + + + + + + Returns true if the point in paper coordinants intersects with the rectangle of the element + + + + + + + Returns true if the rectangle in paper coordinants intersects with the rectangle of the the element + + + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + If true then we a actually printing not previewing so we should make it as high quality as possible + + + + Draws the elements background behind everything else + + + + + + + Draws the elements outline on top of everything else + + + + + + + Causes the element to be refreshed + + + + + This returns the objects name as a string + + + + + Call this when it needs to updated + + + + + Fires when the size of the element changes + + + + + Fires when the thumbnail gets modified + + + + + Updates the thumbnail when needed + + + + + Fires when the layout element is invalidated + + + + + Fires when the preview thumbnail for this element has been updated + + + + + Fires when the size of this element has been adjusted by the user + + + + + Gets or sets the line symbolizer that draws the outline + + + + + Gets or sets the name of the element + + + + + Gets the thumbnail that appears in the LayoutListView + + + + + Disables updating redraw when resizing. + + + + + Indicates if this element can handle redraw events on resize + + + + + Gets or sets the location of the top left corner of the control in 1/100 of an inch paper coordinants + + + + + Gets or sets the location of the top left corner of the control in 1/100 of an inch paper coordinants + + + + + Gets or sets the size of the element in 1/100 of an inch paper coordinants + + + + + Gets or sets the rectangle of the element in 1/100th of an inch paper coordinants + + + + + Constructor + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + Boolean, true if this is being drawn to a print document + + + + Preserves the aspect ratio if this boolean is true, otherwise it allows stretching of + the bitmap to occur + + + + + Modifies the brightness of the bitmap relative to its original brightness +/- 255 Doesn't modify original bitmap + + + + + Modifies the contrast of the bitmap relative to its original contrast +/- 255 Doesn't modify original bitmap + + + + + Gets or sets the string fileName of the bitmap to use + + + + + Gets or sets bitmap to use + + + + + A Brian Marchioni original toolstrip... preloaded with content. + + + + + Creates an instance of the toolstrip + + + + + The layout control associated with this toolstrip + + + + + An enumeration that defines the Mouses current behavior + + + + + The cursor is currently in default mode + + + + + The cursor is currently being used to create a new selection + + + + + The cursor is currently is move selection mode + + + + + The cursor is in resize mode because its over the edge of a selected item + + + + + When in this mode the user can click on the map select an area and an element is inserted at that spot + + + + + In this mode a cross hair is shown letting the user create a new Insert rectangle + + + + + Puts the mouse into a mode that allows map panning + + + + + The mouse is actually panning a map + + + + + Enumerates all the possible resize direction + + + + + Enumarates the different ways that a a LayoutElement can handle resize events + + + + + The resize style is determined automatically + + + + + The element is adjusted to fit the extents even if it is distorted + + + + + No scaling occurs whatsoever, and the element is drawn at its original size + + + + + An enumeration of the possible scale bar units + + + + + Kilometers + + + + + Meters + + + + + Centimeters + + + + + Millimeters + + + + + Miles + + + + + Yards + + + + + Feet + + + + + Inches + + + + + An enumeration of alignments used for aligning selected layout elements + + + + + Left + + + + + Right + + + + + Top + + + + + Bottom + + + + + Horizontal + + + + + Vertical + + + + + An enumeration of resizing options used for aligning selected layout elements + + + + + Width + + + + + Height + + + + + Layout Layer Editor allows the user to select which layers appear in the legend + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + Draws a legend for the layout + + + + + Updates the scale bar if the map is deleted + + + + + Constructor + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + A boolean value indicating if the Draw code is being called to print + + + + Gets or sets the layoutmap to use to base the legend on + + + + + Gets or sets the layers to include in the legend + + + + + Gets or sets the font used to draw this text + + + + + Gets or sets the color of the text + + + + + Gets or sets the number of columns to use when rendering the legend + + + + + Gets or sets the hinting used to draw the text + + + + + Gets or sets a layout control + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Gets or sets the layoutControl + + + + + A layout control that draws the content from a map control so that it can be printed + + + + + Constructor to build a new LayoutMap control with map control + + Throws if mapControl is null. + + + + Updates the size of the control + + + + + Zooms the map to the fullextent of all available layers + + + + + Zooms the map to the extent of the current view + + + + + Zooms the map element in by 10% + + + + + Zooms the map element out by 10% + + + + + Pans the map + + The amount to pan the map in the X-axis in map coord + The amount to pan the map in the Y-axis in map coord + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + Boolean, true if the drawing is printing to an actual page + + + + The geographic envelope to be shown by the layout + + + + + The map control that generates the printable content + + + + + A mathematical calculation using the map + + + + + Layout Map Editor is a UIType Editor that allows selecting a new map + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + A Brian Marchioni original toolstrip... preloaded with content. + + + + + Creates an instance of the toolstrip + + + + + The layout control associated with this toolstrip + + + + + + + + + + Creates an instance of the toolstrip + + + + + Fires when the user clicks the close button on this menu strip + + + + + The layout control associated with this toolstrip + + + + + North Arrow control for the Layout + + + + + Constructor + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + boolean, true if printing to the actual paper/document, false if drawing as a control + + + + Gets or sets the color of the text + + + + + Gets or sets the style of the north arrow to draw + + + + + Gets or sets the rotations of the north arrow + + + + + An enumeration listing the different built in styles for the north arrow + + + + + A four point triangle with a circle in the middle and the letter N + + + + + A black arrow pointing north + + + + + Compas Rose style north arrow + + + + + A triangle around the letter N + + + + + A triangle with a hat-like adornment + + + + + An arrow with the letter N + + + + + This is a control that allows users to easilly modify the various aspects of many different layout components + + + + + Creates a new instance of the Layout Property Grid + + + + + If the selection changes this event is called + + + + + Gets or sets the layout control associated with this property grid + + + + + A control that draws a standard colored rectangle to the print layout + + + + + Constructor + + + + + Doesn't need to do anything now because the drawing code is in the background property of the base class + + + + + + + A scale bar control that can be linked to a map and provide a dynamic scale bar for the print layout + + + + + Updates the scale bar if the map is deleted + + + + + Constructor + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + Boolean, true if printing to an actual print document + + + + Returns the conversion factor between the map units and inches + + A string represing the MapUnits + A double representing the conversion factor between MapUnits and inches. If something goes wrong we return 0 + + + + Gets or sets the Map control that the scale bar uses for measurement decisions + + + + + Gets or sets the font used to draw this text + + + + + Gets or sets the color of the text + + + + + Gets or sets the hinting used to draw the text + + + + + Gets or sets the number of breaks the scale bar should have + + + + + Gets or sets the unit to use for the scale bar + + + + + Gets or sets a property indicating is break should be present before the 0 + + + + + Gets or sets the unit text to display after the scale bar + + + + + Gets or sets a layout control + + + + + Controls a rectangle + + + + + Constructor + + + + + This gets called to instruct the element to draw itself in the appropriate spot of the graphics object + + The graphics object to draw to + Boolean, true if printing to the file + + + + Gets or sets the text thats drawn in the graphics object + + + + + Gets or sets the content alignment + + + + + Gets or sets the font used to draw this text + + + + + Gets or sets the color of the text + + + + + Gets or sets the hinting used to draw the text + + + + + A Brian Marchioni original toolstrip... preloaded with content. + + + + + Creates an instance of the toolstrip + + + + + The layout control associated with this toolstrip + + + + + Creates a new instance of DrawLegendItemArgs + + A Graphics surface to draw on + The legend item to draw + The bounds that drawing should occur within + The position of the top left corner where drawing should start. + + + + Gets the interface for the legend item being drawn + + + + + Gets the rectangle that limits where drawing should occur + + + + + Gets or sets the point that is the top left position where this item should start drawing, counting indentation. + + + + + Gets the graphics object for drawing to + + + + + The easiest way to implement this is to inherit a UserControl, and then + implement the members specific to the legend. + + + + + Given the current list of Maps or 3DMaps, it + rebuilds the treeview nodes + + + + + Adds a map frame as a root node, and links an event handler to update + when the mapframe triggers an ItemChanged event. + + + + + + Removes the specified map frame if it is a root node. + + + Boolean, if true, removing the map frame will not automatically force a refresh of the legend. + + + + Occurs when the drag method is used to alter the order of layers or + groups in the legend. + + + + + Gets or sets the list of map frames being displayed by this legend. + + + + + The extended and complete set of events associated with the Legend. + Implementing this avoids having to manually add handlers for every event. + + + + + Occurs when a drag-and-drop operation is completed. + + An instance of the calling object + A DragEventArgs with the drag parameters + + + + Occurs when the control is clicked by the mouse. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the control is double clicked by the mouse. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is over the control and a mouse button is pressed. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is moved over the control. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the mouse pointer is over the control and a mouse button is released. + + An instance of the calling object + A MouseEventArgs with any parameters + + + + Occurs when the control is redrawn. + + An instance of the calling object + A PaintEventArgs with any parameters + + + + Occurs when one or more legend items is added to the list of LegendItems + + An instance of the calling object + A PaintEventArgs with any parameters + + + + Occurs when all the legend items are cleared. + + An instance of the calling object + A PaintEventArgs with any parameters + + + + Occurs when one of the legend items in the list of LegendItems is removed + + An instance of the calling object + A PaintEventArgs with any parameters + + + + Occurs when one of the legend items in the list of LegendItems is selected + + An instance of the calling object + A PaintEventArgs with any parameters + + + + Legend + + + + + Creates a new instance of Legend + + + + + Adds a map frame as a root node, and links an event handler to update + when the mapframe triggers an ItemChanged event. + + + + + + Removes the specified map frame if it is a root node. + + + Boolean, if true, removing the map frame will not automatically force a refresh of the legend. + + + + Given the current list of Maps or 3DMaps, it + rebuilds the treeview nodes + + + + + Un-selectes any selected items in the legend + + + + + Occurs when linking the map frame + + + + + + Occurs when we need to no longer listen to the map frame events + + + + + + + + + + + + Extends initialize to draw "non-selected" elements. + + + + + + Overrides the drawing method to account for drawing lines + when an item is being dragged to a new position. + + A PaintEventArgs + + + + Also hides the edit box so that it doesn't seem displaced from the item + + + + + + + Also hides the edit box so that it doesn't seme displaced from the item + + + + + + + Handles the case where the mouse down occurs. + + A MouseEventArgs + + + + Checks the Mouse Up event to see if it occurs inside a legend item. + + + + + + Checks for checkbox changes and fires the ItemMouseUp event. + + + + + + Performs the default handling for mouse movememnt, and decides + whether or not to fire an ItemMouseMove event. + + A MouseEventArgs + + + + The coordinates are in legend coordinates, but a LegendBox is provided to define the + coordinates of the specified object. + + An ItemMouseEventArgs + + + + Fires the ItemMouseMove Event, which handles the mouse moving over one of the legend items. + + An ItemMouseEventArgs + + + + Fires the OrderChanged Event + + + + + Recursive add method to handle nesting of menu items. + + + + + + + This isn't the best way to catch this. only items in view should + trigger a refresh. + + + + + + + Occurs when the drag method is used to alter the order of layers or + groups in the legend. + + + + + Occurs when a mousedown is initiated within an existing legend item + + + + + Occurs when a mouse down is initiated within an expand box. + + + + + Occurs when a mouse up is initiated within a checkbox. + + + + + Occurs when a mouse up occurs insize of a specific item. + + + + + Occurs when the mouse is moving over an item. + + + + + Gets or sets the SharedEventHandler that is used for working with shared layer events. + + + + + Gets or sets an integer representing how far child nodes are indented when compared to the parent nodes. + + + + + This calculates a height for each item based on the height of the font. + + + + + Gets or sets the selection font color + + + + + Specifies the principal color that a selected text box is highlighted with. + + + + + Gets or sets the list of map frames being displayed by this legend. + + + + + Gets or sets the progress handler for any progress messages like re-drawing images for rasters + + + + + Retrieves the bottom box in the legend + + + + + ItemMouseEventArgs + + + + + Creates a new instance of an ItemMouseEventArgs + + The Mouse Buttons + The number of clicks + The X coordinate + The Y coordinate + The delta of the mouse wheel + A LegendBox for comparision + + + + Creates a new instance of ItemMouseEventArgs from an existing MouseEventArgs. + + The existing arguments + A LegendBox for comparison + + + + Gets the item that received the mouse down, plus the various rectangular extents encoded in the various boxes. + + + + + A Legend Box encapsulates the basic drawing information for an item. + This will not capture information about sub-items. + + + + + Gets or sets the bounds for this LegendBox + + + + + Gets or sets the actual item that this bounds is associated with + + + + + If this item is in checkbox mode, then this is the physical location of the checkbox + + + + + IF this item is a groupable item, this is the region for the expanding box for the item + + + + + Gets or sets the rectangle that corresponds with text. + + + + + gets or sets the symbol box + + + + + Gets or sets the integer number of indentations. This should be used + in coordination with whatever the indentation amount is for the specific legend. + + + + + DropDownDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of DropDownDialog + + + + + Clears the items from the dialog box + + + + + Adds the array of objects to the dialog box + + The items to add + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Gets the currently selected item in this list dialog box + + + + + ChunkEventArgs + + + + + Creates a new instance of ChunkEventArgs + + + + + Gets the current chunk for this event + + + + + Gets the number of chunks + + + + + Describe different behaviors that map functions can have when working with + respect to other map-functions. + + + + + Prompt the user to decide if Layers should be reprojected + + + + + Always reproject layers to match the MapFrame projection + + + + + Never reproject layers to match the MapFrame projection + + + + + Prompt once and accept that answer for all future layers added to the map frame. + + + + + Extension methods for accessing the layers (including nested layers) and groups (including nested groups) of the + map frame + + + + + Gets all layers of the map frame including layers which are nested + within groups. The group objects themselves are not included in this list, + but all FeatureLayers, RasterLayers, ImageLayers and other layers are included. + + The list of the layers + + + + Gets all feature layers of the map frame including feature layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the feature layers + + + + Gets all point layers of the map frame including point layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the point layers + + + + Gets all line layers of the map frame including line layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the line layers + + + + Gets all polygon layers of the map frame including polygon layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the polygon layers + + + + Gets all raster layers of the map frame including raster layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the raster layers + + + + Gets all image layers of the map frame including image layers which are nested + within groups. The group objects themselves are not included in this list. + + The list of the image layers + + + + Gets all the layers of the given type. + + Type of the layers that should be included. + mapFrame that contains the layers. + The list of the layers with the given type. + + + + Recursively adds all the layers of the given type that are found in group to layerList. + + Type of the layers that should be included. + Group that contains the layers. + The list the layers should be added to. + + + + Gets all map groups in the map including the nested groups. + + the list of the groups + + + + Recursively adds all the groups to groupList. + + Group to search through. + The list the groups should be added to. + + + + This class contains methods for re-projecting + layers in the map frame + + + + + Reprojects all layers in the map frame so that they use the new + projection Esri string + + The map frame that contains all layers that should be reprojected + The Esri WKT string of the new projection + + + + Reprojects all layers in the map frame so that they use new projection + + The map frame that contains all layers that should be reprojected + New projection + Callback when layer can't be reprojected. Maybe null. + + + + A MapFunction that can zoom the map out based on mouse clicks. + + + + + Common implementation of IMapFunction interface. + + + + + Interface for map functions. + + + + + Forces activation + + + + + Forces deactivation. + + + + + This is the method that is called by the drawPanel. The graphics coordinates are + in pixels relative to the image being edited. + + + + + Forces this tool to execute whatever behavior should occur during a double click even on the panel + + + + + + Instructs this tool to perform any actions that should occur on the MouseDown event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseUp event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseMove event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseWheel event + + A MouseEventArgs relative to the drawing panel + + + + Here, the entire plugin is unloading, so if there are any residual states + that are not taken care of, this should remove them. + + + + + When a key is pressed while the map has the focus, this occurs. + + + + + + When a key returns to the up position, this occurs. + + + + + + Organizes the map that this tool will work with. + + + + + + Occurs when the function is activated + + + + + Occurs when the function is deactivated. + + + + + This controls the cursor that this tool uses, unless the action has been cancelled by attempting + to use the tool outside the bounds of the image. + + + + + If this is false, then the typical contents from the map's back buffer are drawn first, + followed by the contents of this tool. + + + + + Gets or sets a boolean that is true if this tool should be active. If it is false, + then this tool will not be sent mouse movement information. + + + + + Different Pathways that allow functions to deactivate if another function that uses + the specified UI domain activates. This allows a scrolling zoom function to stay + active while changing between pan and select functions which use the left mouse + button. The enumeration is flagged, and so can support multiple options. + + + + + Describes a button image + + + + + Gets or sets the basic map that this tool interacts with. This can alternately be set using + the Init method. + + + + + Gets or sets the name that attempts to identify this plugin uniquely. If the + name is already in the tools list, this will modify the name set here by + appending a number. + + + + + Creates a new instance of the map function. + + + + + Combines the constructor with an automatic call to the init method. If you use this constructor + overload, then it is not necessary to also call the init method. The init method is supported + because constructors cannot be specified through an interface. + + Any valid IMap interface + + + + Instructs this tool to + + + + + + Forces this tool to execute whatever behavior should occur during a double click even on the panel + + + + + + Instructs this tool to perform any actions that should occur on the MouseDown event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseMove event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseUp event + + A MouseEventArgs relative to the drawing panel + + + + Instructs this tool to perform any actions that should occur on the MouseWheel event + + A MouseEventArgs relative to the drawing panel + + + + + + + This is the method that is called by the drawPanel. The graphics coordinates are + in pixels relative to the image being edited. + + + + + Organizes the map that this tool will work with. + + + + + + Cancels whatever drawing was being done by the tool and resets the cursor to an arrow. + + + + + Gets an available name given the base name. + + + + + + + This allows sub-classes to customize the drawing that occurs. All drawing is done + in the image coordinate space, where 0, 0 is the upper left corner of the image. + + A PaintEventArgs where the graphics object is already in image coordinates + + + + Allows for inheriting tools to control KeyUp. + + A KeyEventArgs parameter + + + + Allows for inheriting tools to control OnMouseDoubleClick. + + A GeoMouseArgs parameter + + + + Allows for inheriting tools to control OnMouseDown. + + A GeoMouseArgs parameter + + + + Allows for inheriting tools to control OnMouseMove. + + A GeoMouseArgs parameter + + + + Allows for inheriting tools to control OnMouseUp. + + A GeoMouseArgs parameter + + + + Allows for inheriting tools to control OnMouseWheel. + + A GeoMouseArgs parameter + + + + Forces activation + + + + + Deactivate is like when someone clicks on a different button. It may not + involve the whole plugin being unloaded. + + + + + Here, the entire plugin is unloading, so if there are any residual states + that are not taken care of, this should remove them. + + + + + This is fired when enabled is set to true, and firing this will set enabled to true + + + + + this is fired when enabled is set to false, and firing this will set enabled to false. + + + + + Occurs when a key is pressed + + + + + + This occurs when the entire plugin is being unloaded. + + + + + Occurs when the function is activated + + + + + Occurs when the function is deactivated. + + + + + Occurs during a mouse down event + + + + + Occurs during a mouse move event + + + + + Occurs during a mouse up event + + + + + Occurs during a mousewheel event + + + + + Occurs during a double click event + + + + + Occurs during a key up event + + + + + Describes a button image + + + + + This controls the cursor that this tool uses, unless the action has been cancelled by attempting + to use the tool outside the bounds of the image. + + + + + Gets or sets a boolean that is true if this tool should be handed drawing instructions + from the screen. + + + + + Gets or sets the basic map that this tool interacts with. This can alternately be set using + the Init method. + + + + + Gets or sets the name that attempts to identify this plugin uniquely. If the + name is already in the tools list, this will modify the name stored here. + + + + + If this is false, then the typical contents from the map's back buffer are drawn first, + followed by the contents of this tool. + + + + + + + + Creates a new instance of SelectTool + + + + + Handles the Key Up situation + + + + + + Handles the Key Down situation + + + + + + Transforms an IMapLayer enumerator into an ILayer Enumerator + + + + + Creates a new instance of the MapLayerEnumerator + + + + + + + + + + + + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Add Layer.... + + + + + Looks up a localized string similar to Home. + + + + + Looks up a localized string similar to Archive File. + + + + + Looks up a localized string similar to The argument %S cannot be negative.. + + + + + Looks up a localized string similar to The argument %S1 could not be successfully cast into %S2.. + + + + + Looks up a localized string similar to The argument %S was null. Try testing for the null case before calling this method.. + + + + + Looks up a localized string similar to The argument %S1 was incorrect for %S2.. + + + + + Looks up a localized string similar to The argument %S was outside the range of accepted values.. + + + + + Looks up a localized string similar to The file type was supposedly bgd, but there was a problem with reading the data type.. + + + + + Looks up a localized string similar to Binary rasters only support one band, which is the raster itself.. + + + + + Looks up a localized string similar to The specified argument byteArray was too small to contain the requested information. + + + + + Looks up a localized string similar to Calculating Statistics. + + + + + Looks up a localized string similar to The fileName %S cannot be copied to itself.. + + + + + Looks up a localized string similar to Start a new Project?. + + + + + Looks up a localized string similar to Enter the text you want to display in the legend.. + + + + + Looks up a localized string similar to Left click after selecting to edit, or right click to assign a color range.. + + + + + Looks up a localized string similar to Raster values should be numeric and be drawn with a range like [low] - [high]. + + + + + Looks up a localized string similar to The value or range of values shown as [low] - [high]. + + + + + Looks up a localized string similar to Confirm. + + + + + Looks up a localized string similar to The number of ordinates did not match between the dimensions, so the hyperdistance cannot be accurately calculated.. + + + + + Looks up a localized string similar to Copying Values. + + + + + Looks up a localized string similar to Copying values from %S1 to %S2. + + + + + Looks up a localized string similar to Copying Values from %S. + + + + + Looks up a localized string similar to Copying Values from %S1 to %S2. + + + + + Looks up a localized string similar to Could not execute the query.. + + + + + Looks up a localized string similar to Could not find or replace items.. + + + + + Looks up a localized string similar to Could not open the specified map file: {0}. + + + + + Looks up a localized string similar to Creating Shaded Relief. + + + + + Looks up a localized string similar to Creating Texture. + + + + + Looks up a localized string similar to The current element was not defined. Before attempting to read the element, first assign the value of the current XML Element to read.. + + + + + Looks up a localized string similar to In order to specify a custom filter expression, the custom mode must be selected first.. + + + + + Looks up a localized string similar to Data Extensions. + + + + + Looks up a localized string similar to The parameter %S was not the correct datatype.. + + + + + Looks up a localized string similar to The Number of digits to show after the decimal.. + + + + + Looks up a localized string similar to This should be an integer from 0 to 15.. + + + + + Looks up a localized string similar to There are no setting for the default Tool Provider. It scans the same folders the ToolManager scans for Tool Providers. + + + + + Looks up a localized string similar to Default Tool Provider Settings. + + + + + Looks up a localized string similar to Deselect All. + + + + + Looks up a localized string similar to Discard Changes?. + + + + + Looks up a localized string similar to The value entered could not be correctly parsed into a valid double precision floating point value.. + + + + + Looks up a localized string similar to Enter a double precision floating point value.. + + + + + Looks up a localized string similar to Cannot read past the end of the file.. + + + + + Looks up a localized string similar to Enter Find String. + + + + + Looks up a localized string similar to Error. + + + + + Looks up a localized string similar to Error while activating {0}.. + + + + + Looks up a localized string similar to Expression. + + + + + Looks up a localized string similar to Extensions. + + + + + Looks up a localized string similar to Factorial value should be grater than 0. + + + + + Looks up a localized string similar to Failed to read a portion of the specified map file: {0}. + + + + + Looks up a localized string similar to Failed to read the specified map file: {0}. + + + + + Looks up a localized string similar to Failed to write the specified map file: {0}. + + + + + Looks up a localized string similar to All Features. + + + + + Looks up a localized string similar to The feature set is invalid.. + + + + + Looks up a localized string similar to No feature set is specified.. + + + + + Looks up a localized string similar to The feature set is valid.. + + + + + Looks up a localized string similar to All Features in View Extent. + + + + + Looks up a localized string similar to Selected features. + + + + + Looks up a localized string similar to The feature type cannot be changed here. Try creating a new feature of the appropriate type.. + + + + + Looks up a localized string similar to The feature set selected was the incorrect type.. + + + + + Looks up a localized string similar to The FeatureType of the feature you are trying to add does not match the feature type of this featureset.. + + + + + Looks up a localized string similar to The FeatureType specified was not the line feature type.. + + + + + Looks up a localized string similar to The FeatureType specified was not the point feature type. . + + + + + Looks up a localized string similar to The FeatureType specified was not the polygon feature type.. + + + + + Looks up a localized string similar to The FeatureType was not specified. Please specify a featuretype before attempting to call this method.. + + + + + Looks up a localized string similar to Could not import column fields.. + + + + + Looks up a localized string similar to The specified field is not a numeric field and so the "EqualBreaks" option is not supported.. + + + + + Looks up a localized string similar to File. + + + + + Looks up a localized string similar to Exit. + + + + + Looks up a localized string similar to New. + + + + + Looks up a localized string similar to Open.... + + + + + Looks up a localized string similar to Options. + + + + + Looks up a localized string similar to Print Layout.... + + + + + Looks up a localized string similar to Reset Window Layout. + + + + + Looks up a localized string similar to Save. + + + + + Looks up a localized string similar to Save As.... + + + + + Looks up a localized string similar to The fileName %S already exists. Do you wish to overwrite it?. + + + + + Looks up a localized string similar to Clears the current map. The user is prompted to save any changes to the current map project.. + + + + + Looks up a localized string similar to The fileName %S was not found.. + + + + + Looks up a localized string similar to The fileName %S contains a feature type other than lines.. + + + + + Looks up a localized string similar to The fileName %S contains a feature type other than points.. + + + + + Looks up a localized string similar to Clears the current map and shows an ‘Open’ window that allows the user to navigate to a previously saved map.. + + + + + Looks up a localized string similar to Allows the user to save the project.. + + + + + Looks up a localized string similar to Allows the user to name the file and location where the map is to be saved on their computer.. + + + + + Looks up a localized string similar to The file was too large to fit into memory all at once. Try using a DataSource instead.. + + + + + Looks up a localized string similar to The specified file type is not supported.. + + + + + Looks up a localized string similar to Find. + + + + + Looks up a localized string similar to Find Tool. + + + + + Looks up a localized string similar to Map. + + + + + Looks up a localized string similar to Identify. + + + + + Looks up a localized string similar to This property or method is overrided in a subclass and should not be used directly.. + + + + + Looks up a localized string similar to The destination field data type is incompatible (double or string or integer). + + + + + Looks up a localized string similar to There was an error while attempting to index %S. + + + + + Looks up a localized string similar to Input. + + + + + Looks up a localized string similar to The number of dimensions in %S is insufficient for this calculation.. + + + + + Looks up a localized string similar to The value is invalid, it must be a decimal between %min and %max. + + + + + Looks up a localized string similar to The value is invalid, it must be an integer between %min and %max. + + + + + Looks up a localized string similar to The value entered was not understood. Please use either numbers or syntax 'start - end', e.g. '1-5'. + + + + + Looks up a localized string similar to The specified key already exists in the tree.. + + + + + Looks up a localized string similar to The specified key could not be found in the tree.. + + + + + Looks up a localized string similar to The size of the key did not match the size of the tree.. + + + + + Looks up a localized string similar to Layers. + + + + + Looks up a localized string similar to Align Bottom. + + + + + Looks up a localized string similar to Fit to Height. + + + + + Looks up a localized string similar to Align Horizontal. + + + + + Looks up a localized string similar to Align Left. + + + + + Looks up a localized string similar to Margin Alignment. + + + + + Looks up a localized string similar to Margin Fit. + + + + + Looks up a localized string similar to Align Right. + + + + + Looks up a localized string similar to Selection Alignment. + + + + + Looks up a localized string similar to Selection Fit. + + + + + Looks up a localized string similar to Align top. + + + + + Looks up a localized string similar to Align Vertical. + + + + + Looks up a localized string similar to Fit to Width. + + + + + Looks up a localized string similar to Error opening layout file: . + + + + + Looks up a localized string similar to Error saving layout file:. + + + + + Looks up a localized string similar to DotSpatial Print Layout. + + + + + Looks up a localized string similar to Insert legend. + + + + + Looks up a localized string similar to Insert scale bar. + + + + + Looks up a localized string similar to Insert bitmap. + + + + + Looks up a localized string similar to Insert map. + + + + + Looks up a localized string similar to Insert north arrow. + + + + + Looks up a localized string similar to Insert rectangle. + + + + + Looks up a localized string similar to Insert text. + + + + + Looks up a localized string similar to Load Print Layout. + + + + + Looks up a localized string similar to Zoom map to full extent of layers. + + + + + Looks up a localized string similar to Pan map. + + + + + Looks up a localized string similar to Zoom map to extent of data view. + + + + + Looks up a localized string similar to Zoom map in. + + + + + Looks up a localized string similar to Zoom map out. + + + + + Looks up a localized string similar to Page Setup.... + + + + + Looks up a localized string similar to Close. + + + + + Looks up a localized string similar to Document. + + + + + Looks up a localized string similar to Edit. + + + + + Looks up a localized string similar to File. + + + + + Looks up a localized string similar to Insert. + + + + + Looks up a localized string similar to Map. + + + + + Looks up a localized string similar to New. + + + + + Looks up a localized string similar to Open.... + + + + + Looks up a localized string similar to Print.... + + + + + Looks up a localized string similar to Refresh. + + + + + Looks up a localized string similar to Save. + + + + + Looks up a localized string similar to Save as.... + + + + + Looks up a localized string similar to Select. + + + + + Looks up a localized string similar to All. + + + + + Looks up a localized string similar to Convert to bitmap. + + + + + Looks up a localized string similar to Delete. + + + + + Looks up a localized string similar to Invert. + + + + + Looks up a localized string similar to Move down. + + + + + Looks up a localized string similar to Move up. + + + + + Looks up a localized string similar to None. + + + + + Looks up a localized string similar to Choose printer.... + + + + + Looks up a localized string similar to Show Margin. + + + + + Looks up a localized string similar to Toolbars. + + + + + Looks up a localized string similar to View. + + + + + Looks up a localized string similar to Fit to screen. + + + + + Looks up a localized string similar to Zoom in. + + + + + Looks up a localized string similar to Zoom out. + + + + + Looks up a localized string similar to Zoom. + + + + + Looks up a localized string similar to Page Setup.... + + + + + Looks up a localized string similar to Save Print Layout As. + + + + + Looks up a localized string similar to Do you want to save the current print layout?. + + + + + Looks up a localized string similar to Fit to screen. + + + + + Looks up a localized string similar to Zoom in. + + + + + Looks up a localized string similar to Zoom out. + + + + + Looks up a localized string similar to Margin Alignment. + + + + + Looks up a localized string similar to Legend. + + + + + Looks up a localized string similar to The wrong type of feature set was selected. Please select a line feature set.. + + + + + Looks up a localized string similar to An incompatible feature type was supplied and was not of type Line.. + + + + + Looks up a localized string similar to Failed to create link. + + + + + Looks up a localized string similar to Output data cannot be linked to tools that generate it.. + + + + + Looks up a localized string similar to Links can only be made from data to tools.. + + + + + Looks up a localized string similar to There are no free inputs for the this tool that take the data type attempting to be linked to it.. + + + + + Looks up a localized string similar to The item specified was not found in this list.. + + + + + Looks up a localized string similar to Loading Plugins. + + + + + Looks up a localized string similar to Loading Plugins - {0}, {1}% complete.. + + + + + Looks up a localized string similar to One or more of the files was not a valid data type for the map.. + + + + + Looks up a localized string similar to Map Tool. + + + + + Looks up a localized string similar to Projection Mismatch. + + + + + Looks up a localized string similar to Reproject map layer to match the map coordinate system? This will not affect the source file.. + + + + + Looks up a localized string similar to Projection. + + + + + Looks up a localized string similar to No layers are currently selectable layers active in the legend. Select the layer or group in the legend for which selection should occur.. + + + + + Looks up a localized string similar to There was no selected feature layer in the legend to clarify which features to delete. Please select a layer or group in the legend.. + + + + + Looks up a localized string similar to Map Layers. + + + + + Looks up a localized string similar to Delete elements?. + + + + + Looks up a localized string similar to Deleting the selected model elements will also delete the model elements associated with them.. + + + + + Looks up a localized string similar to Do you want to save the changes to %S?. + + + + + Looks up a localized string similar to Add data to the model. + + + + + Looks up a localized string similar to Delete selected model elements. + + + + + Looks up a localized string similar to Zoom full extent of model. + + + + + Looks up a localized string similar to Link data to tools. + + + + + Looks up a localized string similar to Load a model. + + + + + Looks up a localized string similar to Create a new empty model. + + + + + Looks up a localized string similar to Run Model. + + + + + Looks up a localized string similar to Save the current model. + + + + + Looks up a localized string similar to Zoom out. + + + + + Looks up a localized string similar to Zoom in. + + + + + Looks up a localized string similar to There are more than 100 unique values. Are you sure you want to continue?. + + + + + Looks up a localized string similar to MW4 Project. + + + + + Looks up a localized string similar to New Model. + + + + + Looks up a localized string similar to None of the rows contain a value that matches the specified value.. + + + + + Looks up a localized string similar to The function name was not recognized as one of the standard function names.. + + + + + Looks up a localized string similar to There is no row in the Table.. + + + + + Looks up a localized string similar to This has not yet been implemented.. + + + + + Looks up a localized string similar to The specified number of significant digits (%S) is too large for this field.. + + + + + Looks up a localized string similar to The value %S was too large to encode with 18 ASCII characters.. + + + + + Looks up a localized string similar to The value %S was too small to be encoded with 18 ASCII characters.. + + + + + Looks up a localized string similar to Please only enter numeric values.. + + + + + Looks up a localized string similar to For now, only the shapefile vector format is being supported.. + + + + + Looks up a localized string similar to Opacity controls how transparent the item is. A 0 is fully transparent, while 1 is fully opaque.. + + + + + Looks up a localized string similar to Opacity should be a floating decimal point between 0 and 1.. + + + + + Looks up a localized string similar to Output. + + + + + Looks up a localized string similar to Painting Color Scheme To Bitmap. + + + + + Looks up a localized string similar to Painting Hillshade To Bitmap. + + + + + Looks up a localized string similar to Pan. + + + + + Looks up a localized string similar to The parameter is invalid. + + + + + Looks up a localized string similar to The parameter is valid. + + + + + Looks up a localized string similar to The value you entered could not be parsed into a %S. Make sure the value is in the valid range.. + + + + + Looks up a localized string similar to Apps. + + + + + Looks up a localized string similar to The desired length of %S1 was too long. The total length was %S2 and the offset was %S3.. + + + + + Looks up a localized string similar to The beginning eight bytes of the specified file did not match the png signature.. + + + + + Looks up a localized string similar to Pointer. + + + + + Looks up a localized string similar to An incompatible feature type was supplied and was not of type Point.. + + + + + Looks up a localized string similar to Holes must not contain null elements. + + + + + Looks up a localized string similar to Shell is empty but holes are not. + + + + + Looks up a localized string similar to An incompatible feature type was supplied and was not of type polygon.. + + + + + Looks up a localized string similar to Project File. + + + + + Looks up a localized string similar to The number of bytes should be 4 * rows * cols since only ARGB format is supported.. + + + + + Looks up a localized string similar to The header has not been defined for the image scale you are attempting to access.. + + + + + Looks up a localized string similar to The rows or columns would extend beyond the specified number of columns or rows for the specified scale.. + + + + + Looks up a localized string similar to To work with anything other than an in-memory raster window, you must first cast this raster to the correct data format.. + + + + + Looks up a localized string similar to The specified rasters must have their cell sizes dimensioned.. + + + + + Looks up a localized string similar to The rasters must have equally sized cells to use this method.. + + + + + Looks up a localized string similar to The specified raster would be too large to store in memory.. + + + + + Looks up a localized string similar to Reading values from %S. + + + + + Looks up a localized string similar to The list is currently set to read-only, and cannot be modified.. + + + + + Looks up a localized string similar to Remove Layer. + + + + + Looks up a localized string similar to Are you sure you want to remove the fields?. + + + + + Looks up a localized string similar to The root n-th root is incorrect. + + + + + Looks up a localized string similar to Save Layer.... + + + + + Looks up a localized string similar to Save Changes?. + + + + + Looks up a localized string similar to Save changes to current project [{0}] ?. + + + + + Looks up a localized string similar to Select. + + + + + Looks up a localized string similar to No feature layers were selected in the legend. Select the layer to use.. + + + + + Looks up a localized string similar to The specified feature was not found in the feature list and could not be selected.. + + + + + Looks up a localized string similar to Please specify an attribute field to use for classification before using this feature.. + + + + + Looks up a localized string similar to The argument startIndex was too large to read the requested number of bytes from byteArray.. + + + + + Looks up a localized string similar to Fields that are the string datatype cannot be converted to a raster. Do you wish to use the FID value instead?. + + + + + Looks up a localized string similar to Supported Files. + + + + + Looks up a localized string similar to The tool cannot be run because one or more of its parameters is not set.. + + + + + Looks up a localized string similar to There were too many closing brackets in the string expression.. + + + + + Looks up a localized string similar to There are too many Unique values.. + + + + + Looks up a localized string similar to Assigned depths do not match. + + + + + Looks up a localized string similar to To save the calulated value press the Apply button. + + + + + Looks up a localized string similar to View. + + + + + Looks up a localized string similar to Writing values to %S. + + + + + Looks up a localized string similar to Zoom. + + + + + Looks up a localized string similar to In. + + + + + Looks up a localized string similar to Zoom In. + + + + + Looks up a localized string similar to Next. + + + + + Looks up a localized string similar to Zoom Next. + + + + + Looks up a localized string similar to Out. + + + + + Looks up a localized string similar to Zoom Out. + + + + + Looks up a localized string similar to Previous. + + + + + Looks up a localized string similar to Zoom Previous. + + + + + Looks up a localized string similar to Zoom To Coordinates. + + + + + Looks up a localized string similar to Full Extent. + + + + + Looks up a localized string similar to Zoom to Full Extent. + + + + + Looks up a localized string similar to Zoom To Layer. + + + + + IGeoImageLayer + + + + + Layer + + + + + This draws content from the specified geographic regions onto the specified graphics + object specified by MapArgs. + + + + + Creates a new default instance of a MapImageLayer + + + + + Creates a new instance of GeoImageLayer + + + + + Creates a new instance of a GeoImageLayer + + The image to draw as a layer + The Layers collection that keeps track of the image layer + + + + Creates a new instance of a GeoImageLayer + + The image to draw as a layer + The color to make transparent when drawing the image. + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + This draws to the back buffer. If the Backbuffer doesn't exist, this will create one. + This will not flip the back buffer to the front. + + + + + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets or sets whether the image layer is initialized + + + + + MapTiledImageLayer + + + + + Creates a new instance of MapTiledImageLayer + + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + This draws to the back buffer. If the Backbuffer doesn't exist, this will create one. + This will not flip the back buffer to the front. + + + + + + + + IMapFrame + + + + + IGeoGroup + + + + + Gets the GeoLayerCollection for members contained by this group. + + + + + Gets the map frame for this group. + + + + + Unlike PixelToProj, which works relative to the client control, + BufferToProj takes a pixel coordinate on the buffer and + converts it to geographic coordinates. + + A Point describing the pixel position on the back buffer + An ICoordinate describing the geographic position + + + + This projects a rectangle relative to the buffer into and IEnvelope in geographic coordinates. + + A Rectangle + An IEnvelope interface + + + + Using the standard independent paint method would potentially cause for dis-synchrony between + the parents state and the state of this control. This way, the drawing is all done at the + same time. + + + + + + This will cause an invalidation for each layer. The actual rectangle to re-draw is not specified + here, but rather this simply indicates that some re-calculation is necessary. + + + + + Uses the current buffer and envelope to force each of the contained layers + to re-draw their content. This is useful after a zoom or size change. + + + + + Instructs the map frame to draw content from the specified regions to the buffer.. + + The regions to initialize. + + + + Obtains a rectangle relative to the background image by comparing + the current View rectangle with the parent control's size. + + + + + + + When the control is being resized, the view needs to change in order to preserve the aspect ratio, + even though we want to use the exact same extents. + + + + + Converts a single geographic location into the equivalent point on the + screen relative to the top left corner of the map. + + The geographic position to transform + A Point with the new location. + + + + Converts a single geographic envelope into an equivalent Rectangle + as it would be drawn on the screen. + + The geographic IEnvelope + A Rectangle + + + + Pans the image for this map frame. Instead of drawing entirely new content, from all 5 zones, + just the slivers of newly revealed area need to be re-drawn. + + A Point showing the amount to shift in pixels + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + Graphics device to print to + The target rectangle in the graphics units of the device + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + + + the extents to draw to the target rectangle + + + + This is not called during a resize, but rather after panning or zooming where the + view is used as a guide to update the extents. This will also call ResetBuffer. + + + + + Re-creates the buffer based on the size of the control without changing + the geographic extents. This is used after a resize operation. + + + + + Zooms in one notch, so that the scale becomes larger and the features become larger. + + + + + Zooms out one notch so that the scale becomes smaller and the features become smaller. + + + + + Zooms to the next extent of the map frame + + + + + Zooms to the previous extent of the map frame + + + + + Occurs after changes have been made to the back buffer that affect the viewing area of the screen, + thereby requiring an invalidation. + + + + + Occurs after every one of the zones, chunks and stages has finished rendering to a stencil. + + + + + Occurs when the buffer content has been altered and any containing maps should quick-draw + from the buffer, followed by the tool drawing. + + + + + Occurs when View changed + + + + + Gets or sets the buffered image. Mess with this at your own risk. + + + + + Gets a rectangle indicating the size of the map frame image + + + + + Gets or sets the integer that specifies the chunk that is actively being drawn + + + + + Gets or sets whether this map frame should define its buffer + region to be the same size as the client, or three times larger. + + + + + Gets or sets whether this map frame is currently in the process of redrawing the + stencils after a pan operation. Drawing should not take place if this is true. + + + + + Gets or sets the parent control for this map frame. + + + + + Gets or sets the PromptMode that determines how to warn users when attempting to add a layer with + a coordinate system that is different from the current projection. + + + + + Gets or sets the PromptMode that determines how to warn users when attempting to add a layer without + a projection to a map that has a projection. + + + + + Gets or sets the layers + + + + + gets or sets the rectangle in pixel coordinates that will be drawn to the entire screen. + + + + + IGeoLayerCollection + + + + + Adds the specified fileName to the map as a new layer. + + The string fileName to add as a layer. + An IMapLayer that is the layer handle for the specified file. + + + + Adds the dataset specified to the file. Depending on whether this is a featureSet, + Raster, or ImageData, this will return the appropriate layer for the map. + + A dataset + The IMapLayer to add + + + + This overload automatically constructs a new MapLayer from the specified + feature layer with the default drawing characteristics and returns a valid + IMapLayer which can be further cast into a PointLayer, MapLineLayer or + a PolygonLayer, depending on the data that is passed in. + + Any valid IFeatureSet that does not yet have drawing characteristics + A newly created valid implementation of FeatureLayer which at least gives a few more common + drawing related methods and can also be cast into the appropriate Point, Line or Polygon layer. + + + + Adds the specified raster as a new layer + + The raster to add as a layer + the MapRasterLayer interface + + + + Adds the specified ImageData class to the map as a new layer and returns the newly created layer. + + The image being created + An interface to the newly created MapImageLayer + + + + Moves the given layer to the new position. + + Layer that is moved. + Position the layer is moved to. + + + + Given a base name, this increments a number for appending + if the name already exists in the collection. + + The string base name to start with + The base name modified by a number making it unique in the collection + + + + Occurs when a rectangular region of the buffer for any of the layers in this collection + should be updated. + + + + + Gets or sets the map frame that this belongs to. These are designed to only work with one map frame at a time. + + + + + Gets or sets the ParentGroup for this layer collection, even if that parent group + is not actually a map frame. + + + + + Gets or sets the progress handler to report progress for time consuming actions. + + + + + Gets or sets the currently active layer. + + + + + IGeoLabelLayer + + + + + Resolves ambiguity + + + + + Gets or sets the feature layer that this label layer is attached to. + + + + + GeoDrawTextArgs + + + + + Creates a new instance of GeoDrawTextArgs + + + + + Disposes the font brush, border pen and background brush + + + + + Gets the TextSymbolizer for this + + + + + Gets the GeoDrawArgs + + + + + Gets the brush for drawing the background. + + + + + Gets the border pen + + + + + Gets the brush used for drawing fonts. + + + + + GeoLabelLayer + + + + + The existing labels, accessed for all map label layers, not just this instance + + + + + Creates a new instance of GeoLabelLayer + + + + + Creates a new label layer based on the specified featureset + + + + + + Creates a new label layer based on the specified feature layer + + The feature layer to build layers from + + + + Cleaer all existing labels for all layers + + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + Draws the labels for the given features. + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + Draws the labels for the given features. + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + Draws the labels for the given features. + + MapArgs to get Graphics object from. + Indizes of the features whose labels get drawn. + + + + Draws the labels for the given features. + + MapArgs to get Graphics object from. + Features, whose labels get drawn. + + + + Checks whether the given rectangle collides with the drawnRectangles. + + Rectangle that we want to draw next. + Rectangle that were already drawn. + True, if the rectangle collides with a rectancle that was already drawn. + + + + Draws a label on a polygon with various different methods + + + + + Draws the given text if it is on screen. If PreventCollision is set only labels that don't collide with existingLables are drawn. + + Text that should be drawn. + Graphics object that does the drawing. + Symbolizer to figure out the look of the label. + Feature, the label belongs to. + + + List with labels that were already drawn. + Angle in degree the label gets rotated by. + + + + Calculates the position of the polygon label. + + + + + + + + + + Draws a label on a point with various different methods. + + + + + + + + + + + Creates the RectangleF for the label. + + Coordinate, where the label should be placed. + MapArgs for calculating the position of the label on the output medium. + Function that calculates the labelSize. + ILabelSymbolizer to calculate the orientation based adjustment. + Angle in degree used to rotate the label. + Empty Rectangle if Coordinate is outside of the drawn extent, otherwise Rectangle needed to draw the label. + + + + Rotates the given point by angle around (0,0). + + Point that gets rotated. + Angle in degree. + + + + Draws a label on a line with various different methods. + + + + + Places the label according to the selected LabelPlacementMethode. + + LineString, whose label gets drawn. + Function that calculates the size of the label. + + Symbolizer to figure out the look of the label. + Angle in degree the label gets rotated by. + The RectangleF that is needed to draw the label. + + + + Calculates the adjustment of the the label's position based on the symbolizers orientation. + + ILabelSymbolizer whose orientation should be considered. + Size of the label. + New label-position based on label-size and symbolizer-orientation. + + + + Draws labels in a specified rectangle + + The graphics object to draw to + The label text to draw + The rectangle of the label + the Label Symbolizer to use when drawing the label + Feature to draw + Angle in degree the label gets rotated by. + + + + Rotates the label for the given feature by the angle of the LabelSymbolizer. + + LabelSymbolizer that indicates the angle to use. + Feature whose label gets rotated. + + Resulting angle in degree. + + + + Gets the segment of the LineString that is used to position and rotate the label. + + LineString to get the segment from. + Symbolizer to get the LineLabelPlacement from. + Null on unnown LineLabelPlacementMethod else the calculated segment. + + + + Converts the given value to single. + + Value that gets converted to single. + 0 on error else the resulting value. + + + + Indicates that the drawing process has been finalized and swaps the back buffer + to the front buffer. + + + + + Copies any current content to the back buffer so that drawing should occur on the + back buffer (instead of the fore-buffer). Calling draw methods without + calling this may cause exceptions. + + Boolean, true if the front buffer content should be copied to the back buffer + where drawing will be taking place. + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + Indiciates that whatever drawing is going to occur has finished and the contents + are about to be flipped forward to the front buffer. + + + + + Occurs when a new drawing is started, but after the BackBuffer has been established. + + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets or sets the maximum number of labels that will be rendered before + refreshing the screen. + + + + + Gets or sets the MapFeatureLayer that this label layer is attached to. + + + + + Gets or sets whether or not this layer has been initialized. + + + + + Initializes a new instance of the class. + + The buffer rectangle. + The buffer envelope. + + + + Creates a new MapArgs, where the device is also specified, overriding the default buffering behavior. + + + + + + + + An optional parameter that specifies a device to use instead of the normal buffers. + + + + + Gets the Dx + + + + + Gets the Dy + + + + + Gets the minimum X value + + + + + Gets the maximum Y value + + + + + Gets the rectangle dimensions of what the buffer should be in pixels + + + + + Gets the geographic bounds of the content of the buffer. + + + + + DrawArgs contains the parameters necessary for 2D drawing + + + + + Creates a new instance of DrawArgs + + + + + Creates a new instance of GeoDrawArgs + + + + + + + + Gets a Graphics object that is useful for drawing in client coordinates. Coordinates + should be specified as though they were drawn to the client rectangle, even if + a clip rectangle is specified. + + + + + Gets a GeoGraphics wrapper that makes it easy to draw things in geographic coordinates. + + + + + Gets the clip rectangle that defines the area on the region in client coordinates where drawing is taking place. + + + + + A MapFrame accomplishes two things. Firstly, it organizes the layers to be drawn, and establishes the geographic + extents. Secondly, it hosts the back-buffer image that can be larger than the component that + this map frame would normally be drawn to. When it receives instructions to paint itself, the client rectangle + will automatically end up behaving like a clip rectangle. + + + + + Creates the default map frame, allowing the control that it belongs to to be set later. + + + + + Creates a new instance of a MapFrame without specifying the extents. The + geographic extents of the world will be used. + + The parent control that should own this map frame. + + + + Creates a new instance of MapFrame + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This is not called during a resize, but rather after panning or zooming where the + view is used as a guide to update the extents. This will also call ResetBuffer. + + + + + Re-creates the buffer based on the size of the control without changing + the geographic extents. This is used after a resize operation. + + + + + Instructs the map frame to draw content from the specified regions to the buffer.. + + The regions to initialize. + + + + Uses the current buffer and envelope to force each of the contained layers + to re-draw their content. This is useful after a zoom or size change. + + + + + Pans the image for this map frame. Instead of drawing entirely new content, from all 5 zones, + just the slivers of newly revealed area need to be re-drawn. + + A Point showing the amount to shift in pixels + + + + When content in a geographic region needs to be invalidated + + + + + + Converts the internal list of layers into a list of ILayer interfaces + + + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + + + + + + Instead of using the usual buffers, this bypasses any buffering and instructs the layers + to draw directly to the specified target rectangle on the graphics object. This is useful + for doing vector drawing on much larger pages. The result will be centered in the + specified target rectangle bounds. + + + + the extents to draw to the target rectangle + + + + Forces this MapFrame to copy the buffers for its layers to the back-buffer. + + + + + Overrides the group creation to make sure that the new group will cast its layers + to the appropriate Layer type. + + + + + Draw label content for a Map Layer + + + + + Obtains a rectangle relative to the background image by comparing + the current View rectangle with the parent control's size. + + + + + + + Zooms in one notch, so that the scale becomes larger and the features become larger. + + + + + Zooms out one notch so that the scale becomes smaller and the features become smaller. + + + + + Fires the ExtentsChanged event + + + + + + Determines whether this instance [can zoom to next]. Should not be called inside of + MapFrame_ViewExtentsChanged event. + + + true if this instance [can zoom to next]; otherwise, false. + + + + + Determines whether this instance [can zoom to previous]. Should not be called inside of + MapFrame_ViewExtentsChanged event. + + + true if this instance [can zoom to previous]; otherwise, false. + + + + + Zooms to the next extent + + + + + Zooms to the previous extent + + + + + When the control is being resized, the view needs to change in order to preserve the aspect ratio, + even though we want to use the exact same extents. + + + + + If a BackBuffer.Extents exists, this will enlarge those extents to match the aspect ratio + of the pixel view. If one doesn't exist, the _mapFrame.Extents will be used instead. + + The envelope to adjust + + + + This will create a new layer from the featureset and add it. + + Any valid IFeatureSet that does not yet have drawing characteristics + + + + Draws from the buffer. + + + + + + Unlike PixelToProj, which works relative to the client control, + BufferToProj takes a pixel coordinate on the buffer and + converts it to geographic coordinates. + + A Point describing the pixel position on the back buffer + An ICoordinate describing the geographic position + + + + This projects a rectangle relative to the buffer into and IEnvelope in geographic coordinates. + + A Rectangle + An IEnvelope interface + + + + Converts a single geographic location into the equivalent point on the + screen relative to the top left corner of the map. + + The geographic position to transform + A Point with the new location. + + + + Converts a single geographic envelope into an equivalent Rectangle + as it would be drawn on the screen. + + The geographic IEnvelope + A Rectangle + + + + This will cause an invalidation for each layer. The actual rectangle to re-draw is not specified + here, but rather this simply indicates that some re-calculation is necessary. + + + + + Fires the ScreenUpdated event + + + + + Fires the FinsihedRefresh event + + + + + Wires each of the layer events that the MapFrame should be listening to. + + + + + + Modifies the ZoomToLayer behavior to account for the possibility of an expanded + MapFrame. + + + + + + + Prompts the user to define the projection of the given layer, if it doesn't not have one. + + Layer whose projection gets checked. + True if the layer doesn't have a projection. + + + + Unwires events from the layer collection + + + + + + When any region for the stencil of any layers is changed, we should update the + image that we have in that region. This activity will be suspended in the + case of a large scale update for all the layers until they have all updated. + + + + + Fires the BufferChanged event. This is fired even if the new content is not currently + in the view rectangle. + + + + + + + When the Projection context menu is clicked + + + + + + + + Occurs after changes have been made to the back buffer that affect the viewing area of the screen, + thereby requiring an invalidation. + + + + + Occurs after every one of the zones, chunks and stages has finished rendering to a stencil. + + + + + Occurs when the buffer content has been altered and any containing maps should quick-draw + from the buffer, followed by the tool drawing. + + + + + Occurs when View changed + + + + + + + + + + + This is a different view of the layers cast as legend items. This allows + easier cycling in recursive legend code. + + + + + This gets or sets the first clipRegion. If more than one region needs to be set, + the ClipRegions list should be used instead. + + + + + Gets or sets a set of rectangles that should be drawn during the next update + + + + + Gets or sets the geographic extents to be drawn to a buffer. + If "ExtendBuffer" is true, then these extents are larger + than the geographic extents of the parent client, + and care should be taken when using PixelToProj, + as it will work differently. + + + + + Gets or sets the height + + + + + Gets or sets the width in pixels for this map frame. + + + + + Gets or sets the integer that specifies the chunk that is actively being drawn + + + + + + + + Gets the geographic extents + + + + + Gets or sets whether this map frame should define its buffer + region to be the same size as the client, or three times larger. + + + + + Gets or sets whether this map frame is currently in the process of redrawing the + stencils after a pan operation. Drawing should not take place if this is true. + + + + + Gets or sets the layers + + + + + gets or sets the ReprojectMode that determines if new layers are reprojected when added to the map. + + + + + Gets or sets the PromptMode that determines how to warn users when attempting to add a layer without + a projection to a map that has a projection. + + + + + gets or sets the rectangle in pixel coordinates that will be drawn to the entire screen. + + + + + The right in client rectangle coordinates + + + + + The bottom (or height) of this client rectangle + + + + + Gets or sets the buffered image. Mess with this at your own risk. + + + + + Gets or sets the client rectangle + + + + + Gets or sets the ImageRectangle for drawing the buffer + + + + + Gets or sets the progress handler to use. Setting this will set the progress handler for + each of the layers in this map frame. + + + + + Gets or sets the parent control for this map frame. + + + + + + + + Overrides the base CreateGroup method to ensure that new groups are GeoGroups. + + + + + Creates a new instance of GeoGroup + + + + + Creates a new group for the specified map. This will place the group at the root level on the MapFrame. + + The map to add this group to. + The name to appear in the legend text. + + + + Creates a group that sits in a layer list and uses the specified progress handler + + the layer list + + the progress handler + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This draws content from the specified geographic regions onto the specified graphics + object specified by MapArgs. + + + + + Gets the layers cast as ILayer without any information about the actual drawing methods. + This is useful for handling methods that my come from various types of maps. + + An enumerable collection of ILayer + + + + + + + + + + + + + + + + Gets the collection of Geographic drawing layers. + + + Gets or sets the layers + + + + + + + + Gets the MapFrame that this group ultimately belongs to. This may not + be the immediate parent of this group. + + + + + This is a different view of the layers cast as legend items. This allows + easier cycling in recursive legend code. + + + + + Transforms an IMapLayer enumerator into an ILayer Enumerator + + + + + Creates a new instance of the MapLayerEnumerator + + + + + + + + + + + + + + + + + + GeoLayerCollection + + + + + Creates a new blank instance of a MapLayer collection. This is especially useful + for tracking layers that can draw themselves. This does not concern itself with + view extents like a dataframe, but rather is a grouping of layers that is itself + also an IMapLayer. + + + + + Creates the Collection in the situation where the map frame is not the immediate parent, + but rather the group is the immediate parent, while frame is the ultimate map frame that + contains this geo layer collection. + + + + + + + + Creates a new blank instance of a MapLayer collection. This is especially useful + for tracking layers that can draw themselves. This does not concern itself with + view extents like a dataframe, but rather is a grouping of layers that is itself + also an IMapLayer. + + + + + Creates a new layer collection that is free-floating. This will not be contained in a map frame. + + + + + This overload automatically constructs a new MapLayer from the specified + feature layer with the default drawing characteristics and returns a valid + IMapLayer which can be further cast into a PointLayer, MapLineLayer or + a PolygonLayer, depending on the data that is passed in. + + A pre-existing FeatureLayer that has already been created from a featureSet + + + + Adds the elements of the specified collection to the end of the System.Collections.Generic.List<T> + + collection: The collection whose elements should be added to the end of the + System.Collections.Generic.List<T>. The collection itself cannot be null, but it can contain elements that are null, + if type T is a reference type. + Unable to add while the ReadOnly property is set to true. + + + + Adds the specified fileName to the map as a new layer. + + The string fileName to add as a layer. + An IMapLayer that is the layer handle for the specified file. + + + + Adds the dataset specified to the file. Depending on whether this is a featureSet, + Raster, or ImageData, this will return the appropriate layer for the map. + + A dataset + The IMapLayer to add + + + + This overload automatically constructs a new MapLayer from the specified + feature layer with the default drawing characteristics and returns a valid + IMapLayer which can be further cast into a PointLayer, MapLineLayer or + a PolygonLayer, depending on the data that is passed in. + + Any valid IFeatureSet that does not yet have drawing characteristics + A newly created valid implementation of FeatureLayer which at least gives a few more common + drawing related methods and can also be cast into the appropriate Point, Line or Polygon layer. + + + + Adds the raster to layer collection + + + + + + + Adds the specified image data as a new layer to the map. + + The image to add as a layer + the IMapImageLayer interface for the layer that was added to the map. + + + + This copies the members of this collection to the specified array index, but + only if they match the IGeoLayer interface. (Other kinds of layers can be + added to this collection by casting it to a LayerCollection) + + The array of IGeoLayer interfaces to copy values to + The zero-based integer index in the output array to start copying values to + + + + Tests to see if the specified IGeoLayer exists in the current collection + + + + + + + Gets the zero-based integer index of the specified IGeoLayer in this collection + + + + + + + Inserts an element into the System.Collections.Generic.List<T> at the specified index. + + The zero-based index at which item should be inserted. + The object to insert. The value can be null for reference types. + index is less than 0.-or-index is greater than System.Collections.Generic.List<T>.Count. + Unable to insert while the ReadOnly property is set to true. + + + + Moves the given layer to the given position. + + Layer that gets moved. + Position, the layer is moved to. + + + + Removes the first occurrence of a specific object from the System.Collections.Generic.List<T>. + + The object to remove from the System.Collections.Generic.List<T>. The value can be null for reference types. + true if item is successfully removed; otherwise, false. This method also returns false if item was not + found in the System.Collections.Generic.List<T>. + Unable to remove while the ReadOnly property is set to true. + + + + Inserts the elements of a collection into the EventList<T> at the specified index. + + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the EventList<T>. The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type. + index is less than 0.-or-index is greater than EventList<T>.Count. + collection is null. + Unable to insert while the ReadOnly property is set to true. + + + + An IEnumerator + + + + + + This simply forwards the call from a layer to the container + of this collection (like a MapFrame). + + The layer that actually changed + + + + + Occurs when the stencil for one of the layers has been updated in a specific region. + + + + + Gets the map frame of this layer collection + + + + + The default, indexed value of type T + + The numeric index + An object of type T corresponding to the index value specified + + + + + + + + + + Gets or sets the progress handler to report progress for time consuming actions. + + + + + + + + Creates a new instance of LayerEnumerator + + + + + Calls the Dispose method + + + + + Moves to the next member + + boolean, true if the enumerator was able to advance + + + + Resets to before the first member + + + + + Retrieves the current member as an ILegendItem + + + + + GeoImageLayer + + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + Indicates that the drawing process has been finalized and swaps the back buffer + to the front buffer. + + + + + Copies any current content to the back buffer so that drawing should occur on the + back buffer (instead of the fore-buffer). Calling draw methods without + calling this may cause exceptions. + + Boolean, true if the front buffer content should be copied to the back buffer + where drawing will be taking place. + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets or sets whether the image layer is initialized + + + + + Creates a new raster layer from the specified fileName + + + + + + + Creates a new instance of a MapRasterLayer and the specified image data to use for rendering it. + + + + + Creates a new instance of a Raster layer, and will create a "FallLeaves" image based on the + raster values. + + The raster to use + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Indicates that the drawing process has been finalized and swaps the back buffer + to the front buffer. + + + + + Copies any current content to the back buffer so that drawing should occur on the + back buffer (instead of the fore-buffer). Calling draw methods without + calling this may cause exceptions. + + Boolean, true if the front buffer content should be copied to the back buffer + where drawing will be taking place. + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + Indicates that whatever drawing is going to occur has finished and the contents + are about to be flipped forward to the front buffer. + + + + + Occurs when a new drawing is started, but after the BackBuffer has been established. + + + + + This draws to the back buffer. If the back buffer doesn't exist, this will create one. + This will not flip the back buffer to the front. + + + + + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets or sets whether the image layer is initialized + + + + + The ProjectChangeTracker class is responsible for tracking changes in the current project. + A change occurs if layers are added or removed, map view extent is changed, symbology is changed, + if layers are selected or unselected or if layer visibility is changed. + + + + + Gets or sets the map where changes are tracked + + + + + This event fires if some visible properties of the map such as view extent or + map layer appearance is changed. + + + + + Used for opening and saving project files. + + + + + Initializes a new instance of the class. + + The application manager. + + + + Serializes portions of the map to file. + + Name of the file. + + + + Deserializes the map from a file. + + Name of the file. + + + + Gets the custom setting. + + + Name of the unique key. + The default value. + + + + + Sets the custom setting. + + Name of the unique key. + The value. + + + + Determines whether a uniqueName is already in use. + + Key to test. + + true if uniqueName is already in use; otherwise, false. + + + + + Creates a new project. + + + + + Starts tracking changes in the current project + + + + + This method re-sets the map projection and re-projects all map + layers to the projection that is specified in the project file + + + + + Triggers the Deserializing event. + + + + + Triggers the Serializing event. + + + + + Triggers the NewProjectCreated event. + + + + + Triggers the IsDirtyChanged event. + + + + + Filter text for an open project file dialog + + + + + Filter text for a save project as dialog + + + + + Gets the save dialog filter format. + + + + + Gets the open dialog filter format. + + + + + Gets or sets the current project directory. + + + The current project directory. + + + + + Gets or sets the current project file. + + + The current project file. + + + + + True if there are some unsaved changes in the current project, + False otherwise + + + + + Gets the save project file providers. + + + + + Gets the open project file providers. + + + + + Occurs when the appmanager is being serialized, allowing a plugin to view and modify custom settings that will be stored with the appmanager. + + + + + Occurs when the appmanager is being deserialized. allowing a plugin to deal with any custom settings that were deserialized. + + + + + Occurs when a new project is created using the New() method. allowing a plugin to perform initialization associated with the + creation of a new project + + + + + Occurs when the dirty (unsaved) state of the current project is changed. This occurs when layers are added or removed to the map, + when layer symbology is changed or when the map view extents are changed. + + + + + ShapefileLayerProvider + + + + + Not Implemented yet + + + + + + + + + + + Opens a shapefile, but returns it as a FeatureLayer + + The string fileName + Boolean, if this is true it will attempt to open the entire layer in memory. + A container to hold this layer. + The progress handler that should receive status messages + An IFeatureLayer + + + + Gets a dialog read filter that lists each of the file type descriptions and file extensions, delimeted + by the | symbol. Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided + on this object. + + + + + Gets a dialog filter that lists each of the file type descriptions and extensions for a Save File Dialog. + Each will appear in DotSpatial's open file dialog filter, preceeded by the name provided on this object. + + + + + Gets a prefereably short name that identifies this data provider. Example might be GDAL. + This will be prepended to each of the DialogReadFilter members from this plugin. + + + + + This is a basic description that will fall next to your plugin in the Add Other Data dialog. + This will only be shown if your plugin does not supply a DialogReadFilter. + + + + + Creates a new instance of ClipArgs + + + + + Creates a ClipArg from a single rectangle instead of a list of rectangles + + The clip rectangle + + + + Gets the ClipRectangle for this event. + + + + + Contains methods to remove duplicates + + + + + Cycles through the PointF points, where necessary and removes duplicate points + that are found at the integer level. + + + + + Cleans the enumerable of points by removing duplicates + + + + + This is should not be instantiated because it cannot in itself perform the necessary functions. + Instead, most of the specified functionality must be implemented in the more specific classes. + This is also why there is no direct constructor for this class. You can use the static + "FromFile" or "FromFeatureLayer" to create FeatureLayers from a file. + + + + + Gets or sets the label layer that is associated with this feature layer. + + + + + IGeoLineLayer + + + + + IGeoPointLayer + + + + + IGeoPolygonLayer + + + + + Creates an empty line layer with a Line FeatureSet that has no members. + + + + + Constructor + + + + + + Constructor that also shows progress + + A featureset that contains lines + An IContainer that the line layer should be created in + + + + Creates a GeoLineLayer constructor, but passes the boolean notFinished variable to indicate + whether or not this layer should fire the FinishedLoading event. + + + + + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + This is testing the idea of using an input parameter type that is marked as out + instead of a return type. + + The result of the creation + Boolean, true if a layer can be created + + + + This is the strong typed version of the same process that is specific to geo point layers. + + The new GeoPointLayer to be created + Boolean, true if there were any values in the selection + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + Builds a linestring into the graphics path, using minX, maxY, dx and dy for the transformations. + + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + Indiciates that whatever drawing is going to occur has finished and the contents + are about to be flipped forward to the front buffer. + + + + + A default method to generate a label layer. + + + + + Occurs when a new drawing is started, but after the BackBuffer has been established. + + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets an integer number of chunks for this layer. + + + + + Gets or sets the label layer that is associated with this line layer. + + + + + This is a specialized FeatureLayer that specifically handles point drawing + + + + + This creates a blank MapPointLayer with the DataSet set to an empty new featureset of the Point featuretype. + + + + + Creates a new instance of a GeoPointLayer without sending any status messages + + The IFeatureLayer of data values to turn into a graphical GeoPointLayer + + + + Creates a new instance of the point layer where the container is specified + + + + + + + Creates a new instance of the point layer where the container is specified + + + + + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + This is testing the idea of using an input parameter type that is marked as out + instead of a return type. + + The result of the creation + Boolean, true if a layer can be created + + + + This is the strong typed version of the same process that is specific to geo point layers. + + The new GeoPointLayer to be created + Boolean, true if there were any values in the selection + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + Indicates that the drawing process has been finalized and swaps the back buffer + to the front buffer. + + + + + Copies any current content to the back buffer so that drawing should occur on the + back buffer (instead of the fore-buffer). Calling draw methods without + calling this may cause exceptions. + + Boolean, true if the front buffer content should be copied to the back buffer + where drawing will be taking place. + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + A default method to generate a label layer. + + + + + Indiciates that whatever drawing is going to occur has finished and the contents + are about to be flipped forward to the front buffer. + + + + + Occurs when a new drawing is started, but after the BackBuffer has been established. + + + + + Draws a point at the given location. + + X-Coordinate of the point, that should be drawn. + Y-Coordinate of the point, that should be drawn. + MapArgs for calculating the scaleSize. + PointSymbolizer with which the point gets drawn. + Graphics-Object that should be used by the PointSymbolizer. + The original transformation that is used to position the point. + + + + Attempts to create a new GeoPointLayer using the specified file. If the filetype is not + does not generate a point layer, an exception will be thrown. + + A string fileName to create a point layer for. + Any valid implementation of IProgressHandler for receiving progress messages + A GeoPointLayer created from the specified fileName. + + + + Attempts to create a new GeoPointLayer using the specified file. If the filetype is not + does not generate a point layer, an exception will be thrown. + + A string fileName to create a point layer for. + A GeoPointLayer created from the specified fileName. + + + + Occurs when drawing content has changed on the buffer for this layer + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + Gets or sets the label layer that is associated with this point layer. + + + + + Creates a new empty MapPolygonLayer with an empty FeatureSet of FeatureType Polygon + + + + + Constructor + + + + + + Constructor that also shows progress + + A featureset that contains lines + An IContainer that the line layer should be created in + + + + Constructor that also shows progress + + A featureset that contains lines + An IContainer that the line layer should be created in + + + + + This will draw any features that intersect this region. To specify the features + directly, use OnDrawFeatures. This will not clear existing buffer content. + For that call Initialize instead. + + A GeoArgs clarifying the transformation from geographic to image space + The geographic regions to draw + + + + Call StartDrawing before using this. + + The rectangular region in pixels to clear. + The color to use when clearing. Specifying transparent + will replace content with transparent pixels. + + + + This is testing the idea of using an input parameter type that is marked as out + instead of a return type. + + The result of the creation + Boolean, true if a layer can be created + + + + This is the strong typed version of the same process that is specific to geo point layers. + + The new GeoPointLayer to be created + Boolean, true if there were any values in the selection + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, + this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + If useChunks is true, then this method + + The GeoArgs that control how these features should be drawn. + The features that should be drawn. + If an entire chunk is drawn and an update is specified, this clarifies the changed rectangles. + Boolean, if true, this will refresh the buffer in chunks. + + + + Indicates that the drawing process has been finalized and swaps the back buffer + to the front buffer. + + + + + Copies any current content to the back buffer so that drawing should occur on the + back buffer (instead of the fore-buffer). Calling draw methods without + calling this may cause exceptions. + + Boolean, true if the front buffer content should be copied to the back buffer + where drawing will be taking place. + + + + Fires the OnBufferChanged event + + The Rectangle in pixels + + + + A default method to generate a label layer. + + + + + Occurs when a new drawing is started, but after the BackBuffer has been established. + + + + + Draws the GraphicsPaths. Before we were effectively "re-creating" the same geometric + + + + + + + Appends the specified polygon to the graphics path. + + + + + Fires an event that indicates to the parent map-frame that it should first + redraw the specified clip + + + + + Gets or sets the back buffer that will be drawn to as part of the initialization process. + + + + + Gets the current buffer. + + + + + Gets or sets the geographic region represented by the buffer + Calling Initialize will set this automatically. + + + + + Gets or sets the rectangle in pixels to use as the back buffer. + Calling Initialize will set this automatically. + + + + + true if the layer component reports progress messages, false otherwise + + + + + Gets or sets the label layer that is associated with this polygon layer. + + + + + DoutherlandHodgmanClipper + + + + + Create SoutherlandHodgman polygon clipper with clipping rectangle + + + + + + Create southerlandHodgman polygon clipper with default clipping rectangle + + + + + Calculates the Southerland-Hodgman clip using the actual drawing coordinates. + This hopefully will be much faster than NTS which seems unncessarilly slow to calculate. + http://www.codeguru.com/cpp/misc/misc/graphics/article.php/c8965 + + + A modified list of points that has been clipped to the drawing bounds + + + + Calculates the Southerland-Hodgman clip using the actual drawing coordinates. + This specific overload works with arrays of doubles instead of PointF structures. + This hopefully will be much faster than NTS which seems unncessarilly slow to calculate. + http://www.codeguru.com/cpp/misc/misc/graphics/article.php/c8965 + + The list of arrays of doubles where the X index is 0 and the Y index is 1. + A modified list of points that has been clipped to the drawing bounds + + + + Get or set the clipping rectangle used in subsequent Clip calls. + + + + + A MapFunction that can zoom into the map using left mouse clicks or rectangle dragging. It zooms out on right mouse clicks. + + + + + Creates a new instance of SelectTool + + + + + Handles the MouseDown + + + + + + Handles MouseMove + + + + + + Handles the Mouse Up situation + + + + + + DefaultTools + + + + + Mousewheel still zooms the map, but left clicking brings items into the view. + + + + + Zooms into the map with the left mouse button and zooms out with the right mouse button. + + + + + Zooms out by clicking the left mouse button. + + + + + Zooms by scrolling the mouse wheel and pans by pressing the mouse wheel and moving the mouse. + + + + + Pans the map with the left mouse button, context with the right and zooms with the mouse wheel + + + + + Selects shapes with the left mouse button, context with the right and zooms with the mouse wheel + + + + + Left button selects, moves or edits, right produces a context menu + + + + + Disables all the tools + + + + + Creates a new instance of MouseArgs + + + + + + + Gets the position of the Mouse Event in geographic coordinates + + + + + Gets a simple interface for the map where these events were generated + + + + + Gets or sets a handled. If this is set to true, then the mouse event is considered to + be handled and will not be passed to any other functions in the stack. + + + + + This is a glyph on the map that if you click on it, it will launch the PluginDialog. + + + + + This is the cursor that was the cursor before we did anything. + + + + + Creates a new instance of the GlyphFunction + + + + + Creates a new instance of a GLyphFunction with the specified Map + + + + + + Draws the glyph on the map. + + + + + + The drawing space is only the size of the GlyphBounds. + + + + + + When the mouse moves over a glyph, it should light up or change to show it is clickable. + + + + + Occurs when the mouse clicks on the glyph + + + + + + Occurs when the mouse leaves the glyph + + + + + + Occurs when the mouse enters the glyph + + + + + + Even though we don't take action here, we need to indicate that we handled the event so that the other + functions that my be active don't do anything for this part. + + + + + + + + + + + + The cursor to use when the mouse is over this glyph. + + + + + This should be overridden by the specific glyph so they don't overlap and appear where they should. + + + + + Gets or sets a Boolean indicating whether or not this glyph currently holds the mouse + + + + + Unless the OnDrawGlyphLit method is overridden, this is drawn when the mouse is over the image. + + + + + Unless the OnDrawGlyph method is overridden, this is drawn. If no LitImage is specified, + then this image will be drawn also for the LitImage case. + + + + + Map Identify Function. Used to show information about map layers under map cursor. + + + + + Creates a new instance of IdentifyFunction + + + + + Overrides the OnMouseUp event to handle the situation where we are trying to + identify the vector features in the specified area. + + + + + A MapFunction that allows labels to be selected. + + + + + Initializes a new instance of the MapFunctionLabelSelect class. + + + + + + + + + + + Handles the MouseDown + + + + + + Handles MouseMove + + + + + + Handles the Mouse Up situation + + + + + + Selection envelope + + + + + A MapFunction that can pan the map. + + + + + Initializes a new instance of the MapFunctionPan class. + + + + + Handles the actions that the tool controls during the OnMouseDown event + + + + + + Handles the mouse move event, changing the viewing extents to match the movements + of the mouse if the left mouse button is down. + + + + + + Mouse Up + + + + + + This indicates that this tool is currently being used. + + + + + SelectTool + + + + + Creates a new instance of SelectTool + + + + + + + + + + + Handles the MouseDown + + + + + + Handles pressing the delete key to remove features from the specified layer. + + + + + + Handles MouseMove + + + + + + Handles the Mouse Up situation + + + + + + Simple dock manager implementation. It can be used in design time. + + + + + Add default tab controls to the dock manager + + + + + Gets or sets TabControl For Panel1. It used for storing Left and Top panels. + + + + + Gets or sets TabControl For Panel2. It used for storing Right and Bottom panels. + + + + + Gets or sets the application manager. + + + + + Gets or sets Toolbars container for header control buttons. + + + + + Gets or sets Menu strip for header control menus. + + + + + Preconfigured tool strip menu. + + + + + Creates a new instance of mwToolBar + + + + + Constructs and initializes this toolbar using the specified IBasicMap + + The map for the toolbar to interact with + + + + Gets or sets the basic map that this toolbar will interact with by default + + + + + Gets or sets the application manager. + + + The application manager. + + + + + Creates a container within which other controls can share horizontal or vertical space. + + + + + Describe different behaviors that map functions can have when working with + respect to other map-functions. + + + + + This is a null state for testing, and should not be used directly. + + + + + This function will deactivate if another LeftButton function activates. + + + + + This function will deactivate if another RightButton function activates. + + + + + This function will deactivate if another scroll function activates. + + + + + This function will deactivate if another keyboard function activates. + + + + + This function is like a glyph and never yields to other functions. + + + + + A MapFunction that zooms the map by scrolling the scroll wheel and pans the map by pressing the mouse wheel and moving the mouse. + + + + + Initializes a new instance of the MapFunctionZoom class. + + + + + Mouse Wheel + + + + + + Handles the actions that the tool controls during the OnMouseDown event + + + + + + Handles the mouse move event, changing the viewing extents to match the movements + of the mouse if the left mouse button is down. + + + + + + Mouse Up + + + + + + Gets or sets the wheel zoom sensitivity. Increasing makes it more sensitive. Maximum is 0.5, Minimum is 0.01 + + + + + Controls the sense (direction) of zoom (in or out) as you roll the mouse wheel + + + + + Gets or sets the full refresh timeout value in milliseconds + + + + + A MapFunction that can zoom the map out based on left mouse clicks and in based on right mouse clicks. + + + + + Creates a new instance of SelectTool + + + + + Handles the Mouse Up situation + + + + + + A modeler form which allows users to create models with visual representations of tools + + + + + Creates an instance of the spatial modeler Element + + + + + Translates between pixel location and virtual location + + A point in pixel coordinantes. 0, 0 is the top left of the modeler + A point in the virtual model coordinantes + + + + Translates between pixel location and virtual location + + the X location in pixel coordinantes + the Y location in pixel coordinantes + A point in the virtual model coordinantes + + + + Returns a rectangle in virtual coordinantes based on a pixel rectangle + + + + + + + Translates between virtual model coords and pixels + + A point in the virtual model coordinantes + A point in pixel coordinantes. 0, 0 is the top left of the modeler + + + + Translates between virtual model coords and pixels + + the X location in virtual model coordinantes + the Y location in virtual model coordinantes + A point in pixel coordinantes. 0, 0 is the top left of the modeler + + + + Adds a data element to the modeler based on a parameter descrition + + The parameter to add to the modeler + A point representing the virtual location of the element + + + + Adds a data element to the modeler + + The data set to add to the modeler + A point representing the virtual location of the data element + The name to give the element + + + + Adds an arrow element given a source and destination element + + + + + + + Adds a element to the model + + The new model Element to add to the model form + A point representing the virtual location of the element + + + + Clears all the elements in the _selectedElements list, removes their highlights and puts them back in the _modelElements list + + + + + Removes the specified element from the _selectedElements list + + + + + + Adds an element to the _modelElementsSelected Array and highlights it + + + + + + Removes a specific element from the model clearing any links it has to other elements + + The element to remove + + + + Adds a tool to the Modeler + + the tool to add to the modeler + A point representing the virtual location of the tool + + + + Adds a tool to the Modeler + + the tool to add to the modeler + + A point representing the virtual location of the tool + + + + Saves the current project, prompting the user to save as if the project is new. + + + + + Saves the current project to disk. + + True to prompt for overwrite if file exists + True show save as dialog + + + + Saves a copy of the model to the selected file without renaming the current project + + + + + + Prompts the user to load a model and asks them if they want to save the current model first + + + + + Loads a model from file closing the existing model without saving it + + + + + + Creates a new model + + if true prompts user to save current model if it is not saved + + + + Deletes all of the selected elements if it is allowed + + + + + Zooms the model in 20% + + + + + Zooms the model out 20% + + + + + Centers the map on a given point + + A Point in the modelers virtual coordinant system + + + + Zooms to the extent of all elements in the model and centers the modeler on them + + + + + Creates a default output locations for tools. + + + + + + Executes a model after verifying that it is ready + + A string parameter which will contains a error string if one is generated + Returns true if it executed succesfully + + + + On Key Up + + + + + + When the users clicks the mouse this event fires + + + + + + When the mouse is moved this event fires + + + + + + When the user mouses up after a single click this event fires + + + + + + Occurs when the mouse leaves. + + + + + + When the user double clicks on the model this event fires + + + + + + Adds a tool to the modeler + + + + + + Allows a drag into the modeler + + + + + + Paints the elements to the backbuffer + + + + + When the element is called on to be painted this method is called + + + + + + When the form draws the background do nothing + + + + + + Redraws the background when the form is resized + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires when the Filename of the project is changed + + + + + + Occurs when the model fileName has changed + + + + + The maximum number of processes to execute at the same time + + + + + Turns linking by mouse on and off + + + + + Gets or Sets the drawing quality for the toolbox + + + + + Gets or sets the font that will be used to label the data in the modeler + + + + + Gets or sets the color that data should have in the modeler + + + + + Gets or sets the shape that data should be represented with in the modeler + + + + + Gets or sets the font that will be used to label the tools in the modeler + + + + + Gets or sets the color that tools should have in the modeler + + + + + Gets or sets the shape that tools should be represented with in the modeler + + + + + Turns the DotSpatial watermark in the lower right hand corner on or off. Defautl true. + + + + + Sets the toolManager used to create instances of all the tools. + + + + + Gets or Sets if the model drawing needs to be initialized + + + + + Gets or sets the zoom factor of the map values below 0 zoom out, values above 1 zoom in. 1 = no zoom + + + + + Gets or sets the fileName of the current model + + + + + Gets or sets the extension used by default for opening, saving and creating new models. ex "mwm" + + + + + Gets or sets the working path for the model + + + + + A form used in Brian's toolkit code + + + + + Creates a new instance of the modeler's form + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets modeler in the form + + + + + A Brian Marchioni original toolstrip... preloaded with content. + + + + + Creates an instance of the toolstrip + + + + + Gets or sets the modeler currently associated with the toolstrip + + + + + A dialog that allows users to modify the size of the layout paper and margins + + + + + Creates a new instance of the Page Setup Form + + + + + + Takes a string and returns true if it can be converted to a double + + + + + + + Sets the printerSettings to the new settings and sets the result to OK + + + + + Disgards the settings and sets dialogresult to cancel + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Handles drawing by adding an icon to the mix. + Owner draw must be set to true for this to work. + + + + + Creates a new instance of the Icon Menu Item with the specified name + + + + + + + + Creates a new instance of the Icon Menu Item with the specified name + + + + + + + + Creates a new instance of the Icon Menu Item with the specified name + + + + + + + + + + + + + Gets or sets the icon to be drawn to the left of this menu item. + + + + + Gets or sets the image to be drawn to the left of this menu item + + + + + mwProgressBar + + + + + A pre-configured status strip with a thread safe Progress function + + + The Designer for the Spatial Status Strip + + + + + Creates a new instance of the StatusStrip which has a built in, thread safe Progress handler + + + + + This method is thread safe so that people calling this method don't cause a cross-thread violation + by updating the progress indicator from a different thread + + A string message with just a description of what is happening, but no percent completion information + The integer percent from 0 to 100 + A message + + + + Raises the event. + + A that contains the event data. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the progress bar. By default, the first ToolStripProgressBar that is added to the tool strip. + + + The progress bar. + + + + + Gets or sets the progress label. By default, the first ToolStripStatusLabel that is added to the tool strip. + + + The progress label. + + + + + This class provides a ToolManager for loading tools from .dll's + + + + + Creates a new instance of the ToolManager, scans the executables root path\tools + + + + + Called when a part's imports have been satisfied and it is safe to use. Refreshes the tree of tools. + + + + + Returns true if the Tool Manager can create the tool specified by the Name + + The unique name of a tool + true if the tool can be created otherwise false + + + + Creates a new instance of a tool based on its Name + + The unique name of the tool + Returns an new instance of the tool or NULL if the tools unique name doesn't exist in the manager + + + + Highlights the next tool + + + + + + Locates a tool by its name in the tree and highlights it + + + + + + This clears the list of available tools and loads them from file again + + + + + Handles the NodeMouseDoubleClick event of the ToolManager control. + + The source of the event. + The instance containing the event data. + + + + Runs when and item gets dragged + + + + + + Thie event fires when the mouse moves to change the ToolTip + + + + + + Sets the data that are available by default to tools + + + + + Gets or Sets the legend object. This is needed to automatically populate the list of data layers in tool dialogs. + + + + + App is the current AppManager handle. + + + + + Gets the list tools available. + + + + + A Tool strip to use with the ToolManager when used as a graphical control + + + + + Creates an instance of the toolstrip + + + + + Gets or sets the ToolManager currently associated with the toolstrip + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/it/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleLegend/DotSpatial.Plugins.SimpleLegend.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.StatusBarImprovements/DotSpatial.Plugins.StatusBarImprovements.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/GeoAPI.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/nl/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleLegend/DotSpatial.Plugins.SimpleLegend.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses.csv (revision 2866) @@ -0,0 +1,182 @@ +"Code","ObjectClass","Acronym","Attribute_A","Attribute_B","Attribute_C","Class","Primitives" +1,Administration area (Named),ADMARE,JRSDTN;NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +2,Airport / airfield,AIRARE,CATAIR;CONDTN;CONVIS;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +3,Anchor berth,ACHBRT,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RADIUS;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +4,Anchorage area,ACHARE,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +5,"Beacon, cardinal",BCNCAR,BCNSHP;CATCAM;COLOUR;COLPAT;CONDTN;CONVIS;CONRAD;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +6,"Beacon, isolated danger",BCNISD,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +7,"Beacon, lateral",BCNLAT,BCNSHP;CATLAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +8,"Beacon, safe water",BCNSAW,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +9,"Beacon, special purpose/general",BCNSPP,BCNSHP;CATSPM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +10,Berth,BERTHS,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;SOUACC;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +11,Bridge,BRIDGE,CATBRG;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;VERACC;VERCCL;VERCLR;VERCOP;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +12,"Building, single",BUISGL,BUISHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +13,Built-up area,BUAARE,CATBUA;CONDTN;CONRAD;CONVIS;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +14,"Buoy, cardinal",BOYCAR,BOYSHP;CATCAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +15,"Buoy, installation",BOYINB,BOYSHP;CATINB;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;PRODCT;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +16,"Buoy, isolated danger",BOYISD,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +17,"Buoy, lateral",BOYLAT,BOYSHP;CATLAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +18,"Buoy, safe water",BOYSAW,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +19,"Buoy, special purpose/general",BOYSPP,BOYSHP;CATSPM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +20,Cable area,CBLARE,CATCBL;DATEND;DATSTA;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +21,"Cable, overhead",CBLOHD,CATCBL;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ICEFAC;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;VERCSA;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +22,"Cable, submarine",CBLSUB,BURDEP;CATCBL;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +23,Canal,CANALS,CATCAN;CONDTN;DATEND;DATSTA;HORACC;HORCLR;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +24,Canal bank,CANBNK,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +25,Cargo transshipment area,CTSARE,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +26,Causeway,CAUSWY,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +27,Caution area,CTNARE,DATEND;DATSTA;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +28,Checkpoint,CHKPNT,CATCHP;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +29,Coastguard station,CGUSTA,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +30,Coastline,COALNE,CATCOA;COLOUR;CONRAD;CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +31,Contiguous zone,CONZNE,DATEND;DATSTA;NATION;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +32,Continental shelf area,COSARE,NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +33,Control point,CTRPNT,CATCTR;DATEND;DATSTA;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +34,Conveyor,CONVYR,CATCON;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;LIFCAP;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +35,Crane,CRANES,CATCRN;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;HEIGHT;LIFCAP;NOBJNM;OBJNAM;ORIENT;RADIUS;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +36,Current - non - gravitational,CURENT,CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +37,Custom zone,CUSZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +38,Dam,DAMCON,CATDAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +39,Daymark,DAYMAR,CATSPM;COLOUR;COLPAT;DATEND;DATSTA;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +40,Deep water route centerline,DWRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +41,Deep water route part,DWRTPT,DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +42,Depth area,DEPARE,DRVAL1;DRVAL2;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +43,Depth contour,DEPCNT,VALDCO;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +44,Distance mark,DISMAR,CATDIS;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +45,Dock area,DOCARE,CATDOC;CONDTN;DATEND;DATSTA;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +46,Dredged area,DRGARE,DRVAL1;DRVAL2;NOBJNM;OBJNAM;QUASOU;RESTRN;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +47,Dry dock,DRYDOC,CONDTN;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;DRVAL1;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +48,Dumping ground,DMPGRD,CATDPG;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +49,Dyke,DYKCON,CONDTN;CONRAD;DATEND;DATSTA;HEIGHT;NATCON;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +50,Exclusive Economic Zone,EXEZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +51,Fairway,FAIRWY,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;ORIENT;QUASOU;RESTRN;SOUACC;STATUS;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +52,Fence/wall,FNCLNE,CATFNC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +53,Ferry route,FERYRT,CATFRY;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +54,Fishery zone,FSHZNE,NATION;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +55,Fishing facility,FSHFAC,CATFIF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +56,Fishing ground,FSHGRD,NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +57,Floating dock,FLODOC,COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;DRVAL1;HORACC;HORCLR;HORLEN;HORWID;LIFCAP;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +58,Fog signal,FOGSIG,CATFOG;DATEND;DATSTA;NOBJNM;OBJNAM;SIGFRQ;SIGGEN;SIGGRP;SIGPER;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +59,Fortified structure,FORSTC,CATFOR;CONDTN;CONRAD;CONVIS;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +60,Free port area,FRPARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +61,Gate,GATCON,CATGAT;CONDTN;DRVAL1;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +62,Gridiron,GRIDRN,HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +63,Harbour area (administrative),HRBARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +64,Harbour facility,HRBFAC,CATHAF;CONDTN;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +65,Hulk,HULKES,CATHLK;COLOUR;COLPAT;CONRAD;CONVIS;HORACC;HORLEN;HORWID;NOBJNM;OBJNAM;VERACC;VERLEN;CONDTN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +66,Ice area,ICEARE,CATICE;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +67,Incineration area,ICNARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +68,Inshore traffic zone,ISTZNE,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +69,Lake,LAKARE,ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +70,Lake shore,LAKSHR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +71,Land area,LNDARE,CONDTN;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +72,Land elevation,LNDELV,CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +73,Land region,LNDRGN,CATLND;NATQUA;NATSUR;NOBJNM;OBJNAM;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +74,Landmark,LNDMRK,CATLMK;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +75,Light,LIGHTS,CATLIT;COLOUR;DATEND;DATSTA;EXCLIT;HEIGHT;LITCHR;LITVIS;MARSYS;MLTYLT;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SECTR1;SECTR2;SIGGRP;SIGPER;SIGSEQ;STATUS;VERACC;VALNMR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +76,Light float,LITFLT,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +77,Light vessel,LITVES,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +78,Local magnetic anomaly,LOCMAG,NOBJNM;OBJNAM;VALLMA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +79,Lock basin,LOKBSN,DATEND;DATSTA;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +80,Log pond,LOGPON,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +81,Magnetic variation,MAGVAR,DATEND;DATSTA;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +82,Marine farm/culture,MARCUL,CATMFA;DATEND;DATSTA;EXPSOU;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;RESTRN;SOUACC;STATUS;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +83,Military practice area,MIPARE,CATMPA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +84,Mooring/warping facility,MORFAC,BOYSHP;CATMOR;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +85,Navigation line,NAVLNE,CATNAV;DATEND;DATSTA;ORIENT;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +86,Obstruction,OBSTRN,CATOBS;CONDTN;EXPSOU;HEIGHT;NATCON;NATQUA;NOBJNM;OBJNAM;PRODCT;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;NATSUR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +87,Offshore platform,OFSPLF,CATOFP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +88,Offshore production area,OSPARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +89,Oil barrier,OILBAR,CATOLB;CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +90,Pile,PILPNT,CATPLE;COLOUR;COLPAT;CONDTN;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +91,Pilot boarding place,PILBOP,CATPIL;COMCHA;DATEND;DATSTA;NOBJNM;NPLDST;OBJNAM;PEREND;PERSTA;PILDST;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +92,Pipeline area,PIPARE,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;CATPIP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +93,"Pipeline, overhead",PIPOHD,CATPIP;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +94,"Pipeline, submarine/on land",PIPSOL,BURDEP;CATPIP;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +95,Pontoon,PONTON,CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +96,Precautionary area,PRCARE,DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +97,Production / storage area,PRDARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +98,Pylon/bridge support,PYLONS,CATPYL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +99,Radar line,RADLNE,NOBJNM;OBJNAM;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +100,Radar range,RADRNG,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +101,Radar reflector,RADRFL,HEIGHT;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +102,Radar station,RADSTA,CATRAS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;VALMXR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +103,Radar transponder beacon,RTPBCN,CATRTB;DATEND;DATSTA;NOBJNM;OBJNAM;RADWAL;SECTR1;SECTR2;SIGGRP;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +104,Radio calling-in point,RDOCAL,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;STATUS;TRAFIC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +105,Radio station,RDOSTA,CALSGN;CATROS;COMCHA;DATEND;DATSTA;ESTRNG;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SIGFRQ;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +106,Railway,RAILWY,CONDTN;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +107,Rapids,RAPIDS,NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +108,Recommended route centerline,RCRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +109,Recommended track,RECTRC,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +110,Recommended Traffic Lane Part,RCTLPT,DATEND;DATSTA;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +111,Rescue station,RSCSTA,CATRSC;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +112,Restricted area,RESARE,CATREA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +113,Retro-reflector,RETRFL,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +114,River,RIVERS,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +115,River bank,RIVBNK,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +116,Road,ROADWY,CATROD;CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +117,Runway,RUNWAY,CATRUN;CONDTN;CONVIS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +118,Sand waves,SNDWAV,VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +119,Sea area / named water area,SEAARE,CATSEA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +120,Sea-plane landing area,SPLARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;VALDCO;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +121,Seabed area,SBDARE,COLOUR;NATQUA;NATSUR;WATLEV;OBJNAM;NOBJNM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +122,Shoreline Construction,SLCONS,CATSLC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;HORACC;HORCLR;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +123,"Signal station, traffic",SISTAT,CATSIT;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +124,"Signal station, warning",SISTAW,CATSIW;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +125,Silo / tank,SILTNK,BUISHP;CATSIL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +126,Slope topline,SLOTOP,CATSLO;COLOUR;CONRAD;CONVIS;ELEVAT;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +127,Sloping ground,SLOGRD,CATSLO;COLOUR;CONRAD;CONVIS;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +128,Small craft facility,SMCFAC,CATSCF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +129,Sounding,SOUNDG,EXPSOU;NOBJNM;OBJNAM;QUASOU;SOUACC;TECSOU;VERDAT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +130,Spring,SPRING,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +131,Square,SQUARE,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +132,Straight territorial sea baseline,STSLNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +133,Submarine transit lane,SUBTLN,NOBJNM;OBJNAM;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +134,Swept Area,SWPARE,DRVAL1;QUASOU;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +135,Territorial sea area,TESARE,NATION;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +136,Tidal stream - harmonic prediction,TS_PRH,NOBJNM;OBJNAM;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +137,Tidal stream - non-harmonic prediction,TS_PNH,NOBJNM;OBJNAM;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +138,Tidal stream panel data,TS_PAD,NOBJNM;OBJNAM;TS_TSP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +139,Tidal stream - time series,TS_TIS,NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;T_TINT;TS_TSV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +140,Tide - harmonic prediction,T_HMON,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +141,Tide - non-harmonic prediction,T_NHMN,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +142,Tidal stream - time series,T_TIMS,NOBJNM;OBJNAM;T_HWLW;T_TINT;T_TSVL;TIMEND;TIMSTA;STATUS;T_ACWL;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +143,Tideway,TIDEWY,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +144,Top mark,TOPMAR,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +145,Traffic Separation Line,TSELNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +146,Traffic Separation Scheme Boundary,TSSBND,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +147,Traffic Separation Scheme Crossing,TSSCRS,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +148,Traffic Separation Scheme Lane part,TSSLPT,CATTSS;DATEND;DATSTA;ORIENT;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +149,Traffic Separation Scheme Roundabout,TSSRON,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +150,Traffic Separation Zone,TSEZNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +151,Tunnel,TUNNEL,BURDEP;CONDTN;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +152,Two-way route part,TWRTPT,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +153,Underwater rock / awash rock,UWTROC,EXPSOU;NATSUR;NATQUA;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERDAT;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +154,Unsurveyed area,UNSARE,,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +155,Vegetation,VEGATN,CATVEG;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +156,Water turbulence,WATTUR,CATWAT;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +157,Waterfall,WATFAL,CONVIS;NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +158,Weed/Kelp,WEDKLP,CATWED;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +159,Wreck,WRECKS,CATWRK;CONRAD;CONVIS;EXPSOU;HEIGHT;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +160,Tidal stream - flood/ebb,TS_FEB,CAT_TS;CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +300,Accuracy of data,M_ACCY,HORACC;POSACC;SOUACC;VERACC;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +301,Compilation scale of data,M_CSCL,CSCALE;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +302,Coverage,M_COVR,CATCOV;,INFORM;NINFOM;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +303,Horizontal datum of data,M_HDAT,HORDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +304,Horizontal datum shift parameters,M_HOPA,HORDAT;SHIPAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +305,Nautical publication information,M_NPUB,,INFORM;NINFOM;NTXTDS;PICREP;PUBREF;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +306,Navigational system of marks,M_NSYS,MARSYS;ORIENT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +307,Production information,M_PROD,AGENCY;CPDATE;NATION;NMDATE;PRCTRY;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +308,Quality of data,M_QUAL,CATQUA;CATZOC;DRVAL1;DRVAL2;POSACC;SOUACC;SUREND;SURSTA;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +309,Sounding datum,M_SDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +310,Survey reliability,M_SREL,QUAPOS;QUASOU;SCVAL1;SCVAL2;SDISMN;SDISMX;SURATH;SUREND;SURSTA;SURTYP;TECSOU;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +311,Units of measurement of data,M_UNIT,DUNITS;HUNITS;PUNITS;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +312,Vertical datum of data,M_VDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +400,Aggregation,C_AGGR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +401,Association,C_ASSO,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +402,Stacked on/stacked under,C_STAC,,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +500,Cartographic area,$AREAS,COLOUR;ORIENT;$SCODE;$TINTS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +501,Cartographic line,$LINES,$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +502,Cartographic symbol,$CSYMB,ORIENT;$SCALE;$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +503,Compass,$COMPS,$CSIZE;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +504,Text,$TEXTS,$CHARS;COLOUR;$JUSTH;$JUSTV;$NTXST;$SPACE;$TXSTR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/projop_wparm.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/projop_wparm.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/projop_wparm.csv (revision 2866) @@ -0,0 +1,1753 @@ +"COORD_OP_CODE","COORD_OP_NAME","COORD_OP_METHOD_CODE","PARAMETER_CODE_1","PARAMETER_VALUE_1","PARAMETER_UOM_1","PARAMETER_CODE_2","PARAMETER_VALUE_2","PARAMETER_UOM_2","PARAMETER_CODE_3","PARAMETER_VALUE_3","PARAMETER_UOM_3","PARAMETER_CODE_4","PARAMETER_VALUE_4","PARAMETER_UOM_4","PARAMETER_CODE_5","PARAMETER_VALUE_5","PARAMETER_UOM_5","PARAMETER_CODE_6","PARAMETER_VALUE_6","PARAMETER_UOM_6","PARAMETER_CODE_7","PARAMETER_VALUE_7","PARAMETER_UOM_7" +101,deg to DMSH,9637,,,,,,,,,,,,,,,,,,,,, +102,degH to DMSH,9638,,,,,,,,,,,,,,,,,,,,, +103,Hdeg to DMSH,9639,,,,,,,,,,,,,,,,,,,,, +104,DM to DMSH,9640,,,,,,,,,,,,,,,,,,,,, +105,DMH to DMSH,9641,,,,,,,,,,,,,,,,,,,,, +106,HDM to DMSH,9642,,,,,,,,,,,,,,,,,,,,, +107,DMS to DMSH,9643,,,,,,,,,,,,,,,,,,,,, +108,HDMS to DMSH,9644,,,,,,,,,,,,,,,,,,,,, +3811,Belgian Lambert 2008,9802,8821,50.4752134,9110,8822,4.2133177,9110,8823,49.5,9110,8824,51.1,9110,8826,649328,9001,8827,665262,9001,,, +3813,Mississippi Transverse Mercator,9807,8801,32.3,9110,8802,-89.45,9110,8805,0.9998335,9201,8806,500000,9001,8807,1300000,9001,,,,,, +3818,Taiwan 2-degree TM zone 119,9807,8801,0,9102,8802,119,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3820,Taiwan 2-degree TM zone 121,9807,8801,0,9102,8802,121,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3831,Pacific Disaster Center Mercator,9804,8801,0,9102,8802,150,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3853,County ST74,9807,8801,0,9110,8802,18.0328332,9110,8805,0.99999506,9201,8806,100182.7406,9001,8807,-6500620.1207,9001,,,,,, +3856,Popular Visualisation Pseudo-Mercator,1024,8801,0,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3860,Finland Gauss-Kruger zone 19,9807,8801,0,9102,8802,19,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +3861,Finland Gauss-Kruger zone 20,9807,8801,0,9102,8802,20,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +3862,Finland Gauss-Kruger zone 21,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +3863,Finland Gauss-Kruger zone 22,9807,8801,0,9102,8802,22,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +3864,Finland Gauss-Kruger zone 23,9807,8801,0,9102,8802,23,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +3865,Finland Gauss-Kruger zone 24,9807,8801,0,9102,8802,24,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +3866,Finland Gauss-Kruger zone 25,9807,8801,0,9102,8802,25,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +3867,Finland Gauss-Kruger zone 26,9807,8801,0,9102,8802,26,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +3868,Finland Gauss-Kruger zone 27,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +3869,Finland Gauss-Kruger zone 28,9807,8801,0,9102,8802,28,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +3870,Finland Gauss-Kruger zone 29,9807,8801,0,9102,8802,29,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +3871,Finland Gauss-Kruger zone 30,9807,8801,0,9102,8802,30,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +3872,Finland Gauss-Kruger zone 31,9807,8801,0,9102,8802,31,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +3897,US NSIDC Equal Area north projection,1027,8801,90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3898,US NSIDC Equal Area south projection,1027,8801,-90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3899,US National Atlas Equal Area,1027,8801,45,9102,8802,-100,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3967,Virginia Lambert Conic Conformal,9802,8821,36,9102,8822,-79.5,9102,8823,37,9102,8824,39.5,9102,8826,0,9001,8827,0,9001,,, +3977,Canada Atlas Lambert,9802,8821,49,9102,8822,-95,9102,8823,49,9102,8824,77,9102,8826,0,9001,8827,0,9001,,, +3980,Katanga Lambert,9802,8821,9,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,500000,9001,8827,500000,9001,,, +3981,Katanga Gauss zone A,9807,8801,-9,9102,8802,30,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3982,Katanga Gauss zone B,9807,8801,-9,9102,8802,28,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3983,Katanga Gauss zone C,9807,8801,-9,9102,8802,26,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3984,Katanga Gauss zone D,9807,8801,-9,9102,8802,24,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3999,Moldova Transverse Mercator,9807,8801,0,9110,8802,28.24,9110,8805,0.99994,9201,8806,200000,9001,8807,-5000000,9001,,,,,, +4085,World Equidistant Cylindrical,1028,8802,0,9102,8806,0,9001,8807,0,9001,8823,0,9102,,,,,,,,, +4086,"World Equidistant Cylindrical (Sphere)",1029,8802,0,9102,8806,0,9001,8807,0,9001,8823,0,9102,,,,,,,,, +4089,DKTM1,9807,8801,0,9102,8802,9,9102,8805,0.99998,9201,8806,200000,9001,8807,-5000000,9001,,,,,, +4090,DKTM2,9807,8801,0,9102,8802,10,9102,8805,0.99998,9201,8806,400000,9001,8807,-5000000,9001,,,,,, +4091,DKTM3,9807,8801,0,9102,8802,11.75,9102,8805,0.99998,9201,8806,600000,9001,8807,-5000000,9001,,,,,, +4092,DKTM4,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,800000,9001,8807,-5000000,9001,,,,,, +4101,"BLM zone 1N (US survey feet)",9807,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4102,"BLM zone 2N (US survey feet)",9807,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4103,"BLM zone 3N (US survey feet)",9807,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4104,"BLM zone 4N (US survey feet)",9807,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4105,"BLM zone 5N (US survey feet)",9807,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4106,"BLM zone 6N (US survey feet)",9807,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4107,"BLM zone 7N (US survey feet)",9807,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4108,"BLM zone 8N (US survey feet)",9807,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4109,"BLM zone 9N (US survey feet)",9807,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4110,"BLM zone 10N (US survey feet)",9807,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4111,"BLM zone 11N (US survey feet)",9807,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4112,"BLM zone 12N (US survey feet)",9807,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4113,"BLM zone 13N (US survey feet)",9807,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4118,"BLM zone 18N (US survey feet)",9807,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4119,"BLM zone 19N (US survey feet)",9807,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4186,"BLM zone 59N (US survey feet)",9807,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4187,"BLM zone 60N (US survey feet)",9807,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4325,Guam Map Grid,9807,8801,13.3,9110,8802,144.45,9110,8805,1,9201,8806,100000,9001,8807,200000,9001,,,,,, +4416,Katanga Lambert,9802,8821,-9,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,500000,9001,8827,500000,9001,,, +4436,Pennsylvania CS27 South zone,9802,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,2000000,9003,8827,0,9003,,, +4454,New York CS27 Long Island zone,9802,8821,40.3,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,2000000,9003,8827,100000,9003,,, +4460,Australian Centre for Remote Sensing Lambert Conformal Projection,9802,8821,-27,9102,8822,132,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +4648,UTM zone 32N with prefix,9807,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,32500000,9001,8807,0,9001,,,,,, +4825,Cape Verde National,9802,8821,15.5,9110,8822,-24,9110,8823,15,9110,8824,16.4,9110,8826,161587.83,9001,8827,128511.202,9001,,, +4838,LCC Germany,9802,8821,51,9102,8822,10.3,9110,8823,48.4,9110,8824,53.4,9110,8826,0,9001,8827,0,9001,,, +4841,Norway TM zone 15,9807,8801,0,9110,8802,15.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4842,Norway TM zone 16,9807,8801,0,9110,8802,16.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4843,Norway TM zone 17,9807,8801,0,9110,8802,17.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4844,Norway TM zone 18,9807,8801,0,9110,8802,18.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4845,Norway TM zone 5,9807,8801,0,9110,8802,5.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4846,Norway TM zone 6,9807,8801,0,9110,8802,6.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4847,Norway TM zone 7,9807,8801,0,9110,8802,7.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4848,Norway TM zone 8,9807,8801,0,9110,8802,8.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4849,Norway TM zone 9,9807,8801,0,9110,8802,9.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4850,Norway TM zone 10,9807,8801,0,9110,8802,10.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4851,Norway TM zone 11,9807,8801,0,9110,8802,11.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4852,Norway TM zone 12,9807,8801,0,9110,8802,12.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4853,Norway TM zone 13,9807,8801,0,9110,8802,13.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4854,Norway TM zone 14,9807,8801,0,9110,8802,14.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4881,Norway TM zone 19,9807,8801,0,9110,8802,19.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5000,Norway TM zone 20,9807,8801,0,9110,8802,20.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5001,Norway TM zone 21,9807,8801,0,9110,8802,21.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5002,Norway TM zone 22,9807,8801,0,9110,8802,22.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5003,Norway TM zone 23,9807,8801,0,9110,8802,23.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5004,Norway TM zone 24,9807,8801,0,9110,8802,24.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5005,Norway TM zone 25,9807,8801,0,9110,8802,25.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5006,Norway TM zone 26,9807,8801,0,9110,8802,26.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5007,Norway TM zone 27,9807,8801,0,9110,8802,27.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5008,Norway TM zone 28,9807,8801,0,9110,8802,28.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5009,Norway TM zone 29,9807,8801,0,9110,8802,29.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5010,Norway TM zone 30,9807,8801,0,9110,8802,30.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5019,Portugal Bonne New,9828,8801,39.4,9110,8802,-8.0754862,9110,8806,0,9001,8807,0,9001,,,,,,,,, +5020,Portuguese Grid New,9807,8801,39.4,9110,8802,-8.0754862,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +5049,Korea East Sea Belt,9807,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5068,Conus Albers,9822,8821,23,9102,8822,-96,9102,8823,29.3,9110,8824,45.3,9110,8826,0,9001,8827,0,9001,,, +5100,Korea Unified Belt,9807,8801,38,9102,8802,127.3,9110,8805,0.9996,9201,8806,1000000,9001,8807,2000000,9001,,,,,, +5101,Korea West Belt 2010,9807,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5102,Korea Central Belt 2010,9807,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5103,Korea East Belt 2010,9807,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5104,Korea East Sea Belt 2010,9807,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5131,Korea Central Belt Jeju,9807,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,550000,9001,,,,,, +5135,Norway TM zone 5,9807,8801,58,9110,8802,5.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5136,Norway TM zone 6,9807,8801,58,9110,8802,6.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5137,Norway TM zone 7,9807,8801,58,9110,8802,7.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5138,Norway TM zone 8,9807,8801,58,9110,8802,8.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5139,Norway TM zone 9,9807,8801,58,9110,8802,9.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5140,Norway TM zone 10,9807,8801,58,9110,8802,10.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5141,Norway TM zone 11,9807,8801,58,9110,8802,11.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5142,Norway TM zone 12,9807,8801,58,9110,8802,12.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5143,Norway TM zone 13,9807,8801,58,9110,8802,13.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5144,Norway TM zone 14,9807,8801,58,9110,8802,14.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5145,Norway TM zone 15,9807,8801,58,9110,8802,15.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5146,Norway TM zone 16,9807,8801,58,9110,8802,16.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5147,Norway TM zone 17,9807,8801,58,9110,8802,17.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5148,Norway TM zone 18,9807,8801,58,9110,8802,18.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5149,Norway TM zone 19,9807,8801,58,9110,8802,19.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5150,Norway TM zone 20,9807,8801,58,9110,8802,20.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5151,Norway TM zone 21,9807,8801,58,9110,8802,21.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5152,Norway TM zone 22,9807,8801,58,9110,8802,22.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5153,Norway TM zone 23,9807,8801,58,9110,8802,23.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5154,Norway TM zone 24,9807,8801,58,9110,8802,24.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5155,Norway TM zone 25,9807,8801,58,9110,8802,25.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5156,Norway TM zone 26,9807,8801,58,9110,8802,26.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5157,Norway TM zone 27,9807,8801,58,9110,8802,27.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5158,Norway TM zone 28,9807,8801,58,9110,8802,28.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5159,Norway TM zone 29,9807,8801,58,9110,8802,29.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5160,Norway TM zone 30,9807,8801,58,9110,8802,30.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5161,Korea Modified West Belt,9807,8801,38,9102,8802,125.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5162,Korea Modified Central Belt,9807,8801,38,9102,8802,127.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5163,Korea Modified Central Belt Jeju,9807,8801,38,9102,8802,127.0010405,9110,8805,1,9201,8806,200000,9001,8807,550000,9001,,,,,, +5164,Korea Modified East Belt,9807,8801,38,9102,8802,129.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5165,Korea Modified East Sea Belt,9807,8801,38,9102,8802,131.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5218,Krovak East North,1041,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,42.3,9110 +5219,Modified Krovak,1042,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5220,Modified Krovak East North,1043,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5222,Gabon Transverse Mercator,9807,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,500000,9001,,,,,, +5231,Sri Lanka Grid,9807,8801,7.0001729,9110,8802,80.461816,9110,8805,0.9999238418,9201,8806,200000,9001,8807,200000,9001,,,,,, +5232,Sri Lanka Grid 1999,9807,8801,7.00016975,9110,8802,80.46181671,9110,8805,0.9999238418,9201,8806,500000,9001,8807,500000,9001,,,,,, +5265,Bhutan National Grid,9807,8801,0,9102,8802,90,9102,8805,1,9201,8806,250000,9001,8807,0,9001,,,,,, +5268,Bumthang TM,9807,8801,0,9110,8802,90.44,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5276,Chhukha TM,9807,8801,0,9110,8802,89.33,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5277,Dagana TM,9807,8801,0,9110,8802,89.51,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5278,Gasa TM,9807,8801,0,9110,8802,90.02,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5279,Ha TM,9807,8801,0,9110,8802,90.09,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5280,Lhuentse TM,9807,8801,0,9110,8802,91.08,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5281,Mongar TM,9807,8801,0,9110,8802,91.14,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5282,Paro TM,9807,8801,0,9110,8802,89.21,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5283,Pemagatshel TM,9807,8801,0,9110,8802,91.21,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5284,Tsirang TM,9807,8801,0,9110,8802,90.1,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5285,Samdrup Jongkhar TM,9807,8801,0,9110,8802,91.34,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5286,Samtse TM,9807,8801,0,9110,8802,89.04,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5287,Sarpang TM,9807,8801,0,9110,8802,90.16,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5288,Wangdue Phodrang TM,9807,8801,0,9110,8802,90.07,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5289,Trashigang TM,9807,8801,0,9110,8802,91.45,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5290,Trongsa TM,9807,8801,0,9110,8802,90.3,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5291,Zhemgang TM,9807,8801,0,9110,8802,90.52,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5312,Thimphu TM,9807,8801,0,9110,8802,89.33,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5313,Punakha TM,9807,8801,0,9110,8802,89.51,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5314,Yangtse TM,9807,8801,0,9110,8802,91.34,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5315,Faroe Transverse Mercator,9807,8801,0,9102,8802,-7,9102,8805,0.999997,9201,8806,200000,9001,8807,-6000000,9001,,,,,, +5319,Teranet Ontario Lambert,9802,8821,0,9102,8822,-84,9102,8823,44.3,9110,8824,54.3,9110,8826,1000000,9001,8827,0,9001,,, +5326,Iceland Lambert 2004,9802,8821,65,9110,8822,-19,9110,8823,64.15,9110,8824,65.45,9110,8826,1700000,9001,8827,300000,9001,,, +5328,"Netherlands East Indies Equatorial Zone (Jkt)",9804,8801,0,9102,8802,3.113221,9110,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +5366,Costa Rica TM 2005,9807,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +5390,Costa Rica Norte,9801,8801,10.28,9110,8802,-84.2,9110,8805,0.99995696,9201,8806,500000,9001,8807,271820.522,9001,,,,,, +5394,Costa Rica Sur,9801,8801,9,9110,8802,-83.4,9110,8805,0.99995696,9201,8806,500000,9001,8807,327987.436,9001,,,,,, +5397,Honduras Norte,9801,8801,15.3,9110,8802,-86.1,9110,8805,0.99993273,9201,8806,500000,9001,8807,296917.439,9001,,,,,, +5398,Honduras Sur,9801,8801,13.47,9110,8802,-86.1,9110,8805,0.9999514,9201,8806,500000,9001,8807,296215.903,9001,,,,,, +5399,El Salvador Lambert,9801,8801,13.47,9110,8802,-89,9110,8805,0.99996704,9201,8806,500000,9001,8807,295809.184,9001,,,,,, +5439,Nicaragua Norte,9801,8801,13.52,9110,8802,-85.3,9110,8805,0.99990314,9201,8806,500000,9001,8807,359891.816,9001,,,,,, +5444,Nicaragua Sur,9801,8801,11.44,9110,8802,-85.3,9110,8805,0.99992228,9201,8806,500000,9001,8807,288876.327,9001,,,,,, +5465,Belize Colony Grid,9807,8801,17.0340471,9110,8802,-88.3754687,9110,8805,1,9201,8806,217259.26,9005,8807,445474.83,9005,,,,,, +5468,Panama Lambert,9801,8801,8.25,9110,8802,-80,9110,8805,0.99989909,9201,8806,500000,9001,8807,294865.303,9001,,,,,, +5471,Panama Polyconic,9818,8801,8.15,9110,8802,-81,9110,8806,1000000,9037,8807,1092972.1,9037,,,,,,,,, +5475,McMurdo Sound Lambert Conformal 2000,9802,8821,-78,9110,8822,163,9110,8823,-76.4,9110,8824,-79.2,9110,8826,7000000,9001,8827,5000000,9001,,, +5476,Borchgrevink Coast Lambert Conformal 2000,9802,8821,-74.3,9110,8822,165,9110,8823,-73.4,9110,8824,-75.2,9110,8826,5000000,9001,8827,3000000,9001,,, +5477,Pennell Coast Lambert Conformal 2000,9802,8821,-71.3,9110,8822,166,9110,8823,-70.4,9110,8824,-72.2,9110,8826,3000000,9001,8827,1000000,9001,,, +5478,Ross Sea Polar Stereographic 2000,9810,8801,-90,9102,8802,180,9102,8805,0.994,9201,8806,5000000,9001,8807,1000000,9001,,,,,, +5509,"Krovak (Greenwich)",9819,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,24.5,9110 +5510,"Krovak East North (Greenwich)",1041,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,24.5,9110 +5511,"Modified Krovak (Greenwich)",1042,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5512,"Modified Krovak East North (Greenwich)",1043,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5517,Chatham Islands Map Grid,9807,8801,-44,9110,8802,-176.3,9110,8805,1,9201,8806,350000,9001,8807,650000,9001,,,,,, +5522,Gabon Transverse Mercator 2011,9807,8801,0,9102,8802,11.3,9110,8805,0.9996,9201,8806,1500000,9001,8807,5500000,9001,,,,,, +5547,Papua New Guinea Map Grid 1994 zone 54,9807,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5548,Papua New Guinea Map Grid 1994 zone 55,9807,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5549,Papua New Guinea Map Grid 1994 zone 56,9807,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +10101,Alabama CS27 East zone,9807,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,500000,9003,8807,0,9003,,,,,, +10102,Alabama CS27 West zone,9807,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +10131,"SPCS83 Alabama East zone (meters)",9807,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,200000,9001,8807,0,9001,,,,,, +10132,"SPCS83 Alabama West zone (meters)",9807,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,600000,9001,8807,0,9001,,,,,, +10201,Arizona Coordinate System East zone,9807,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +10202,Arizona Coordinate System Central zone,9807,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +10203,Arizona Coordinate System West zone,9807,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +10231,"SPCS83 Arizona East zone (meters)",9807,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +10232,"SPCS83 Arizona Central zone (meters)",9807,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +10233,"SPCS83 Arizona West zone (meters)",9807,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,213360,9001,8807,0,9001,,,,,, +10301,Arkansas CS27 North,9802,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,2000000,9003,8827,0,9003,,, +10302,Arkansas CS27 South,9802,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,2000000,9003,8827,0,9003,,, +10331,"SPCS83 Arkansas North zone (meters)",9802,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,400000,9001,8827,0,9001,,, +10332,"SPCS83 Arkansas South zone (meters)",9802,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,400000,9001,8827,400000,9001,,, +10401,California CS27 zone I,9802,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9003,8827,0,9003,,, +10402,California CS27 zone II,9802,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9003,8827,0,9003,,, +10403,California CS27 zone III,9802,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9003,8827,0,9003,,, +10404,California CS27 zone IV,9802,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9003,8827,0,9003,,, +10405,California CS27 zone V,9802,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9003,8827,0,9003,,, +10406,California CS27 zone VI,9802,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9003,8827,0,9003,,, +10407,California CS27 zone VII,9802,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,416926.74,9003,,, +10408,California CS27 zone VII,9802,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,4160926.74,9003,,, +10420,California Albers,9822,8821,0,9102,8822,-120,9102,8823,34,9102,8824,40.5,9102,8826,0,9001,8827,-4000000,9001,,, +10431,"SPCS83 California zone 1 (meters)",9802,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9001,8827,500000,9001,,, +10432,"SPCS83 California zone 2 (meters)",9802,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9001,8827,500000,9001,,, +10433,"SPCS83 California zone 3 (meters)",9802,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9001,8827,500000,9001,,, +10434,"SPCS83 California zone 4 (meters)",9802,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9001,8827,500000,9001,,, +10435,"SPCS83 California zone 5 (meters)",9802,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9001,8827,500000,9001,,, +10436,"SPCS83 California zone 6 (meters)",9802,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9001,8827,500000,9001,,, +10501,Colorado CS27 North zone,9802,8821,39.2,9110,8822,-105.3,9110,8823,39.43,9110,8824,40.47,9110,8826,2000000,9003,8827,0,9003,,, +10502,Colorado CS27 Central zone,9802,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,2000000,9003,8827,0,9003,,, +10503,Colorado CS27 South zone,9802,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,2000000,9003,8827,0,9003,,, +10531,"SPCS83 Colorado North zone (meters)",9802,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +10532,"SPCS83 Colorado Central zone (meters)",9802,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +10533,"SPCS83 Colorado South zone (meters)",9802,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +10600,Connecticut CS27,9802,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,600000,9003,8827,0,9003,,, +10630,"SPCS83 Connecticut zone (meters)",9802,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,304800.6096,9001,8827,152400.3048,9001,,, +10700,Delaware CS27,9807,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,500000,9003,8807,0,9003,,,,,, +10730,"SPCS83 Delaware zone (meters)",9807,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,200000,9001,8807,0,9001,,,,,, +10901,Florida CS27 East zone,9807,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +10902,Florida CS27 West zone,9807,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +10903,Florida CS27 North zone,9802,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,2000000,9003,8827,0,9003,,, +10931,"SPCS83 Florida East zone (meters)",9807,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +10932,"SPCS83 Florida West zone (meters)",9807,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +10933,"SPCS83 Florida North zone (meters)",9802,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,600000,9001,8827,0,9001,,, +10934,"Florida GDL Albers (meters)",9822,8821,24,9110,8822,-84,9110,8823,24,9110,8824,31.3,9110,8826,400000,9001,8827,0,9001,,, +11001,Georgia CS27 East zone,9807,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +11002,Georgia CS27 West zone,9807,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +11031,"SPCS83 Georgia East zone (meters)",9807,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +11032,"SPCS83 Georgia West zone (meters)",9807,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,700000,9001,8807,0,9001,,,,,, +11101,Idaho CS27 East zone,9807,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,500000,9003,8807,0,9003,,,,,, +11102,Idaho CS27 Central zone,9807,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9003,8807,0,9003,,,,,, +11103,Idaho CS27 West zone,9807,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +11131,"SPCS83 Idaho East zone (meters)",9807,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,200000,9001,8807,0,9001,,,,,, +11132,"SPCS83 Idaho Central zone (meters)",9807,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9001,8807,0,9001,,,,,, +11133,"SPCS83 Idaho West zone (meters)",9807,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,800000,9001,8807,0,9001,,,,,, +11201,Illinois CS27 East zone,9807,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,500000,9003,8807,0,9003,,,,,, +11202,Illinois CS27 West zone,9807,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +11231,"SPCS83 Illinois East zone (meters)",9807,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,300000,9001,8807,0,9001,,,,,, +11232,"SPCS83 Illinois West zone (meters)",9807,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,700000,9001,8807,0,9001,,,,,, +11301,Indiana CS27 East zone,9807,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +11302,Indiana CS27 West zone,9807,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +11331,"SPCS83 Indiana East zone (meters)",9807,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,100000,9001,8807,250000,9001,,,,,, +11332,"SPCS83 Indiana West zone (meters)",9807,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,900000,9001,8807,250000,9001,,,,,, +11401,Iowa CS27 North zone,9802,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,2000000,9003,8827,0,9003,,, +11402,Iowa CS27 South zone,9802,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,2000000,9003,8827,0,9003,,, +11431,"SPCS83 Iowa North zone (meters)",9802,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,1500000,9001,8827,1000000,9001,,, +11432,"SPCS83 Iowa South zone (meters)",9802,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,500000,9001,8827,0,9001,,, +11501,Kansas CS27 North zone,9802,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,2000000,9003,8827,0,9003,,, +11502,Kansas CS27 South zone,9802,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,2000000,9003,8827,0,9003,,, +11531,"SPCS83 Kansas North zone (meters)",9802,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,400000,9001,8827,0,9001,,, +11532,"SPCS83 Kansas South zone (meters)",9802,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,400000,9001,8827,400000,9001,,, +11601,Kentucky CS27 North zone,9802,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,2000000,9003,8827,0,9003,,, +11602,Kentucky CS27 South zone,9802,8821,36.2,9110,8822,-85.45,9110,8823,36.44,9110,8824,37.56,9110,8826,2000000,9003,8827,0,9003,,, +11630,"SPCS83 Kentucky Single Zone (meters)",9802,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,1500000,9001,8827,1000000,9001,,, +11631,Kentucky CS83 North zone,9802,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,37.58,9110,8826,500000,9001,8827,0,9001,,, +11632,"SPCS83 Kentucky South zone (meters)",9802,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,500000,9001,8827,500000,9001,,, +11701,Louisiana CS27 North zone,9802,8821,30.4,9110,8822,-92.3,9110,8823,31.1,9110,8824,32.4,9110,8826,2000000,9003,8827,0,9003,,, +11702,Louisiana CS27 South zone,9802,8821,28.4,9110,8822,-91.2,9110,8823,29.18,9110,8824,30.42,9110,8826,2000000,9003,8827,0,9003,,, +11703,Louisiana CS27 Offshore zone,9802,8821,25.4,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,2000000,9003,8827,0,9003,,, +11731,"SPCS83 Louisiana North zone (meters)",9802,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,1000000,9001,8827,0,9001,,, +11732,"SPCS83 Louisiana South zone (meters)",9802,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,1000000,9001,8827,0,9001,,, +11733,"SPCS83 Louisiana Offshore zone (meters)",9802,8821,25.3,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,1000000,9001,8827,0,9001,,, +11801,Maine CS27 East zone,9807,8801,43.5,9110,8802,-68.3,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +11802,Maine CS27 West zone,9807,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +11831,"SPCS83 Maine East zone (meters)",9807,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,300000,9001,8807,0,9001,,,,,, +11832,"SPCS83 Maine West zone (meters)",9807,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,900000,9001,8807,0,9001,,,,,, +11833,"SPCS83 Maine East zone (US Survey feet)",9807,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +11834,"SPCS83 Maine West zone (US Survey feet)",9807,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +11851,"Maine CS2000 East zone (meters)",9807,8801,43.5,9110,8802,-67.523,9110,8805,0.99998,9201,8806,700000,9001,8807,0,9001,,,,,, +11852,Maine CS2000 Central zone,9807,8801,43,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +11853,"Maine CS2000 West zone (meters)",9807,8801,42.5,9110,8802,-70.223,9110,8805,0.99998,9201,8806,300000,9001,8807,0,9001,,,,,, +11854,"Maine CS2000 Central zone (meters)",9807,8801,43.3,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +11900,Maryland CS27,9802,8821,37.5,9110,8822,-77,9110,8823,38.18,9110,8824,39.27,9110,8826,800000,9003,8827,0,9003,,, +11930,"SPCS83 Maryland zone (meters)",9802,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,400000,9001,8827,0,9001,,, +12001,Massachusetts CS27 Mainland zone,9802,8821,41,9110,8822,-71.3,9110,8823,41.43,9110,8824,42.41,9110,8826,600000,9003,8827,0,9003,,, +12002,Massachusetts CS27 Island zone,9802,8821,41,9110,8822,-70.3,9110,8823,41.17,9110,8824,41.29,9110,8826,200000,9003,8827,0,9003,,, +12031,"SPCS83 Massachusetts Mainland zone (meters)",9802,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,200000,9001,8827,750000,9001,,, +12032,"SPCS83 Massachusetts Island zone (meters)",9802,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,500000,9001,8827,0,9001,,, +12101,Michigan State Plane East zone,9807,8801,41.3,9110,8802,-83.4,9110,8805,0.999942857,9201,8806,500000,9003,8807,0,9003,,,,,, +12102,Michigan State Plane Old Central zone,9807,8801,41.3,9110,8802,-85.45,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +12103,Michigan State Plane West zone,9807,8801,41.3,9110,8802,-88.45,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +12111,Michigan CS27 North zone,9802,8821,44.47,9110,8822,-87,9110,8823,45.29,9110,8824,47.05,9110,8826,2000000,9003,8827,0,9003,,, +12112,Michigan CS27 Central zone,9802,8821,43.19,9110,8822,-84.2,9110,8823,44.11,9110,8824,45.42,9110,8826,2000000,9003,8827,0,9003,,, +12113,Michigan CS27 South zone,9802,8821,41.3,9110,8822,-84.2,9110,8823,42.06,9110,8824,43.4,9110,8826,2000000,9003,8827,0,9003,,, +12141,"SPCS83 Michigan North zone (meters)",9802,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,8000000,9001,8827,0,9001,,, +12142,"SPCS83 Michigan Central zone (meters)",9802,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,6000000,9001,8827,0,9001,,, +12143,"SPCS83 Michigan South zone (meters)",9802,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,4000000,9001,8827,0,9001,,, +12150,"Michigan Oblique Mercator (meters)",9812,8806,2546731.496,9001,8807,-4354009.816,9001,8811,45.1833,9110,8812,-86,9110,8813,337.25556,9102,8814,337.25556,9102,8815,0.9996,9201 +12201,Minnesota CS27 North zone,9802,8821,46.3,9110,8822,-93.06,9110,8823,47.02,9110,8824,48.38,9110,8826,2000000,9003,8827,0,9003,,, +12202,Minnesota CS27 Central zone,9802,8821,45,9110,8822,-94.15,9110,8823,45.37,9110,8824,47.03,9110,8826,2000000,9003,8827,0,9003,,, +12203,Minnesota CS27 South zone,9802,8821,43,9110,8822,-94,9110,8823,43.47,9110,8824,45.13,9110,8826,2000000,9003,8827,0,9003,,, +12231,"SPCS83 Minnesota North zone (meters)",9802,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,800000,9001,8827,100000,9001,,, +12232,"SPCS83 Minnesota Central zone (meters)",9802,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,800000,9001,8827,100000,9001,,, +12233,"SPCS83 Minnesota South zone (meters)",9802,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,800000,9001,8827,100000,9001,,, +12234,"SPCS83 Minnesota North zone (US Survey feet)",9802,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +12235,"SPCS83 Minnesota Central zone (US Survey feet)",9802,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +12236,"SPCS83 Minnesota South zone (US Survey feet)",9802,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +12301,Mississippi CS27 East zone,9807,8801,29.4,9110,8802,-88.5,9110,8805,0.99996,9201,8806,500000,9003,8807,0,9003,,,,,, +12302,Mississippi CS27 West zone,9807,8801,30.3,9110,8802,-90.2,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +12331,"SPCS83 Mississippi East zone (meters)",9807,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,300000,9001,8807,0,9001,,,,,, +12332,"SPCS83 Mississippi West zone (meters)",9807,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,700000,9001,8807,0,9001,,,,,, +12401,Missouri CS27 East zone,9807,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +12402,Missouri CS27 Central zone,9807,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +12403,Missouri CS27 West zone,9807,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +12431,"SPCS83 Missouri East zone (meters)",9807,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,250000,9001,8807,0,9001,,,,,, +12432,"SPCS83 Missouri Central zone (meters)",9807,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9001,8807,0,9001,,,,,, +12433,"SPCS83 Missouri West zone (meters)",9807,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,850000,9001,8807,0,9001,,,,,, +12501,Montana CS27 North zone,9802,8821,47,9110,8822,-109.3,9110,8823,48.43,9110,8824,47.51,9110,8826,2000000,9003,8827,0,9003,,, +12502,Montana CS27 Central zone,9802,8821,45.5,9110,8822,-109.3,9110,8823,47.53,9110,8824,46.27,9110,8826,2000000,9003,8827,0,9003,,, +12503,Montana CS27 South zone,9802,8821,44,9110,8822,-109.3,9110,8823,46.24,9110,8824,44.52,9110,8826,2000000,9003,8827,0,9003,,, +12530,"SPCS83 Montana zone (meters)",9802,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,600000,9001,8827,0,9001,,, +12601,Nebraska CS27 North zone,9802,8821,41.2,9110,8822,-100,9110,8823,41.51,9110,8824,42.49,9110,8826,2000000,9003,8827,0,9003,,, +12602,Nebraska CS27 South zone,9802,8821,39.4,9110,8822,-99.3,9110,8823,40.17,9110,8824,41.43,9110,8826,2000000,9003,8827,0,9003,,, +12630,"SPCS83 Nebraska zone (meters)",9802,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,500000,9001,8827,0,9001,,, +12701,Nevada CS27 East zone,9807,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +12702,Nevada CS27 Central zone,9807,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +12703,Nevada CS27 West zone,9807,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +12731,"SPCS83 Nevada East zone (meters)",9807,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,200000,9001,8807,8000000,9001,,,,,, +12732,"SPCS83 Nevada Central zone (meters)",9807,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9001,8807,6000000,9001,,,,,, +12733,"SPCS83 Nevada West zone (meters)",9807,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,800000,9001,8807,4000000,9001,,,,,, +12800,New Hampshire CS27,9807,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +12830,"SPCS83 New Hampshire zone (meters)",9807,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,300000,9001,8807,0,9001,,,,,, +12900,New Jersey CS27,9807,8801,38.5,9110,8802,-74.4,9110,8805,0.999975,9201,8806,2000000,9003,8807,0,9003,,,,,, +12930,"SPCS83 New Jersey zone (meters)",9807,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +13001,New Mexico CS27 East zone,9807,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +13002,New Mexico CS27 Central zone,9807,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +13003,New Mexico CS27 West zone,9807,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,500000,9003,8807,0,9003,,,,,, +13031,"SPCS83 New Mexico East zone (meters)",9807,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,165000,9001,8807,0,9001,,,,,, +13032,"SPCS83 New Mexico Central zone (meters)",9807,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +13033,"SPCS83 New Mexico West zone (meters)",9807,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,830000,9001,8807,0,9001,,,,,, +13101,New York CS27 East zone,9807,8801,40,9110,8802,-74.2,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +13102,New York CS27 Central zone,9807,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,500000,9003,8807,0,9003,,,,,, +13103,New York CS27 West zone,9807,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,500000,9003,8807,0,9003,,,,,, +13104,New York CS27 Long Island zone,9802,8821,40.3,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,1000000,9003,8827,0,9003,,, +13131,"SPCS83 New York East zone (meters)",9807,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +13132,"SPCS83 New York Central zone (meters)",9807,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,250000,9001,8807,0,9001,,,,,, +13133,"SPCS83 New York West zone (meters)",9807,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,350000,9001,8807,0,9001,,,,,, +13134,"SPCS83 New York Long Island zone (meters)",9802,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,300000,9001,8827,0,9001,,, +13200,North Carolina CS27,9802,8821,33.45,9110,8822,-79,9110,8823,34.2,9110,8824,36.1,9110,8826,2000000,9003,8827,0,9003,,, +13230,"SPCS83 North Carolina zone (meters)",9802,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,609601.22,9001,8827,0,9001,,, +13301,North Dakota CS27 North zone,9802,8821,47,9110,8822,-100.3,9110,8823,47.26,9110,8824,48.44,9110,8826,2000000,9003,8827,0,9003,,, +13302,North Dakota CS27 South zone,9802,8821,45.4,9110,8822,-100.3,9110,8823,46.11,9110,8824,47.29,9110,8826,2000000,9003,8827,0,9003,,, +13331,"SPCS83 North Dakota North zone (meters)",9802,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,600000,9001,8827,0,9001,,, +13332,"SPCS83 North Dakota South zone (meters)",9802,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,600000,9001,8827,0,9001,,, +13401,Ohio CS27 North zone,9802,8821,39.4,9110,8822,-82.3,9110,8823,40.26,9110,8824,41.42,9110,8826,2000000,9003,8827,0,9003,,, +13402,Ohio CS27 South zone,9802,8821,38,9110,8822,-82.3,9110,8823,38.44,9110,8824,40.02,9110,8826,2000000,9003,8827,0,9003,,, +13431,"SPCS83 Ohio North zone (meters)",9802,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,600000,9001,8827,0,9001,,, +13432,"SPCS83 Ohio South zone (meters)",9802,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,600000,9001,8827,0,9001,,, +13433,"SPCS83 Ohio North zone (US Survey feet)",9802,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,1968500,9003,8827,0,9003,,, +13434,"SPCS83 Ohio South zone (US Survey feet)",9802,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,1968500,9003,8827,0,9003,,, +13501,Oklahoma CS27 North zone,9802,8821,35,9110,8822,-98,9110,8823,35.34,9110,8824,36.46,9110,8826,2000000,9003,8827,0,9003,,, +13502,Oklahoma CS27 South zone,9802,8821,33.2,9110,8822,-98,9110,8823,33.56,9110,8824,35.14,9110,8826,2000000,9003,8827,0,9003,,, +13531,"SPCS83 Oklahoma North zone (meters)",9802,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,600000,9001,8827,0,9001,,, +13532,"SPCS83 Oklahoma South zone (meters)",9802,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,600000,9001,8827,0,9001,,, +13601,Oregon CS27 North zone,9802,8821,43.4,9110,8822,-120.3,9110,8823,44.2,9110,8824,46,9110,8826,2000000,9003,8827,0,9003,,, +13602,Oregon CS27 South zone,9802,8821,41.4,9110,8822,-120.3,9110,8823,42.2,9110,8824,44,9110,8826,2000000,9003,8827,0,9003,,, +13631,"SPCS83 Oregon North zone (meters)",9802,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,2500000,9001,8827,0,9001,,, +13632,"SPCS83 Oregon South zone (meters)",9802,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,1500000,9001,8827,0,9001,,, +13633,"Oregon GIC Lambert (meters)",9802,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,400000,9001,8827,0,9001,,, +13701,Pennsylvania CS27 North zone,9802,8821,40.1,9110,8822,-77.45,9110,8823,40.53,9110,8824,41.57,9110,8826,2000000,9003,8827,0,9003,,, +13702,Pennsylvania CS27 South zone,9802,8821,39.2,9110,8822,-77.45,9110,8823,39.56,9110,8824,40.48,9110,8826,2000000,9003,8827,0,9003,,, +13731,"SPCS83 Pennsylvania North zone (meters)",9802,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,600000,9001,8827,0,9001,,, +13732,"SPCS83 Pennsylvania South zone (meters)",9802,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,600000,9001,8827,0,9001,,, +13800,Rhode Island CS27,9807,8801,41.05,9110,8802,-71.3,9110,8805,0.9999938,9201,8806,500000,9003,8807,0,9003,,,,,, +13830,"SPCS83 Rhode Island zone (meters)",9807,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,100000,9001,8807,0,9001,,,,,, +13901,South Carolina CS27 North zone,9802,8821,33,9110,8822,-81,9110,8823,33.46,9110,8824,34.58,9110,8826,2000000,9003,8827,0,9003,,, +13902,South Carolina CS27 South zone,9802,8821,31.5,9110,8822,-81,9110,8823,32.2,9110,8824,33.4,9110,8826,2000000,9003,8827,0,9003,,, +13930,"SPCS83 South Carolina zone (meters)",9802,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,609600,9001,8827,0,9001,,, +14001,South Dakota CS27 North zone,9802,8821,43.5,9110,8822,-100,9110,8823,44.25,9110,8824,45.41,9110,8826,2000000,9003,8827,0,9003,,, +14002,South Dakota CS27 South zone,9802,8821,42.2,9110,8822,-100.2,9110,8823,42.5,9110,8824,44.24,9110,8826,2000000,9003,8827,0,9003,,, +14031,"SPCS83 South Dakota North zone (meters)",9802,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,600000,9001,8827,0,9001,,, +14032,"SPCS83 South Dakota South zone (meters)",9802,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,600000,9001,8827,0,9001,,, +14100,Tennessee CS27,9802,8821,34.4,9110,8822,-86,9110,8823,35.15,9110,8824,36.25,9110,8826,100000,9003,8827,0,9003,,, +14130,"SPCS83 Tennessee zone (meters)",9802,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,600000,9001,8827,0,9001,,, +14201,Texas CS27 North zone,9802,8821,34,9110,8822,-101.3,9110,8823,34.39,9110,8824,36.11,9110,8826,2000000,9003,8827,0,9003,,, +14202,Texas CS27 North Central zone,9802,8821,31.4,9110,8822,-97.3,9110,8823,32.08,9110,8824,33.58,9110,8826,2000000,9003,8827,0,9003,,, +14203,Texas CS27 Central zone,9802,8821,29.4,9110,8822,-100.2,9110,8823,30.07,9110,8824,31.53,9110,8826,2000000,9003,8827,0,9003,,, +14204,Texas CS27 South Central zone,9802,8821,27.5,9110,8822,-99,9110,8823,28.23,9110,8824,30.17,9110,8826,2000000,9003,8827,0,9003,,, +14205,Texas CS27 South zone,9802,8821,25.4,9110,8822,-98.3,9110,8823,26.1,9110,8824,27.5,9110,8826,2000000,9003,8827,0,9003,,, +14231,"SPCS83 Texas North zone (meters)",9802,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,200000,9001,8827,1000000,9001,,, +14232,"SPCS83 Texas North Central zone (meters)",9802,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,600000,9001,8827,2000000,9001,,, +14233,"SPCS83 Texas Central zone (meters)",9802,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,700000,9001,8827,3000000,9001,,, +14234,"SPCS83 Texas South Central zone (meters)",9802,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,600000,9001,8827,4000000,9001,,, +14235,"SPCS83 Texas South zone (meters)",9802,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,300000,9001,8827,5000000,9001,,, +14251,"Texas State Mapping System (meters)",9802,8821,31.1,9110,8822,-100,9110,8823,27.25,9110,8824,34.55,9110,8826,1000000,9001,8827,1000000,9001,,, +14252,Shackleford,9802,8821,31.1,9110,8822,-100,9110,8823,27.25,9110,8824,34.55,9110,8826,3000000,9002,8827,3000000,9002,,, +14253,Texas Centric Lambert Conformal,9802,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,5000000,9001,,, +14254,Texas Centric Albers Equal Area,9822,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,6000000,9001,,, +14301,Utah CS27 North zone,9802,8821,40.2,9110,8822,-111.3,9110,8823,40.43,9110,8824,41.47,9110,8826,2000000,9003,8827,0,9003,,, +14302,Utah CS27 Central zone,9802,8821,38.2,9110,8822,-111.3,9110,8823,39.01,9110,8824,40.39,9110,8826,2000000,9003,8827,0,9003,,, +14303,Utah CS27 South zone,9802,8821,36.4,9110,8822,-111.3,9110,8823,37.13,9110,8824,38.21,9110,8826,2000000,9003,8827,0,9003,,, +14331,"SPCS83 Utah North zone (meters)",9802,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,500000,9001,8827,1000000,9001,,, +14332,"SPCS83 Utah Central zone (meters)",9802,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,500000,9001,8827,2000000,9001,,, +14333,"SPCS83 Utah South zone (meters)",9802,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,500000,9001,8827,3000000,9001,,, +14400,Vermont CS27,9807,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9003,8807,0,9003,,,,,, +14430,"SPCS83 Vermont zone (meters)",9807,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9001,8807,0,9001,,,,,, +14501,Virginia CS27 North zone,9802,8821,37.4,9110,8822,-78.3,9110,8823,38.02,9110,8824,39.12,9110,8826,2000000,9003,8827,0,9003,,, +14502,Virginia CS27 South zone,9802,8821,36.2,9110,8822,-78.3,9110,8823,36.46,9110,8824,37.58,9110,8826,2000000,9003,8827,0,9003,,, +14531,"SPCS83 Virginia North zone (meters)",9802,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,3500000,9001,8827,2000000,9001,,, +14532,"SPCS83 Virginia South zone (meters)",9802,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,3500000,9001,8827,1000000,9001,,, +14601,Washington CS27 North zone,9802,8821,47,9110,8822,-120.5,9110,8823,47.3,9110,8824,48.44,9110,8826,2000000,9003,8827,0,9003,,, +14602,Washington CS27 South zone,9802,8821,45.2,9110,8822,-120.3,9110,8823,45.5,9110,8824,47.2,9110,8826,2000000,9003,8827,0,9003,,, +14631,"SPCS83 Washington North zone (meters)",9802,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,500000,9001,8827,0,9001,,, +14632,"SPCS83 Washington South zone (meters)",9802,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,500000,9001,8827,0,9001,,, +14701,West Virginia CS27 North zone,9802,8821,38.3,9110,8822,-79.3,9110,8823,39,9110,8824,40.15,9110,8826,2000000,9003,8827,0,9003,,, +14702,West Virginia CS27 South zone,9802,8821,37,9110,8822,-81,9110,8823,37.29,9110,8824,38.53,9110,8826,2000000,9003,8827,0,9003,,, +14731,"SPCS83 West Virginia North zone (meters)",9802,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,600000,9001,8827,0,9001,,, +14732,"SPCS83 West Virginia South zone (meters)",9802,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,600000,9001,8827,0,9001,,, +14733,"SPCS83 West Virginia North zone (US Survey feet)",9802,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9001,8827,0,9001,,, +14734,"SPCS83 West Virginia South zone (US Survey feet)",9802,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9001,8827,0,9001,,, +14735,"SPCS83 West Virginia North zone (US Survey feet)",9802,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9003,8827,0,9003,,, +14736,"SPCS83 West Virginia South zone (US Survey feet)",9802,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9003,8827,0,9003,,, +14801,Wisconsin CS27 North zone,9802,8821,45.1,9110,8822,-90,9110,8823,45.34,9110,8824,46.46,9110,8826,2000000,9003,8827,0,9003,,, +14802,Wisconsin CS27 Central zone,9802,8821,43.5,9110,8822,-90,9110,8823,44.15,9110,8824,45.3,9110,8826,2000000,9003,8827,0,9003,,, +14803,Wisconsin CS27 South zone,9802,8821,42,9110,8822,-90,9110,8823,42.44,9110,8824,44.04,9110,8826,2000000,9003,8827,0,9003,,, +14811,Wisconsin Transverse Mercator 27,9807,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,500000,9001,8807,-4500000,9001,,,,,, +14831,"SPCS83 Wisconsin North zone (meters)",9802,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,600000,9001,8827,0,9001,,, +14832,"SPCS83 Wisconsin Central zone (meters)",9802,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,600000,9001,8827,0,9001,,, +14833,"SPCS83 Wisconsin South zone (meters)",9802,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,600000,9001,8827,0,9001,,, +14841,Wisconsin Transverse Mercator 83,9807,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,520000,9001,8807,-4480000,9001,,,,,, +14901,Wyoming CS27 East zone,9807,8801,40.4,9110,8802,-105.1,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +14902,Wyoming CS27 East Central zone,9807,8801,40.4,9110,8802,-107.2,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +14903,Wyoming CS27 West Central zone,9807,8801,40.4,9110,8802,-108.45,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +14904,Wyoming CS27 West zone,9807,8801,40.4,9110,8802,-110.05,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +14931,"SPCS83 Wyoming East zone (meters)",9807,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,200000,9001,8807,0,9001,,,,,, +14932,"SPCS83 Wyoming East Central zone (meters)",9807,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,400000,9001,8807,100000,9001,,,,,, +14933,"SPCS83 Wyoming West Central zone (meters)",9807,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,600000,9001,8807,0,9001,,,,,, +14934,"SPCS83 Wyoming West zone (meters)",9807,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,800000,9001,8807,100000,9001,,,,,, +14935,"SPCS83 Wyoming East zone (US Survey feet)",9807,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,656166.6667,9003,8807,0,9003,,,,,, +14936,"SPCS83 Wyoming East Central zone (US Survey feet)",9807,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,1312333.3333,9003,8807,328083.3333,9003,,,,,, +14937,"SPCS83 Wyoming West Central zone (US Survey feet)",9807,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,1968500,9003,8807,0,9003,,,,,, +14938,"SPCS83 Wyoming West zone (US Survey feet)",9807,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,2624666.6667,9003,8807,328083.3333,9003,,,,,, +15001,Alaska CS27 zone 1,9812,8806,16404166.67,9003,8807,-16404166.67,9003,8811,57,9110,8812,-133.4,9110,8813,323.07483685,9110,8814,323.07483685,9110,8815,0.9999,9201 +15002,Alaska CS27 zone 2,9807,8801,54,9102,8802,-142,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15003,Alaska CS27 zone 3,9807,8801,54,9102,8802,-146,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15004,Alaska CS27 zone 4,9807,8801,54,9102,8802,-150,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15005,Alaska CS27 zone 5,9807,8801,54,9102,8802,-154,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15006,Alaska CS27 zone 6,9807,8801,54,9102,8802,-158,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15007,Alaska CS27 zone 7,9807,8801,54,9102,8802,-162,9102,8805,0.9999,9201,8806,700000,9003,8807,0,9003,,,,,, +15008,Alaska CS27 zone 8,9807,8801,54,9102,8802,-166,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +15009,Alaska CS27 zone 9,9807,8801,54,9102,8802,-170,9102,8805,0.9999,9201,8806,600000,9003,8807,0,9003,,,,,, +15010,Alaska CS27 zone 10,9802,8821,51,9110,8822,-176,9110,8823,53.5,9110,8824,51.5,9110,8826,3000000,9003,8827,0,9003,,, +15020,Alaska Albers,9822,8821,50,9102,8822,-154,9102,8823,55,9102,8824,65,9102,8826,0,9003,8827,0,9003,,, +15021,"Alaska Albers (meters)",9822,8821,50,9102,8822,-154,9102,8823,55,9102,8824,65,9102,8826,0,9001,8827,0,9001,,, +15031,"SPCS83 Alaska zone 1 (meters)",9812,8806,5000000,9001,8807,-5000000,9001,8811,57,9110,8812,-133.4,9110,8813,323.07483685,9110,8814,323.07483685,9110,8815,0.9999,9201 +15032,"SPCS83 Alaska zone 2 (meters)",9807,8801,54,9102,8802,-142,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15033,"SPCS83 Alaska zone 3 (meters)",9807,8801,54,9102,8802,-146,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15034,"SPCS83 Alaska zone 4 (meters)",9807,8801,54,9102,8802,-150,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15035,"SPCS83 Alaska zone 5 (meters)",9807,8801,54,9102,8802,-154,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15036,"SPCS83 Alaska zone 6 (meters)",9807,8801,54,9102,8802,-158,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15037,"SPCS83 Alaska zone 7 (meters)",9807,8801,54,9102,8802,-162,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15038,"SPCS83 Alaska zone 8 (meters)",9807,8801,54,9102,8802,-166,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15039,"SPCS83 Alaska zone 9 (meters)",9807,8801,54,9102,8802,-170,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +15040,"SPCS83 Alaska zone 10 (meters)",9802,8821,51,9110,8822,-176,9110,8823,53.5,9110,8824,51.5,9110,8826,1000000,9001,8827,0,9001,,, +15101,Hawaii CS27 zone 1,9807,8801,18.5,9110,8802,-155.3,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +15102,Hawaii CS27 zone 2,9807,8801,20.2,9110,8802,-156.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +15103,Hawaii CS27 zone 3,9807,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,500000,9003,8807,0,9003,,,,,, +15104,Hawaii CS27 zone 4,9807,8801,21.5,9110,8802,-159.3,9110,8805,0.99999,9201,8806,500000,9003,8807,0,9003,,,,,, +15105,Hawaii CS27 zone 5,9807,8801,21.4,9110,8802,-160.1,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +15131,"SPCS83 Hawaii zone 1 (meters)",9807,8801,18.5,9110,8802,-155.3,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +15132,"SPCS83 Hawaii zone 2 (meters)",9807,8801,20.2,9110,8802,-156.4,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +15133,"SPCS83 Hawaii zone 3 (meters)",9807,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +15134,"SPCS83 Hawaii zone 4 (meters)",9807,8801,21.5,9110,8802,-159.3,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +15135,"SPCS83 Hawaii zone 5 (meters)",9807,8801,21.4,9110,8802,-160.1,9110,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +15138,"SPCS83 Hawaii zone 3 (US Survey feet)",9807,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,1640416.6667,9003,8807,0,9003,,,,,, +15201,Puerto Rico CS27,9802,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,500000,9003,8827,0,9003,,, +15202,St. Croix CS27,9802,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,500000,9003,8827,100000,9003,,, +15230,"SPCS83 Puerto Rico & Virgin Islands zone (meters)",9802,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,200000,9001,8827,200000,9001,,, +15297,"SPCS83 Utah North zone (US Survey feet)",9802,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640416.6667,9003,8827,3280833.3333,9003,,, +15298,"SPCS83 Utah Central zone (US Survey feet)",9802,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640416.6667,9003,8827,6561666.6667,9003,,, +15299,"SPCS83 Utah South zone (US Survey feet)",9802,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640416.6667,9003,8827,9842500,9003,,, +15300,American Samoa Lambert,9801,8801,-14.16,9110,8802,170,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +15301,American Samoa Lambert,9801,8801,-14.16,9110,8802,-170,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +15302,Tennessee CS27,9802,8821,34.4,9110,8822,-86,9110,8823,35.15,9110,8824,36.25,9110,8826,2000000,9003,8827,100000,9003,,, +15303,"SPCS83 Kentucky North zone (meters)",9802,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,500000,9001,8827,0,9001,,, +15304,"SPCS83 Arizona East zone (International feet)",9807,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +15305,"SPCS83 Arizona Central zone (International feet)",9807,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +15306,"SPCS83 Arizona West zone (International feet)",9807,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,700000,9002,8807,0,9002,,,,,, +15307,"SPCS83 California zone 1 (US Survey feet)",9802,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15308,"SPCS83 California zone 2 (US Survey feet)",9802,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15309,"SPCS83 California zone 3 (US Survey feet)",9802,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15310,"SPCS83 California zone 4 (US Survey feet)",9802,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15311,"SPCS83 California zone 5 (US Survey feet)",9802,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15312,"SPCS83 California zone 6 (US Survey feet)",9802,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +15313,"SPCS83 Colorado North zone (US Survey feet)",9802,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,3000000,9003,8827,1000000,9003,,, +15314,"SPCS83 Colorado Central zone (US Survey feet)",9802,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,3000000,9003,8827,1000000,9003,,, +15315,"SPCS83 Colorado South zone (US Survey feet)",9802,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,3000000,9003,8827,1000000,9003,,, +15316,"SPCS83 Connecticut zone (US Survey feet)",9802,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,1000000,9003,8827,500000,9003,,, +15317,"SPCS83 Delaware zone (US Survey feet)",9807,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,656166.667,9003,8807,0,9003,,,,,, +15318,"SPCS83 Florida East zone (US Survey feet)",9807,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +15319,"SPCS83 Florida West zone (US Survey feet)",9807,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +15320,"SPCS83 Florida North zone (US Survey feet)",9802,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,1968500,9003,8827,0,9003,,, +15321,"SPCS83 Georgia East zone (US Survey feet)",9807,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,656166.667,9003,8807,0,9003,,,,,, +15322,"SPCS83 Georgia West zone (US Survey feet)",9807,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +15323,"SPCS83 Idaho East zone (US Survey feet)",9807,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,656166.667,9003,8807,0,9003,,,,,, +15324,"SPCS83 Idaho Central zone (US Survey feet)",9807,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +15325,"SPCS83 Idaho West zone (US Survey feet)",9807,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,2624666.667,9003,8807,0,9003,,,,,, +15326,"SPCS83 Indiana East zone (US Survey feet)",9807,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,818125,9003,,,,,, +15327,"SPCS83 Indiana West zone (US Survey feet)",9807,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,818125,9003,,,,,, +15328,"SPCS83 Kentucky North zone (US Survey feet)",9802,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,1640416.667,9003,8827,0,9003,,, +15329,"SPCS83 Kentucky South zone (US Survey feet)",9802,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,1640416.667,9003,8827,1640416.667,9003,,, +15330,"SPCS83 Maryland zone (US Survey feet)",9802,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,1312333.333,9003,8827,0,9003,,, +15331,"SPCS83 Massachusetts Mainland zone (US Survey feet)",9802,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,656166.667,9003,8827,2460625,9003,,, +15332,"SPCS83 Massachusetts Island zone (US Survey feet)",9802,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,1640416.667,9003,8827,0,9003,,, +15333,"SPCS83 Michigan North zone (International feet)",9802,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,26246719.16,9002,8827,0,9002,,, +15334,"SPCS83 Michigan Central zone (International feet)",9802,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,19685039.37,9002,8827,0,9002,,, +15335,"SPCS83 Michigan South zone (International feet)",9802,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,13123359.58,9002,8827,0,9002,,, +15336,"SPCS83 Mississippi East zone (US Survey feet)",9807,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,984250,9003,8807,0,9003,,,,,, +15337,"SPCS83 Mississippi West zone (US Survey feet)",9807,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +15338,"SPCS83 Montana zone (International feet)",9802,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,1968503.937,9002,8827,0,9002,,, +15339,"SPCS83 New Mexico East zone (US Survey feet)",9807,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,541337.5,9003,8807,0,9003,,,,,, +15340,"SPCS83 New Mexico Central zone (US Survey feet)",9807,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +15341,"SPCS83 New Mexico West zone (US Survey feet)",9807,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,2723091.667,9003,8807,0,9003,,,,,, +15342,"SPCS83 New York East zone (US Survey feet)",9807,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +15343,"SPCS83 New York Central zone (US Survey feet)",9807,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,820208.333,9003,8807,0,9003,,,,,, +15344,"SPCS83 New York West zone (US Survey feet)",9807,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,1148291.667,9003,8807,0,9003,,,,,, +15345,"SPCS83 New York Long Island zone (US Survey feet)",9802,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,984250,9003,8827,0,9003,,, +15346,"SPCS83 North Carolina zone (US Survey feet)",9802,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,2000000,9003,8827,0,9003,,, +15347,"SPCS83 North Dakota North zone (International feet)",9802,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,1968503.937,9002,8827,0,9002,,, +15348,"SPCS83 North Dakota South zone (International feet)",9802,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,1968503.937,9002,8827,0,9002,,, +15349,"SPCS83 Oklahoma North zone (US Survey feet)",9802,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,1968500,9003,8827,0,9003,,, +15350,"SPCS83 Oklahoma South zone (US Survey feet)",9802,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,1968500,9003,8827,0,9003,,, +15351,"SPCS83 Oregon North zone (International feet)",9802,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,8202099.738,9002,8827,0,9002,,, +15352,"SPCS83 Oregon South zone (International feet)",9802,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,4921259.843,9002,8827,0,9002,,, +15353,"SPCS83 Pennsylvania North zone (US Survey feet)",9802,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,1968500,9003,8827,0,9003,,, +15354,"SPCS83 Pennsylvania South zone (US Survey feet)",9802,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,1968500,9003,8827,0,9003,,, +15355,"SPCS83 South Carolina zone (International feet)",9802,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,2000000,9002,8827,0,9002,,, +15356,"SPCS83 Tennessee zone (US Survey feet)",9802,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,1968500,9003,8827,0,9003,,, +15357,"SPCS83 Texas North zone (US Survey feet)",9802,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,656166.667,9003,8827,3280833.333,9003,,, +15358,"SPCS83 Texas North Central zone (US Survey feet)",9802,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,1968500,9003,8827,6561666.667,9003,,, +15359,"SPCS83 Texas Central zone (US Survey feet)",9802,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,2296583.333,9003,8827,9842500,9003,,, +15360,"SPCS83 Texas South Central zone (US Survey feet)",9802,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,1968500,9003,8827,13123333.333,9003,,, +15361,"SPCS83 Texas South zone (US Survey feet)",9802,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,984250,9003,8827,16404166.667,9003,,, +15362,"SPCS83 Utah North zone (International feet)",9802,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640419.948,9002,8827,3280839.895,9002,,, +15363,"SPCS83 Utah Central zone (International feet)",9802,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640419.948,9002,8827,6561679.79,9002,,, +15364,"SPCS83 Utah South zone (International feet)",9802,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640419.948,9002,8827,9842519.685,9002,,, +15365,"SPCS83 Virginia North zone (US Survey feet)",9802,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,11482916.667,9003,8827,6561666.667,9003,,, +15366,"SPCS83 Virginia South zone (US Survey feet)",9802,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,11482916.667,9003,8827,3280833.333,9003,,, +15367,"SPCS83 Washington North zone (US Survey feet)",9802,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,1640416.667,9003,8827,0,9003,,, +15368,"SPCS83 Washington South zone (US Survey feet)",9802,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,1640416.667,9003,8827,0,9003,,, +15369,"SPCS83 Wisconsin North zone (US Survey feet)",9802,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,1968500,9003,8827,0,9003,,, +15370,"SPCS83 Wisconsin Central zone (US Survey feet)",9802,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,1968500,9003,8827,0,9003,,, +15371,"SPCS83 Wisconsin South zone (US Survey feet)",9802,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,1968500,9003,8827,0,9003,,, +15372,"SPCS83 Indiana East zone (US Survey feet)",9807,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,820208.333,9003,,,,,, +15373,"SPCS83 Indiana West zone (US Survey feet)",9807,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,820208.333,9003,,,,,, +15374,"Oregon GIC Lambert (International feet)",9802,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,1312335.958,9002,8827,0,9002,,, +15375,"SPCS83 Kentucky Single Zone (US Survey feet)",9802,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,4921250,9003,8827,3280833.333,9003,,, +15376,American Samoa Lambert,9801,8801,-14.16,9110,8802,-170,9110,8805,1,9201,8806,500000,9003,8807,312234.65,9003,,,,,, +15377,"SPCS83 Iowa North zone (US Survey feet)",9802,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,4921250,9003,8827,3280833.3333,9003,,, +15378,"SPCS83 Iowa South zone (US Survey feet)",9802,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,1640416.6667,9003,8827,0,9003,,, +15379,"SPCS83 Kansas North zone (US Survey feet)",9802,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,1312333.3333,9003,8827,0,9003,,, +15380,"SPCS83 Kansas South zone (US Survey feet)",9802,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +15381,"SPCS83 Nevada East zone (US Survey feet)",9807,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,656166.6667,9003,8807,26246666.6667,9003,,,,,, +15382,"SPCS83 Nevada Central zone (US Survey feet)",9807,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,1640416.6667,9003,8807,19685000,9003,,,,,, +15383,"SPCS83 Nevada West zone (US Survey feet)",9807,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,2624666.6667,9003,8807,13123333.3333,9003,,,,,, +15384,"SPCS83 New Jersey zone (US Survey feet)",9807,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +15385,"SPCS83 Arkansas North zone (US Survey feet)",9802,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,1312333.3333,9003,8827,0,9003,,, +15386,"SPCS83 Arkansas South zone (US Survey feet)",9802,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +15387,"SPCS83 Illinois East zone (US Survey feet)",9807,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,984250,9003,8807,0,9003,,,,,, +15388,"SPCS83 Illinois West zone (US Survey feet)",9807,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,2296583.3333,9003,8807,0,9003,,,,,, +15389,"SPCS83 New Hampshire zone (US Survey feet)",9807,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,984250,9003,8807,0,9003,,,,,, +15390,"SPCS83 Rhode Island zone (US Survey feet)",9807,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,328083.3333,9003,8807,0,9003,,,,,, +15391,"SPCS83 Louisiana North zone (US Survey feet)",9802,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +15392,"SPCS83 Louisiana South zone (US Survey feet)",9802,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,3280833.3333,9003,8827,0,9003,,, +15393,"SPCS83 Louisiana Offshore zone (US Survey feet)",9802,8821,25.3,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +15394,"SPCS83 South Dakota North zone (US Survey feet)",9802,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,1968500,9003,8827,0,9003,,, +15395,"SPCS83 South Dakota South zone (US Survey feet)",9802,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,1968500,9003,8827,0,9003,,, +15396,"SPCS83 Nebraska zone (US Survey feet)",9802,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +15397,Great Lakes Albers,9822,8821,45.568977,9102,8822,-84.455955,9102,8823,42.122774,9102,8824,49.01518,9102,8826,1000000,9001,8827,1000000,9001,,, +15398,Great Lakes and St Lawrence Albers,9822,8821,45.568977,9102,8822,-83.248627,9102,8823,42.122774,9102,8824,49.01518,9102,8826,1000000,9001,8827,1000000,9001,,, +15399,Yap Islands,9832,8801,9.324815,9110,8802,138.100748,9110,8806,40000,9001,8807,60000,9001,,,,,,,,, +15400,Guam SPCS,9831,8801,13.282087887,9110,8802,144.445550254,9110,8806,50000,9001,8807,50000,9001,,,,,,,,, +15498,Geographic 2D axis order reversal,9843,,,,,,,,,,,,,,,,,,,,, +15499,Geographic 3D horizontal axis order reversal,9844,,,,,,,,,,,,,,,,,,,,, +15500,Australian Antarctic geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15501,Australian Antarctic geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15502,CHTRF95 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15503,CHTRF95 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15504,EST97 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15505,EST97 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15506,ETRS89 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15507,ETRS89 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15508,GDA94 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15509,GDA94 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15510,Hartebeesthoek94 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15511,Hartebeesthoek94 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15512,IRENET95 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15513,IRENET95 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15514,ISN93 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15515,ISN93 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15516,JGD2000 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15517,JGD2000 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15518,LKS92 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15519,LKS92 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15520,LKS94 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15521,LKS94 geocentric to geog3D,9659,,,,,,,,,,,,,,,,,,,,, +15522,Moznet geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15523,Moznet geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15524,"NAD83(CSRS) geocentric to geog3D",9602,,,,,,,,,,,,,,,,,,,,, +15525,"NAD83(CSRS) geog3D to geog2D",9659,,,,,,,,,,,,,,,,,,,,, +15526,"NAD83(HARN) geocentric to geog3D",9602,,,,,,,,,,,,,,,,,,,,, +15527,"NAD83(HARN) geog3D to geog2D",9659,,,,,,,,,,,,,,,,,,,,, +15528,NZGD2000 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15529,NZGD2000 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15530,POSGAR 98 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15531,POSGAR 98 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15532,REGVEN geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15533,REGVEN geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15534,RGF93 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15535,RGF93 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15536,RGFG95 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15537,RGFG95 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15538,RGNC91-93 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15539,RGNC91-93 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15540,RGR92 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15541,RGR92 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15542,RRAF 1991 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15543,RRAF 1991 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15544,SIRGAS geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15545,SIRGAS geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15546,SWEREF99 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15547,SWEREF99 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15548,WGS 84 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15549,WGS 84 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15550,Yemen NGN96 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15551,Yemen NGN96 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15552,IGM95 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15553,IGM95 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15554,WGS 72 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15555,WGS 72 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15556,WGS 72BE geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15557,WGS 72BE geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15558,SIRGAS 2000 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15559,SIRGAS 2000 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15560,Lao 1993 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15561,Lao 1993 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15562,Lao 1997 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15563,Lao 1997 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15564,PRS92 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15565,PRS92 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15566,MAGNA-SIRGAS geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15567,MAGNA-SIRGAS geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15568,RGPF geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15569,RGPF geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15570,POSGAR 94 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15571,POSGAR 94 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15572,Korean 2000 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15573,Korean 2000 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15574,Mauritania 1999 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15575,Mauritania 1999 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15576,PZ-90 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15577,PZ-90 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15578,GDM2000 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15579,GDM2000 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15580,GR96 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15581,GR96 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15582,LGD2006 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15583,LGD2006 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15584,DGN95 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15585,DGN95 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15586,JAD2001 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15587,JAD2001 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15588,"NAD83(NSRS2007) geocentric to geog3D",9602,,,,,,,,,,,,,,,,,,,,, +15589,"NAD83(NSRS2007) geog3D to geog2D",9659,,,,,,,,,,,,,,,,,,,,, +15590,WGS 66 geocentric to geog3D,9602,,,,,,,,,,,,,,,,,,,,, +15591,WGS 66 geog3D to geog2D,9659,,,,,,,,,,,,,,,,,,,,, +15592,geocentric to geographic3D,9602,,,,,,,,,,,,,,,,,,,,, +15593,geographic3D to geographic2D,9659,,,,,,,,,,,,,,,,,,,,, +15594,EPSG topocentric example A,9837,8834,55,9102,8835,5,9102,8836,0,9001,,,,,,,,,,,, +15595,EPSG topocentric example B,9836,8837,3771793.97,9001,8838,140253.34,9001,8839,5124304.35,9001,,,,,,,,,,,, +15914,"BLM zone 14N (US survey feet)",9807,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +15915,"BLM zone 15N (US survey feet)",9807,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +15916,"BLM zone 16N (US survey feet)",9807,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +15917,"BLM zone 17N (US survey feet)",9807,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +16000,"UTM grid system (northern hemisphere)",9824,8801,0,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,8830,-180,9102,8831,6,9102,,, +16001,UTM zone 1N,9807,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16002,UTM zone 2N,9807,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16003,UTM zone 3N,9807,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16004,UTM zone 4N,9807,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16005,UTM zone 5N,9807,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16006,UTM zone 6N,9807,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16007,UTM zone 7N,9807,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16008,UTM zone 8N,9807,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16009,UTM zone 9N,9807,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16010,UTM zone 10N,9807,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16011,UTM zone 11N,9807,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16012,UTM zone 12N,9807,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16013,UTM zone 13N,9807,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16014,UTM zone 14N,9807,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16015,UTM zone 15N,9807,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16016,UTM zone 16N,9807,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16017,UTM zone 17N,9807,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16018,UTM zone 18N,9807,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16019,UTM zone 19N,9807,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16020,UTM zone 20N,9807,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16021,UTM zone 21N,9807,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16022,UTM zone 22N,9807,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16023,UTM zone 23N,9807,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16024,UTM zone 24N,9807,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16025,UTM zone 25N,9807,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16026,UTM zone 26N,9807,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16027,UTM zone 27N,9807,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16028,UTM zone 28N,9807,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16029,UTM zone 29N,9807,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16030,UTM zone 30N,9807,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16031,UTM zone 31N,9807,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16032,UTM zone 32N,9807,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16033,UTM zone 33N,9807,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16034,UTM zone 34N,9807,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16035,UTM zone 35N,9807,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16036,UTM zone 36N,9807,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16037,UTM zone 37N,9807,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16038,UTM zone 38N,9807,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16039,UTM zone 39N,9807,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16040,UTM zone 40N,9807,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16041,UTM zone 41N,9807,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16042,UTM zone 42N,9807,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16043,UTM zone 43N,9807,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16044,UTM zone 44N,9807,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16045,UTM zone 45N,9807,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16046,UTM zone 46N,9807,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16047,UTM zone 47N,9807,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16048,UTM zone 48N,9807,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16049,UTM zone 49N,9807,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16050,UTM zone 50N,9807,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16051,UTM zone 51N,9807,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16052,UTM zone 52N,9807,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16053,UTM zone 53N,9807,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16054,UTM zone 54N,9807,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16055,UTM zone 55N,9807,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16056,UTM zone 56N,9807,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16057,UTM zone 57N,9807,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16058,UTM zone 58N,9807,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16059,UTM zone 59N,9807,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16060,UTM zone 60N,9807,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16061,Universal Polar Stereographic North,9810,8801,90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +16065,TM35FIN,9807,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16070,3-degree Gauss-Kruger zone 40,9807,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +16071,3-degree Gauss-Kruger zone 41,9807,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +16072,3-degree Gauss-Kruger zone 42,9807,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +16073,3-degree Gauss-Kruger zone 43,9807,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +16074,3-degree Gauss-Kruger zone 44,9807,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +16075,3-degree Gauss-Kruger zone 45,9807,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +16076,3-degree Gauss-Kruger zone 46,9807,8801,0,9102,8802,138,9102,8805,1,9201,8806,46500000,9001,8807,0,9001,,,,,, +16077,3-degree Gauss-Kruger zone 47,9807,8801,0,9102,8802,141,9102,8805,1,9201,8806,47500000,9001,8807,0,9001,,,,,, +16078,3-degree Gauss-Kruger zone 48,9807,8801,0,9102,8802,144,9102,8805,1,9201,8806,48500000,9001,8807,0,9001,,,,,, +16079,3-degree Gauss-Kruger zone 49,9807,8801,0,9102,8802,147,9102,8805,1,9201,8806,49500000,9001,8807,0,9001,,,,,, +16080,3-degree Gauss-Kruger zone 50,9807,8801,0,9102,8802,150,9102,8805,1,9201,8806,50500000,9001,8807,0,9001,,,,,, +16081,3-degree Gauss-Kruger zone 51,9807,8801,0,9102,8802,153,9102,8805,1,9201,8806,51500000,9001,8807,0,9001,,,,,, +16082,3-degree Gauss-Kruger zone 52,9807,8801,0,9102,8802,156,9102,8805,1,9201,8806,52500000,9001,8807,0,9001,,,,,, +16083,3-degree Gauss-Kruger zone 53,9807,8801,0,9102,8802,159,9102,8805,1,9201,8806,53500000,9001,8807,0,9001,,,,,, +16084,3-degree Gauss-Kruger zone 54,9807,8801,0,9102,8802,162,9102,8805,1,9201,8806,54500000,9001,8807,0,9001,,,,,, +16085,3-degree Gauss-Kruger zone 55,9807,8801,0,9102,8802,165,9102,8805,1,9201,8806,55500000,9001,8807,0,9001,,,,,, +16086,3-degree Gauss-Kruger zone 56,9807,8801,0,9102,8802,168,9102,8805,1,9201,8806,56500000,9001,8807,0,9001,,,,,, +16087,3-degree Gauss-Kruger zone 57,9807,8801,0,9102,8802,171,9102,8805,1,9201,8806,57500000,9001,8807,0,9001,,,,,, +16088,3-degree Gauss-Kruger zone 58,9807,8801,0,9102,8802,174,9102,8805,1,9201,8806,58500000,9001,8807,0,9001,,,,,, +16089,3-degree Gauss-Kruger zone 59,9807,8801,0,9102,8802,177,9102,8805,1,9201,8806,59500000,9001,8807,0,9001,,,,,, +16090,3-degree Gauss-Kruger zone 60,9807,8801,0,9102,8802,180,9102,8805,1,9201,8806,60000000,9001,8807,0,9001,,,,,, +16091,3-degree Gauss-Kruger zone 61,9807,8801,0,9102,8802,-177,9102,8805,1,9201,8806,61500000,9001,8807,0,9001,,,,,, +16092,3-degree Gauss-Kruger zone 62,9807,8801,0,9102,8802,-174,9102,8805,1,9201,8806,62500000,9001,8807,0,9001,,,,,, +16093,3-degree Gauss-Kruger zone 63,9807,8801,0,9102,8802,-171,9102,8805,1,9201,8806,63500000,9001,8807,0,9001,,,,,, +16094,3-degree Gauss-Kruger zone 64,9807,8801,0,9102,8802,-168,9102,8805,1,9201,8806,64500000,9001,8807,0,9001,,,,,, +16099,3-degree Gauss-Kruger zone 60,9807,8801,0,9102,8802,180,9102,8805,1,9201,8806,60500000,9001,8807,0,9001,,,,,, +16100,"UTM grid system (southern hemisphere)",9824,8801,0,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,8830,-180,9102,8831,6,9102,,, +16101,UTM zone 1S,9807,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16102,UTM zone 2S,9807,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16103,UTM zone 3S,9807,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16104,UTM zone 4S,9807,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16105,UTM zone 5S,9807,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16106,UTM zone 6S,9807,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16107,UTM zone 7S,9807,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16108,UTM zone 8S,9807,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16109,UTM zone 9S,9807,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16110,UTM zone 10S,9807,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16111,UTM zone 11S,9807,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16112,UTM zone 12S,9807,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16113,UTM zone 13S,9807,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16114,UTM zone 14S,9807,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16115,UTM zone 15S,9807,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16116,UTM zone 16S,9807,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16117,UTM zone 17S,9807,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16118,UTM zone 18S,9807,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16119,UTM zone 19S,9807,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16120,UTM zone 20S,9807,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16121,UTM zone 21S,9807,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16122,UTM zone 22S,9807,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16123,UTM zone 23S,9807,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16124,UTM zone 24S,9807,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16125,UTM zone 25S,9807,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16126,UTM zone 26S,9807,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16127,UTM zone 27S,9807,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16128,UTM zone 28S,9807,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16129,UTM zone 29S,9807,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16130,UTM zone 30S,9807,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16131,UTM zone 31S,9807,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16132,UTM zone 32S,9807,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16133,UTM zone 33S,9807,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16134,UTM zone 34S,9807,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16135,UTM zone 35S,9807,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16136,UTM zone 36S,9807,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16137,UTM zone 37S,9807,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16138,UTM zone 38S,9807,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16139,UTM zone 39S,9807,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16140,UTM zone 40S,9807,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16141,UTM zone 41S,9807,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16142,UTM zone 42S,9807,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16143,UTM zone 43S,9807,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16144,UTM zone 44S,9807,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16145,UTM zone 45S,9807,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16146,UTM zone 46S,9807,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16147,UTM zone 47S,9807,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16148,UTM zone 48S,9807,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16149,UTM zone 49S,9807,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16150,UTM zone 50S,9807,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16151,UTM zone 51S,9807,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16152,UTM zone 52S,9807,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16153,UTM zone 53S,9807,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16154,UTM zone 54S,9807,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16155,UTM zone 55S,9807,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16156,UTM zone 56S,9807,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16157,UTM zone 57S,9807,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16158,UTM zone 58S,9807,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16159,UTM zone 59S,9807,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16160,UTM zone 60S,9807,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16161,Universal Polar Stereographic South,9810,8801,-90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +16170,3-degree Gauss-Kruger CM 120E,9807,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16171,3-degree Gauss-Kruger CM 123E,9807,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16172,3-degree Gauss-Kruger CM 126E,9807,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16173,3-degree Gauss-Kruger CM 129E,9807,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16174,3-degree Gauss-Kruger CM 132E,9807,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16175,3-degree Gauss-Kruger CM 135E,9807,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16176,3-degree Gauss-Kruger CM 138E,9807,8801,0,9102,8802,138,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16177,3-degree Gauss-Kruger CM 141E,9807,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16178,3-degree Gauss-Kruger CM 144E,9807,8801,0,9102,8802,144,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16179,3-degree Gauss-Kruger CM 147E,9807,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16180,3-degree Gauss-Kruger CM 150E,9807,8801,0,9102,8802,150,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16181,3-degree Gauss-Kruger CM 153E,9807,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16182,3-degree Gauss-Kruger CM 156E,9807,8801,0,9102,8802,156,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16183,3-degree Gauss-Kruger CM 159E,9807,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16184,3-degree Gauss-Kruger CM 162E,9807,8801,0,9102,8802,162,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16185,3-degree Gauss-Kruger CM 165E,9807,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16186,3-degree Gauss-Kruger CM 168E,9807,8801,0,9102,8802,168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16187,3-degree Gauss-Kruger CM 171E,9807,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16188,3-degree Gauss-Kruger CM 174E,9807,8801,0,9102,8802,174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16189,3-degree Gauss-Kruger CM 177E,9807,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16190,3-degree Gauss-Kruger CM 180,9807,8801,0,9102,8802,180,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16191,3-degree Gauss-Kruger CM 177W,9807,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16192,3-degree Gauss-Kruger CM 174W,9807,8801,0,9102,8802,-174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16193,3-degree Gauss-Kruger CM 171W,9807,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16194,3-degree Gauss-Kruger CM 168W,9807,8801,0,9102,8802,-168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16201,6-degree Gauss-Kruger zone 1,9807,8801,0,9102,8802,3,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +16202,6-degree Gauss-Kruger zone 2,9807,8801,0,9102,8802,9,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +16203,6-degree Gauss-Kruger zone 3,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +16204,6-degree Gauss-Kruger zone 4,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +16205,6-degree Gauss-Kruger zone 5,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +16206,6-degree Gauss-Kruger zone 6,9807,8801,0,9102,8802,33,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +16207,6-degree Gauss-Kruger zone 7,9807,8801,0,9102,8802,39,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +16208,6-degree Gauss-Kruger zone 8,9807,8801,0,9102,8802,45,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +16209,6-degree Gauss-Kruger zone 9,9807,8801,0,9102,8802,51,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +16210,6-degree Gauss-Kruger zone 10,9807,8801,0,9102,8802,57,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +16211,6-degree Gauss-Kruger zone 11,9807,8801,0,9102,8802,63,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +16212,6-degree Gauss-Kruger zone 12,9807,8801,0,9102,8802,69,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +16213,6-degree Gauss-Kruger zone 13,9807,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +16214,6-degree Gauss-Kruger zone 14,9807,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +16215,6-degree Gauss-Kruger zone 15,9807,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +16216,6-degree Gauss-Kruger zone 16,9807,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +16217,6-degree Gauss-Kruger zone 17,9807,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +16218,6-degree Gauss-Kruger zone 18,9807,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +16219,6-degree Gauss-Kruger zone 19,9807,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +16220,6-degree Gauss-Kruger zone 20,9807,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +16221,6-degree Gauss-Kruger zone 21,9807,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +16222,6-degree Gauss-Kruger zone 22,9807,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +16223,6-degree Gauss-Kruger zone 23,9807,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +16224,6-degree Gauss-Kruger zone 24,9807,8801,0,9102,8802,141,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +16225,6-degree Gauss-Kruger zone 25,9807,8801,0,9102,8802,147,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +16226,6-degree Gauss-Kruger zone 26,9807,8801,0,9102,8802,153,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +16227,6-degree Gauss-Kruger zone 27,9807,8801,0,9102,8802,159,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +16228,6-degree Gauss-Kruger zone 28,9807,8801,0,9102,8802,165,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +16229,6-degree Gauss-Kruger zone 29,9807,8801,0,9102,8802,171,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +16230,6-degree Gauss-Kruger zone 30,9807,8801,0,9102,8802,177,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +16231,6-degree Gauss-Kruger zone 31,9807,8801,0,9102,8802,-177,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +16232,6-degree Gauss-Kruger zone 32,9807,8801,0,9102,8802,-171,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +16233,6-degree Gauss-Kruger zone 33,9807,8801,0,9102,8802,-165,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +16234,6-degree Gauss-Kruger zone 34,9807,8801,0,9102,8802,-159,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +16235,6-degree Gauss-Kruger zone 35,9807,8801,0,9102,8802,-153,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +16236,6-degree Gauss-Kruger zone 36,9807,8801,0,9102,8802,-147,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +16237,6-degree Gauss-Kruger zone 37,9807,8801,0,9102,8802,-141,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +16238,6-degree Gauss-Kruger zone 38,9807,8801,0,9102,8802,-135,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +16239,6-degree Gauss-Kruger zone 39,9807,8801,0,9102,8802,-129,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +16240,6-degree Gauss-Kruger zone 40,9807,8801,0,9102,8802,-123,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +16241,6-degree Gauss-Kruger zone 41,9807,8801,0,9102,8802,-117,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +16242,6-degree Gauss-Kruger zone 42,9807,8801,0,9102,8802,-111,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +16243,6-degree Gauss-Kruger zone 43,9807,8801,0,9102,8802,-105,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +16244,6-degree Gauss-Kruger zone 44,9807,8801,0,9102,8802,-99,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +16245,6-degree Gauss-Kruger zone 45,9807,8801,0,9102,8802,-93,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +16246,6-degree Gauss-Kruger zone 46,9807,8801,0,9102,8802,-87,9102,8805,1,9201,8806,46500000,9001,8807,0,9001,,,,,, +16247,6-degree Gauss-Kruger zone 47,9807,8801,0,9102,8802,-81,9102,8805,1,9201,8806,47500000,9001,8807,0,9001,,,,,, +16248,6-degree Gauss-Kruger zone 48,9807,8801,0,9102,8802,-75,9102,8805,1,9201,8806,48500000,9001,8807,0,9001,,,,,, +16249,6-degree Gauss-Kruger zone 49,9807,8801,0,9102,8802,-69,9102,8805,1,9201,8806,49500000,9001,8807,0,9001,,,,,, +16250,6-degree Gauss-Kruger zone 50,9807,8801,0,9102,8802,-63,9102,8805,1,9201,8806,50500000,9001,8807,0,9001,,,,,, +16251,6-degree Gauss-Kruger zone 51,9807,8801,0,9102,8802,-57,9102,8805,1,9201,8806,51500000,9001,8807,0,9001,,,,,, +16252,6-degree Gauss-Kruger zone 52,9807,8801,0,9102,8802,-51,9102,8805,1,9201,8806,52500000,9001,8807,0,9001,,,,,, +16253,6-degree Gauss-Kruger zone 53,9807,8801,0,9102,8802,-45,9102,8805,1,9201,8806,53500000,9001,8807,0,9001,,,,,, +16254,6-degree Gauss-Kruger zone 54,9807,8801,0,9102,8802,-39,9102,8805,1,9201,8806,54500000,9001,8807,0,9001,,,,,, +16255,6-degree Gauss-Kruger zone 55,9807,8801,0,9102,8802,-33,9102,8805,1,9201,8806,55500000,9001,8807,0,9001,,,,,, +16256,6-degree Gauss-Kruger zone 56,9807,8801,0,9102,8802,-27,9102,8805,1,9201,8806,56500000,9001,8807,0,9001,,,,,, +16257,6-degree Gauss-Kruger zone 57,9807,8801,0,9102,8802,-21,9102,8805,1,9201,8806,57500000,9001,8807,0,9001,,,,,, +16258,6-degree Gauss-Kruger zone 58,9807,8801,0,9102,8802,-15,9102,8805,1,9201,8806,58500000,9001,8807,0,9001,,,,,, +16259,6-degree Gauss-Kruger zone 59,9807,8801,0,9102,8802,-9,9102,8805,1,9201,8806,59500000,9001,8807,0,9001,,,,,, +16260,6-degree Gauss-Kruger zone 60,9807,8801,0,9102,8802,-3,9102,8805,1,9201,8806,60500000,9001,8807,0,9001,,,,,, +16261,3-degree Gauss-Kruger zone 1,9807,8801,0,9102,8802,3,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +16262,3-degree Gauss-Kruger zone 2,9807,8801,0,9102,8802,6,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +16263,3-degree Gauss-Kruger zone 3,9807,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +16264,3-degree Gauss-Kruger zone 4,9807,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +16265,3-degree Gauss-Kruger zone 5,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +16266,3-degree Gauss-Kruger zone 6,9807,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +16267,3-degree Gauss-Kruger zone 7,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +16268,3-degree Gauss-Kruger zone 8,9807,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +16269,3-degree Gauss-Kruger zone 9,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +16270,3-degree Gauss-Kruger zone 10,9807,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +16271,3-degree Gauss-Kruger zone 11,9807,8801,0,9102,8802,33,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +16272,3-degree Gauss-Kruger zone 12,9807,8801,0,9102,8802,36,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +16273,3-degree Gauss-Kruger zone 13,9807,8801,0,9102,8802,39,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +16274,3-degree Gauss-Kruger zone 14,9807,8801,0,9102,8802,42,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +16275,3-degree Gauss-Kruger zone 15,9807,8801,0,9102,8802,45,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +16276,3-degree Gauss-Kruger zone 16,9807,8801,0,9102,8802,48,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +16277,3-degree Gauss-Kruger zone 17,9807,8801,0,9102,8802,51,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +16278,3-degree Gauss-Kruger zone 18,9807,8801,0,9102,8802,54,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +16279,3-degree Gauss-Kruger zone 19,9807,8801,0,9102,8802,57,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +16280,3-degree Gauss-Kruger zone 20,9807,8801,0,9102,8802,60,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +16281,3-degree Gauss-Kruger zone 21,9807,8801,0,9102,8802,63,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +16282,3-degree Gauss-Kruger zone 22,9807,8801,0,9102,8802,66,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +16283,3-degree Gauss-Kruger zone 23,9807,8801,0,9102,8802,69,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +16284,3-degree Gauss-Kruger zone 24,9807,8801,0,9102,8802,72,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +16285,3-degree Gauss-Kruger zone 25,9807,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +16286,3-degree Gauss-Kruger zone 26,9807,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +16287,3-degree Gauss-Kruger zone 27,9807,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +16288,3-degree Gauss-Kruger zone 28,9807,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +16289,3-degree Gauss-Kruger zone 29,9807,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +16290,3-degree Gauss-Kruger zone 30,9807,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +16291,3-degree Gauss-Kruger zone 31,9807,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +16292,3-degree Gauss-Kruger zone 32,9807,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +16293,3-degree Gauss-Kruger zone 33,9807,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +16294,3-degree Gauss-Kruger zone 34,9807,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +16295,3-degree Gauss-Kruger zone 35,9807,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +16296,3-degree Gauss-Kruger zone 36,9807,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +16297,3-degree Gauss-Kruger zone 37,9807,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +16298,3-degree Gauss-Kruger zone 38,9807,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +16299,3-degree Gauss-Kruger zone 39,9807,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +16301,Gauss-Kruger CM 3E,9807,8801,0,9102,8802,3,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16302,Gauss-Kruger CM 9E,9807,8801,0,9102,8802,9,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16303,Gauss-Kruger CM 15E,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16304,Gauss-Kruger CM 21E,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16305,Gauss-Kruger CM 27E,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16306,Gauss-Kruger CM 33E,9807,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16307,Gauss-Kruger CM 39E,9807,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16308,Gauss-Kruger CM 45E,9807,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16309,Gauss-Kruger CM 51E,9807,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16310,Gauss-Kruger CM 57E,9807,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16311,Gauss-Kruger CM 63E,9807,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16312,Gauss-Kruger CM 69E,9807,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16313,Gauss-Kruger CM 75E,9807,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16314,Gauss-Kruger CM 81E,9807,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16315,Gauss-Kruger CM 87E,9807,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16316,Gauss-Kruger CM 93E,9807,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16317,Gauss-Kruger CM 99E,9807,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16318,Gauss-Kruger CM 105E,9807,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16319,Gauss-Kruger CM 111E,9807,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16320,Gauss-Kruger CM 117E,9807,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16321,Gauss-Kruger CM 123E,9807,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16322,Gauss-Kruger CM 129E,9807,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16323,Gauss-Kruger CM 135E,9807,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16324,Gauss-Kruger CM 141E,9807,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16325,Gauss-Kruger CM 147E,9807,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16326,Gauss-Kruger CM 153E,9807,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16327,Gauss-Kruger CM 159E,9807,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16328,Gauss-Kruger CM 165E,9807,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16329,Gauss-Kruger CM 171E,9807,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16330,Gauss-Kruger CM 177E,9807,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16331,Gauss-Kruger CM 177W,9807,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16332,Gauss-Kruger CM 171W,9807,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16333,Gauss-Kruger CM 165W,9807,8801,0,9102,8802,-165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16334,Gauss-Kruger CM 159W,9807,8801,0,9102,8802,-159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16335,Gauss-Kruger CM 153W,9807,8801,0,9102,8802,-153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16336,Gauss-Kruger CM 147W,9807,8801,0,9102,8802,-147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16337,Gauss-Kruger CM 141W,9807,8801,0,9102,8802,-141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16338,Gauss-Kruger CM 135W,9807,8801,0,9102,8802,-135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16339,Gauss-Kruger CM 129W,9807,8801,0,9102,8802,-129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16340,Gauss-Kruger CM 123W,9807,8801,0,9102,8802,-123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16341,Gauss-Kruger CM 117W,9807,8801,0,9102,8802,-117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16342,Gauss-Kruger CM 111W,9807,8801,0,9102,8802,-111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16343,Gauss-Kruger CM 105W,9807,8801,0,9102,8802,-105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16344,Gauss-Kruger CM 99W,9807,8801,0,9102,8802,-99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16345,Gauss-Kruger CM 93W,9807,8801,0,9102,8802,-93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16346,Gauss-Kruger CM 87W,9807,8801,0,9102,8802,-87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16347,Gauss-Kruger CM 81W,9807,8801,0,9102,8802,-81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16348,Gauss-Kruger CM 75W,9807,8801,0,9102,8802,-75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16349,Gauss-Kruger CM 69W,9807,8801,0,9102,8802,-69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16350,Gauss-Kruger CM 63W,9807,8801,0,9102,8802,-63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16351,Gauss-Kruger CM 57W,9807,8801,0,9102,8802,-57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16352,Gauss-Kruger CM 51W,9807,8801,0,9102,8802,-51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16353,Gauss-Kruger CM 45W,9807,8801,0,9102,8802,-45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16354,Gauss-Kruger CM 39W,9807,8801,0,9102,8802,-39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16355,Gauss-Kruger CM 33W,9807,8801,0,9102,8802,-33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16356,Gauss-Kruger CM 27W,9807,8801,0,9102,8802,-27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16357,Gauss-Kruger CM 21W,9807,8801,0,9102,8802,-21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16358,Gauss-Kruger CM 15W,9807,8801,0,9102,8802,-15,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16359,Gauss-Kruger CM 9W,9807,8801,0,9102,8802,-9,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16360,Gauss-Kruger CM 3W,9807,8801,0,9102,8802,-3,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16361,3-degree Gauss-Kruger CM 3E,9807,8801,0,9102,8802,3,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16362,3-degree Gauss-Kruger CM 6E,9807,8801,0,9102,8802,6,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16363,3-degree Gauss-Kruger CM 9E,9807,8801,0,9102,8802,9,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16364,3-degree Gauss-Kruger CM 12E,9807,8801,0,9102,8802,12,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16365,3-degree Gauss-Kruger CM 15E,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16366,3-degree Gauss-Kruger CM 18E,9807,8801,0,9102,8802,18,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16367,3-degree Gauss-Kruger CM 21E,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16368,3-degree Gauss-Kruger CM 24E,9807,8801,0,9102,8802,24,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16369,3-degree Gauss-Kruger CM 27E,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16370,3-degree Gauss-Kruger CM 30E,9807,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16371,3-degree Gauss-Kruger CM 33E,9807,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16372,3-degree Gauss-Kruger CM 36E,9807,8801,0,9102,8802,36,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16373,3-degree Gauss-Kruger CM 39E,9807,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16374,3-degree Gauss-Kruger CM 42E,9807,8801,0,9102,8802,42,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16375,3-degree Gauss-Kruger CM 45E,9807,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16376,3-degree Gauss-Kruger CM 48E,9807,8801,0,9102,8802,48,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16377,3-degree Gauss-Kruger CM 51E,9807,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16378,3-degree Gauss-Kruger CM 54E,9807,8801,0,9102,8802,54,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16379,3-degree Gauss-Kruger CM 57E,9807,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16380,3-degree Gauss-Kruger CM 60E,9807,8801,0,9102,8802,60,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16381,3-degree Gauss-Kruger CM 63E,9807,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16382,3-degree Gauss-Kruger CM 66E,9807,8801,0,9102,8802,66,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16383,3-degree Gauss-Kruger CM 69E,9807,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16384,3-degree Gauss-Kruger CM 72E,9807,8801,0,9102,8802,72,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16385,3-degree Gauss-Kruger CM 75E,9807,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16386,3-degree Gauss-Kruger CM 78E,9807,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16387,3-degree Gauss-Kruger CM 81E,9807,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16388,3-degree Gauss-Kruger CM 84E,9807,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16389,3-degree Gauss-Kruger CM 87E,9807,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16390,3-degree Gauss-Kruger CM 90E,9807,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16391,3-degree Gauss-Kruger CM 93E,9807,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16392,3-degree Gauss-Kruger CM 96E,9807,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16393,3-degree Gauss-Kruger CM 99E,9807,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16394,3-degree Gauss-Kruger CM 102E,9807,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16395,3-degree Gauss-Kruger CM 105E,9807,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16396,3-degree Gauss-Kruger CM 108E,9807,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16397,3-degree Gauss-Kruger CM 111E,9807,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16398,3-degree Gauss-Kruger CM 114E,9807,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16399,3-degree Gauss-Kruger CM 117E,9807,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16400,TM 0 N,9807,8801,0,9102,8802,0,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16405,TM 5 NE,9807,8801,0,9102,8802,5,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16406,TM 6 NE,9807,8801,0,9102,8802,6,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16411,TM 11 NE,9807,8801,0,9102,8802,11,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16412,TM 12 NE,9807,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16413,TM 13 NE,9807,8801,0,9102,8802,13,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16430,TM 30 NE,9807,8801,0,9102,8802,30,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16490,Bangladesh Transverse Mercator,9807,8801,0,9102,8802,90,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16506,TM 106 NE,9807,8801,0,9102,8802,106,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +16586,GK 106 NE,9807,8801,0,9102,8802,106,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +16611,TM 11.30 SE,9807,8801,0,9110,8802,11.3,9110,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16612,TM 12 SE,9807,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16636,TM 36 SE,9807,8801,0,9102,8802,36,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16709,TM 109 SE,9807,8801,0,9102,8802,109,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16716,TM 116 SE,9807,8801,0,9102,8802,116,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +16732,TM 132 SE,9807,8801,0,9102,8802,132,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17001,TM 1 NW,9807,8801,0,9102,8802,-1,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +17005,TM 5 NW,9807,8801,0,9102,8802,-5,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +17054,TM 54 NW,9807,8801,0,9102,8802,-54,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +17204,SCAR IMW SP19-20,9802,8821,-90,9102,8822,-66,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +17205,SCAR IMW SP21-22,9802,8821,-90,9102,8822,-54,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +17206,SCAR IMW SP23-24,9802,8821,-90,9102,8822,-42,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +17207,SCAR IMW SQ01-02,9802,8821,-90,9102,8822,-174,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17208,SCAR IMW SQ19-20,9802,8821,-90,9102,8822,-66,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17209,SCAR IMW SQ21-22,9802,8821,-90,9102,8822,-54,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17210,SCAR IMW SQ37-38,9802,8821,-90,9102,8822,42,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17211,SCAR IMW SQ39-40,9802,8821,-90,9102,8822,54,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17212,SCAR IMW SQ41-42,9802,8821,-90,9102,8822,66,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17213,SCAR IMW SQ43-44,9802,8821,-90,9102,8822,78,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17214,SCAR IMW SQ45-46,9802,8821,-90,9102,8822,90,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17215,SCAR IMW SQ47-48,9802,8821,-90,9102,8822,102,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17216,SCAR IMW SQ49-50,9802,8821,-90,9102,8822,114,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17217,SCAR IMW SQ51-52,9802,8821,-90,9102,8822,126,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17218,SCAR IMW SQ53-54,9802,8821,-90,9102,8822,138,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17219,SCAR IMW SQ55-56,9802,8821,-90,9102,8822,150,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17220,SCAR IMW SQ57-58,9802,8821,-90,9102,8822,162,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +17221,SCAR IMW SR13-14,9802,8821,-90,9102,8822,-102,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17222,SCAR IMW SR15-16,9802,8821,-90,9102,8822,-90,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17223,SCAR IMW SR17-18,9802,8821,-90,9102,8822,-78,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17224,SCAR IMW SR19-20,9802,8821,-90,9102,8822,-66,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17225,SCAR IMW SR27-28,9802,8821,-90,9102,8822,-18,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17226,SCAR IMW SR29-30,9802,8821,-90,9102,8822,-6,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17227,SCAR IMW SR31-32,9802,8821,-90,9102,8822,6,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17228,SCAR IMW SR33-34,9802,8821,-90,9102,8822,18,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17229,SCAR IMW SR35-36,9802,8821,-90,9102,8822,30,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17230,SCAR IMW SR37-38,9802,8821,-90,9102,8822,42,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17231,SCAR IMW SR39-40,9802,8821,-90,9102,8822,54,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17232,SCAR IMW SR41-42,9802,8821,-90,9102,8822,66,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17233,SCAR IMW SR43-44,9802,8821,-90,9102,8822,78,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17234,SCAR IMW SR45-46,9802,8821,-90,9102,8822,90,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17235,SCAR IMW SR47-48,9802,8821,-90,9102,8822,102,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17236,SCAR IMW SR49-50,9802,8821,-90,9102,8822,114,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17237,SCAR IMW SR51-52,9802,8821,-90,9102,8822,126,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17238,SCAR IMW SR53-54,9802,8821,-90,9102,8822,138,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17239,SCAR IMW SR55-56,9802,8821,-90,9102,8822,150,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17240,SCAR IMW SR57-58,9802,8821,-90,9102,8822,162,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17241,SCAR IMW SR59-60,9802,8821,-90,9102,8822,174,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +17242,SCAR IMW SS04-06,9802,8821,-90,9102,8822,-153,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17243,SCAR IMW SS07-09,9802,8821,-90,9102,8822,-135,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17244,SCAR IMW SS10-12,9802,8821,-90,9102,8822,-117,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17245,SCAR IMW SS13-15,9802,8821,-90,9102,8822,-99,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17246,SCAR IMW SS16-18,9802,8821,-90,9102,8822,-81,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17247,SCAR IMW SS19-21,9802,8821,-90,9102,8822,-63,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17248,SCAR IMW SS25-27,9802,8821,-90,9102,8822,-27,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17249,SCAR IMW SS28-30,9802,8821,-90,9102,8822,-9,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17250,SCAR IMW SS31-33,9802,8821,-90,9102,8822,9,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17251,SCAR IMW SS34-36,9802,8821,-90,9102,8822,27,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17252,SCAR IMW SS37-39,9802,8821,-90,9102,8822,45,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17253,SCAR IMW SS40-42,9802,8821,-90,9102,8822,63,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17254,SCAR IMW SS43-45,9802,8821,-90,9102,8822,81,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17255,SCAR IMW SS46-48,9802,8821,-90,9102,8822,99,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17256,SCAR IMW SS49-51,9802,8821,-90,9102,8822,117,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17257,SCAR IMW SS52-54,9802,8821,-90,9102,8822,135,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17258,SCAR IMW SS55-57,9802,8821,-90,9102,8822,153,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17259,SCAR IMW SS58-60,9802,8821,-90,9102,8822,171,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +17260,SCAR IMW ST01-04,9802,8821,-90,9102,8822,-168,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17261,SCAR IMW ST05-08,9802,8821,-90,9102,8822,-144,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17262,SCAR IMW ST09-12,9802,8821,-90,9102,8822,-120,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17263,SCAR IMW ST13-16,9802,8821,-90,9102,8822,-96,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17264,SCAR IMW ST17-20,9802,8821,-90,9102,8822,-72,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17265,SCAR IMW ST21-24,9802,8821,-90,9102,8822,-48,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17266,SCAR IMW ST25-28,9802,8821,-90,9102,8822,-24,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17267,SCAR IMW ST29-32,9802,8821,-90,9102,8822,0,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17268,SCAR IMW ST33-36,9802,8821,-90,9102,8822,24,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17269,SCAR IMW ST37-40,9802,8821,-90,9102,8822,48,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17270,SCAR IMW ST41-44,9802,8821,-90,9102,8822,72,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17271,SCAR IMW ST45-48,9802,8821,-90,9102,8822,96,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17272,SCAR IMW ST49-52,9802,8821,-90,9102,8822,120,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17273,SCAR IMW ST53-56,9802,8821,-90,9102,8822,144,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17274,SCAR IMW ST57-60,9802,8821,-90,9102,8822,168,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17275,SCAR IMW SU01-05,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-165,9102,,,,,,,,, +17276,SCAR IMW SU06-10,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-135,9102,,,,,,,,, +17277,SCAR IMW SU11-15,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-105,9102,,,,,,,,, +17278,SCAR IMW SU16-20,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-75,9102,,,,,,,,, +17279,SCAR IMW SU21-25,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-45,9102,,,,,,,,, +17280,SCAR IMW SU26-30,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-15,9102,,,,,,,,, +17281,SCAR IMW SU31-35,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,15,9102,,,,,,,,, +17282,SCAR IMW SU36-40,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,45,9102,,,,,,,,, +17283,SCAR IMW SU41-45,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,75,9102,,,,,,,,, +17284,SCAR IMW SU46-50,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,105,9102,,,,,,,,, +17285,SCAR IMW SU51-55,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,135,9102,,,,,,,,, +17286,SCAR IMW SU56-60,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,165,9102,,,,,,,,, +17287,SCAR IMW SV01-10,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-150,9102,,,,,,,,, +17288,SCAR IMW SV11-20,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-90,9102,,,,,,,,, +17289,SCAR IMW SV21-30,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-30,9102,,,,,,,,, +17290,SCAR IMW SV31-40,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,30,9102,,,,,,,,, +17291,SCAR IMW SV41-50,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,90,9102,,,,,,,,, +17292,SCAR IMW SV51-60,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,150,9102,,,,,,,,, +17293,SCAR IMW SW01-60,9829,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,0,9102,,,,,,,,, +17294,USGS Transantarctic Mountains,9802,8821,-78,9102,8822,162,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +17295,"North Pole Lambert Azimuthal Equal Area (Bering Sea)",9820,8801,90,9102,8802,180,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17296,"North Pole Lambert Azimuthal Equal Area (Alaska)",9820,8801,90,9102,8802,-150,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17297,"North Pole Lambert Azimuthal Equal Area (Canada)",9820,8801,90,9102,8802,-100,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17298,"North Pole Lambert Azimuthal Equal Area (Atlantic)",9820,8801,90,9102,8802,-40,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17299,"North Pole Lambert Azimuthal Equal Area (Europe)",9820,8801,90,9102,8802,10,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17300,"North Pole Lambert Azimuthal Equal Area (Russia)",9820,8801,90,9102,8802,90,9102,8806,0,9001,8807,0,9001,,,,,,,,, +17321,SWEREF99 12 00,9807,8801,0,9102,8802,12,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17322,SWEREF99 13 30,9807,8801,0,9110,8802,13.3,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17323,SWEREF99 15 00,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17324,SWEREF99 16 30,9807,8801,0,9110,8802,16.3,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17325,SWEREF99 18 00,9807,8801,0,9102,8802,18,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17326,SWEREF99 14 15,9807,8801,0,9110,8802,14.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17327,SWEREF99 15 45,9807,8801,0,9110,8802,15.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17328,SWEREF99 17 15,9807,8801,0,9110,8802,17.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17329,SWEREF99 18 45,9807,8801,0,9110,8802,18.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17330,SWEREF99 20 15,9807,8801,0,9110,8802,20.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17331,SWEREF99 21 45,9807,8801,0,9110,8802,21.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17332,SWEREF99 23 15,9807,8801,0,9110,8802,23.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +17333,SWEREF99 TM,9807,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +17334,Sweden zone 7.5 gon V,9807,8801,0,9110,8802,11.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +17335,Sweden zone 5 gon V,9807,8801,0,9110,8802,13.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +17336,Sweden zone 0 gon,9807,8801,0,9110,8802,18.03298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +17337,Sweden zone 2.5 gon O,9807,8801,0,9110,8802,20.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +17338,Sweden zone 5 gon O,9807,8801,0,9110,8802,22.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +17339,RT90 zone 7.5 gon V emulation,9807,8801,0,9110,8802,11.18225,9110,8805,1.000006,9201,8806,1500025.141,9001,8807,-667.282,9001,,,,,, +17340,RT90 zone 5 gon V emulation,9807,8801,0,9110,8802,13.332256,9110,8805,1.0000058,9201,8806,1500044.695,9001,8807,-667.13,9001,,,,,, +17341,RT90 zone 2.5 gon V emulation,9807,8801,0,9110,8802,15.4822624306,9110,8805,1.00000561024,9201,8806,1500064.274,9001,8807,-667.711,9001,,,,,, +17342,RT90 zone 0 gon emulation,9807,8801,0,9110,8802,18.032268,9110,8805,1.0000054,9201,8806,1500083.521,9001,8807,-668.844,9001,,,,,, +17343,RT90 zone 2.5 gon O emulation,9807,8801,0,9110,8802,20.182274,9110,8805,1.0000052,9201,8806,1500102.765,9001,8807,-670.706,9001,,,,,, +17344,RT90 zone 5 gon O emulation,9807,8801,0,9110,8802,22.33228,9110,8805,1.0000049,9201,8806,1500121.846,9001,8807,-672.557,9001,,,,,, +17348,Map Grid of Australia zone 48,9807,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17349,Map Grid of Australia zone 49,9807,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17350,Map Grid of Australia zone 50,9807,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17351,Map Grid of Australia zone 51,9807,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17352,Map Grid of Australia zone 52,9807,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17353,Map Grid of Australia zone 53,9807,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17354,Map Grid of Australia zone 54,9807,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17355,Map Grid of Australia zone 55,9807,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17356,Map Grid of Australia zone 56,9807,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17357,Map Grid of Australia zone 57,9807,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17358,Map Grid of Australia zone 58,9807,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17359,SA Lambert,9802,8821,-32,9102,8822,135,9102,8823,-28,9102,8824,-36,9102,8826,1000000,9001,8827,2000000,9001,,, +17360,Vicgrid66,9802,8821,-37,9102,8822,145,9102,8823,-36,9102,8824,-38,9102,8826,2500000,9001,8827,4500000,9001,,, +17361,Vicgrid94,9802,8821,-37,9102,8822,145,9102,8823,-36,9102,8824,-38,9102,8826,2500000,9001,8827,2500000,9001,,, +17362,Geoscience Australia Standard National Scale Lambert Projection,9802,8821,0,9102,8822,134,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +17363,Brisbane City Survey Grid 02,9807,8801,-28,9102,8802,153,9102,8805,0.99999,9201,8806,50000,9001,8807,100000,9001,,,,,, +17364,New South Wales Lambert,9802,8821,-33.25,9102,8822,147,9102,8823,-30.75,9102,8824,-35.75,9102,8826,9300000,9001,8827,4500000,9001,,, +17365,Australian Albers,9822,8821,0,9102,8822,132,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +17401,Katanga Lambert Conformal,9802,8821,0,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,0,9001,8827,0,9001,,, +17402,Katanga Transverse Mercator,9807,8801,-9,9102,8802,26,9102,8805,0.9998,9201,8806,0,9001,8807,0,9001,,,,,, +17412,Congo Transverse Mercator zone 12,9807,8801,0,9102,8802,12,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17414,Congo Transverse Mercator zone 14,9807,8801,0,9102,8802,14,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17416,Congo Transverse Mercator zone 16,9807,8801,0,9102,8802,16,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17418,Congo Transverse Mercator zone 18,9807,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17420,Congo Transverse Mercator zone 20,9807,8801,0,9102,8802,20,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17422,Congo Transverse Mercator zone 22,9807,8801,0,9102,8802,22,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17424,Congo Transverse Mercator zone 24,9807,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17426,Congo Transverse Mercator zone 26,9807,8801,0,9102,8802,26,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17428,Congo Transverse Mercator zone 28,9807,8801,0,9102,8802,28,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17430,Congo Transverse Mercator zone 30,9807,8801,0,9102,8802,30,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17432,Indonesia TM-3 zone 46.2,9807,8801,0,9102,8802,94.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17433,Indonesia TM-3 zone 47.1,9807,8801,0,9102,8802,97.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17434,Indonesia TM-3 zone 47.2,9807,8801,0,9102,8802,100.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17435,Indonesia TM-3 zone 48.1,9807,8801,0,9102,8802,103.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17436,Indonesia TM-3 zone 48.2,9807,8801,0,9102,8802,106.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17437,Indonesia TM-3 zone 49.1,9807,8801,0,9102,8802,109.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17438,Indonesia TM-3 zone 49.2,9807,8801,0,9102,8802,112.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17439,Indonesia TM-3 zone 50.1,9807,8801,0,9102,8802,115.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17440,Indonesia TM-3 zone 50.2,9807,8801,0,9102,8802,118.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17441,Indonesia TM-3 zone 51.1,9807,8801,0,9102,8802,121.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17442,Indonesia TM-3 zone 51.2,9807,8801,0,9102,8802,124.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17443,Indonesia TM-3 zone 52.1,9807,8801,0,9102,8802,127.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17444,Indonesia TM-3 zone 52.2,9807,8801,0,9102,8802,130.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17445,Indonesia TM-3 zone 53.1,9807,8801,0,9102,8802,133.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17446,Indonesia TM-3 zone 53.2,9807,8801,0,9102,8802,136.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17447,Indonesia TM-3 zone 54.1,9807,8801,0,9102,8802,139.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +17448,Australian Map Grid zone 48,9807,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17449,Australian Map Grid zone 49,9807,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17450,Australian Map Grid zone 50,9807,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17451,Australian Map Grid zone 51,9807,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17452,Australian Map Grid zone 52,9807,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17453,Australian Map Grid zone 53,9807,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17454,Australian Map Grid zone 54,9807,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17455,Australian Map Grid zone 55,9807,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17456,Australian Map Grid zone 56,9807,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17457,Australian Map Grid zone 57,9807,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17458,Australian Map Grid zone 58,9807,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +17515,South African Survey Grid zone 15,9808,8801,0,9102,8802,15,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17517,South African Survey Grid zone 17,9808,8801,0,9102,8802,17,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17519,South African Survey Grid zone 19,9808,8801,0,9102,8802,19,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17521,South African Survey Grid zone 21,9808,8801,0,9102,8802,21,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17523,South African Survey Grid zone 23,9808,8801,0,9102,8802,23,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17525,South African Survey Grid zone 25,9808,8801,0,9102,8802,25,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17527,South African Survey Grid zone 27,9808,8801,0,9102,8802,27,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17529,South African Survey Grid zone 29,9808,8801,0,9102,8802,29,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17531,South African Survey Grid zone 31,9808,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17533,South African Survey Grid zone 33,9808,8801,0,9102,8802,33,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +17611,South West African Survey Grid zone 11,9808,8801,-22,9102,8802,11,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17613,South West African Survey Grid zone 13,9808,8801,-22,9102,8802,13,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17615,South West African Survey Grid zone 15,9808,8801,-22,9102,8802,15,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17617,South West African Survey Grid zone 17,9808,8801,-22,9102,8802,17,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17619,South West African Survey Grid zone 19,9808,8801,-22,9102,8802,19,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17621,South West African Survey Grid zone 21,9808,8801,-22,9102,8802,21,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17623,South West African Survey Grid zone 23,9808,8801,-22,9102,8802,23,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17625,South West African Survey Grid zone 25,9808,8801,-22,9102,8802,25,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +17700,MTM Quebec zone 2,9807,8801,0,9110,8802,-55.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17701,MTM zone 1,9807,8801,0,9102,8802,-53,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17702,MTM zone 2,9807,8801,0,9102,8802,-56,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17703,MTM zone 3,9807,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17704,MTM zone 4,9807,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17705,MTM zone 5,9807,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17706,MTM zone 6,9807,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17707,MTM zone 7,9807,8801,0,9110,8802,-70.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17708,MTM zone 8,9807,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17709,MTM zone 9,9807,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17710,MTM zone 10,9807,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17711,MTM zone 11,9807,8801,0,9110,8802,-82.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17712,MTM zone 12,9807,8801,0,9102,8802,-81,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17713,MTM zone 13,9807,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17714,MTM zone 14,9807,8801,0,9102,8802,-87,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17715,MTM zone 15,9807,8801,0,9102,8802,-90,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17716,MTM zone 16,9807,8801,0,9102,8802,-93,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17717,MTM zone 17,9807,8801,0,9102,8802,-96,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +17722,Alberta 3-degree TM reference meridian 111 W,9807,8801,0,9102,8802,-111,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17723,Alberta 3-degree TM reference meridian 114 W,9807,8801,0,9102,8802,-114,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17724,Alberta 3-degree TM reference meridian 117 W,9807,8801,0,9102,8802,-117,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17725,Alberta 3-degree TM reference meridian 120 W,9807,8801,0,9102,8802,-120,9102,8805,0.9999,9001,8806,0,9001,8807,0,9001,,,,,, +17726,Alberta 3-degree TM reference meridian 120 W,9807,8801,0,9102,8802,-120,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17794,MTM Nova Scotia zone 4,9807,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,4500000,9001,8807,0,9001,,,,,, +17795,MTM Nova Scotia zone 5,9807,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,5500000,9001,8807,0,9001,,,,,, +17801,Japan Plane Rectangular CS zone I,9807,8801,33,9110,8802,129.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17802,Japan Plane Rectangular CS zone II,9807,8801,33,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17803,Japan Plane Rectangular CS zone III,9807,8801,36,9110,8802,132.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17804,Japan Plane Rectangular CS zone IV,9807,8801,33,9110,8802,133.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17805,Japan Plane Rectangular CS zone V,9807,8801,36,9110,8802,134.2,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17806,Japan Plane Rectangular CS zone VI,9807,8801,36,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17807,Japan Plane Rectangular CS zone VII,9807,8801,36,9110,8802,137.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17808,Japan Plane Rectangular CS zone VIII,9807,8801,36,9110,8802,138.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17809,Japan Plane Rectangular CS zone IX,9807,8801,36,9110,8802,139.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17810,Japan Plane Rectangular CS zone X,9807,8801,40,9110,8802,140.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17811,Japan Plane Rectangular CS zone XI,9807,8801,44,9110,8802,140.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17812,Japan Plane Rectangular CS zone XII,9807,8801,44,9110,8802,142.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17813,Japan Plane Rectangular CS zone XIII,9807,8801,44,9110,8802,144.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17814,Japan Plane Rectangular CS zone XIV,9807,8801,26,9110,8802,142,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17815,Japan Plane Rectangular CS zone XV,9807,8801,26,9110,8802,127.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17816,Japan Plane Rectangular CS zone XVI,9807,8801,26,9110,8802,124,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17817,Japan Plane Rectangular CS zone XVII,9807,8801,26,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17818,Japan Plane Rectangular CS zone XVIII,9807,8801,20,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17819,Japan Plane Rectangular CS zone XIX,9807,8801,26,9110,8802,154,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +17901,Mount Eden Circuit,9807,8801,-36.5247515,9110,8802,174.45516217,9110,8805,0.9999,9201,8806,300000,9001,8807,700000,9001,,,,,, +17902,Bay of Plenty Circuit,9807,8801,-37.45404993,9110,8802,176.27583101,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17903,Poverty Bay Circuit,9807,8801,-38.372893,9110,8802,177.53082906,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17904,Hawkes Bay Circuit,9807,8801,-39.39033455,9110,8802,176.40252499,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17905,Taranaki Circuit,9807,8801,-39.08087299,9110,8802,174.13408423,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17906,Tuhirangi Circuit,9807,8801,-39.30448934,9110,8802,175.38241325,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17907,Wanganui Circuit,9807,8801,-40.14310097,9110,8802,175.29171586,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17908,Wairarapa Circuit,9807,8801,-40.55319175,9110,8802,175.38504588,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17909,Wellington Circuit,9807,8801,-41.18047507,9110,8802,174.46358432,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17910,Collingwood Circuit,9807,8801,-40.42531326,9110,8802,172.40193674,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17911,Nelson Circuit,9807,8801,-41.1628361,9110,8802,173.17575405,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17912,Karamea Circuit,9807,8801,-41.17236815,9110,8802,172.06325015,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17913,Buller Circuit,9807,8801,-41.48388903,9110,8802,171.34525362,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17914,Grey Circuit,9807,8801,-42.20012994,9110,8802,171.32591767,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17915,Amuri Circuit,9807,8801,-42.41208197,9110,8802,173.00364802,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17916,Marlborough Circuit,9807,8801,-41.3240152,9110,8802,173.48074668,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17917,Hokitika Circuit,9807,8801,-42.53107605,9110,8802,170.58479766,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17918,Okarito Circuit,9807,8801,-43.06364613,9110,8802,170.1539333,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17919,Jacksons Bay Circuit,9807,8801,-43.58400904,9110,8802,168.36225612,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17920,Mount Pleasant Circuit,9807,8801,-43.35262953,9110,8802,172.43378969,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17921,Gawler Circuit,9807,8801,-43.44553616,9110,8802,171.21386945,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17922,Timaru Circuit,9807,8801,-44.24079933,9110,8802,171.0326103,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17923,Lindis Peak Circuit,9807,8801,-44.44069647,9110,8802,169.28039183,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17924,Mount Nicholas Circuit,9807,8801,-45.07584493,9110,8802,168.23551083,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17925,Mount York Circuit,9807,8801,-45.33494142,9110,8802,167.44199024,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17926,Observation Point Circuit,9807,8801,-45.48583078,9110,8802,170.37429426,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +17927,North Taieri Circuit,9807,8801,-45.51414481,9110,8802,170.16573208,9110,8805,0.99996,9201,8806,300000,9001,8807,700000,9001,,,,,, +17928,Bluff Circuit,9807,8801,-46.36000346,9110,8802,168.20343392,9110,8805,1,9201,8806,300002.66,9001,8807,699999.58,9001,,,,,, +17931,Mount Eden 2000,9807,8801,-36.5247,9110,8802,174.4551,9110,8805,0.9999,9201,8806,400000,9001,8807,800000,9001,,,,,, +17932,Bay of Plenty 2000,9807,8801,-37.454,9110,8802,176.2758,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17933,Poverty Bay 2000,9807,8801,-38.3728,9110,8802,177.5308,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17934,Hawkes Bay 2000,9807,8801,-39.3903,9110,8802,176.4025,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17935,Taranaki 2000,9807,8801,-39.0808,9110,8802,174.134,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17936,Tuhirangi 2000,9807,8801,-39.3044,9110,8802,175.3824,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17937,Wanganui 2000,9807,8801,-40.1431,9110,8802,175.2917,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17938,Wairarapa 2000,9807,8801,-40.5531,9110,8802,175.385,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17939,Wellington 2000,9807,8801,-41.1804,9110,8802,174.4635,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17940,Collingwood 2000,9807,8801,-40.4253,9110,8802,172.4019,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17941,Nelson 2000,9807,8801,-41.1628,9110,8802,173.1757,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17942,Karamea 2000,9807,8801,-41.1723,9110,8802,172.0632,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17943,Buller 2000,9807,8801,-41.4838,9110,8802,171.3452,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17944,Grey 2000,9807,8801,-42.2001,9110,8802,171.3259,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17945,Amuri 2000,9807,8801,-42.412,9110,8802,173.0036,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17946,Marlborough 2000,9807,8801,-41.324,9110,8802,173.4807,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17947,Hokitika 2000,9807,8801,-42.531,9110,8802,170.5847,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17948,Okarito 2000,9807,8801,-43.0636,9110,8802,170.1539,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17949,Jacksons Bay 2000,9807,8801,-43.584,9110,8802,168.3622,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17950,Mount Pleasant 2000,9807,8801,-43.3526,9110,8802,172.4337,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17951,Gawler 2000,9807,8801,-43.4455,9110,8802,171.2138,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17952,Timaru 2000,9807,8801,-44.2407,9110,8802,171.0326,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17953,Lindis Peak 2000,9807,8801,-44.4406,9110,8802,169.2803,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17954,Mount Nicholas 2000,9807,8801,-45.0758,9110,8802,168.2355,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17955,Mount York 2000,9807,8801,-45.3349,9110,8802,167.4419,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17956,Observation Point 2000,9807,8801,-45.4858,9110,8802,170.3742,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17957,North Taieri 2000,9807,8801,-45.5141,9110,8802,170.1657,9110,8805,0.99996,9201,8806,400000,9001,8807,800000,9001,,,,,, +17958,Bluff 2000,9807,8801,-46.36,9110,8802,168.2034,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17959,Chatham Island Circuit 2000,9807,8801,-44,9110,8802,-176.3,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +17960,Auckland Islands Transverse Mercator 2000,9807,8801,0,9102,8802,166,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +17961,Campbell Island Transverse Mercator 2000,9807,8801,0,9102,8802,169,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +17962,Antipodes Islands Transverse Mercator 2000,9807,8801,0,9102,8802,179,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +17963,Raoul Island Transverse Mercator 2000,9807,8801,0,9102,8802,-178,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +17964,New Zealand Continental Shelf Lambert Conformal 2000,9802,8821,-41,9110,8822,173,9110,8823,-37.3,9110,8824,-44.3,9110,8826,3000000,9001,8827,7000000,9001,,, +17965,Chatham Islands Transverse Mercator 2000,9807,8801,0,9110,8802,-176.3,9110,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +17966,Darwin Glacier Lambert Conformal 2000,9802,8821,-90,9110,8822,157,9110,8823,-76.4,9110,8824,-79.2,9110,8826,500000,9001,8827,0,9001,,, +18001,Austria Gauss-Kruger West Zone,9807,8801,0,9102,8802,28,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18002,Austria Gauss-Kruger Central Zone,9807,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18003,Austria Gauss-Kruger East Zone,9807,8801,0,9102,8802,34,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18004,Austria Gauss-Kruger West,9807,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18005,Austria Gauss-Kruger Central,9807,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18006,Austria Gauss-Kruger East,9807,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +18007,Austria Gauss-Kruger M28,9807,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,150000,9001,8807,-5000000,9001,,,,,, +18008,Austria Gauss-Kruger M31,9807,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,450000,9001,8807,-5000000,9001,,,,,, +18009,Austria Gauss-Kruger M34,9807,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,750000,9001,8807,-5000000,9001,,,,,, +18011,"Nord Algerie (ancienne)",9801,8801,40,9105,8802,3,9105,8805,0.999625544,9201,8806,500000,9001,8807,300000,9001,,,,,, +18012,"Sud Algerie (ancienne)",9801,8801,37,9105,8802,3,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +18021,Nord Algerie,9801,8801,40,9105,8802,3,9105,8805,0.999625544,9201,8806,500135,9001,8807,300090,9001,,,,,, +18022,Sud Algerie,9801,8801,37,9105,8802,3,9105,8805,0.999625769,9201,8806,500135,9001,8807,300090,9001,,,,,, +18031,Argentina zone 1,9807,8801,-90,9102,8802,-72,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +18032,Argentina zone 2,9807,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +18033,Argentina zone 3,9807,8801,-90,9102,8802,-66,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +18034,Argentina zone 4,9807,8801,-90,9102,8802,-63,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +18035,Argentina zone 5,9807,8801,-90,9102,8802,-60,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +18036,Argentina zone 6,9807,8801,-90,9102,8802,-57,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +18037,Argentina zone 7,9807,8801,-90,9102,8802,-54,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +18041,Austria West Zone,9807,8801,0,9102,8802,28,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18042,Austria Central Zone,9807,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18043,Austria East Zone,9807,8801,0,9102,8802,34,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18044,Austria M28,9807,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +18045,Austria M31,9807,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,450000,9001,8807,0,9001,,,,,, +18046,Austria M34,9807,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,750000,9001,8807,0,9001,,,,,, +18047,Austria zone M28,9807,8801,0,9102,8802,28,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +18048,Austria zone M31,9807,8801,0,9102,8802,31,9102,8805,1,9201,8806,450000,9001,8807,0,9001,,,,,, +18049,Austria zone M34,9807,8801,0,9102,8802,34,9102,8805,1,9201,8806,750000,9001,8807,0,9001,,,,,, +18051,Colombia West zone,9807,8801,4.355657,9110,8802,-77.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18052,Colombia Bogota zone,9807,8801,4.355657,9110,8802,-74.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18053,Colombia East Central zone,9807,8801,4.355657,9110,8802,-71.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18054,Colombia East zone,9807,8801,4.355657,9110,8802,-68.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18055,Colombia MAGNA Far West zone,9807,8801,4.35463215,9110,8802,-80.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18056,Colombia MAGNA West zone,9807,8801,4.35463215,9110,8802,-77.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18057,Colombia MAGNA Bogota zone,9807,8801,4.35463215,9110,8802,-74.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18058,Colombia MAGNA East Central zone,9807,8801,4.35463215,9110,8802,-71.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18059,Colombia MAGNA East zone,9807,8801,4.35463215,9110,8802,-68.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18061,Cuba Norte,9801,8801,22.21,9110,8802,-81,9110,8805,0.99993602,9201,8806,500000,9001,8807,280296.016,9001,,,,,, +18062,Cuba Sur,9801,8801,20.43,9110,8802,-76.5,9110,8805,0.99994848,9201,8806,500000,9001,8807,229126.939,9001,,,,,, +18063,Cuba Norte,9802,8821,22.21,9110,8822,-81,9110,8823,23,9110,8824,21.42,9110,8826,500000,9001,8827,280296.016,9001,,, +18064,Cuba Sur,9802,8821,20.43,9110,8822,-76.5,9110,8823,21.18,9110,8824,20.08,9110,8826,500000,9001,8827,229126.939,9001,,, +18071,Egypt Blue Belt,9807,8801,30,9102,8802,35,9102,8805,1,9201,8806,300000,9001,8807,1100000,9001,,,,,, +18072,Egypt Red Belt,9807,8801,30,9102,8802,31,9102,8805,1,9201,8806,615000,9001,8807,810000,9001,,,,,, +18073,Egypt Purple Belt,9807,8801,30,9102,8802,27,9102,8805,1,9201,8806,700000,9001,8807,200000,9001,,,,,, +18074,Egypt Extended Purple Belt,9807,8801,30,9102,8802,27,9102,8805,1,9201,8806,700000,9001,8807,1200000,9001,,,,,, +18081,Lambert zone I,9801,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,1200000,9001,,,,,, +18082,Lambert zone II,9801,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,2200000,9001,,,,,, +18083,Lambert zone III,9801,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,3200000,9001,,,,,, +18084,Lambert zone IV,9801,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,4185861.369,9001,,,,,, +18085,Lambert-93,9802,8821,46.3,9110,8822,3,9110,8823,49,9110,8824,44,9110,8826,700000,9001,8827,6600000,9001,,, +18086,France EuroLambert,9801,8801,46.48,9110,8802,2.2014025,9110,8805,0.99987742,9201,8806,600000,9001,8807,2200000,9001,,,,,, +18091,Lambert Nord France,9801,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,200000,9001,,,,,, +18092,Lambert Centre France,9801,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,200000,9001,,,,,, +18093,Lambert Sud France,9801,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,200000,9001,,,,,, +18094,Lambert Corse,9801,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,185861.369,9001,,,,,, +18101,France Conic Conformal zone 1,9802,8821,42,9102,8822,3,9102,8823,41.25,9102,8824,42.75,9102,8826,1700000,9001,8827,1200000,9001,,, +18102,France Conic Conformal zone 2,9802,8821,43,9102,8822,3,9102,8823,42.25,9102,8824,43.75,9102,8826,1700000,9001,8827,2200000,9001,,, +18103,France Conic Conformal zone 3,9802,8821,44,9102,8822,3,9102,8823,43.25,9102,8824,44.75,9102,8826,1700000,9001,8827,3200000,9001,,, +18104,France Conic Conformal zone 4,9802,8821,45,9102,8822,3,9102,8823,44.25,9102,8824,45.75,9102,8826,1700000,9001,8827,4200000,9001,,, +18105,France Conic Conformal zone 5,9802,8821,46,9102,8822,3,9102,8823,45.25,9102,8824,46.75,9102,8826,1700000,9001,8827,5200000,9001,,, +18106,France Conic Conformal zone 6,9802,8821,47,9102,8822,3,9102,8823,46.25,9102,8824,47.75,9102,8826,1700000,9001,8827,6200000,9001,,, +18107,France Conic Conformal zone 7,9802,8821,48,9102,8822,3,9102,8823,47.25,9102,8824,48.75,9102,8826,1700000,9001,8827,7200000,9001,,, +18108,France Conic Conformal zone 8,9802,8821,49,9102,8822,3,9102,8823,48.25,9102,8824,49.75,9102,8826,1700000,9001,8827,8200000,9001,,, +18109,France Conic Conformal zone 9,9802,8821,50,9102,8822,3,9102,8823,49.25,9102,8824,50.75,9102,8826,1700000,9001,8827,9200000,9001,,, +18110,India zone 0,9801,8801,39.3,9110,8802,68,9110,8805,0.99846154,9201,8806,2355500,9084,8807,2590000,9084,,,,,, +18111,India zone I,9801,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18112,India zone IIa,9801,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18113,India zone IIb,9801,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18114,India zone IIIa,9801,8801,19,9102,8802,80,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18115,India zone IIIb,9801,8801,19,9102,8802,100,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18116,India zone IVa,9801,8801,12,9102,8802,80,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18117,India zone IVb,9801,8801,12,9102,8802,100,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +18121,Italy zone 1,9807,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,1500000,9001,8807,0,9001,,,,,, +18122,Italy zone 2,9807,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,2520000,9001,8807,0,9001,,,,,, +18131,Nord Maroc,9801,8801,37,9105,8802,-6,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +18132,Sud Maroc,9801,8801,33,9105,8802,-6,9105,8805,0.999615596,9201,8806,500000,9001,8807,300000,9001,,,,,, +18133,Sahara,9801,8801,29,9105,8802,-6,9105,8805,0.9996,9201,8806,1200000,9001,8807,400000,9001,,,,,, +18134,Sahara Nord,9801,8801,29,9105,8802,-6,9105,8805,0.999616304,9201,8806,1200000,9001,8807,400000,9001,,,,,, +18135,Sahara Sud,9801,8801,25,9105,8802,-6,9105,8805,0.999616437,9201,8806,1500000,9001,8807,400000,9001,,,,,, +18141,New Zealand North Island National Grid,9807,8801,-39,9110,8802,175.3,9110,8805,1,9201,8806,300000,9040,8807,400000,9040,,,,,, +18142,New Zealand South Island National Grid,9807,8801,-44,9110,8802,171.3,9110,8805,1,9201,8806,500000,9040,8807,500000,9040,,,,,, +18151,Nigeria West Belt,9807,8801,4,9110,8802,4.3,9110,8805,0.99975,9201,8806,230738.26,9001,8807,0,9001,,,,,, +18152,Nigeria Mid Belt,9807,8801,4,9110,8802,8.3,9110,8805,0.99975,9201,8806,670553.98,9001,8807,0,9001,,,,,, +18153,Nigeria East Belt,9807,8801,4,9110,8802,12.3,9110,8805,0.99975,9201,8806,1110369.7,9001,8807,0,9001,,,,,, +18161,Peru west zone,9807,8801,-6,9110,8802,-80.3,9110,8805,0.99983008,9201,8806,222000,9001,8807,1426834.743,9001,,,,,, +18162,Peru central zone,9807,8801,-9.3,9110,8802,-76,9110,8805,0.99932994,9201,8806,720000,9001,8807,1039979.159,9001,,,,,, +18163,Peru east zone,9807,8801,-9.3,9110,8802,-70.3,9110,8805,0.99952992,9201,8806,1324000,9001,8807,1040084.558,9001,,,,,, +18171,Philippines zone I,9807,8801,0,9102,8802,117,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18172,Philippines zone II,9807,8801,0,9102,8802,119,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18173,Philippines zone III,9807,8801,0,9102,8802,121,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18174,Philippines zone IV,9807,8801,0,9102,8802,123,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18175,Philippines zone V,9807,8801,0,9102,8802,125,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18180,Finland zone 0,9807,8801,0,9102,8802,18,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18181,Nord Tunisie,9801,8801,40,9105,8802,11,9105,8805,0.999625544,9201,8806,500000,9001,8807,300000,9001,,,,,, +18182,Sud Tunisie,9801,8801,37,9105,8802,11,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +18183,Finland ETRS-GK19,9807,8801,0,9102,8802,19,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18184,Finland ETRS-GK20,9807,8801,0,9102,8802,20,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18185,Finland ETRS-GK21,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18186,Finland ETRS-GK22,9807,8801,0,9102,8802,22,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18187,Finland ETRS-GK23,9807,8801,0,9102,8802,23,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18188,Finland ETRS-GK24,9807,8801,0,9102,8802,24,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18189,Finland ETRS-GK25,9807,8801,0,9102,8802,25,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18190,Finland ETRS-GK26,9807,8801,0,9102,8802,26,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18191,Finland zone 1,9807,8801,0,9102,8802,21,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +18192,Finland zone 2,9807,8801,0,9102,8802,24,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +18193,Finland Uniform Coordinate System,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +18194,Finland zone 4,9807,8801,0,9102,8802,30,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +18195,Finland ETRS-GK27,9807,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18196,Finland ETRS-GK28,9807,8801,0,9102,8802,28,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18197,Finland ETRS-GK29,9807,8801,0,9102,8802,29,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18198,Finland ETRS-GK30,9807,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18199,Finland ETRS-GK31,9807,8801,0,9102,8802,31,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +18201,Palestine Grid,9806,8801,31.4402749,9110,8802,35.124349,9110,8806,170251.555,9001,8807,126867.909,9001,,,,,,,,, +18202,Palestine Belt,9807,8801,31.4402749,9110,8802,35.124349,9110,8805,1,9201,8806,170251.555,9001,8807,1126867.909,9001,,,,,, +18203,Israeli CS,9806,8801,31.4402749,9110,8802,35.124349,9110,8806,170251.555,9001,8807,1126867.909,9001,,,,,,,,, +18204,Israeli TM,9807,8801,31.4403817,9110,8802,35.1216261,9110,8805,1.0000067,9201,8806,219529.584,9001,8807,626907.39,9001,,,,,, +18205,Finland zone 5,9807,8801,0,9102,8802,33,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +18211,Guatemala Norte,9801,8801,16.49,9110,8802,-90.2,9110,8805,0.99992226,9201,8806,500000,9001,8807,292209.579,9001,,,,,, +18212,Guatemala Sur,9801,8801,14.54,9110,8802,-90.2,9110,8805,0.99989906,9201,8806,500000,9001,8807,325992.681,9001,,,,,, +18221,NGO zone I,9807,8801,58,9110,8802,-4.4,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18222,NGO zone II,9807,8801,58,9110,8802,-2.2,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18223,NGO zone III,9807,8801,58,9110,8802,0,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18224,NGO zone IV,9807,8801,58,9110,8802,2.3,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18225,NGO zone V,9807,8801,58,9110,8802,6.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18226,NGO zone VI,9807,8801,58,9110,8802,10.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18227,NGO zone VII,9807,8801,58,9110,8802,14.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18228,NGO zone VIII,9807,8801,58,9110,8802,18.2,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18231,"India zone I (1975 metres)",9801,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +18232,"India zone IIa (1975 metres)",9801,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +18233,"India zone IIIa (1975 metres)",9801,8801,19,9102,8802,80,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +18234,"India zone IVa (1975 metres)",9801,8801,12,9102,8802,80,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +18235,"India zone IIb (1975 metres)",9801,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +18236,"India zone I (1962 metres)",9801,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,2743196.4,9001,8807,914398.8,9001,,,,,, +18237,"India zone IIa (1962 metres)",9801,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,2743196.4,9001,8807,914398.8,9001,,,,,, +18238,"India zone IIb (1937 metres)",9801,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,2743185.69,9001,8807,914395.23,9001,,,,,, +18240,Libya zone 5,9807,8801,0,9102,8802,9,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18241,Libya zone 6,9807,8801,0,9102,8802,11,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18242,Libya zone 7,9807,8801,0,9102,8802,13,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18243,Libya zone 8,9807,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18244,Libya zone 9,9807,8801,0,9102,8802,17,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18245,Libya zone 10,9807,8801,0,9102,8802,19,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18246,Libya zone 11,9807,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18247,Libya zone 12,9807,8801,0,9102,8802,23,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18248,Libya zone 13,9807,8801,0,9102,8802,25,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +18251,Korea East Belt,9807,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +18252,Korea Central Belt,9807,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +18253,Korea West Belt,9807,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +18260,"Maracaibo Grid (M1)",9801,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,0,9001,8807,-52684.972,9001,,,,,, +18261,Maracaibo Grid,9801,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,200000,9001,8807,147315.028,9001,,,,,, +18262,"Maracaibo Grid (M3)",9801,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,500000,9001,8807,447315.028,9001,,,,,, +18263,Maracaibo La Rosa Grid,9801,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,-17044,9001,8807,-23139.97,9001,,,,,, +18275,Balkans zone 5,9807,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,5500000,9001,8807,0,9001,,,,,, +18276,Balkans zone 6,9807,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,6500000,9001,8807,0,9001,,,,,, +18277,Balkans zone 7,9807,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,7500000,9001,8807,0,9001,,,,,, +18278,Balkans zone 8,9807,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,8500000,9001,8807,0,9001,,,,,, +18280,Poland zone I,9809,8801,50.373,9110,8802,21.05,9110,8805,0.9998,9201,8806,4637000,9001,8807,5467000,9001,,,,,, +18281,Poland zone I,9809,8801,50.373,9110,8802,21.05,9110,8805,0.9998,9201,8806,4637000,9001,8807,5647000,9001,,,,,, +18282,Poland zone II,9809,8801,53.0007,9110,8802,21.301,9110,8805,0.9998,9201,8806,4603000,9001,8807,5806000,9001,,,,,, +18283,Poland zone III,9809,8801,53.35,9110,8802,17.003,9110,8805,0.9998,9201,8806,3501000,9001,8807,5999000,9001,,,,,, +18284,Poland zone IV,9809,8801,51.4015,9110,8802,16.402,9110,8805,0.9998,9201,8806,3703000,9001,8807,5627000,9001,,,,,, +18285,Poland zone V,9807,8801,0,9110,8802,18.573,9110,8805,0.999983,9201,8806,237000,9001,8807,-4700000,9001,,,,,, +18286,GUGiK-80,9809,8801,52.1,9110,8802,19.1,9110,8805,0.999714,9201,8806,500000,9001,8807,500000,9001,,,,,, +18300,Poland CS92,9807,8801,0,9102,8802,19,9102,8805,0.9993,9201,8806,500000,9001,8807,-5300000,9001,,,,,, +18305,Poland CS2000 zone 5,9807,8801,0,9102,8802,15,9102,8805,0.999923,9201,8806,5500000,9001,8807,0,9001,,,,,, +18306,Poland CS2000 zone 6,9807,8801,0,9102,8802,18,9102,8805,0.999923,9201,8806,6500000,9001,8807,0,9001,,,,,, +18307,Poland CS2000 zone 7,9807,8801,0,9102,8802,21,9102,8805,0.999923,9201,8806,7500000,9001,8807,0,9001,,,,,, +18308,Poland CS2000 zone 8,9807,8801,0,9102,8802,24,9102,8805,0.999923,9201,8806,8500000,9001,8807,0,9001,,,,,, +18310,Libya TM zone 5,9807,8801,0,9102,8802,9,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18311,Libya TM zone 6,9807,8801,0,9102,8802,11,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18312,Libya TM zone 7,9807,8801,0,9102,8802,13,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18313,Libya TM zone 8,9807,8801,0,9102,8802,15,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18314,Libya TM zone 9,9807,8801,0,9102,8802,17,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18315,Libya TM zone 10,9807,8801,0,9102,8802,19,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18316,Libya TM zone 11,9807,8801,0,9102,8802,21,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18317,Libya TM zone 12,9807,8801,0,9102,8802,23,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18318,Libya TM zone 13,9807,8801,0,9102,8802,25,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18319,Libya TM,9807,8801,0,9102,8802,17,9102,8805,0.9965,9201,8806,1000000,9001,8807,0,9001,,,,,, +18401,Kp2000 Jylland og Fyn,9807,8801,0,9110,8802,9.3,9110,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +18402,Kp2000 Sjaelland,9807,8801,0,9102,8802,12,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +18403,Kp2000 Bornholm,9807,8801,0,9102,8802,15,9102,8805,1,9201,8806,900000,9001,8807,0,9001,,,,,, +18411,French West Africa Senegal zone,9807,8801,0,9110,8802,-13.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18412,French West Africa Ivory Coast zone,9807,8801,0,9110,8802,-6.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18413,French West Africa Dahomey zone,9807,8801,0,9110,8802,0.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18414,French West Africa Niger zone,9807,8801,0,9110,8802,7.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18415,French Equatorial Africa west zone,9807,8801,0,9110,8802,10.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18416,French Equatorial Africa central zone,9807,8801,0,9110,8802,17.4,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18417,French Equatorial Africa east zone,9807,8801,0,9110,8802,24.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +18421,Greenland zone 1 east,9826,8801,82.3,9110,8802,-40,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18422,Greenland zone 2 east,9826,8801,79.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18423,Greenland zone 3 east,9826,8801,76.3,9110,8802,-20,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18424,Greenland zone 4 east,9826,8801,73.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18425,Greenland zone 5 east,9826,8801,70.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18426,Greenland zone 6 east,9826,8801,67.3,9110,8802,-32,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18427,Greenland zone 7 east,9826,8801,64.3,9110,8802,-40,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18428,Greenland zone 8 east,9826,8801,61.3,9110,8802,-48,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18432,Greenland zone 2 west,9826,8801,79.3,9110,8802,-64,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18433,Greenland zone 3 west,9826,8801,76.3,9110,8802,-64,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18434,Greenland zone 4 west,9826,8801,73.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18435,Greenland zone 5 west,9826,8801,70.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18436,Greenland zone 6 west,9826,8801,67.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18437,Greenland zone 7 west,9826,8801,64.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +18441,CS63 zone A1,9807,8801,0.07,9110,8802,41.32,9110,8805,1,9201,8806,1300000,9001,8807,0,9001,,,,,, +18442,CS63 zone A2,9807,8801,0.07,9110,8802,44.32,9110,8805,1,9201,8806,2300000,9001,8807,0,9001,,,,,, +18443,CS63 zone A3,9807,8801,0.07,9110,8802,47.32,9110,8805,1,9201,8806,3300000,9001,8807,0,9001,,,,,, +18444,CS63 zone A4,9807,8801,0.07,9110,8802,50.32,9110,8805,1,9201,8806,4300000,9001,8807,0,9001,,,,,, +18446,CS63 zone K2,9807,8801,0.08,9110,8802,50.46,9110,8805,1,9201,8806,2300000,9001,8807,0,9001,,,,,, +18447,CS63 zone K3,9807,8801,0.08,9110,8802,53.46,9110,8805,1,9201,8806,3300000,9001,8807,0,9001,,,,,, +18448,CS63 zone K4,9807,8801,0.08,9110,8802,56.46,9110,8805,1,9201,8806,4300000,9001,8807,0,9001,,,,,, +18450,CS63 zone C0,9807,8801,0.06,9110,8802,21.57,9110,8805,1,9201,8806,250000,9001,8807,0,9001,,,,,, +18451,CS63 zone C1,9807,8801,0.06,9110,8802,24.57,9110,8805,1,9201,8806,1250000,9001,8807,0,9001,,,,,, +18452,CS63 zone C2,9807,8801,0.06,9110,8802,27.57,9110,8805,1,9201,8806,2250000,9001,8807,0,9001,,,,,, +19839,Dubai Local Transverse Mercator,9807,8801,0,9110,8802,55.2,9110,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +19840,IBCAO Polar Stereographic,9829,8806,0,9001,8807,0,9001,8832,75,9102,8833,0,9102,,,,,,,,, +19841,"Swiss Oblique Mercator 1903C (Greenwich)",9815,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,0,9001,8817,0,9001 +19842,Arctic Polar Stereographic,9829,8806,0,9001,8807,0,9001,8832,71,9102,8833,0,9102,,,,,,,,, +19843,Mercator 41,9805,8802,100,9102,8806,0,9001,8807,0,9001,8823,-41,9102,,,,,,,,, +19844,Ministry of Transport of Quebec Lambert,9802,8821,44,9102,8822,-70,9102,8823,50,9102,8824,46,9102,8826,800000,9001,8827,0,9001,,, +19845,Slovene National Grid,9807,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,500000,9001,8807,-5000000,9001,,,,,, +19846,World Equidistant Cylindrical,9842,8801,0,9102,8806,0,9001,8807,0,9001,8822,0,9102,,,,,,,,, +19847,Popular Visualisation Mercator,9841,8801,0,9102,8802,0,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19848,Pitcairn TM 2006,9807,8801,-25.04067894,9110,8802,-130.06466816,9110,8805,1,9201,8806,14200,9001,8807,15500,9001,,,,,, +19849,Bermuda 2000 National Grid,9807,8801,32,9110,8802,-64.45,9110,8805,1,9201,8806,550000,9001,8807,100000,9001,,,,,, +19850,EPSG vertical perspective example,9838,8834,55,9102,8835,5,9102,8836,200,9001,8840,5900,9036,,,,,,,,, +19851,Croatia Transverse Mercator,9807,8801,0,9102,8802,16.5,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +19852,Croatia Lambert Conformal Conic,9802,8821,0,9102,8822,16.3,9110,8823,45.55,9110,8824,43.05,9110,8826,0,9001,8827,0,9001,,, +19853,Portugual TM06,9807,8801,39.400573,9110,8802,-8.075919,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19854,South Georgia Lambert,9802,8821,-55,9102,8822,-37,9102,8823,-54,9110,8824,-54.45,9110,8826,0,9001,8827,0,9001,,, +19855,Mercator 41,9804,8801,-41,9102,8802,100,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19856,TM Reunion,9807,8801,-21.07,9110,8802,55.32,9110,8805,1,9201,8806,160000,9001,8807,50000,9001,,,,,, +19857,Northwest Territories Lambert,9802,8821,0,9102,8822,-112,9102,8823,62,9102,8824,70,9102,8826,0,9001,8827,0,9001,,, +19858,Yukon Albers,9822,8821,59,9110,8822,-132.3,9110,8823,61.4,9110,8824,68,9110,8826,500000,9001,8827,500000,9001,,, +19859,Fiji Map Grid,9807,8801,-17,9110,8802,178.45,9110,8805,0.99985,9201,8806,2000000,9001,8807,4000000,9001,,,,,, +19860,Jamaica Metric Grid 2001,9801,8801,18,9102,8802,-77,9102,8805,1,9201,8806,750000,9001,8807,650000,9001,,,,,, +19861,Laborde Grid,9813,8806,400000,9001,8807,800000,9001,8811,-21,9105,8812,49,9105,8813,21,9105,8815,0.9995,9201,,, +19862,Belgian Lambert 2005,9802,8821,50.4752134,9110,8822,4.2133177,9110,8823,49.5,9110,8824,51.1,9110,8826,150328,9001,8827,166262,9001,,, +19863,South China Sea Lambert,9802,8821,21,9102,8822,114,9102,8823,18,9102,8824,24,9102,8826,500000,9001,8827,500000,9001,,, +19864,Singapore Transverse Mercator,9807,8801,1.22,9110,8802,103.5,9110,8805,1,9201,8806,28001.642,9001,8807,38744.572,9001,,,,,, +19865,US NSIDC Sea Ice polar stereographic north,9829,8806,0,9001,8807,0,9001,8832,70,9102,8833,-45,9102,,,,,,,,, +19866,US NSIDC Sea Ice polar stereographic south,9829,8806,0,9001,8807,0,9001,8832,-70,9102,8833,0,9102,,,,,,,,, +19867,US NSIDC Equal Area north projection,9821,8806,0,9001,8807,0,9001,8828,90,9102,8829,0,9102,,,,,,,,, +19868,US NSIDC Equal Area south projection,9821,8806,0,9001,8807,0,9001,8828,-90,9102,8829,0,9102,,,,,,,,, +19869,US NSIDC Equal Area global projection,9834,8802,0,9102,8806,0,9001,8807,0,9001,8823,30,9102,,,,,,,,, +19870,Faroe Lambert,9826,8801,62,9102,8802,-9,9102,8805,1,9201,8806,500000,9001,8807,500000,9001,,,,,, +19871,"Rectified Skew Orthomorphic Malaya Grid (chains)",9812,8806,40000,9301,8807,0,9301,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +19872,"Rectified Skew Orthomorphic Malaya Grid (metres)",9812,8806,804670.24,9001,8807,0,9001,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +19873,Noumea Lambert,9802,8821,-22.16108903,9110,8822,166.26327327,9110,8823,-22.14408903,9110,8824,-22.17408903,9110,8826,0.66,9001,8827,1.02,9001,,, +19874,Noumea Lambert 2,9802,8821,-22.1611,9110,8822,166.2633,9110,8823,-22.1441,9110,8824,-22.1741,9110,8826,8.313,9001,8827,-2.354,9001,,, +19875,Ontario MNR Lambert,9802,8821,0,9102,8822,-85,9102,8823,44.5,9102,8824,53.5,9102,8826,930000,9001,8827,6430000,9001,,, +19876,ST74,9807,8801,0,9110,8802,18.0328044,9110,8805,0.99999425,9201,8806,100178.1808,9001,8807,-6500614.7836,9001,,,,,, +19877,Faroe Lambert fk89,9826,8801,62,9102,8802,-9,9102,8805,1,9201,8806,700000,9001,8807,700000,9001,,,,,, +19878,Vanua Levu Grid,9833,8801,-16.15,9110,8802,179.2,9110,8806,1251331.8,9098,8807,1662888.5,9098,,,,,,,,, +19879,Viti Levu Grid,9806,8801,-18,9102,8802,178,9102,8806,544000,9098,8807,704000,9098,,,,,,,,, +19880,Fiji Map Grid,9807,8801,-17,9110,8802,178.45,9110,8805,0.99985,9001,8806,2000000,9001,8807,4000000,9001,,,,,, +19881,"Alberta 10-degree TM (Forest)",9807,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,500000,9001,8807,0,9001,,,,,, +19882,"Alberta 10-degree TM (Resource)",9807,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,0,9001,8807,0,9001,,,,,, +19883,World Mercator,9804,8801,0,9102,8802,0,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19884,Caspian Sea Mercator,9805,8802,51,9102,8806,0,9001,8807,0,9001,8823,42,9102,,,,,,,,, +19885,Kelantan Grid,9806,8801,5.582115717,9110,8802,102.174287001,9110,8806,13227.851,9001,8807,8739.894,9001,,,,,,,,, +19886,Perak Grid,9806,8801,4.513262688,9110,8802,100.485547811,9110,8806,-1.769,9001,8807,133454.779,9001,,,,,,,,, +19887,Kedah and Perlis Grid,9806,8801,5.575282177,9110,8802,100.3810936,9110,8806,0,9001,8807,0,9001,,,,,,,,, +19888,Pinang Grid,9806,8801,5.251746315,9110,8802,100.203975707,9110,8806,-23.414,9001,8807,62.283,9001,,,,,,,,, +19889,Terengganu Grid,9806,8801,4.583462672,9110,8802,103.041299225,9110,8806,19594.245,9001,8807,3371.895,9001,,,,,,,,, +19890,Selangor Grid,9806,8801,3.410473658,9110,8802,101.232078849,9110,8806,-34836.161,9001,8807,56464.049,9001,,,,,,,,, +19891,Pahang Grid,9806,8801,3.460979712,9110,8802,102.220587634,9110,8806,-7368.228,9001,8807,6485.858,9001,,,,,,,,, +19892,Sembilan and Melaka Grid,9806,8801,2.405645149,9110,8802,101.582965815,9110,8806,3673.785,9001,8807,-4240.573,9001,,,,,,,,, +19893,Johor Grid,9806,8801,2.071804708,9110,8802,103.254057045,9110,8806,-14810.562,9001,8807,8758.32,9001,,,,,,,,, +19894,Borneo RSO,9812,8806,0,9001,8807,0,9001,8811,4,9110,8812,115,9110,8813,53.185691582,9110,8814,53.07483685,9110,8815,0.99984,9201 +19895,Peninsular RSO,9812,8806,804671,9001,8807,0,9001,8811,4,9110,8812,102.15,9110,8813,323.013286728,9110,8814,323.07483685,9110,8815,0.99984,9201 +19896,Hong Kong 1963 Grid,9806,8801,22.184368,9110,8802,114.10428,9110,8806,132033.92,9005,8807,62565.96,9005,,,,,,,,, +19897,Statistics Canada Lambert,9802,8821,63.390675,9102,8822,-91.52,9110,8823,49,9102,8824,77,9102,8826,6200000,9001,8827,3000000,9001,,, +19898,Pacific Disaster Center Mercator,9804,8801,0,9102,8802,-150,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19899,Mauritius Grid,9801,8801,-20.114225,9110,8802,57.311858,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +19900,Bahrain State Grid,9807,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +19901,Belge Lambert 50,9802,8821,90,9110,8822,0,9110,8823,49.5,9110,8824,51.1,9110,8826,150000,9001,8827,5400000,9001,,, +19902,Belge Lambert 72,9803,8821,90,9110,8822,4.2124983,9110,8823,49.5,9110,8824,51.1,9110,8826,150000.01256,9001,8827,5400088.4378,9001,,, +19903,Nord de Guerre,9801,8801,55,9105,8802,6,9105,8805,0.99950908,9201,8806,500000,9001,8807,300000,9001,,,,,, +19904,Ghana Metre Grid,9807,8801,4.4,9110,8802,-1,9110,8805,0.99975,9201,8806,274319.51,9001,8807,0,9001,,,,,, +19905,Netherlands East Indies Equatorial Zone,9804,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +19906,Iraq zone,9801,8801,32.3,9110,8802,45,9110,8805,0.9987864078,9201,8806,1500000,9001,8807,1166200,9001,,,,,, +19907,Iraq National Grid,9807,8801,29.0134566,9110,8802,46.3,9110,8805,0.9994,9201,8806,800000,9001,8807,0,9001,,,,,, +19908,Irish National Grid,9807,8801,53.3,9110,8802,-8,9110,8805,1.000035,9201,8806,200000,9001,8807,250000,9001,,,,,, +19909,"Jamaica (Old Grid)",9801,8801,18,9102,8802,-77,9102,8805,1,9201,8806,550000,9005,8807,400000,9005,,,,,, +19910,Jamaica National Grid,9801,8801,18,9102,8802,-77,9102,8805,1,9201,8806,250000,9001,8807,150000,9001,,,,,, +19911,Laborde Grid approximation,9815,8811,-21,9105,8812,49,9105,8813,21,9105,8814,21,9105,8815,0.9995,9201,8816,400000,9001,8817,800000,9001 +19913,RD Old,9809,8801,52.0922178,9110,8802,5.23155,9110,8805,0.9999079,9201,8806,0,9001,8807,0,9001,,,,,, +19914,RD New,9809,8801,52.0922178,9110,8802,5.23155,9110,8805,0.9999079,9201,8806,155000,9001,8807,463000,9001,,,,,, +19915,Aden Zone,9801,8801,15,9102,8802,45,9102,8805,0.999365678,9201,8806,1500000,9001,8807,1000000,9001,,,,,, +19916,British National Grid,9807,8801,49,9102,8802,-2,9102,8805,0.9996012717,9201,8806,400000,9001,8807,-100000,9001,,,,,, +19917,New Zealand Map Grid,9811,8801,-41,9102,8802,173,9102,8806,2510000,9001,8807,6023150,9001,,,,,,,,, +19919,Qatar National Grid,9807,8801,24.27,9110,8802,51.13,9110,8805,0.99999,9201,8806,200000,9001,8807,300000,9001,,,,,, +19920,Singapore Grid,9806,8801,1.1715528,9110,8802,103.5110808,9110,8806,30000,9001,8807,30000,9001,,,,,,,,, +19921,Spain,9801,8801,40,9102,8802,0,9102,8805,0.9988085293,9201,8806,600000,9001,8807,600000,9001,,,,,, +19922,Swiss Oblique Mercator 1903M,9815,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,600000,9001,8817,200000,9001 +19923,Swiss Oblique Mercator 1903C,9815,8811,46.570866,9110,8812,0,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,0,9001,8817,0,9001 +19924,Tobago Grid,9806,8801,11.1507843,9110,8802,-60.4109632,9110,8806,187500,9039,8807,180000,9039,,,,,,,,, +19925,Trinidad Grid,9806,8801,10.263,9110,8802,-61.2,9110,8806,430000,9039,8807,325000,9039,,,,,,,,, +19926,Stereo 70,9809,8801,46,9102,8802,25,9102,8805,0.99975,9201,8806,500000,9001,8807,500000,9001,,,,,, +19927,Stereo 33,9809,8801,45.54,9110,8802,25.23328772,9110,8805,0.9996667,9201,8806,500000,9001,8807,500000,9001,,,,,, +19928,Kuwait TM,9807,8801,0,9102,8802,48,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +19929,Sweden zone 2.5 gon V,9807,8801,0,9110,8802,15.48298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +19930,Greek Grid,9807,8801,0,9102,8802,24,9110,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +19931,Egyseges Orszagos Vetuleti,9815,8811,47.08398174,9110,8812,19.02548584,9110,8813,90,9110,8814,90,9110,8815,0.99993,9201,8816,650000,9001,8817,200000,9001 +19933,"Prince Edward Island Stereographic (ATS77)",9809,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,700000,9001,8807,400000,9001,,,,,, +19934,Lithuania 1994,9807,8801,0,9102,8802,24,9102,8805,0.9998,9201,8806,500000,9001,8807,0,9001,,,,,, +19935,Rectified Skew Orthomorphic Malaya Grid,9812,8806,40000,9062,8807,0,9062,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +19936,Portuguese National Grid,9807,8801,39.4,9110,8802,1,9110,8805,1,9201,8806,200000,9001,8807,300000,9001,,,,,, +19937,Tunisia Mining Grid,9816,8821,38.81973,9105,8822,7.83445,9105,8826,270,9036,8827,582,9036,,,,,,,,, +19938,Estonian National Grid,9802,8821,57.310319415,9110,8822,24,9110,8823,59.2,9110,8824,58,9110,8826,500000,9001,8827,6375000,9001,,, +19939,TM Baltic 93,9807,8801,0,9102,8802,24,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +19940,Levant Zone,9817,8801,34.39,9110,8802,37.21,9110,8805,0.9996256,9201,8806,300000,9001,8807,300000,9001,,,,,, +19941,Brazil Polyconic,9818,8801,0,9102,8802,-54,9102,8806,5000000,9001,8807,10000000,9001,,,,,,,,, +19942,British West Indies Grid,9807,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +19943,Barbados National Grid,9807,8801,13.1035,9110,8802,-59.3335,9110,8805,0.9999986,9201,8806,30000,9001,8807,75000,9001,,,,,, +19944,Quebec Lambert Projection,9802,8821,44,9110,8822,-68.3,9110,8823,60,9110,8824,46,9110,8826,0,9001,8827,0,9001,,, +19945,"New Brunswick Stereographic (ATS77)",9809,8801,46.3,9110,8802,-66.3,9110,8805,0.999912,9201,8806,300000,9001,8807,800000,9001,,,,,, +19946,"New Brunswick Stereographic (NAD83)",9809,8801,46.3,9110,8802,-66.3,9110,8805,0.999912,9201,8806,2500000,9001,8807,7500000,9001,,,,,, +19947,Austria Lambert,9802,8821,47.3,9110,8822,13.2,9110,8823,49,9110,8824,46,9110,8826,400000,9001,8827,400000,9001,,, +19948,Syria Lambert,9801,8801,34.39,9110,8802,37.21,9110,8805,0.9996256,9201,8806,300000,9001,8807,300000,9001,,,,,, +19949,Levant Stereographic,9809,8801,38,9105,8802,43.5,9105,8805,0.9995341,9201,8806,0,9001,8807,0,9001,,,,,, +19950,Swiss Oblique Mercator 1995,9815,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,2600000,9001,8817,1200000,9001 +19951,Nakhl e Taqi Oblique Mercator,9815,8811,27.31077837,9110,8812,52.3612741,9110,8813,0.34179803,9110,8814,0.34179803,9110,8815,0.999895934,9201,8816,658377.437,9001,8817,3044969.194,9001 +19952,Krovak,9819,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,42.3,9110 +19953,Qatar Grid,9806,8801,25.22565,9110,8802,50.4541,9110,8806,100000,9001,8807,100000,9001,,,,,,,,, +19954,Suriname Old TM,9807,8801,0,9110,8802,-55.41,9110,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +19955,Suriname TM,9807,8801,0,9110,8802,-55.41,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +19956,"Rectified Skew Orthomorphic Borneo Grid (chains)",9815,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,29352.4763,9042,8817,22014.3572,9042 +19957,"Rectified Skew Orthomorphic Borneo Grid (feet)",9815,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,1937263.44,9041,8817,1452947.58,9041 +19958,"Rectified Skew Orthomorphic Borneo Grid (metres)",9815,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,590476.87,9001,8817,442857.65,9001 +19959,Ghana National Grid,9807,8801,4.4,9110,8802,-1,9110,8805,0.99975,9201,8806,900000,9094,8807,0,9094,,,,,, +19960,"Prince Edward Isl. Stereographic (NAD83)",9809,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,400000,9001,8807,800000,9001,,,,,, +19961,Belgian Lambert 72,9802,8821,90,9110,8822,4.2202952,9110,8823,51.100000204,9110,8824,49.500000204,9110,8826,150000.013,9001,8827,5400088.438,9001,,, +19962,Irish Transverse Mercator,9807,8801,53.3,9110,8802,-8,9110,8805,0.99982,9201,8806,600000,9001,8807,750000,9001,,,,,, +19963,Sierra Leone New Colony Grid,9807,8801,6.4,9110,8802,-12,9110,8805,1,9201,8806,500000,9094,8807,0,9094,,,,,, +19964,New War Office Sierra Leone Grid,9807,8801,6.4,9110,8802,-12,9110,8805,1,9201,8806,800000,9094,8807,600000,9094,,,,,, +19965,US National Atlas Equal Area,9821,8806,0,9001,8807,0,9001,8828,45,9102,8829,-100,9102,,,,,,,,, +19966,Luxembourg Gauss,9807,8801,49.5,9110,8802,6.1,9110,8805,1,9201,8806,80000,9001,8807,100000,9001,,,,,, +19967,Slovenia Grid,9807,8801,0,9110,8802,15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +19968,"World Equidistant Cylindrical (Sphere)",9823,8801,0,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +19969,Portuguese Grid,9807,8801,39.4,9110,8802,1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19971,New Zealand Transverse Mercator 2000,9807,8801,0,9102,8802,173,9102,8805,0.9996,9201,8806,1600000,9001,8807,10000000,9001,,,,,, +19972,Irish Grid,9807,8801,53.3,9110,8802,-8,9110,8805,1.000035,9201,8806,200000,9001,8807,250000,9001,,,,,, +19973,Irish National Grid,9807,8801,53.3,9110,8802,-8,9110,8805,1,9201,8806,200000,9001,8807,250000,9001,,,,,, +19974,Modified Portuguese Grid,9807,8801,39.4,9110,8802,-8.0754862,9110,8805,1,9201,8806,180.598,9001,8807,-86.99,9001,,,,,, +19975,"Trinidad Grid (Clarke's feet)",9806,8801,10.263,9110,8802,-61.2,9110,8806,283800,9005,8807,214500,9005,,,,,,,,, +19976,ICN Regional,9802,8821,6,9102,8822,-66,9102,8823,9,9102,8824,3,9102,8826,1000000,9001,8827,1000000,9001,,, +19977,Aramco Lambert,9802,8821,25.0522236,9110,8822,48,9102,8823,17,9102,8824,33,9102,8826,0,9001,8827,0,9001,,, +19978,Hong Kong 1980 Grid,9807,8801,22.184368,9110,8802,114.10428,9110,8805,1,9201,8806,836694.05,9001,8807,819069.8,9001,,,,,, +19979,Portugal Bonne,9828,8801,39.4,9110,8802,1,9110,8806,0,9001,8807,0,9001,,,,,,,,, +19981,Lambert New Caledonia,9802,8821,-21.3,9110,8822,166,9110,8823,-20.4,9110,8824,-22.2,9110,8826,400000,9001,8827,300000,9001,,, +19982,TM Reunion,9807,8801,-21.07,9110,8802,55.32,9110,8805,1,9201,8806,50000,9001,8807,160000,9001,,,,,, +19983,Terre Adelie Polar Stereographic,9830,8826,300000,9001,8827,200000,9001,8832,-67,9102,8833,140,9102,,,,,,,,, +19984,British Columbia Albers,9822,8821,45,9102,8822,-126,9102,8823,50,9110,8824,58.3,9110,8826,1000000,9001,8827,0,9001,,, +19985,Europe Conformal 2001,9802,8821,52,9102,8822,10,9102,8823,35,9102,8824,65,9102,8826,4000000,9001,8827,2800000,9001,,, +19986,Europe Equal Area 2001,9820,8801,52,9102,8802,10,9102,8806,4321000,9001,8807,3210000,9001,,,,,,,,, +19987,Iceland Lambert 1900,9826,8801,65,9110,8802,-19.011965,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +19988,Iceland Lambert 1955,9826,8801,65,9102,8802,-18,9102,8805,1,9201,8806,500000,9001,8807,500000,9001,,,,,, +19989,Iceland Lambert 1993,9802,8821,65,9110,8822,-19,9110,8823,64.15,9110,8824,65.45,9110,8826,500000,9001,8827,500000,9001,,, +19990,Latvian Transverse Mercator,9807,8801,0,9102,8802,24,9102,8805,0.9996,9201,8806,500000,9001,8807,-6000000,9001,,,,,, +19991,Jan Mayen Grid,9807,8801,0,9110,8802,-8.3,9110,8805,1,9201,8806,50000,9001,8807,-7800000,9001,,,,,, +19992,Antarctic Polar Stereographic,9829,8806,0,9001,8807,0,9001,8832,-71,9102,8833,0,9102,,,,,,,,, +19993,Australian Antarctic Polar Stereographic,9829,8806,6000000,9001,8807,6000000,9001,8832,-71,9102,8833,70,9102,,,,,,,,, +19994,Australian Antarctic Lambert,9802,8821,-50,9110,8822,70,9110,8823,-68.3,9110,8824,-74.3,9110,8826,6000000,9001,8827,6000000,9001,,, +19995,Jordan Transverse Mercator,9807,8801,0,9102,8802,37,9102,8805,0.9998,9201,8806,500000,9001,8807,-3000000,9001,,,,,, +19996,Soldner Berlin,9806,8801,52.25071338,9110,8802,13.37379332,9110,8806,40000,9001,8807,10000,9001,,,,,,,,, +19997,Kuwait Transverse Mercator,9807,8801,0,9102,8802,48,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +19998,Guernsey Grid,9807,8801,49.3,9110,8802,-2.25,9110,8805,0.999997,9201,8806,47000,9001,8807,50000,9001,,,,,, +19999,Jersey Transverse Mercator,9807,8801,49.225,9102,8802,-2.135,9102,8805,0.9999999,9201,8806,40000,9001,8807,70000,9001,,,,,, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/freexl.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoColor.svg =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoColor.svg (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoColor.svg (revision 2866) @@ -0,0 +1,128 @@ + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/Readme.txt (revision 2866) @@ -0,0 +1 @@ +GDAL support. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/de-DE/DotSpatial.Symbology.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/gdal19.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Compatibility.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Compatibility.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Compatibility.xml (revision 2866) @@ -0,0 +1,3147 @@ + + + + DotSpatial.Compatibility + + + + + AppInfo + + + + + AppInfo + + + + + The name of the main application. + + + + + The default directory for file dialogs + + + + + The icon to be displayed as the default form icon + + + + + The path to the help file to be displayed from the Help menu. + + + + + Whether or not to show a welcome screen (overriding the Splash Screen) + + + + + The image to be displayed on the splash screen. + + + + + How long the splash screen should be displayed + + + + + The URL to be displayed on the Help->About dialog. + + + + + Whether to display a splash screen on starting the application + + + + + The name of the plugin responsible for displaying a custom welcome screen + in response to the WELCOME_SCREEN message. + + + + + The name of the main application. + + + + + The default directory for file dialogs + + + + + The icon to be displayed as the default form icon + + + + + The path to the help file to be displayed from the Help menu. + + + + + Whether or not to show a welcome screen (overriding the Splash Screen) + + + + + The image to be displayed on the splash screen. + + + + + How long the splash screen should be displayed + + + + + The URL to be displayed on the Help->About dialog. + + + + + Whether to display a splash screen on starting the application + + + + + The name of the plugin responsible for displaying a custom welcome screen + in response to the WELCOME_SCREEN message. + + + + + Location of a click event within the legend. + + + + The user clicked outside of any group or layer. + + + The user clicked on a layer. + + + The user clicked on a group. + + + + CursorModes + + + + + No built in behavior + + + + + Left click to Pan + + + + + Select + + + + + Left click to zoom in + + + + + Right click to zoom in + + + + + HJustification + + + + + The item is centered + + + + + The item is justified to the left + + + + + The item is justified to the right + + + + + Object given back when a ComboBox is added to the Toolbar. + + + + + Returns a collection of items + + + + + Gets/Sets the cursor + + + + + Gets/Sets the description for the control (used when the user customizes the Toolbar) + + + + + Gets/Sets the style of the combo box + + + + + Gets/Sets the enabled state of the ComboBoxItem + + + + + Gets the name of the ComboBoxItem object + + + + + Gets/Sets the zero based index of the selected item + + + + + Gets/Sets the selected object + + + + + Gets/Sets the selected item text + + + + + Gets/Sets the length of the highlighted text + + + + + Gets/Sets the start index of the highlighted text + + + + + Gets/Sets the text for this object + + + + + Gets/Sets the tooltip text for the control + + + + + Gets/Sets the width of the control + + + + + This interface is used to access the list of shapes that were found during an Identify function call. + + + + + Returns the number of shapes that were identified. + + + + + Returns the shape index of an identified that is stored at the position + specified by the Index parameter. + + + + + The draw interface is used to add custom drawing to the DotSpatial view. + + + + + Clears all custom drawing on the specified drawing layer. + + Handle of the drawing layer to clear. + Clearing a single drawing (using the drawing handle) is faster than clearing all drawings. + + + + Clears all custom drawings on all drawing layers. + + Clearing a single drawing (using the drawing handle) is faster than clearing all drawings. + + + + Draws a circle on the current drawing layer. + + X coordinate of the center of the circle. + Y coordinate of the center of the circle. + Radius of the circle in pixels. + Color to use when drawing the circle. + Specifies whether or not the circle is drawn filled. + + + + Draws a line on the current drawing layer. + + First x coordinate. + First y coordinate. + Second x coordinate. + Second y coordinate. + Width of the line in pixels + Color to draw the line with. + + + + Draws a point on the current drawing layer. + + X coordinate. + Y coordinate. + Size of the point in pixels. + Color to draw the point with. + + + + Draws a polygon on the current drawing layer. + + Array of x points for the polygon. + Array of y points for the polygon. + Color to draw the polygon with. + Specifies whether or not to fill the polygon. + The points in a polygon should be defined in a clockwise order and have no + crossing lines if they are to be filled. The first and last point should be the same. + + + + Creates a new drawing layer. + + Specifies whether to use screen coordinates or projected map coordinates. + Returns a drawing handle. You should save this handle if you wish to clear this drawing later. + The concept of drawing layers is only partially implemented in this version of the MapWinGIS, which is used + by the DotSpatial. There is only one active drawing layer, which is the most recently created one. There is no + way to access any other drawing layers other than the current one. + + + + Specifies whether or not to use double buffering. Double buffering makes the drawing of the + custom drawings smoother (not flickering). It is recommended that you use double buffering. + + + + + IdentifiedLayers is used to access the list of layers that contained any + information gathered during an Identify function call. + + + + + Returns the number of layers that had information from the Identify function call. + + + + + Returns an IdentifiedShapes object containing inforamtion about shapes that were + identified during the Identify function call. + + + + + Layer + + + + + Adds a label to this layer. + + The text of the label. + The color of the label text. + X position in projected map units. + Y position in projected map units. + Text justification. Can be hjCenter, hjLeft or hjRight. + + + The following function was added for plug-in 3.1 version compatibility + + Adds an extended label to this layer. + + The text of the label. + The color of the label text. + X position in projected map units. + Y position in projected map units. + Text justification. Can be hjCenter, hjLeft or hjRight. + The rotation angle for the label. + + + + Clears all labels for this layer. + + + + + Clears out the list of images to be used by the tkImageList point type. + See also UserPointImageListAdd, UserPointImageListItem, UserPointImageListCount, + and (on the shape interface) ShapePointImageListID. + + + + + Sets the font to use for all labels on this layer. + + Name of the font or font family. Example: "Arial" + Size of the font. + + + + Gets the underlying MapWinGIS object for this layer. The object can be either a + MapWinGIS.Shapefile or a MapWinGIS.Image. If the layer is a grid layer the + MapWinGIS.Grid object can be retrieved using the GetGridObject method. + + + + + Gets a single row in the user defined line stipple. There are 32 rows in a fill stipple + (0-31). Each row is defined the same way as a UserLineStipple. + + The index of the row to get. Must be between 0 and 31 inclusive. + A single stipple row. + + + + Hides all vertices in the shapefile. Only applies to line and polygon shapefiles. + + + + + Loads the shapefile rendering properties from a .mwsr file whose base fileName matches the shapefile. + If the file isn't found, false is returned. + Function call is ignored and returns false if the layer is a grid. + + + + + Loads the shapefile rendering properties from the specified fileName. + Function call is ignored and returns false if the layer is a grid. + + + + + Moves this layer to a new position in the layer list. The highest position is the topmost layer + in the display. + + The new position. + The group to put this layer in. + + + + Saves the shapefile rendering properties to a .mwsr file whose base fileName matches the shapefile. + Function call is ignored and returns false if the layer is a grid. + + + + + Saves the shapefile rendering properties to the specified fileName. + Function call is ignored if the layer is a grid. + + + + + Sets a single row in the user defined line stipple. There are 32 rows in a fill stipple + (0-31). Each row is defined the same way as a UserLineStipple. + + The index of the row to set. Must be between 0 and 31 inclusive. + The row value to set in the fill stipple. + + + + Updates the label information file stored for this layer. + + + + + Adds an image to the list of point images used by the tkImageList point type. + See also UserPointImageListItem, UserPointImageListCount, ClearUDPointImageList, + and (on the shape interface) ShapePointImageListID. + + The new image to add. + The index for this image, to be passed to ShapePointImageListID or other functions. + + + + Gets the count of images from the list of images to be used by the tkImageList point type. + See also UserPointImageListAdd, UserPointImageListItem, ClearUDPointImageList, + and (on the shape interface) ShapePointImageListID. + + The count of items in the image list. + + + + Gets an image from the list of images to be used by the tkImageList point type. + See also UserPointImageListAdd, UserPointImageListCount, ClearUDPointImageList, + and (on the shape interface) ShapePointImageListID. + + The image index to retrieve. + The index associated with this index; or null/nothing if nonexistant. + + + + Zooms the display to this layer, taking into acount the View.ExtentPad. + + + + + Shows all vertices for the entire shapefile. Applies only to line and polygon shapefiles. + + The color to draw vertices with. + The size of each vertex. + + + + Returns information about the given layer in a human-readible string. + + + + + Returns the MapWinGIS.Grid object associated with the layer. If the layer is not a + grid layer, "Nothing" will be returned. + + + + + Indicates whether to skip over the layer when saving a project. + + + + + Gets or sets the color of this shapefile. Applies only to shapefiles. Setting the color of the + shapefile will clear any selected shapes and will also reset each individual shape to the same color. + The coloring scheme will also be overriden. + + + + + Gets or sets the coloring scheme. The Shapefile and Grid objects each have + their own coloring scheme object. It is important to cast the ColoringScheme to the + proper type. + + + + + Gets or sets whether or not to draw the fill for a polygon shapefile. + + + + + Gets or sets the extents where the layer changes from visible to not visible or vice versa. + + If the map is zoomed beyond these extents, the layer is invisible until the map is zoomed to + be within these extents. + + + + + Gets or sets whether the layer's coloring scheme is expanded in the legend. + + + + + Returns the extents of this layer. + + + + + Returns the fileName of this layer. If the layer is memory-based only it may not have a valid fileName. + + + + + Gets or sets the stipple pattern to use for the entire shapefile. + + The valid values for this property are: + + Custom + DashDotDash + Dashed + Dotted + None + + + + + + Gets or sets the position of the layer without respect to any group. + + + + + Gets or sets the handle of the group that this layer belongs to. + + + + + Gets or sets the position of the layer within a group. + + + + + Returns the layer handle of this layer. The DotSpatial automatically sets the LayerHandle for the layer, and it cannot be reset. + + + + + Indicates whether to skip over the layer when drawing the legend. + + + + + Gets or sets the icon to use in the legend for this layer. + + + + + Gets or sets the color that represents transparent in an Image layer. + + + + The following label properties were added for plug-in 3.1 version compatibility + + Determines the distance from the label point to the text for the label in pixels. + + + + + Determines whether labels are scaled for this layer. + + + + + Determines whether labels are shadowed for this layer. + + + + + Determines the color of the labels shadows. + + + + + Turns labels on or off for this layer. + + + + + Returns the type of this layer. Valid values are: + + Grid + Image + Invalid + LineShapefile + PointShapefile + PolygonShapefile + + + + + + Gets or sets the line or point size. If the PointType is ptUserDefined then the + size of the user defined point will be multiplied by the LineOrPointSize. For all other + points and for lines, the LineOrPointSize is represented in pixels. + + + + The following was added for plug-in 3.1 version compatibility + + Sets the width between lines for multiple-line drawing styles (e.g, doublesolid). + + + + + Gets or sets the stipple pattern to use for the entire shapefile. + + The valid values for this property are: + + Custom + DashDotDash + Dashed + Dotted + None + + + + + + Returns or sets the projection of this layer. + Projections must be / will be in PROJ4 format. + If no projection is present, "" will be returned. + If an invalid projection is provided, it's not guaranteed to be saved! + + + + + Gets or sets the layer name. + + + + + Gets or sets the outline color for this layer. Only applies to polygon shapefile layers. + + + + + Gets or sets the Point Image Scheme object for a given point layer. To be used from DotSpatial only + + + + + Gets or sets the point type for this shapefile. + + The valid values for this property are: + + ptCircle + ptDiamond + ptSquare + ptTriangleDown + ptTriangleLeft + ptTriangleRight + ptTriangleUp + ptUserDefined + + + + + + This property gives access to all shapes in the layer. Only applies to shapefile layers. + + + + + Gets or sets the tag for this layer. The tag is simply a string that can be used by the + programmer to store any information desired. + + + + + Specifies whether or not to use DynamicVisibility. + + + + + Determines whether MapWinGIS ocx will hide labels which collide with already drawn labels or not. + + + + + Gets or sets the user defined line stipple. A line stipple is simply a 32-bit integer + whose bits define a pattern that can be displayed on the screen. For example, the value + 0011 0011 in binary would represent a dashed line ( -- --). + + + + + Gets or sets the user defined point image for this layer. To display the user defined point + the layer's PointType must be set to ptUserDefined. + + + + + Gets or sets whether to use transparency on an Image layer. + + + + + (Doesn't apply to line shapefiles) + Indicates whether the vertices of a line or polygon are visible. + + + + + Gets or sets whether the layer is visible. + + + + + Layers + + + + + Default add layer overload. Displays an open file dialog + + An array of DotSpatial.Interfaces.Layer objects. + + + + Adds a layer by fileName. + + Returns a Layer object. + + + + Adds a layer by fileName. The layer name is also set. + + Returns a Layer object. + + + + Adds an Image layer to the DotSpatial. + + Returns a Layer object. + + + + Adds an Image layer to the DotSpatial with the specified layer name. + + Returns a Layer object. + + + + Adds a FeatureSet layer to the DotSpatial. + + Returns a Layer object. + + + + Adds a FeatureSet layer to the DotSpatial with the specified layer name. + + Returns a Layer object. + + + + Adds a FeatureSet layer to the DotSpatial with the specified properties. + + Returns a Layer object. + + + + Adds a FeatureSet layer to the DotSpatial with the specified properties. + + Returns a Layer object. + + + + Adds a Raster layer to the DotSpatial. + + Returns a Layer object. + + + + Adds a Raster layer to the DotSpatial, with the specified coloring scheme. + + Returns a Layer object. + + + + Adds a Raster layer to the DotSpatial with the specified layer name. + + Returns a Layer object. + + + + Adds a Rster object to the DotSpatial with the specified properties. + + Returns a Layer object. + + + + Adds a layer by fileName. The layer name is also set, as well as the legend visibility. + + Returns a Layer object. + + + + Adds a layer to the map, optionally placing it above the currently selected layer (otherwise at top of layer list). + + The name of the file to add. + The name of the layer, as displayed in the legend. + Whether or not the layer is visible upon adding it. + Whether the layer should be placed above currently selected layer, or at top of layer list. + + + + Removes all layers from the map. + + + + + Returns true if the layer handle specified belongs to a valid layer. Drawing layers are not + considered normal layers so this function will not return consistent results if a drawing + layer is passed in. + + Handle of the layer to check. + True if the layer handle is valid. False otherwise. + + + + Moves a layer to another position and/or group. + + Handle of the layer to move. + New position in the target group. + Group to move the layer to. + + + + Rebuilds a grid layer using the specified GridColorScheme + + Handle of the grid layer. + Grid object corresponding to that layer handle. + Coloring scheme to use when rebuilding. + + + + + Removes the layer from the DotSpatial. + + + + + + Finds a layer handle when given the global position of a layer. + + Position in the layers list, disregarding groups. + The handle of the layer at the specified position, or -1 if no layer is found there. + + + + Gets or sets the current layer handle. + + + + + Allows access to group properties in the legend. + + + + + Returns the number of layers loaded in the DotSpatial. Drawing layers are not counted. + + + + + Returns the layer object corresponding the the specified LayerHandle + + + + + IMapWin + + + + + Returns dialog title for the main window to the default "project name" title. + + + + + Prompt the user to select a projection, and return the PROJ4 representation of this + projection. Specify the dialog caption and an optional default projection ("" for none). + + The text to be displayed on the dialog, e.g. "Please select a projection." + The PROJ4 projection string of the projection to default to, "" for none. + + + + + Refreshes the DotSpatial display. + + + + + Refreshes Dynamic Visibility + + + + + Sets the dialog title to be displayed after the "AppInfo" name for the main window. + Overrides the default "project name" title. + + + + + Displays the DotSpatial error dialog. + + + + + + Displays the DotSpatial error dialog, sending to a specific address. + + + + + + + Returns the underlying MapWinGIS activex control for advanced operations. + + + + + Provides control over application-level settings like the app name. + + + + + Specify whether the full project path should be specified rather than just fileName, in title bar for main window. + + + + + Gets the last error message set. Note: This error message could have been set at any time. + + + + + Returns the Layers object that handles layers. + + + + + Returns the Menus object that manages the menus. + + + + + Returns the Plugins object that manages plugins. + + + + + Returns the PreviewMap object that manages the preview map. + + + + + Provides control over project and configuration files. + + + + + Provides access to report generation methods and properties. + + + + + Returns the StausBar object that manages the status bar. + + + + + Returns the Toolbar object that manages toolbars. + + + + + Provides access to the user panel in the lower right of the DotSpatial form. + + + + + User-interactive functions. Used to prompt users to enter things, or otherwise prompt users. + + + + + Returns the View object that handles the map view. + + + + + An object that represents a menu item within the Main Menu + + + + + Gets a submenu item by its 0-based index + + + + + Gets a submenu item by its string name + + + + + Gets/Sets the Text shown for the MenuItem + + + + + Gets/Sets the icon for the menu item + + + + + Gets/Sets the category for this item (used when the user customizes the menu) + + + + + Gets/Sets the checked state of the item + + + + + Gets/Sets the tool tip text that will pop up for the item when a mouse over event occurs + + + + + Gets/Sets whether or not this item should draw a dividing line between itself and any + items before this item + + + + + Gets/Sets the cursor used when the mouse is over this control + + + + + Gets/Sets the description of this menu item, used in customization of menu by the user + + + + + Gets/Sets the Displayed state of this item + + + + + Gets/Sets the enabled state of this item + + + + + Gets the Name of this item + + + + + Gets/Sets the visibility state of this item + + + + + Gets the count of the submenu items contained within this item + + + + + Returns whether this menu item is the first visible submenu item. + This is only valid in submenus, i.e. menus which have a parent. + + + + + Used for manipulation of the menu system for the application + + + + + Adds a menu with the specified name + + + + + Adds a menu with the specified name and icon + + + + + Adds a menu with the specified name, icon and text + + + + + Adds a menu with the specified name to the menu indicated by ParentMenu + + + + + Adds a menu with the specified name and icon to the menu indicated by ParentMenu + + + + + Adds a menu with the specified name, icon and text to the specified ParentMenu + + + + + Adds a menu with the specified name, icon and text to the specified ParentMenu and after the specifed item + + + + + Adds a menu with the specified name and text to the specified ParentMenu and before the specifed item + + + + + Removes a MenuItem + + Name of the item to remove + true on success, false otherwise + + + + Gets a MenuItem by its name + + + + + During the Initialize method, the + + + + + This method is called by the DotSpatial when the plugin is loaded. + + The IMapWin interface to use when interacting with the DotSpatial. + The windows handle of the DotSpatial form. This can be used to make the DotSpatial the parent of any forms in the plugin. + + + + This method is called by the DotSpatial when a toolbar or menu item is clicked. + + Name of the item that was clicked. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when one or more layer(s) is/are added. + + An array of Layer objects that were added. + + + + This method is called by the DotSpatial when all layers are cleared from the map. + + + + + This method is called by the DotSpatial when a layer is removed from the map. + + Handle of the layer that was removed. + + + + This method is called by the DotSpatial when a layer is selected in code or by the legend. + + Handle of the newly selected layer. + + + + This method is called by the DotSpatial when the user double-clicks on the legend. + + Handle of the layer or group that was double-clicked + Location that was clicked. Either a layer or a group. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the user presses a mouse button on the legend. + + Handle of the layer or group that was under the cursor. + The mouse button that was pressed. You can use the vb6Buttons enumeration to determine which button was pressed. + Location that was clicked. Either a layer or a group + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the user releases a mouse button on the legend. + + Handle of the layer or group that was under the cursor. + The mouse button that was released. You can use the vb6Buttons enumeration to determine which button it was. + Location that was clicked. Either a layer or a group + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the extents of the map have changed. + + + + + This method is called by the DotSpatial when the user presses a mouse button over the map. + + The button that was pressed. These values can be compared to the vb6Butttons enumerations. + This value represents the state of the ctrl, alt and shift keyboard buttons. The values use VB6 values. + The x coordinate in pixels. + The y coordinate in pixels. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the user moves the mouse over the map display. + + The x coordinate in pixels. + The y coordinate in pixels. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the user releases a mouse button over the map. + + The button that was released. These values can be compared to the vb6Butttons enumerations. + This value represents the state of the ctrl, alt and shift keyboard buttons. The values use VB6 values. + The x coordinate in pixels. + The y coordinate in pixels. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when the user completes a dragging operation on the map. + + The rectangle that was selected, in pixel coordinates. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + This method is called by the DotSpatial when a project is being loaded. + + Filename of the project file. + Settings string for this plugin from the project file. + + + + This method is called by the DotSpatial when a project is being saved. + + Filename of the project file. + Reference parameter. Set this value in order to save your plugin's settings string in the project file. + + + + This method is called by the DotSpatial when the plugin is unloaded. + + + + + This method is called by the DotSpatial when shapes are selected by the user. + + Handle of the shapefile layer that was selected on. + The SelectInfo object containing information about the selected shapes. + + + + This message is relayed by the DotSpatial when another plugin broadcasts a message. Messages can be used to send messages between plugins. + + The message being relayed. + Set this parameter to true if your plugin handles this so that no other plugins recieve this message. + + + + Author of the plugin. + + + + + Short description of the plugin. + + + + + Plugin serial number. NO LONGER NEEDED; kept for backward compatibility. + + + + + Name of the plugin. + + + + + Build date. + + + + + Plugin version. + + + + + Interface for manipulating plugins of the IPlugin type. + This differs from "CondensedPlugins" in that the Item ([]) property returns IPlugin + instead of IPluginDetails. The original "Plugins" (this one) cannot be changed without breaking + the backward compatibility of the interface. + + + + + clears all plugins from the list of available plugins, but doesn't unload loaded plugins + + + + + Add a plugin from a file + + path to the plugin + true on success, false on failure + + + + Adds any compatible plugins from a directory(recursive into subdirs) + + path to the directory + true on success, false otherwise + + + + Loads a plugin from an instance of an object + + the Plugin object to load + The Key by which this plugin can be identified at a later time + A string that contains any settings that should be passed to the plugin after it is loaded into the system + true on success, false otherwise + + + + Loads a plugin from an instance of an object + + the Plugin object to load + The Key by which this plugin can be identified at a later time + true on success, false otherwise + + + + Starts (loads) a specified plugin + + Identifying key for the plugin to start + true on success, false otherwise + + + + Stops (unloads) a specified plugin + + Identifying key for the plugin to stop + + + + Removes a plugin from the list of available plugins and unloads the plugin if loaded + + 0-based integer index or string key for the plugin to remove + + + + Checks to see if a plugin is currently loaded (running) + + Unique key identifying the plugin + true if loaded, false otherwise + + + + Shows the dialog for loading/starting/stopping plugins + + + + + Sends a broadcast message to all loaded plugins + + The message that should be sent + + + + Returns the key belonging to a plugin with the given name. An empty string is returned if the name is not found. + + The name of the plugin + + + + number of available plugins + + + + + Gets an IPlugin object from the list of all loaded plugins + 0-based index into the list of plugins + + + + + Gets or Sets the default folder where plugins are loaded from + + + + + Interface for manipulating the PreviewMap + + + + + Tells the PreviewMap to rebuild itself by getting new data from the main view + + + + + Tells the PreviewMap to rebuild itself by getting new data from the main view (current extents). + + + + + Tells the PreviewMap to rebuild itself by getting new data from the main view. + Update from full extent or current view? + + + + + Loads a picture into the PreviewMap from a specified file + + The path to the file to load + true on success, false on failure + + + + Gets/Sets the back color + + + + + Gets/Sets the Picture to be displayed + + + + + Gets/Sets the color used for the LocatorBox + + + + + Project + + + + + Loads a project file. + + Filename of the project to load. + Returns true if successful. + + + + Loads a project file into the current project as a subgroup. + + Filename of the project to load. + + + + Saves the current project. + + Filename to save the project as. + Returns true if successful. + + + + Saves the current configuration to a configuration file. + + The fileName to save the configuration as. + Returns true if successful. + + + + Returns the fileName of the configuration file that was used to load the current DotSpatial project. + + + + + Returns whether the configuration file specified by the project has been loaded. + + + + + Returns the fileName of the current project. + + + + + Return or set the current map units, in the format + "Meters", "Feet", etc + + + + + Return or set the current alternate display units, in the format + "Meters", "Feet", etc + + + + + Gets or sets the project modified flag. + + + + + Return or set the current project projection, in the format + "+proj=tmerc +ellps=WGS84 etc etc +datum=WGS84" + + + + + Returns an ArrayList of the recent projects (the full path to the projects) + + + + + Gets or sets the option to save shape-level formatting. + + + + + Reports + + + + + Similar to GetLegendSnapshot except that only one layer is considered. + + Handle of the layer to take a snapshot of. + Maximum width of the image. The height of the image depends on the coloring scheme of the layer. + + + + Returns an image of the legend. + + Specifies that only the visible layers are part of the snapshot. + Maximum width of the image. The height of the image depends on the number of layers loaded. + + + + Returns an image of a north arrow. + + + + + Returns an image that represents an accurate scale bar. + + You must specify what the map units are. + The unit of measurement to display on the scale bar. This function can convert the map units to any other unit. + Maximum width of the scale bar image. + + + + Returns an image that represents an accurate scale bar. + + You must specify what the map units are. + The unit of measurement to display on the scale bar. This function can convert the map units to any other unit. + Maximum width of the scale bar image. + + + + Returns a MapWinGIS.Image of the view at the specified extents. + + The area that you wish to take the picture of. Uses projected map units. + + + + The SelectedShape interface is used to access information about a shape that is selected in the DotSpatial. + + + + + Initializes all information in the SelectedShape object then highlights the shape on the map. + + Index of the shape in the shapefile. + Color to use when highlighting the shape. + + + + Returns the extents of this selected shape. + + + + + Returns the shape index of this selected shape. + + + + + This interface is used to manage and access all selected shapes. + + All selection is done only to the selected layer. The selected layer handle can be accessed using the LayerHandle property. + + + + Adds a SelectedShape object to the managed collection of all selected shapes. + + The SelectedShape object to add. + + + + Adds a new SelectedShape to the collection from the provided shape index. + + The index of the shape to add. + The color to use when highlighting the shape. + + + + Clears the list of selected shapes, returning each selected shape to it's original color. + + + + + Removes a SelectedShape from the collection, reverting it to it's original color. + + Index in the collection of the SelectedShape. + + + + Removes a SelectedShape from the collection, reverting it to it's original color. + + The shape index of the SelectedShape to remove. + + + + Returns the LayerHandle of the selected layer. + + + + + Returns the number of shapes that are currently selected. + + + + + Returns the total extents of all selected shapes. + + + + + Returns the SelectedShape at the specified index. + + + + + Used to manipulate the status bar at the bottom of Mapwindow. + + + + + Adds a new panel to the status bar. This function has been deprecated. Please use the + AddPanel(Text) overload. + + The StatusBarItem that was just added + + + + Adds a new panel to the status bar. This function has been deprecated. Please use the + AddPanel(Text) overload. + + The index at which the panel should be added + The StatusBarItem that was just added + + + + This is the preferred method to use to add a statusbar panel. + + Text to display in the panel. + Position to insert panel at. + Width of the panel in pixels. + Panel AutoSize property. + A StatusBarPanel object. + + + + Removes the specified Panel. There must always be one panel. If you remove the last panel, the DotSpatial will automatically add one. + + Zero-Based index of the panel to be removed + + + + Removes the panel object specified. There must always be one panel. If you remove the last panel, the DotSpatial will automatically add one. + + StatusBarPanel to remove. + + + + This function makes the progress bar fit into the last panel of the status bar. Call this function whenever you change the size of ANY panel in the status bar. You do not need to call this on AddPanel or RemovePanel. + + + + + Gets/Sets the enabled state of the StatusBar + + + + + Gets/Sets whether or not the StatusBar's ProgressBar should be shown + + + + + Gets/Sets the value of the StatusBar's ProgressBar + + + + + Iterator for all panels within the StatusBar + + Index of the StatusBarItem to retrieve + + + + Returns the number of panels in the StatusBar. + + Number of panels in the StatusBar. + + + + The object given back when a panel is added to the status bar. This object can + be used to + + + + + Gets/Sets the Alignment of the text + + + + + Gets/Sets whether or not this StatusBarItem should auto size itself + + + + + Gets/Sets the minimum allowed width for this StatusBarItem + + + + + Gets/Sets the Text within the StatusBarItem + + + + + Gets/Sets the width of the StatusBarItem + + + + + Used to add/remove Toolbars, buttons, combo boxes, etc. to/from the application + + + + + Adds a Toolbar group to the Main Toolbar + + The name to give to the Toolbar item + true on success, false on failure + + + + Adds a button to a specified to the default Toolbar + + The name to give to the new ToolbarButton + + + + Adds a button to a specified to the default Toolbar + + The name to give to the new ToolbarButton + Should this button support drop-down items? + + + + Adds a button to a specified to the default Toolbar + + The name to give to the new ToolbarButton + /// The name of the Toolbar to which this ToolbarButton should belong (if null or empty, then the default Toolbar will be used + Should this button support drop-down items? + + + + Adds a separator to a toolstrip dropdown button. + + The name to give to the new separator. + The name of the Toolbar to which this separator should belong (if null or empty, then the default Toolbar will be used. + The name of the ToolbarButton to which this new separator should be added as a subitem. + + + + Adds a button to a specified to the default Toolbar + + The name to give to the new ToolbarButton + The Icon/Bitmap to use as a picture on the ToolbarButton face + + + + Adds a button to a specified to the default Toolbar + + The name to give to the new ToolbarButton + The Icon/Bitmap to use as a picture on the ToolbarButton face + The text name for the ToolbarButton. This is the text the user will see if customizing the Toolbar + + + + Adds a button to a specified to the specified Toolbar. + + The name to give to the new ToolbarButton. + The name of the Toolbar to which this ToolbarButton should belong (if null or empty, then the default Toolbar will be used. + The name of the ToolbarButton to which this new ToolbarButton should be added as a subitem. + The name of the ToolbarButton after which this new ToolbarButton should be added. + + + + Adds a ComboBoxItem to a specified to the default Toolbar. + + The name to give to the new ComboBoxItem. + The name of the Toolbar to which this ToolbarButton should belong. + The name of the ToolbarButton/ComboBoxItem afterwhich this new item should be added. + + + + returns the specified ToolbarButton (null on failure) + + The name of the ToolbarButton to retrieve + + + + returns the specified ComboBoxItem + + Name of the item to retrieve + + + + Returns the number of buttons on the specified toolbar, or 0 if the toolbar can't be found. + + The name of the toolbar. + The number of buttons on the toolbar. + + + + Presses the specified ToolBar button (if it's enabled) as if a user + had pressed it. + + The name of the toolbar button to press. + true on success, false on failure (i.e. bad toolbar button name) + + + + Removes the specified Toolbar and any ToolbarButton/ComboBoxItems contained within the control + + The name of the Toolbar to be removed + true on success, false on failure + + + + Removes the specified ToolbarButton item + + The name of the ToolbarButton to be removed + true on success, false on failure + + + + Removes the specified ComboBoxItem + + The name of the ComboBoxItem to be removed + true on success, false on failure + + + + Object given back when a button is added to a Toolbar. This + object can then be used to manipulate (change properties) for the button. + + + + + Returns the Subitem with the specified zero-based index (null if out of range) + + + + + returns the Subitem with the specified name (null if it doesn't exist) + + + + + Gets/Sets a flag indicating that this item starts a new group by drawing a seperator line if necessary + + + + + Gets/Sets the Category for this ToolbarButton item (used when user is customizing the Toolbar) + + + + + Gets/Sets the Cursor for this control + + + + + Gets/Sets the description for the control (used when the user customizes the Toolbar) + + + + + Gets/Sets a flag marking whether or not this ToolbarButton is displayed + + + + + Gets/Sets the enabled state + + + + + Gets the name of the ToolbarButton item + + + + + Gets the number of subitems + + + + + Gets/Sets the picture for the ToolbarButton + + + + + Gets/Sets the pressed state of the ToolbarButton + + + + + Gets/Sets the Text/Caption of the ToolbarButton + + + + + Gets/Sets the tooltip text for the control + + + + + Gets/Sets the visibility of the ToolbarButton + + + + + A function that is called upon close of a panel. The + name (caption) of the closed panel is passed into the + OnPanelClose function. + + + + + UiPanel + + + + + Adds a function (onCloseFunction) which + is called when the panel specified by caption is closed. + + + + + Returns a Panel that can be used to add dockable content to DotSpatial. + + + + + Returns a Panel that can be used to add dockable content to DotSpatial. + + + + + Deletes the specified panel. + + + + + Hides or shows a panel without necessarily deleting it. + + + + + UserInteraction + + + + + Prompt the user to select a projection, and return the PROJ4 representation of this + projection. Specify the dialog caption and an optional default projection ("" for none). + + The text to be displayed on the dialog, e.g. "Please select a projection." + The PROJ4 projection string of the projection to default to, "" for none. + + + + + Retrieve a color ramp, defined by a start and end color, from the user. + + The start color to initialize the dialog with. + The end color to initialize the dialog with. + The start color that the user selected. + The end color that the user selected. + Boolean, true if the effort was successful. + + + + The View interface is used to manipulate or work with the main DotSpatial display. + + + + + Clears all selected shapes from the DotSpatial, reverting them to their original colors. + + + + + Queries all of the active shapefile layers for any within the specified tolerance of the given point. + + The x coordinate, in projected map units, of the point to query. + The y coordinate, in projected map units, of the point to query. + Tolerance is the distance, in projected map units, around the point to include in the query. + Returns an IdentifiedLayers object containing query results. + + + + Prevents the legend from showing any changes made to it until the UnlockLegend function is called. + The legend maintains a count of the number of locks it has, only redrawing if there are no locks. + + + + + Unlocking the Legend allows it to redraw and update the view to reflect any changes that were made. + The legend maintains a count of the number of locks it has, only redrawing if there are no locks. + There can never be a negative number of locks. + + + + + Prevents the map from updating due to any changes made to the layers that are loaded until the UnlockMap function is called. + The map maintains a count of the number of locks it has, only redrawing if there are no locks. + + + + + Allows the map to redraw entirely when changes are made. + The map maintains a count of the number of locks it has, only redrawing if there are no locks. + There can never be a negative number of locks. + + + + + Converts a point in pixel coordinates to a point in projected map units. + + X coordinate of the original point in pixels. + Y coordinate of the original point in pixels. + ByRef. X coordinate of the projected point. + ByRef. Y coordinate of the projected point. + + + + Converts a point in projected map units to a point in screen coordinates. + + X coordinate of the projected map point. + Y coordinate of the projected map point. + ByRef. X coordinate of the screen point in pixels. + ByRef. Y coordinate of the screen point in pixels. + + + + Forces the map to redraw. This function has no effect if the map is locked. + + + + + Shows a tooltip under the cursor on the map. + + The text to display in the tooltip. + Number of milliseconds before the tooltip automatically disappears. + + + + Zooms the view to the maximum extents of all the loaded and visible layers. + + + + + Zooms the display in by the given factor. + + The percentage to zoom by. + + + + Zooms the display out by the given factor. + + The percentage to zoom by. + + + + Zooms to the previous extent. + + + + + Takes a snapshot of the currently visible layers at the extents specified. + + The area to take the snapshot of. + + + + Triggers reloading of field values for the given layer. No action will occur if the layer handle is invalid, not a shapefile, or has no labels. + + + + + + Displays the label editor form for the specified layer. No action will occur if the layer handle is invalid or not a shapefile. + + + + + + Selects shapes in the mapwindow from the specified point. The tolerance used is the global + tolerance set through the View.SelectionTolerance. This function uses the same selection + routines that are called when a user selects with a mouse. + + The x coordinate in pixels of the location to select. + The y coordinate in pixels of the location to select. + Specifies whether to clear all previously selected shapes or not. + + + + Selects shapes in the mapwindow from the specified rectangle. This function uses the + same selection routines that are called when a user selects with a mouse. + + The rectangle to select shapes with. This rectangle must be in screen (pixel) coordinates. + Specifies whether to clear all previously selected shapes or not. + + + + Determines whether the preview map panel is visible. + + + + + Determines whether the legend panel is visible. + + + + + Gets or sets the background color of the map. + + + + + Gets or sets the current cursor mode. The cursor mode can be any of the following: + + None + Pan + Selection + ZoomIn + ZoomOut + + + + + + Returns a DotSpatial.Interfaces.Draw interface used to add custom drawing to the map. + + + + + Gets or sets the amount to pad around the extents when calling ZoomToMaxExtents, + ZoomToLayer, and ZoomToShape. + + + + + Gets or sets the map's current extents. + + + + + Gets or sets the cursor to use on the map. The enumeration can be any of the following: + + crsrAppStarting + crsrArrow + crsrCross + crsrHelp + crsrIBeam + crsrMapDefault + crsrNo + crsrSizeAll + crsrSizeNESW + crsrSizeNS + crsrSizeNWSE + crsrSizeWE + crsrUpArrow + crsrUserDefined + crsrWait + + + + + + Indicates that the map should handle file drag-drop events (as opposed to firing a message indicating file(s) were dropped). + + + + + Gets or sets the MapState string which describes in a single string the entire + map state, including layers and coloring schemes. + + + + + Returns a SelectInfo object containing information about all shapes that are currently selected. + + + + + Determines whether labels are loaded from and saved to a project-specific label file or from a shapefile-specific label file. Using a project-level label file will create a new subdirectory with the project's name. + + + + + Gets or sets whether selection should be persistent. If selection is persistent, previously selected + shapes are not cleared before selecting the new shapes. When selection is persistent you must select + nothing to clear the selection. The default value for this property is false. When selection is not + persistent, all selected shapes are cleared between selection routines unless the user is holding down + a control or shift key. + + + + + The tolerance, in projected map units, to use for selection. + + + + + Gets or sets the selection method to use. + + Inclusion + Intersection + + Inclusion means that the entire shape must be within the selection bounds in order to select + the shape. Intersection means that only a portion of the shape must be within the selection + bounds in order for the shape to be selected. + + + + + Gets or sets the color used to indicate a selected shape. + + + + + Gets or sets a tag for the map. The tag is a string variable that can be used by a developer + to store any information they desire. + + + + + Gets or sets the handle of the cursor to use when the CursorMode is cmUserDefined. + + + + + Gets or sets the default zoom percentage to use when interacting with the map using a mouse. + + + + + LayerType + + + + + Raster Layer + + + + + Image Layer + + + + + Not a valid layer format + + + + + Line FeatureSet Layer + + + + + Point FeatureSet Layer + + + + + Polygon FeatureSet Layer + + + + + PluginManager for dealing with additional plugins + + + The Designer for hte Legacy Plugin Manager class + + + + + Constructor for Plugin Manager + + + + + Constructor for Plugin Manager + + A Container + + + + Checks the dlls in the Plugins folder or any subfolder and + adds a new checked menu item for each one that it finds. + This can also be controlled using the PluginMenuIsVisible property. + + + + + Looks for a menu named Plug-ins and removes it. + Control this through the PluginMenuIsVisible property. + This can also be controlled using the PluginMenuIsVisible property. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the Legend associated with this plugin manager + + + + + Gets or sets the Map associated with this plugin manager + + + + + Gets or sets the MapMenuStrip associated with this plugin manager + + + + + Gets or sets the MapToolStrip associated with this plugin manager + + + + + Gets or sets the Preview Map associated with this plugin manager + + + + + Controls whether or not a Plugin menu will be added to the MapMenuStrip + specified by this Plugin Manager + + + + + MapCursorModes + + AppStarting + Arrow + Cross + Help + IBeam + MapDefault + No + SizeAll + SizeNESW + SizeNS + SizeNWSE + SizeWE + UpArrow + UserDefined + Wait + + + + App starting icon + + + + + typical white arrow with black border + + + + + A right angle cross + + + + + Question mark + + + + + An IBeam like for editing text + + + + + An arrow + + + + + A circle with a diagonal line + + + + + Arrows pointing north, south, east and west + + + + + A diagonal line with arrows pointing northeast and southwest + + + + + A vertical line with arrows up and down + + + + + A diagonal line with arrows pointing northwest and southeast + + + + + A horizontal line with arrows pointing west and east + + + + + An up pointed arrow + + + + + Use a custom icon + + + + + Windows wait cursor (varies from system to system) + + + + + MapWin + + + + + Constructs a new empty instance of this interface wrapper that is mostly used + for backwards compatibility. + + + + + Constructs a new instance of a MapWin interface where the Map, Legend, Form and MenuStrip + are all specified. + + Any valid implementation of IBasicMap + Any valid implementation of ILegend + Any valid windows Form + Any valid windows MenuStrip + + + + Returns dialog title for the main window to the default "project name" title. + + + + + Prompt the user to select a projection, and return the PROJ4 representation of this + projection. Specify the dialog caption and an optional default projection ("" for none). + + The text to be displayed on the dialog, e.g. "Please select a projection." + The PROJ4 projection string of the projection to default to, "" for none. + + + + + Refreshes the DotSpatial display. + + + + + Refreshes Dynamic Visibility + + + + + Sets the dialog title to be displayed after the "AppInfo" name for the main window. + Overrides the default "project name" title. + + + + + Displays the DotSpatial error dialog. + + + + + + Displays the DotSpatial error dialog, sending to a specific address. + + + + + + + In The new context, this return whatever the BasicMap is. + + + + + Provides control over application-level settings like the app name. + + + + + Specify whether the full project path should be specified rather than just fileName, in title bar for main window. + + + + + Gets the last error message set. Note: This error message could have been set at any time. + + + + + Returns the Layers object that handles layers. + + + + + Returns the Menus object that manages the menus. + + + + + Returns the Plugins object that manages plugins. + + + + + Returns the PreviewMap object that manages the preview map. + + + + + Provides control over project and configuration files. + + + + + Provides access to report generation methods and properties. + + + + + Returns the StausBar object that manages the status bar. + + + + + Returns the Toolbar object that manages toolbars. + + + + + Provides access to the user panel in the lower right of the DotSpatial form. + + + + + User-interactive functions. Used to prompt users to enter things, or otherwise prompt users. + + + + + Returns the View object that handles the map view. + + + + + Gets or sets the basic map for this MapWin + + + + + Gets or sets the legend to use for this MapWin + + + + + Gets or sets the main form to use for this MapWin + + + + + Gets or sets the menu strip to use for this MapWin + + + + + MenuItem + + + + + Creates a new instance of MenuItem + + The ToolStripMenuItem to wrap with this item + + + + Gets a submenu item by its 0-based index + + + + + Gets a submenu item by its string name + + + + + Gets/Sets the Text shown for the MenuItem + + + + + Gets/Sets the icon for the menu item + + + + + Gets/Sets the category for this item (used when the user customizes the menu) + + + + + Gets/Sets the checked state of the item + + + + + Gets/Sets the tool tip text that will pop up for the item when a mouse over event occurs + + + + + Gets/Sets whether or not this item should draw a dividing line between itself and any + items before this item + + + + + Gets/Sets the cursor used when the mouse is over this control + + + + + Gets/Sets the description of this menu item, used in customization of menu by the user + + + + + Gets/Sets the Displayed state of this item + ... Side Note + ... I have no idea what this is supposed to do, so it is redundant with visible for now + and possibly should be made obsolete. + + + + + Gets/Sets the enabled state of this item + + + + + Gets the Name of this item + + + + + Gets/Sets the visibility state of this item + + + + + Gets the count of the submenu items contained within this item + + + + + Returns whether this menu item is the first visible submenu item. + This is only valid in submenus, i.e. menus which have a parent. + + + + + Menus + + + + + Creates a new instance of Menus + + + + + Adds a menu with the specified name and uses the name as the text. + + The string name of the menu item to add. + + + + Adds a menu with the specified name and image, and uses the name as the text. + + the string name of the menu item and text + The image to associate with the menu item + + + + Adds a menu with the specified name, icon and text + + The name to use to identify this item later + An image to associate with this item + The string text to appear for this item + + + + Adds a menu with the specified name to the menu indicated by ParentMenu + + The string name to use + The string name of the parent to add the menu to + + + + Adds a menu with the specified name and icon to the menu indicated by ParentMenu + + the name to use as a key to identify this item and as text + the parent menu item + The image to use for this item + + + + Adds a menu with the specified name, icon and text to the specified ParentMenu + + The string name to use as a key for this item + The name of the parent menu to add this new item to + The picture to add for this item + The string text to add for this item + + + + Adds a menu with the specified name, icon and text to the specified ParentMenu and after the specifed item + + The string name to use as a key for this item + The name of the parent menu to add this new item to + The picture to add for this item + The string text to add for this item + The name of the sibling menu item to add this item directly after + + + + Adds a menu with the specified name and text to the specified ParentMenu and before the specifed item + + The string name to use as a key for this item + The name of the parent menu to add this new item to + The string text to add for this item + The name of the sibling to insert this menu item on top of + + + + Removes a MenuItem + + Name of the item to remove + true on success, false otherwise + + + + Gets a MenuItem by its name + + + + + PointTypes + + + + + Circular points + + + + + Diamond + + + + + Square + + + + + Triangle pointed down + + + + + Triangle pointed left + + + + + Triangle pointed right + + + + + Triangle pointed up + + + + + User defined + + + + + Enumeration of possible preview map update types. + + + + + Update using full exents. + + + + + Update using current map view. + + + + + ReferenceTypes + + + + + The coordinates are drawn in screen coordinates on the layer, and stay fixed as the map + zooms and pans + + + + + The drawing layer is geographically referenced and will move with the other spatially + referenced map content. + + + + + Gets or sets the selection method to use. + + Inclusion + Intersection + + Inclusion means that the entire shape must be within the selection bounds in order to select + the shape. Intersection means that only a portion of the shape must be within the selection + bounds in order for the shape to be selected. + + + + + The entire contents of the potentially selected item must fall withing the specified extents + + + + + The item will be selected if any of the contents of the potentially selected item can be found + in the specified extents. + + + + + Docking styles for DotSpatial UIPanels + + + + Floating + + + Dock Left + + + Dock Right + + + Dock Top + + + Dock Bottom + + + Dock Left Autohidden + + + Dock Right Autohidden + + + Dock Top Autohidden + + + Dock Bottom Autohidden + + + + FillStipple + + + + + Use a custom stipple pattern + + + + + A dashes and dots + + + + + Dashes only + + + + + Dots only + + + + + No stipple pattern should be used + + + + + UnitOfMeasure + + + + The units are in decimal degrees. + + + The units are in millimeters. + + + The units are in centimeters. + + + The units are in inches. + + + The units are in feet. + + + The units are in Yards. + + + The units are in meters. + + + The units are in miles. + + + The units are in kilometers. + + + The units are in nautical miles. + + + The units are in acres. + + + The units are in hectares. + + + The units are unknown. + + + + UserInteraction + + + + + Prompt the user to select a projection, and return the PROJ4 representation of this + projection. Specify the dialog caption and an optional default projection ("" for none). + + The text to be displayed on the dialog, e.g. "Please select a projection." + The PROJ4 projection string of the projection to default to, "" for none. + + + + + Retrieve a color ramp, defined by a start and end color, from the user. + + The start color to initialize the dialog with. + The end color to initialize the dialog with. + The start color that the user selected. + The end color that the user selected. + Boolean, true if the method was successful. + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.Forms.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.Forms.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.Forms.xml (revision 2866) @@ -0,0 +1,8245 @@ + + + + DotSpatial.Symbology.Forms + + + + + ExportFeature + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + This looks like a function created by Mr. Jiri and not commented on. + + + + + + + Creates the new custom symbolizer with the specified name and category + + the custom symbolizer + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + The custom symbolizer edited by this form + + + + + A user control for specifying angles + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + A user control designed to allow an angle to be chosen + + + + + Fires the angle changed event + + + + + fires an event once the mouse has been released. + + + + + Occurs when the angle changes either by the picker or the textbox. + + + + + Occurs when the mouse up event occurs on the picker + + + + + Gets or sets the integer angle in degrees. + + + + + Gets or sets a boolean indicating if the values should increase in the + clockwise direction instead of the counter clockwise direction + + + + + Gets or sets the base Knob Color + + + + + Gets or sets the start angle in degrees measured counter clockwise from the X axis. + For instance, for an azimuth angle that starts at the top, this should be set to 90. + + + + + Gets or sets the string text for this control. + + + + + CharacterCodeEditor + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + A component that allows the easy selection of a rotation situation. + + + + + Required designer variable. + + + + + A class designed to allow easy rotation to change the angle + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the angle changed event + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Prevent flicker + + + + + + Paints the current state of the control + + + + + + Handles the case where we are rotating the handle + + + + + + Handles the Mouse Up event + + + + + + Fires the AngleChosen event + + + + + Forces this control to redraw while changing size. + + + + + + Occurs when the angle is changed either by dragging or by typing a hard value. + + + + + Occurs after the mouse up event when dragging the angle + + + + + Gets or sets the angle measured in degrees, counter-clockwise from the x axis. + + + + + Gets or sets the current border style for the entire picker control + + + + + Gets or sets a boolean indicating if the values should increase in the + clockwise direction instead of the counter clockwise direction + + + + + Gets or sets the fill color of the circle + + + + + Gets or sets the border color of the circle + + + + + Gets or sets the border style for the circle. + + + + + Gets or sets the color of the angular pie section illustrating the angle + + + + + Gets or sets the alignment of the text in the control. + + + + + Gets or sets the color of the circle that illustrates the position of the current angle + + + + + Gets or sets a boolean. If this is false, then the knob will not be drawn. + + + + + Gets or sets an integer in degrees specifying the snapping tollerance for multiples of 45 degrees. + + + + + Gets or sets the start angle in degrees measured counter clockwise from the X axis. + For instance, for an azimuth angle that starts at the top, this should be set + to 90. + + + + + This parses the input values and changes the background color to salmon + if the value won't work as a degree. + + + + + This parses the input values and changes the background color to salmon + if the value won't work as a degree. + + + + + Boolean, true if there is an error on this device. + + + + + Specifies the current error message. + + + + + Gets the cleanly formatted name for this control for an error message + + + + + Creates a new instance of AngleTextBox + + + + + This changes the error text, + + + + + Gets or sets the text that should appear as the mouse hovers over this textbox + + + + + Hide the actual BackColor property which will be controlled + + + + + Gets or sets the background color of this control if the text is not valid. + + + + + Gets or sets the normal background color for when the value is valid. + + + + + Gets a boolean indicating if this textbox has an error. + + + + + Gets a string indicating the current error for this control. + + + + + Gets or sets the formatted name to use for this control in an error message. + + + + + Creates a new instance of AngleTextBox + + + + + Fires the TextChanged method and also determines whether or not the text is a valid integer. + + + + + + Fires the AngleChanged event + + + + + + Occurs continuously as someone drags the angle control around + + + + + Gets or sets the integer angle for this textbox. + + + + + Gets or sets the minimum valid angle. An angle below the minimum will + register an error and show the error color. + + + + + Gets or sets the maximum valid angle. An angle above the maximum will + register an error and show the error color. + + + + + Atrribute Table editor form + + + + + Creates a new instance of the attribute Table editor form + The feature layer associated with + this instance and displayed in the editor + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + A Dialog for adding new column information to a data table. + + + Presumably a class for adding a new column to the attribute Table editor + + + + + This form will display when the user want to add new fiels in the Table + + + + + + A public constructor for creating a new column + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + set or get the Name of the field. + + + + + set or get the type of the field. + + + + + set or get the size of the field. + + + + + A Dialog for performing calculations on attributes. + + + Presumably a form for performing calculations + + + + + this form will show to user to algebra calculation + with attribute fields and user can save it back in attribute Table. + + + + + This will load the attribute field in Table Field. + + + + + + This will display the Expression in RichText box + + + + + Tral: This will divide the string to relavent functions level + + + + + + This will check and return the column index as given field name or -1 for not find. + + + + + + + This will activate the NewFieldAdded event + + + + + this give the relavent token no + + Function Name + + + + + exponential integral Ei(x) for x >0. + + + + + + + Riemman's zeta function + + + + + + + beta function + + + + + + + + Calculate the Factorial in given number + + + + + + + combination n objects, k classes + + + + + + + + FIdx the MCD between two integer numbers + + + + + + + + FIdx the mcm between two integer numbers + + + + + + + + error distribution function + + + + + + + gamma function + + + + + + logarithm gamma function + + + + + + digamma function + + + + + + + gamma - Lanczos approximation algorithm for gamma function + + + + + + + this will return true if string is Exponetial.eg 1.2E+2, + + + + + + + check if argument is number + x must have always the decimal point "123.756", ".0056", "1.3455E-12" + + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + set or get the Expression of computation. + + + + + get or set dataset + + + + + Occurs whenever the user Added new field to the Table + + + + + This form is strictly designed to show some helpful information about using a calculator. + + + A class giving information on how to use the calculator functions. + + + + + Creates a new instance of the calculator user guide form. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Default implementation of IColorCategoryActions + + + + + Contains common methods for "Actions" classes (e.g. LayerActions, etc...) + + + + + Contains IWin32Window Owner + + + + + Allows setting the owner for any dialogs that need to be launched. + + + + + Shows the form as a modal dialog box with the owner defined in this class. + + Form to show. + One of the values. + form is null. + + + + Runs a common dialog box with the owner defined in this class. + + Dialog to show. + One of the values. + dlg is null. + + + + Allows setting the owner for any dialogs that need to be launched. + + + + + Show the color category editor form. + + + + + + DetailedLineSymbolDialog + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of DetailedLineSymbolDialog + + + + + Creates a new Detailed Line Symbol Dialog that displays a copy of the original, + and when apply changes is pressed, will copy properties to the original. + + The current symbolizer being viewed on the map + + + + This constructor shows a different symbolizer in the view from what is currently loaded on the map. + If apply changes is clicked, the properties of the current symbolizer will be copied to the original. + + The symbolizer on the map + The symbolizer that defines the form setup + + + + Updates the opacity of the simple/cartographic stroke + + THe floating point value to use for the opacity, where 0 is transparent and 1 is opaque + + + + Initializes the control by updating the symbolizer + + + + + + When the stroke is changed, this updates the controls to match it. + + + + + Forces the original to apply the changes to the new control + + + + + Fires the AddtoCustomSymbols event + + + + + Fires the ChangesApplied event + + + + + Update the selected linedecoration: set the percentual position between line start and end of the single decoration. + + + + + Update the selected linedecoration: set whether all decorations should be flipped. + + + + + Update the selected linedecoration: set whether the first decoration should be flipped. + + + + + Fires an event indicating that changes should be applied. + + + + + Occurs when the user clicks the AddToCustomSymbols button + + + + + Gets the current (copied) symbolizer or initializes this control to work with the + specified symbolizer as the original. + + + + + Control to create, edit and validate label expressions. + + + + + Control to edit and validate expressions that can be used to label features. + + + + + Adds a new line. + + + + + Validates the expression and shows the error or result. + + + + + Adds the field that was double clicked to the expression. + + + + + Suppress tab if it was entered because it is illigal in expressions. + + + + + Validates the Expression including syntax and operations. + + True, if Expression is valid. + + + + Replaces the expression fields by the columns of the current _attributeSource or _table. + + + + + Erforderliche Designervariable. + + + + + Verwendete Ressourcen bereinigen. + + True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. + + + + Erforderliche Methode für die Designerunterstützung. + Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. + + + + + Gets/Sets whether empty expressions are valid. + + + + + Setting this is an alternative to specifying the table. This allows the + query control to build a query using pages of data instead of the whole + table at once. + + + + + Gets or sets the data Table for this control. Setting this will + automatically update the fields shown in the list. + + + + + Expression that gets edited and validated in ExpressionControl. + + + + + Dialog for the 'unique values' feature symbol classification scheme + + + + + + + + + + Initializes the specified layer. + + The layer. + + + + Applies the changes. + + + + + Cancels changes. + + + + + Handles disposing unmanaged memory + + The disposed item + + + + Creates an empty FeatureCategoryControl without specifying any particular layer to use + + + + + Creates a new instance of the unique values category Table + + The original scheme + + + + Handles the mouse wheel, allowing the breakSldierGraph to zoom in or out. + + + + + + Sets up the Table to work with the specified layer. This should be the copy, + and not the original. + + + + + + Gets the scheme type based on the type of the layer's underlying dataset + + + + + Updates the fields in the fields combo box + + + + + Updates the Table using the unique values + + + + + Fires the apply changes situation externally, forcing the Table to + write its values to the original layer. + + + + + Applies the changes that have been specified in this control + + + + + Cancel the action. + + + + + When the user changes the selected attribute field + + + + + + + When the user double clicks the cell then we should display the detailed + symbology dialog + + + + + When the cell is formatted + + + + + Initializes the specified layer. + + The layer. + + + + Occurs when the apply changes option has been triggered. + + + + + Gets or sets the Maximum value currently displayed in the graph. + + + + + Gets or sets the Minimum value currently displayed in the graph. + + + + + This class in an EventArgs that also supports a filter expression. + + + + + Initializes a new instance of the FilterEventArgs class. + + String, the filter expression to add. + + + + Gets the string filter expression. + + + + + Sets up the Table to work with the specified layer + + + + + + Fires the apply changes situation externally, forcing the Table to + write its values to the original layer. + + + + + Applies the changes that have been specified in this control + + + + + Cancel the action. + + + + + Event that fires when the action is canceled. + + + + + Erforderliche Designervariable. + + + + + Verwendete Ressourcen bereinigen. + + True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. + + + + Erforderliche Methode für die Designerunterstützung. + Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. + + + + + Occurs when the apply changes option has been triggered. + + + + + Actions that occur on an image layer in the legend. + + + + + Show the properties of an image layer in the legend. + + + + + + Export data from an image layer. + + + + + + Label Setup form + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of LabelSetup + + + + + Shows the help for the selected tab. + + + + + Fires the ChangesApplied event. + + + + + Updates any content that visually displays the currently selected characteristics. + + + + + When the layer is updated or configured, this updates the data Table aspects if possible. + + + + + Updates the controls with the data of the active categories symbolizer. + + + + + Updates the category list with the categories of the layers symbology. + + + + + Moves the selected category up. + + + + + Moves the selected category down. + + + + + Adds a new category. + + + + + Removes the selected category. + + + + + Updates the controls with the data of the selected category. + + + + + Rembemer selected FontColor and update Preview. + + + + + Shows the preview with the selected font and corrects the style-selection. + + + + + Updates the FontStyles with the styles that exist for the selected font. + + + + + Shows the preview with the selected font style. + + + + + Shows the preview with the selected font size. + + + + + Remembers whether BackColor is enabled. + + + + + Remembers the BackgroundColor and updates the preview. + + + + + Remembers whether border gets used. + + + + + Remembers the BorderColor and updates the preview. + + + + + Remember whether low values get prioritized. + + + + + Remember selected PriorityField. + + + + + Remember selected PreventCollision. + + + + + Remember the selected LabelAngleField. + + + + + Save the changed angle. + + + + + De-/active NumericUpDown for common angle. + + + + + De-/activate combobox for LabelAngleField. + + + + + De-/activate combobox for linebased angles. + + + + + Remember selected LineOrientation. + + + + + Remember floatingFormat. + + + + + Remembers whether shadow is used. + + + + + Remembers the shadows color. + + + + + Remembers the shadows opacity. + + + + + Remember the Y offset of the labelshadow from the center of the placement point. + + + + + Remember the X offset of the labelshadow from the center of the placement point. + + + + + Remembers whether halo is used. + + + + + Remembers the halo color. + + + + + Remember the Y offset of the label from the center of the placement point. + + + + + Remember the X offset of the label from the center of the placement point. + + + + + Remembers the position of the label relative to the placement point. + + + + + Remembers the alignment of multiline text. + + + + + Remembers the labeling method. + + + + + Remembers the way parts get labeled. + + + + + Remembers the expression that is used to find the members that belong to the active category. + + + + + Occurs after the Apply button has been pressed + + + + + Gets or sets the layer to use for defining this dialog + + + + + Actions that occur on a layer legend item. + + + + + Determines whether a layer has dynamic visibility and hence is only shown at certain scales. + + + + + + This member is virtual to allow custom event handlers to be used instead. + + + + + Show the properties of a feature layer in the legend. + + + + + + Show the dialog to join an Excel table with a feature set. + + + + + + Show the dialog to set label extents. + + + + + + Show the dialog to set up labels. + + + + + + Show the attribute table editor. + + + + + + Show the dialog for exporting data from a feature layer. + + + + + + This will load to user select field to remove. + + + A dialog for deleting a field. + + + + + Creates a new instance of the form for deleting a field + + + + + Creates a new instance of the form for deleting a field while passing in a new field. + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + This event will fire when user select the item. + + + + + + + get or set the list of selected Fields + + + + + Initializes a new instance of the FunClass class. + + + + + Initializes a new instance of the FunClass class. + + The function name. + The index of the class. + + + + Initializes a new instance of the FunClass class. + + The function name. + The index of the class. + The position in the expression. + + + + Initializes a new instance of the FunClass class. + + The function name. + The index of the class. + The position in the expression. + The token value. + + + + Gets or sets the function string. + + + + + Gets or sets the integer index. + + + + + Gets or sets the priority level. + + + + + Gets or sets the previous argument. + + + + + Gets or sets the next argument. + + + + + Gets or sets the value. + + + + + Gets or sets position in the expression. + + + + + Gets or sets the token value. + + + + + set or get the no Of arg fuction type + either one or two or more than two + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to In Memory. + + + + + Dialog for the 'unique values' feature symbol classification scheme + + + + + Handles disposing unmanaged memory + + The disposed item + + + + Creates an empty FeatureCategoryControl without specifying any particular layer to use + + + + + Creates a new instance of the unique values category Table + + The feature set that is used + + + + Handles the mouse wheel, allowing the breakSliderGraph to zoom in or out. + + + + + + Sets up the Table to work with the specified layer + + + + + + Updates the Table using the unique values + + + + + Fires the apply changes situation externally, forcing the Table to + write its values to the original layer. + + + + + Applies the changes that have been specified in this control + + + + + Cancel the action. + + + + + Event that fires when the action is canceled. + + + + + When the user double clicks the cell then we should display the detailed + symbology dialog + + + + + When the cell is formatted + + + + + Initializes the specified layer. + + The layer. + + + + Occurs when the apply changes option has been triggered. + + + + + Gets the current progress bar. + + + + + Gets or sets the Maximum value currently displayed in the graph. + + + + + Gets or sets the Minimum value currently displayed in the graph. + + + + + Legend actions on a raster layer. + + + + + Shows the properties of the current raster legend item. + + + + + + Export data from a raster layer. + + + + + + This will Pop when user want to rename the field + + + A Dialog for renaming a field. + + + + + Constructs a new instance of the form for renaming a field + + + + + Creates a new instance of the form for renaming a field + + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + get or set ResultCombination + + + + + This form diplay to user to find perticular value or string in DataGridView and replace. + + + The Designer for a dialog to replace a field. + + + + + Creates a new instance of the replace form. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + get the Find String + + + + + get the ReplaceString + + + + + SelectByAttributes + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of SelectByAttributes + + + + + Creates a new instance of SelectByAttributes + + the MapFrame containing the layers + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Gets or sets the map frame to use for this control + + + + + SelectField class + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Creates a new instance of a SelectField + + + + + Creates a new instance of a SelectField + + + + + + get Field Name + + + + + Creates a new instance of the SQLQueryControl + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of the control with no fields specified. + + + + + Occurs when the text in the expression textbox has changed. + + + + + Gets or sets the string expression text + + + + + Gets or sets the data Table for this control. Setting this will + automatically update the fields shown in the list. + + + + + Setting this is an alternative to specifying the table. This allows the + query control to build a query using pages of data instead of the whole + table at once. + + + + + Gets or sets the string that appears in the filter text. + + + + + A Table editor user control. This may be used for displaying attributes of a feature layer. + + + + + Creates a new instance of the Table editor control without any data + + + + + Creates a new Table editor control for editing a feature layer's attribute values. This allows interaction + with the map. If a row is selected in the Table the corresponding row is selected in the map + + The symbolizer on the map + + + + Zoom to selected rows (features) + + + + + Zooms to the row which is being edited + + + + + This assumes that the datarows displayed correspond to features in the data Table. + + + + + + This will update the Label of Selected Number of rows. + + + + + + This will update the Label of File path. + + + + + + Fires the SelectionChanged event whenver the selection on this dialog has been altered + + + + + Fires the SelectioinZoom event whenver the selectionZoom button click + + + + + Fires the OnRefreshMap event whenver the RefreshMap button click + + + + + Fires the OnFieldCalculation event whenver the zoomToShapeBeingEdited menu click + + + + + when 'IsEditable' is set to false, some toolbar icons are + hidden + + + + + Will find the string in the attribute Table (Search Operation) + + the string to be found + true if the string was found, false otherwise + + + + Builds a 'find' select expression to find a string + + + + + + + Will find the string in the dataGridView and replace + + Find expression string + replace expression string + + + + + This will copy the FID of features to given column + + the field where FID should be copied + if isNewField is true, a new field will be added + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Occurs whenever the user selects, de-selects or in any way updates the row selections + + + + + Occurs whenever the user click SelectioinZoom button. + + + + + occurs whenever the user click RefreshMap button. + + + + + This will fire when user press ZoomToShapeBeingEdited button. + + + + + If set to true, only the selected rows are displayed. + If set to false, all rows are displayed. + + + + + Gets or sets the feature layer used by this data Table + + + + + Gets the collection of selected data rows. The row indices are + 1 based instead of zero based, so be sure to subtract one before matching with a feature. + + + + + Gets or sets the boolean that controls whether or not this form will throw an + event during the selection changed process. + + + + + set or get the relavant full featureset + + + + + gets or sets the visibility of the main menu strip + + + + + gets or sets the visibility of the main tool strip + + + + + Gets or sets if the file path is shown in the status bar + + + + + Gets or sets if the progress bar is visible + + + + + Gets or sets whether the Table is editable by the user + + + + + CharacterCodeEditor + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + CategoryCollectionConverter + + + + + Converts the collection to a string + + + + + + + + + + Determines how to convert from an interface + + + + + + + + The bar graph, when given a rectangular frame to work in, calculates appropriate bins + from values, and draws the various labels and bars necessary. + + + + + Creates a new instance of BarGraph + + + + + Gets the bounding rectangle for the actual graph itself + + + + + Disposes the font and titlefont + + + + + Draws the graph, the colored bins, selected region, and any text, but not any sliders. + + + + + + + Given a double value, this returns the floating point position on this graph, + based on the current minimum, maximum values. + + The double value to locate + A floating point X position + + + + Given a floating point X coordinate (relative to the control, not just the graph) + this will return the double value represented by that location. + + The floating point position + The double value at the specified X coordinate + + + + Gets the real data value at the center of one of the bins. + + + + + + + Draws only the text for this bar graph. This will also calculate some critical + font measurements to help size the internal part of the graph. + + + + + + Gets or sets the array of integers that represent the positive integer value stored in + each bar. + + + + + Gets or sets the list of color ranges that control how the colors are drawn to the graph. + + + + + Gets or sets the Font for text like the axis labels + + + + + Gets or sets the integer height + + + + + Gets or sets a boolean that indicates whether or not count values should be drawn with + heights that are proportional to the logarithm of the count, instead of the count itself. + + + + + Gets or sets the integer maximum from all of the current bins. + + + + + This doesn't affect the statistical minimum or maximum, but rather the current view extents. + + + + + The mean line can be drawn if it is in the view range. This is the statistical mean + for all the values, not just the values currently in view. + + + + + Gets or sets the double standard deviation. If ShowStandardDeviation is true, then + they will be represented by red lines on either side of the mean. + + + + + Very small counts frequently dissappear next to big counts. One strategey is to use a + minimum height, so that the difference between 0 and 1 is magnified on the columns. + + + + + Gets or sets the maximum extent for this graph. This doesn't affect the numeric statistics, + but only the current view of that statistics. + + + + + Gets or sets the number of columns. Setting this will recalculate the bins. + + + + + Gets or sets the color range. + + + + + Boolean, if this is true, the mean will be shown as a blue dotted line. + + + + + Boolean, if this is true, the integral standard deviations from the mean will be drawn + as red dotted lines. + + + + + Gets or sets the title of the graph. + + + + + Gets or sets the font to use for the graph title + + + + + Gets or sets the width of this graph in pixels. + + + + + ColorRange + + + + + Generates a color range with no limits and the color gray. + + + + + Generates a color range with no limits of the specified color + + The Color to use + + + + Generates a color range with the specified color and range. + + The Color to use for this range + The numeric bounds to use for this color. + + + + Creates a new ColorRange using the specified color and the specified + nullable double values. A null value represents an unbounded range. + + The Color to use. + A double value representing the minimum value (inclusive). + A double value representing the maximum (exclusive). + + + + Gets a boolean that is true if the specified value falls within the specified range. + + The double value to test + Boolean, true if the value is within the Range. + + + + Gets or sets the Color for this range. + + + + + Gets or sets the numeric range for which the color is valid. + + + + + ColorRangeEventArgs + + + + + Creates a new instance of ColorRangeEventArgs + + + + + Gets the start color + + + + + Gets the end color + + + + + Gets or sets the hue shift + + + + + Gets a boolean. If true, the ramp of colors should + be built using the HSL characteristics of the start and + end colors rather than the RGB characteristics + + + + + Gets a boolean, true if this color range should be used. + + + + + SizeRange + + + + + Creates a new instance of SizeRange + + + + + Gets or sets the Point Size Range + + + + + + + + Given a size, this will return the native + symbolizer that has been adjusted to the + specified size. + + The size of the symbol + The color of the symbol + + + + + Gets or sets the symbolizer that controls everything except for size. + + + + + Minimum size + + + + + Maximum size + + + + + Gets or sets a boolean indicating if the size range should be used. + + + + + PointSizeRangeControl + + + + + Creates a new instance of PointSizeRangeControl + + + + + Initializes this point size range control + + + + + + Handles the inter-connectivity of the various controls and updates + them all to match the latest value. + + + + + Fires the SizeRangeChanged event args + + + + + Gets or sets the point scheme to work with. + + + + + Gets or sets the point Size Range, which controls the symbolizer, + as well as allowing the creation of a dynamically sized version + of the symbolizer. + + + + + Occurs when either the sizes or the template has changed. + + + + + PointSymbolView + + + + + Draws the point symbol in the view + + + + + + + prevents flicker by preventing the white background being drawn here + + + + + + Custom drawing + + + + + + Gets or sets the symbolizer being drawn in this view. + + + + + Gets or sets the way that the border of this control will be drawn. + + + + + PointSymbolView + + + + + Draws the point symbol in the view + + + + + + + prevents flicker by preventing the white background being drawn here + + + + + + Custom drawing + + + + + + Gets or sets the symbolizer being drawn in this view. + + + + + Gets or sets the way that the border of this control will be drawn. + + + + + PointSizeRangeEventArgs + + + + + Creates a new instance of PointSizeRangeEventArgs + + + + + Creates a new instance of the PointSizeRangeEventArgs derived from a PointSizeRange + + + + + + Gets the start size of the size range + + + + + Gets the end size of the range + + + + + Gets a boolean indicating whether the size range should be used + + + + + Gets the symbolizer template that describes everything not covered by a range parameter + + + + + TabColorControl + + + + + Creates a new instance of TabColorControl + + + + + Initializes a new instance of this control using the specified values. + + The ColorRangeEventArgs that stores the initial values. + + + + Disposes the unmanaged memory or controls + + + + + + Fires the ColorChanged event + + + + + Occurs when the color is changed. + + + + + Gets or sets the start color, which controls the RGB start colors and the HSL left ranges + + + + + Gets or sets the end color, which controls the RGB end color and the right HSL ranges + + + + + Gets or sets the integer hue shift marking how much the hue slider should be shifted + + + + + Gets or sets a boolean indicating whether or not the hue range is to be used. + + + + + System.Font is notoriously difficult when serialization comes up. This replaces that + with a more serializable version. + + + + + Creates a default, black, 8pt sans serif font with a normal style. + + + + + Creates a sans serif, black, normal font of the specified size. + + The size to use. + + + + Creates a new instance of TextFont + + + + + + + + + + + + + + Assigns the parameters from the specifed StringFormat class to the members of + this TextFont. + + The StringFormat to apply to this object + + + + Sets the font on this Textfont to the specified value. + + The font to use. + + + + This returns the actual internal font. Be careful not to dispose this. + + A System.Font + + + + Draws the specified text to the specified graphics object in the specified location, + but using all of the parameters specified by this TextFont object. + + The Graphics surface to draw to + The string text to draw + The x coordinate of the top left position + The y coordinate of the top left position + + + + Draws the specified text to the specified graphics object in the specified location, + but using all of the parameters specified by this TextFont object. + + The Graphics surface to draw to + The string text to draw + The PointF describing the location to draw + + + + Handles drawing for point location drawing + + The Graphics surface to draw to. + The string to draw + The x floating point value + The y floating point value + + + + Handles drawing for drawing that falls within a rectangleF structure. + + The Graphics surface to draw to + The string to draw + The RectangleF structure + + + + Draws the specified text to the specified graphics object within the specified box. + + The graphics surface to draw to. + The text to draw + The rectangular box to draw within + + + + Disposes of the font, brush and format that are stored internally + + + + + Gets or sets the alignment information on the vertical plane + + + + + Gets or sets the System.Color to use for the font color. + + + + + Gets or sets the string family name for this font. + + + + + Gets or sets the string format flags + + + + + Gets or sets the line alignment on the horizontal plane + + + + + Gets or sets the floating point value controling the size. + + + + + Gets or sets the style + + + + + Gets or sets the StringTrimming options + + + + + CharacterCodeEditor + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + CharacterControl + + + + + A vertical scroll control adds a scroll bar in the vertical case, but never in the horizontal case. + This is useful if the content should simply autosize to fit the horizontal width of the control. + + + + + Creates a new instance of ScrollingControl + + + + + Gets a rectangle in document coordinates for hte specified rectangle in client coordinates + + + + + + + Translates a rectangle from document coordinates to coordinates relative to the client control + + + + + + + Recalculates the size and visibility of the scroll bars based on the current document. + + + + + Prevent flicker by preventing this + + + + + + On Paint only paints the specified clip rectangle, but paints + it from the page buffer. + + + + + + Occurs during custom drawing when erasing things + + + + + + Occurs during custom drawing + + + + + + Disposes the unmanaged memory objects and optionally disposes + the managed memory objects + + + + + + Fires the Initialized event + + + + + + + + + + + + Occurs after the base drawing content has been rendered to the page. + + + + + Gets or sets the background color to use for this control + + + + + + + + + + Gets the rectangular region of the control in page coordinates. + + + + + Gets or sets the rectangle for the entire content, whether on the page buffer or not. X and Y for this + are always 0. + + + + + Gets or sets whether or not the page for this control has been drawn. + + + + + Gets or sets a boolean indicating whether the vertical scroll should be permitted + + + + + Creates a new instance of CharacterControl + + + + + Creates a new instance of a CharacterControl designed to edit the specific symbol + + + + + + + Handles the situation where a mouse up should show a magnified version of the character. + + + + + + Fires the PopupClicked event args, and closes a drop down editor if it exists. + + + + + + + + + + + Occurs whenever this control is resized, and forces invalidation of the entire control because + we are completely changing how the paging works. + + + + + + Occurs when a magnification box is clicked + + + + + Gets or sets the cell size. + + + + + Overrides underlying behavior to hide it in the properties list for this control from serialization + + + + + Gets or sets a boolean that, if true, indicates that this form should restructure the columns + as it is resized so that all the columns are visible. + + + + + Gets or sets whether or not this item is selected + + + + + Gets or sets the number of columns + + + + + Gets the number of rows, which is controlled by having to show 256 cells + in the given number of columns. + + + + + Gets or sets the background color for the selection + + + + + The Font Color for the selection + + + + + Gets or sets the byte that describes the "larger" of the two bytes for a unicode set. + The 256 character slots illustrate the sub-categories for those elements. + + + + + Gets or sets the selected character + + + + + Gets the string form of the selected character + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Required designer variable. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets or sets the currently selected name. + + + + + Gets the selected item cast as an object. + + + + + This control works with the INamedList, which in turn can work with any strong typed + IList. The only button + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets the selected item cast as an object. + + + + + Gets or sets the core list of lineDecorations that will be drawn here. + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets the selected item cast as an object. + + + + + Gets or sets the core list of patterns that will be drawn here. + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets the selected item cast as an object. + + + + + Gets or sets the core list of strokes that will be drawn here. + + + + + This is designed to automatically have add, subtract, up and down arrows for working with a simple collection of items. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets or sets the item height for this control. + + + + + Gets or sets the scale mode. If the scale mode is set to geographic, then the + specified size will be ignored when drawing the symbolic representation. + + + + + Gets the selected item cast as an object. + + + + + Gets or sets the core list of strokes that will be drawn here. + + + + + This control displays a list box where each item is a preview of a category symbolizer + + + + + Required designer variable. + + + + + Creates a new instance of the Collection Control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the SelectedItemChanged event + + + + + Refreshes the items in the list to accuratly reflect the current collection + + + + + Draws a preview of a line symbolizer inside of the specified rectangle + + + + + Draws a preview of a point symbolizer inside of the specified rectangle + + + + + Draws a preview of a polygon symbolizer inside of the specified rectangle + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the AddClicked event + + + + + Fires the ListChanged event + + + + + Fires the RemoveCLicked event + + + + + Fires the OnOrderChanged event + + + + + Occurs when someone clicks the add button. + + + + + Occurs when someone selects one of the items in the list box + + + + + Occurs when either the Promote or Demote function has been used, + changing the order. + + + + + Occurs when the remove button has been clicked + + + + + Occurs when the list has been added, removed, or re-ordered in any way. + + + + + Gets or sets the item height for this control. + + + + + Gets or sets the scale mode. If the scale mode is set to geographic, then the + specified size will be ignored when drawing the symbolic representation. + + + + + Gets the selected item cast as an object. + + + + + Gets or sets the core list of syms that will be drawn here. + + + + + CollectionPropertyGrid + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a new instance of CollectionPropertyGrid + + The INamedList to display + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Occurs when the add button is clicked + + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Occurs whenever the add item is clicked. This is because the Collection Property Grid + doesn't necessarilly know how to create a default item. (An alternative would be + to send in a factory, but I think this will work just as well.) + + + + + Gets or sets the tool that connects each item with a string name. + + + + + ColorBox + + + + + Required designer variable. + + + + + Creates a new instance of ColorBox + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Changes the starting location of the color drop down based on the current text. + + + + + Occurs when the selected color has been changed in the drop-down + + + + + Gets or sets the selected color + + + + + Gets or sets the text for the label portion + + + + + Gets or set the font for the label portion of the component. + + + + + A button that is a certain color with beveled edges. The default use of this control is to work as a simple + color dialog launcher that happens to show a preview of the currently selected color. + + + + + Creates a new instance of ColorButton + + + + + Sets the color but will not fire the ColorChanged event. + + + + + + Fires the ColorChanged event + + + + + Custom drawing code + + + + + + + when the mouse down event is received this also "depresses" the button + + + + + + Handles the situation where the mouse is moving up. + + + + + + Clicking launches a color dialog by default. + + + + + + Cancels the on paint background event to prevent flicker + + + + + + Sets up a bitmap to use as a double buffer for doing all the drawing code. + + + + + + Occurs when the color has changed. + + + + + Gets or sets the color of this button + + + + + Gets or sets the floating point radius between the outside of the button and the flat central portion. + + + + + Gets or sets the rounding radius that controls how rounded this button appears + + + + + Gets or sets a boolean that indicates whether this button should launch a + color dialog to alter its color when it is clicked. + + + + + A drop down coded by + + + + + Creates a dropdown with known colors populated in it + + + + + Disposes stuff + + + + + + Prevents flicker .. or possibly does nothing.. I'm not sure. + + PaintEventArgs + + + + Actually handles the drawing of a single item + + DrawItemEventArgs + + + + Basically still allow this to be affected in code, but remove it from the designer stuff + + + + + Gets or sets the currently selected color from this dropdown control + + + + + Basically still allow this to be affected in code, but remove it from the designer stuff + + + + + ColorPanelStyle + + + + + This panel draws color boxes + + + + + This panel draws values + + + + + This panel draws captions + + + + + A form for selecting colors + + + + + Creates a new instance of this form. + + + + + Constructs a new instance and sets it up for a specific color break + + + + + Constructs a new instance and sets up the colors, but won;t allow + + + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the ChangesApplied event + + + + + Occurs when the Apply button is pressed, implying to set the changes using the current colorbreak. + + + + + Gets or sets the original instance for updating when the apply button is pressed. + + + + + Gets or sets the start color for this dialog + + + + + Gets or sets the end color for this dialog + + + + + Gets the IProgressHandler version of the status bar on this form + + + + + ButtonState + + + + + This is the default case, wher the button is neither depressed nor illuminated + + + + + The Button is depressed or pressed down + + + + + The Button is illuminated or lit up + + + + + ButtonStatesEM + + + + + Returns true if the button state is depressed + + the button state + Boolean, true if the button is currently pressed + + + + Returns true if the button state is illuminated + + The button state + Boolean, true if the button is currently illuminated + + + + Sets the state to being lit + + This button state + + + + Sets the state to being Depressed + + This button state + + + + Removes the pressed condition from the button + + This button state + + + + Removes the lit condition from the button + + This button state + + + + Changes pressed to unpressed or unpressed to pressed + + + + + + DashControl + + + + + Creates a new instance of DashControl + + + + + + + + + + + + + + + + Sets the pattern of squares for this pen by working with the given dash and compound patterns. + + Completely defines the ICartographicStroke that is being used to set the pattern. + + + + Sets the horizontal pattern for this control + + + + + + Sets the vertical pattern for this control + + + + + + Occurs when the dash control needs to calculate the pattern + + + + + Prevent flicker + + + + + + Creates a bitmap to draw to instead of drawing directly to the image. + + + + + + Actually controls the basic drawing control. + + + + + + + Handles the mouse down event + + + + + + Handles mouse movement + + + + + + Handles the mouse up event + + + + + + Fires the pattern changed event. + + + + + Forces a calculation during the resizing that changes the pattern squares. + + + + + + Updates the highlight based on mouse position. + + + + + + Occurs any time any action has occured that changes the pattern. + + + + + Gets or sets the boolean pattern for the horizontal patterns that control the custom + dash style. + + + + + Gets or sets the boolean pattern for the vertical patterns that control the custom + compound array. + + + + + Gets or sets the color for all the buttons when they are pressed and inactive + + + + + Gets or sets the base color for all the buttons when they are pressed and active + + + + + Gets or sets the base color for all the buttons when they are not pressed and not active. + + + + + Gets or sets the base color for all the buttons when they are not pressed but are active. + + + + + Gets or sets the line width for the actual line being described, regardless of scale mode. + + + + + Gets the width of a square in the same units used for the line width. + + + + + Gets the height of the square + + + + + Gets or sets the position of the sliders. The X describes the horizontal placement + of the horizontal slider, while the Y describes the vertical placement of the vertical slider. + + + + + Gets or sets the floating point size of each block in pixels. + + + + + Gets or sets the color of the line + + + + + Gets or sets the vertical Slider + + + + + DashSlider + + + + + Creates a new instance of DashSlider + + + + + Draws the current control + + + + + + + Creates a Gradient Brush + + + + + + + + + Gets or sets an image that can be used instead of the default triangular drawing + + + + + Gets or sets whether this control is vertical or horizontal + + + + + Gets the bounds of this slider. + + + + + Gets or sets the color for this control if it is not using a custom image. + + + + + Gets or sets whether or not this slider is in the process of being adjusted + + + + + Gets or sets the position. Whether the X or Y coordinate is used depends on the orientation. + + + + + Gets or sets the size of this slider. This is only used when the slider is not based on an image. + + + + + Gets or sets a boolean indicating whether this slider will draw itself. + + + + + DashSliderHorizontal + + + + + Creates a new instance of DashSliderHorizontal + + + + + Draws the dash slider + + + + + + + Gets the bounding rectangle for this slider. + + + + + DashSliderVertical + + + + + Creates a new instance of DashSliderVertical + + + + + Teh Publick method allowing this dash slider to be moved + + The graphics object to draw to + The clip rectangle defining where drawing should take place + + + + Gets the bounding rectangle for this slider. + + + + + SquareButton + + + + + Creates a new instance of SquareButton + + + + + Instructs this button to draw itself. + + + + + + + Gets the current color based on the current state. + + + + + Updates the mouse location and return true if the state had to change. + + Updates this button appropriately based on the specified mouse location. + Boolean, true if a change was made. + + + + Updates the depressed nature of the button based on a mouse click in the specified location + + + + + + + Draws this square button. The graphics object should be in client coordinates. + + + + + + + Creates a Gradient Brush + + + + + + + + + Gets or sets the rectangular bounds for this button + + + + + Gets or sets the color for this button control when it is pressed but is not + capturing the mouse. + + + + + Gets or sets the primary color for this button control when it is pressed + and is capturing the mouse. + + + + + Gets or sets the color for this button control when it is not pressed and is not + capturing the mouse. + + + + + Gets or sets the color for this button control when it is not pressed, but is + currently capturing the mouse + + + + + Gets or sets the state of the button, including whether it is pressed and whether + it is illuminated. + + + + + Gets or sets a boolean indicating if this button is currently pressed + + + + + Gets or sets a boolean indicating if this button is currently lit + + + + + DialogButtons + + + + + Creates a new instance of DialogButtons + + + + + Fires the ok clicked event + + + + + Fires the Cancel Clicked event + + + + + Fires the Apply Clicked event + + + + + The OK button was clicked + + + + + The Apply button was clicked + + + + + The Cancel button was clicked + + + + + A User control for entering double values into text boxes + + + + + Required designer variable. + + + + + Creates a new instance of DoubleBox + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires TextChanged + + + + + Fires ValidChanged + + + + + Occurs when the user changes values in the text box + + + + + Occurs either when changing from valid to invalid or when + changing from invalid to valid. + + + + + Gets or sets the normal background color + + + + + Gets or sets the invalid background color + + + + + Gets or sets the caption + + + + + Gets or sets the string number format + + + + + Gets or sets teh tool tip text help when this + item has an invalid entry. + + + + + Gets or sets a boolean indicating if the text in this box can be parsed + into a double precision value. + + + + + Gets or sets the tool tip text for regular help + + + + + Gets the raw text entered in the textbox + + + + + Gets the currently entered double value. + + + + + DynamicVisibilityControl + + + + + Creates a new instance of DynamicVisibilityControl. Note, + this default constructor won't be able to grab the extents + from a layer, but instead will use the "grab extents" + + + + + The true constructor + + Service that may have launched this control + the layer that this property is being adjusted on + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the geographic width where the layer content becomes visible again. + + + + + If a layer is not provided, the DynamicVisibilityExtents + will be set to the grab extents instead. + + + + + Gets or sets a boolean corresponding + + + + + DynamicVisibilityEditor + + + + + Display a drop down when editing instead of the normal control, and allow the user to "grab" a + new dynamic visibility extent. + + + + + + + + + Indicate that we should use a drop-down for controlling dynamic visibility. + + + + + + + DynamicVisibilityModeDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of DynamicVisibilityModeDialog + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Gets or sets the dynamic visiblity mode for this dialog. + This stores the result from this dialog. + + + + + DynamicVisibilityTypeConverter + + + + + Returns true if we are converting to strings + + + + + + + + Return + + + + + + + + + + Returns true if we are converting from boolean + + + + + + + + ExportFeature + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of ExportFeature + + + + + Occurs when closing, and throws up a message box preventing "ok" with an invalid path. + + + + + + Gets the zero based integer index + + + + + Gets or sets the string fileName. Setting this will not actually use this value, + but will make up a new value based on the entered value. + + + + + ExpressionEditor + + + + + This describes how to launch the form etc. + + + + + + + + + This tells the editor that it should open a dialog form when editing the value from a ... button + + + + + + + FontBox + + + + + Required designer variable. + + + + + Creates a new instance of FontBox + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Changes the starting location of the color drop down based on the current text. + + + + + Gets or sets the font that this control should be using. + + + + + Gets or sets the label text for this control. + + + + + A UserControl for specifying the font family. + + + A control that is specifically designed to allow choosing a font family name + + + + + Creates a new instance of the Font Family control, pre-loading a font drop down. + + + + + Gets the selected family name as a FontFamily object + + A FontFamily object + + + + Throws a new event when the selected item changed. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the currently selected font family name. + + + + + Event + + + + + This control doesn't actually pre-load items, it merely overrides how the items + are drawn. + + + + + Occurs during the drawing of an item + + + + + + FontFamilyNameEditor + + + + + Edits a value based on some user input which is collected from a character control. + + + + + + + + + Gets the UITypeEditorEditStyle, which in this case is drop down. + + + + + + + Overrides the ISDropDownResizable to allow this control to be adjusted. + + + + + A Color lever is a control that shows a color on a plate, and has a knob on a lever on the side of the plate for + controling the opacity, where the up position is opaque and the bottom position is transparent. + + + + + Creates a new instance of ColorLever + + + + + Prevent flicker + + + + + + Draw the clipped portion + + + + + + Controls the actual drawing for this gradient slider control. + + + + + + + Uses the current transform matrix to calculate the coordinates in terms of the unrotated, unflipped image + + + + + + Transforms a point from the standard orientation of the control into client coordinates. + + + + + + + Handles the mouse down position for dragging the lever. + + + + + + Handles the mouse move event to handle when the lever is dragged. + + + + + + Controls the mouse up for ending the drag movement, or possibly launching the color dialog to change the base color. + + + + + + Fires a ColorChanged event whenver the opacity or color have been altered. + + + + + Fires the ColorChanging evetn whenever the color is changing either directly, or by the use of the opacity lever. + + + + + Fires the OpacityChanging event when the opacity is being changed + + + + + Occurs whenever either the color or the opacity for this control is adjusted + + + + + Occurs as the opacity is being adjusted by the slider, but while the slider is + still being dragged. + + + + + Because the color is changed any time the opacity is changed, while the lever is being + adjusted, the color is being updated as well as the opacity. Therefore, this is fired + both when the color is changed directly or when the slider is being adjusted. + + + + + Gets or sets the double valued angle for this control. + + + + + Gets or sets the bar length + + + + + Gets or sets the width of the bar connecting the knob + + + + + Gets or sets the border width + + + + + Gets or sets the color being displayed on the color plate. + + + + + Gets or sets the radius to use for the knob on the opacity lever. + + + + + Gets or sets the knob color. + + + + + Gets or sets a boolean that can be used to reverse the lever, rather than simply rotating it. + + + + + Gets or sets the opacity for the color lever. This will also + adjust the knob position. + + + + + A Control that can be used to create custom gradients. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of a Gradient Control + + + + + Fires the Gradient Changed event + + + + + Fires the Gradient Changing event + + + + + Occurs when the gradient is updated to its final value when the sliders or levers are released. + + + + + Occurs when the gradient changes as the result of a sliding action, either from the dragging of a slider or else + the dragging of a lever. + + + + + Gets or sets the position of the minimum handle + + + + + Gets or sets the position of the maximum handle + + + + + Gets or sets the minimum color + + + + + Gets or sets the maximum color + + + + + Gets or sets a boolean that determine whether the sliders are enabled on the gradient control. + Disabling the sliders will prevent them from being drawn or changed, and will automatically + set the values to minimum and maximumum. + + + + + GradientControl + + + + + Creates a new instance of GradientControl + + + + + Prevent flicker + + + + + + Draw the clipped portion + + + + + + Controls the actual drawing for this gradient slider control. + + + + + + + Initiates slider dragging + + + + + + Handles slider dragging + + + + + + Handles the mouse up situation + + + + + + Fires the Position Changing event while either slider is being dragged + + + + + Fires the Position Changed event after sliders are released + + + + + Occurs as the user is adjusting the positions on either of the sliders + + + + + Occurs after the user has finished adjusting the positions of either of the sliders and has released control + + + + + Gets or sets the floating point position of the left slider. This must range + between 0 and 1, and to the left of the right slider, (therefore with a value lower than the right slider.) + + + + + Gets or sets the floating point position of the right slider. This must range + between 0 and 1, and to the right of the left slider. + + + + + Gets or sets the minimum allowed value for the slider. + + + + + Gets or sets the color associated with the minimum color + + + + + Gets or sets the maximum allowed value for the slider. + + + + + Gets or sets the color associated with the maximum value. + + + + + RoundedSlider + + + + + Creates a new instance of RoundedSlider + + + + + Creates a new instance of a rounded handle, specifying the parent gradient slider + + + + + + Draws this slider on the specified graphics object + + + + + + Gets the bounds of this handle in the coordinates of the parent slider. + + + + + Gets or sets a boolean indicating whether this is visible or not + + + + + Gets or sets the parent + + + + + Gets or sets the Position + + + + + Gets or sets whether this handle should behave like a left handle, + meaning that it reads values from its right side rather than the left. + + + + + Gets or sets the integer width of this slider in pixels. + + + + + Gets or sets the basic color of the slider + + + + + Gets or sets the integer describing the radius of the curves in the corners of the slider + + + + + Gets or sets a boolean that controls whether or not this handle is drawn and visible. + + + + + GradientControl + + + + + Creates a new instance of GradientControl + + + + + Uses the hue values from the specified start and end color to set the handle positions. + + The start color that represents the left hue + The start color that represents the right hue + + + + Prevent flicker + + + + + + Draw the clipped portion + + + + + + Controls the actual drawing for this gradient slider control. + + + + + + + Initiates slider dragging + + + + + + Handles slider dragging + + + + + + Handles the mouse up situation + + + + + + Fires the Position Changing event while either slider is being dragged + + + + + Fires the Position Changed event after sliders are released + + + + + Occurs as the user is adjusting the positions on either of the sliders + + + + + Occurs after the user has finished adjusting the positions of either of the sliders and has released control + + + + + Gets or sets a boolean indicating whether the hue pattern should be flipped. + + + + + Gets or sets an integer value indicating how much to adjust the hue to change where wrapping occurs. + + + + + Gets or sets the floating point position of the left slider. This must range + between 0 and 1, and to the left of the right slider, (therefore with a value lower than the right slider.) + + + + + Gets or sets the floating point position of the right slider. This must range + between 0 and 1, and to the right of the left slider. + + + + + Gets or sets the maximum allowed value for the slider. + + + + + Gets or sets the minimum allowed value for the slider. + + + + + The value represented by the left handle, taking into account + whether or not the slider has been reversed. + + + + + The value represented by the right handle, taking into account + whether or not the slider has been reversed. + + + + + RoundedSlider + + + + + Creates a new instance of RoundedSlider + + + + + Creates a new instance of a rounded handle, specifying the parent gradient slider + + + + + + Draws this slider on the specified graphics object + + + + + + Gets the bounds of this handle in the coordinates of the parent slider. + + + + + Gets or sets a boolean indicating whether this is visible or not + + + + + Gets or sets the parent + + + + + Gets or sets the Position + + + + + Gets or sets the integer width of this slider in pixels. + + + + + Gets or sets the basic color of the slider + + + + + Gets or sets the integer describing the radius of the curves in the corners of the slider + + + + + Gets or sets a boolean that controls whether or not this handle is drawn and visible. + + + + + RoundedSlider + + + + + Creates a new instance of RoundedSlider + + + + + Creates a new instance of a rounded handle, specifying the parent gradient slider + + + + + + Draws this slider on the specified graphics object + + + + + + Gets the bounds of this handle in the coordinates of the parent slider. + + + + + Gets the color at the handles current position + + + + + Gets or sets a boolean indicating whether this is the left handle or not. + + + + + Gets or sets a boolean indicating whether this is visible or not + + + + + Gets or sets the parent + + + + + Gets or sets the Position + + + + + Gets or sets the integer width of this slider in pixels. + + + + + Gets or sets the basic color of the slider + + + + + Gets or sets the integer describing the radius of the curves in the corners of the slider + + + + + Gets or sets a boolean that controls whether or not this handle is drawn and visible. + + + + + GradientControl + + + + + Creates a new instance of GradientControl + + + + + Uses the saturation of the specified values to set the left and right values for this slider. + + The color that specifies the left saturation + The color that specifies the right saturation + + + + Uses the lightness of hte specified values ot set the left and right values for this slider + + The color that specifies the left lightness + The color that specifies the right lightness + + + + Prevent flicker + + + + + + Draw the clipped portion + + + + + + Controls the actual drawing for this gradient slider control. + + + + + + + Initiates slider dragging + + + + + + Handles slider dragging + + + + + + Handles the mouse up situation + + + + + + Fires the Position Changing event while either slider is being dragged + + + + + Fires the Position Changed event after sliders are released + + + + + Occurs as the user is adjusting the positions on either of the sliders + + + + + Occurs after the user has finished adjusting the positions of either of the sliders and has released control + + + + + Gets or sets the inverted values. + + + + + Gets or sets the floating point position of the left slider. This must range + between 0 and 1, and to the left of the right slider, (therefore with a value lower than the right slider.) + + + + + The value represented by the left handle, taking into account + whether or not the slider has been reversed. + + + + + The value represented by the right handle, taking into account + whether or not the slider has been reversed. + + + + + Gets or sets the floating point position of the right slider. This must range + between 0 and 1, and to the right of the left slider. + + + + + Gets or sets the color associated with the maximum value. + + + + + Gets or sets the maximum allowed value for the slider. + + + + + Gets or sets the minimum allowed value for the slider. + + + + + Gets or sets the color associated with the minimum color + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + JoinDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of JoinDialog + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Gets the fileName of the created shapefile. + + + + + LabelAlignmentButton + + + + + Creates a new instance of LabelAlignmentButton + + + + + Creates a new instance of the button with the specified rectangle as the bounds. + + The bounds relative to the parent client + The background color + + + + Instructs this button to draw itself. + + The graphics surface to draw to. + + + + Gets or sets the bounds for this button. + + + + + Gets or sets the color used as the background color. + + + + + Boolean, true if this button is currently highlighted (mouse over) + + + + + Boolean, true if this button is currently selected + + + + + LabelAlignmentControl + + + + + Creates a new instance of LabelAlignmentControl + + + + + Occurs when the value is changed and fires the ValueChanged event + + + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the actual value currently being represented in the control. + + + + + Occurs after the drop-down has been used to select a value. + + + + + LabelAlignmentControl + + + + + Creates a new instance of LabelAlignmentControl + + + + + Prevent flicker + + + + + + Custom drawing + + + + + + Handles the actual drawing for this control. + + + + + + + A mouse up event will alter the button that is currently selected + + + + + + Fires the Value Changed event + + + + + + Handles mouse movements that highlight internal buttons + + + + + + Occurs when this is resized + + + + + + Occurs when the value has changed + + + + + Gets the content alignment for this control + + + + + Gets an integer value representing how much to separate the + interior region of the buttons. + + + + + LineJoinControl + + + + + Creates a new instance of LineJoinControl + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the on value changed event + + + + + Occurs when one of the radio buttons is clicked, changing the current value. + + + + + Gets or sets the string text + + + + + Gets or sets the current line join type shown by the control. + + + + + PropertyGridEditor + + + + + This should launch an open file dialog instead of the usual thing. + + ITypeDescriptorContext + IServiceProvider + The object being displayed + A new version of the object if the dialog was ok. + + + + Either allows the editor to work or else nips it in the butt + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + LineSymbolizerEditor + + + + + Launches a form for editing the line symbolizer + + + + + + + + + Indicates to launch a form, rather than using a drop-down edit style + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Factorial value should be grater than 0. + + + + + Looks up a localized string similar to The destination field data type is incompatible (double or string or integer). + + + + + Looks up a localized string similar to The function name was not recognized as one of the standard function names.. + + + + + Looks up a localized string similar to The parameter is invalid. + + + + + Looks up a localized string similar to The root n-th root is incorrect. + + + + + Looks up a localized string similar to There were too many closing brackets in the string expression.. + + + + + Looks up a localized string similar to The value entered could not be correctly parsed into a valid double precision floating point value.. + + + + + Looks up a localized string similar to Enter a double precision floating point value.. + + + + + Looks up a localized string similar to All Features. + + + + + Looks up a localized string similar to All Features in View Extent. + + + + + Looks up a localized string similar to Selected features. + + + + + Sucht eine lokalisierte Zeichenfolge, die The expression is empty. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die In order to specify a custom filter expression, the custom mode must be selected first. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The layer was exported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Do you want to load the shapefile? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Each symbol group can define a separate string expression that includes attribute values. Double click fields to add it to the expression. ähnelt. + + + + + Looks up a localized string similar to Use the Members tab to design a filter expression that restricts which features will be assigned to a specific label.. + + + + + Looks up a localized string similar to Use the Expression Tab to design the text that should appear in a label. Fields indicated with brackets will be substituted with real values.. + + + + + Looks up a localized string similar to Each group can specify its own basic design characteristics.. + + + + + Looks up a localized string similar to Each group can specify its advanced characteristics.. + + + + + Sucht eine lokalisierte Zeichenfolge, die Categories must contain at least one category! ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to delete category ähnelt. + + + + + + Looks up a localized string similar to Confirm. + + + + + Looks up a localized string similar to Could not copy FID. + + + + + Looks up a localized string similar to Could not find the field in the attribute Table colums. + + + + + Looks up a localized string similar to Could not execute the query.. + + + + + Looks up a localized string similar to Could not find or replace items.. + + + + + Looks up a localized string similar to of . + + + + + Looks up a localized string similar to Selected. + + + + + Looks up a localized string similar to Enter Find String. + + + + + Looks up a localized string similar to Shapefiles (*.shp) |*.shp. + + + + + Looks up a localized string similar to Could not import column fields.. + + + + + Looks up a localized string similar to Find. + + + + + Looks up a localized string similar to Could not import column fields. + + + + + Looks up a localized string similar to DBase Files (*.dbf)|*.dbf. + + + + + Looks up a localized string similar to Could not create new field. + + + + + Looks up a localized string similar to None of the rows contain a value that matches the specified value.. + + + + + Looks up a localized string similar to Are you sure you want to remove the fields?. + + + + + Looks up a localized string similar to Column edits are not yet supported for datasets with more than 50, 000 attributes. + + + + + Looks up a localized string similar to This feature is not yet supported for datasets with larger than 50, 000 rows.. + + + + + Looks up a localized string similar to Unfamilar data type to replace. + + + + + Looks up a localized string similar to row. + + + + + Looks up a localized string similar to rows. + + + + + Looks up a localized string similar to Unable to save edits. . + + + + + Looks up a localized string similar to s. + + + + + Looks up a localized string similar to {0} of {1} selected.. + + + + + OpacityEditor + + + + + Edits the value by showing a slider control in the drop down. + + + + + + + + + Sets the behavior to drop-down + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + + UIOpenFileEditor + + + + + This should launch an open file dialog instead of the usual thing. + + + + + + + + + Either allows the editor to work or else nips it in the butt + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + A collection of controls that are specifically designed to work with the outline on a polygon. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new, blank instanceo of the outline control + + + + + Creates an outline control that uses the specified pattern to define its configuration. + + The pattern that will be modified during changes. + + + + Creates an outline control that uses the specified pattern to define its configuration. + + When apply changes are clicked, the map will be updated when these changes are copied over. + The pattern that will be modified during changes. + + + + Fires the OutlineChanged event + + + + + Fires the OutlineChanged event + + + + + Occurs when any of the symbolic aspects of this control are changed. + + + + + Occurs specifically when changes are applied from the line symbolizer editor + + + + + Gets or sets the pattern for this control + + + + + PointFConverter + + + + + Boolean, true if the source type is a string + + + + + + + + Converts the specified string into a PointF + + + + + + + + + Converts the PointF into a string + + + + + + + + + + PropertyGridEditor + + + + + This should launch an open file dialog instead of the usual thing. + + ITypeDescriptorContext + IServiceProvider + The object being displayed + A new version of the object if the dialog was ok. + + + + Either allows the editor to work or else nips it in the butt + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + LineSymbolizerEditor + + + + + Launches a form for editing the line symbolizer + + + + + + + + + Specifies that this should open a form and work using a modal behavior. + + + + + + + PropertyGridEditor + + + + + This should launch an open file dialog instead of the usual thing. + + ITypeDescriptorContext + IServiceProvider + The object being displayed + A new version of the object if the dialog was ok. + + + + Either allows the editor to work or else nips it in the butt + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + LineSymbolizerEditor + + + + + Launches a form for editing the line symbolizer + + + + + + + + + Indicates to launch a form, rather than using a drop-down edit style + + + + + + + This control shows a list of predefined symbols with their names and preview. + + + + + Creates a new instance of the predefined symbol control. + + + + + Creates a new instance of the predefined symbol control that uses the specific symbol provider + + The provider class that is used to retrieve the predefined custom symbols from + the XML file or another data source + + + + Creates a new instance of a Predefined symbol control designed to display a list of specific symbolizer + + + + + + + Adds a new symbolizer to the control. The added symbolizer will be selected + by default + + The added custom symbolizer + + + + Checks if the control contains the specified symbolizer + + the line symbolizer to be checked + true if found, false otherwise + + + + Saves the list of symbolizers to a file using serialization + (not yet implemented) + + + + + + Loads the list of symbolizers from the serialized file + (not yet implemented) + + The file name from which to load + + + + Handles the situation where a mouse up should show a magnified version of the character. + + + + + + Fires the SymbolSelected event args, and closes a drop down editor if it exists. + + + + + Takes place when the control is initialized or invalidated + + + + + + Occurs whenever this control is resized, and forces invalidation of the entire control because + we are completely changing how the paging works. + + + + + + Draws a symbolizer inside the specified rectangle including margins + + The graphics device to draw to + The Rectangle describing where to draw + The IFeatureSymbolizer to draw + + + + Occurs when a symbol is selected + + + + + Gets or sets the cell size in pixels. + + + + + Gets or sets the margin of each symbolizer preview cell in pixels + + + + + Overrides underlying behavior to hide it in the properties list for this control from serialization + + + + + Gets the list of custom symbolizers displayed in this control + + + + + When the 'Category Filter' is set to this value then + all available custom symbols are displayed + + + + + Indicates whether the custom symbolizer names should be shown + + + + + Gets or sets the font to use for the text that describes the predifined symbol control + + + + + Gets or sets a boolean that, if true, indicates that this form should restructure the columns + as it is resized so that all the columns are visible. + + + + + Gets or sets whether or not a feature symbolizer is selected + + + + + Gets or sets the index of the selected symbolizer item + + + + + Gets or sets the number of columns + + + + + Gets the number of rows, which is controlled by having to show 256 cells + in the given number of columns. + + + + + Gets or sets the background color for the selection + + + + + The Font Color for the selection + + + + + Gets or sets the selected symbolizer + + + + + The category of symbol displayed in the control + + + + + This component displays the preview of a feature symbolizer + + + + + Creates a new instance of SymbolPreview control + + + + + Updates the preview display using the specified symbolizer + + The symbolizer displayed in the preview + + + + Cancels the on paint background event to prevent flicker + + + + + + + + + + + + The feature symbolizer displayed in the preview + + + + + ProgressCancelDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of ProgressCancelDialog + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + + + + + + + Fires the canceled event. + + + + + A Dialog that can be useful for showing properties + + + + + This creates a new instance of the Dialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires the ChangesApplied event. If an original object IDescriptor has been set, + then this directly handles the update. + + + + + An original object place holder to allow outside handlers, but still track + the object and its copy in a tightly correlated way. + + + + + This provides access to the property grid on this dialog + + + + + This event occurs when someone presses the apply button + + + + + PropertyDialogProvider + + + + + Shows a PropertyGrid Dialog and uses the specified object as the edit copy. + + + + + + Fires a the ChangesApplied event + + + + + + Fires an event signifying that the item has been updated + + + + + Gets the item that was changed by this operation. + + + + + PropertyGridEditor + + + + + This should launch an open file dialog instead of the usual thing. + + ITypeDescriptorContext + IServiceProvider + The object being displayed + A new version of the object if the dialog was ok. + + + + Either allows the editor to work or else nips it in the butt + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + RampSlider + + + + + Creates a new instance of RampSlider + + + + + Does the actual drawing in client coordinates + + + + + + + Draws the tick marks on this slider + + + + + + + Draws the text that appears inside the ramp. + + + + + + + Draws the ramp itself. + + + + + + + Draws the slider itself in client coordinates + + + + + + + Draws the text for Minimum and Maximum + + + + + + + Fires the MouseDown event + + + + + + Handles the Mouse up scenario to stop dragging + + + + + + Fires the Value Changed event + + + + + Handles the dragging code + + + + + + Prevent flicker + + + + + + Draw the clipped portion + + + + + + Occurs on the resize event + + + + + + Occurs when the slider has been controlled to alter the value. + + + + + Gets or sets a color button. In this case, the ramp slider will display the opacity range for + the color specified by the color button. The color button may become transparent, but the + opacity range will always show transparent to opaque, matching the RGB signature of the color + from the color button. + + + + + Gets or sets a boolean indicating whether the minimum and maximum should exchange places + + + + + Gets or sets a boolean that represents whether to mirror the shape of the ramp. + If the ramp is horizontal, this will change whether the top or the bottom of the + ramp changes. + + + + + Gets or sets a value indicating whether to draw any labeled values on the opposite side of the ramp. + + + + + Gets or sets the maximum value of this slider. + + + + + Gets or sets the color at the maximum of the ramp + + + + + Gets or sets the minimum allowed value, and therefore the minimum position of the slider. + If this is set above value or maximum, those values will be set equal to this value. + + + + + Gets or sets the color of the minimum of the ramp. + + + + + Gets or sets the Number format to use for the min, max and value. + + + + + Gets or sets whether the ramp and text should be organized horizontally or vertically. + + + + + Gets or sets the numeric radius that controls the rounding on the ramp. + + + + + Gets or sets the text that appears behind the ramp, if any. + + + + + Gets or sets a boolean that, if ture, will cause the text to be drawn behind the ramp instead of in front of the ramp. + This can be useful if attempting to illustrate opacity by using some text. + + + + + Controls the actual text of the ramp + + + + + Gets or sets the color of the text that appears in the ramp + + + + + Gets or sets the positioning of ramp text in relative to the ramp itself. + + + + + Gets or sets a boolean, that if true will label the maximum value. + + + + + Gets or sets a boolean, that if true will label the minimum value. + + + + + Gets or sets a boolean, that if true will label the chosen value. + + + + + Gets or sets a boolean indicating whether to draw tickmarks along the straight axis of the ramp. + + + + + Gets or sets the basic color of the slider. + + + + + Gets or sets the numeric radius that controls the rounding on the ramp. + + + + + Gets or sets the color that will be used to draw the ticks. + + + + + Gets or sets the spacing to use for the ticks. These will be drawn between + the minimum and maximum values. + + + + + Gets or sets a value ranging from Min to Max. + + + + + RasterColorSchemeEditor + + + + + This should launch a frmRasterSymbolizer + + ITypeDescriptorContext context + IServiceProvider provider + object value + A new RasterSymbolizer + + + + This controls the editor style and sets up a backup copy of the symbolizer + + ITypeDescriptorContext + UITypeEditorEditStyle + + + + This is a basic form which is displayed when the user double-clicks on a layer name + in the legend + + + + + Creates a new instance of LayerDialog + + + + + Creates a new instance of LayerDialog form to display the symbology and + other properties of the specified feature layer + + the specified feature layer that is + modified using this form + The control. + + + + Forces changes to be written from the copy symbology to + the original, updating the map display. + + + + + Occurs during apply changes operations and is overrideable in subclasses + + + + + Occurs when the apply changes situation forces the symbology to become updated. + + + + + LineSymbolizerEditor + + + + + Launches a form for editing the line symbolizer + + + + + + + + + Specifies that a form will be used for editing (a Modal form behaves like a dialog) + + + + + + + mwProgressBar + + + + + Initializes a new instance of the Symbology Progress Bar. + + + + + This method is thread safe so that people calling this method don't cause a cross-thread violation + by updating the progress indicator from a different thread + + A string message with just a description of what is happening, but no percent completion information + The integer percent from 0 to 100 + A message + + + + Prevent flicker + + + + + + Controls the drawing of this bar. + + The PaintEventArgs for this paint action + + + + Gets or sets the progress message. + + + + + Gets or sets a boolean indicating whether or not to draw the status message on the progress bar. + + + + + Gets or sets the font color. + + + + + SQLExpressionDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the string expression. Setting this will set the initial + text content in the dialog. + + + + + Gets or sets the DataTable that the expression dialog uses. + + + + + Gets or sets the Attribute source instead of the table + + + + + A pre-configured status strip with a thread safe Progress function + + + The designer for the symbology status strip. + + + + + Creates a new instance of the StatusStrip which has a built in, thread safe Progress handler + + + + + This method is thread safe so that people calling this method don't cause a cross-thread violation + by updating the progress indicator from a different thread + + A string message with just a description of what is happening, but no percent completion information + The integer percent from 0 to 100 + A message + + + + Raises the event. + + A that contains the event data. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the progress bar. By default, the first ToolStripProgressBar that is added to the tool strip. + + + The progress bar. + + + + + Gets or sets the progress label. By default, the first ToolStripStatusLabel that is added to the tool strip. + + + The progress label. + + + + + BreakSlider + + + + + Creates a new instance of BreakSlider + + The bounds of the graph to draw in relative to the control. + The minimum value currently in view + The maximum value currently in view + The color range to connect to this slider. + + + + Compares this value to the other value. + + + + + + + This sets the values for the parental bounds, as well as the double + values for the maximum and minimum values visible on the graph. + + + + + + + + Causes this slider to draw itself to the specified graphics surface. + + + + + + Custom drawing + + The Graphics surface to draw to + + + + Gets or sets the color range that this break is the maximum value for. + + + + + Gets the bounds of the handle that extends above the graph + + + + + Gets a bounding rectangle in coordinates relative to the parent + + + + + Gets or sets the category that has a maximum value equal to this break. + + + + + Gets or sets the color of this slider + + + + + Gets or sets the integer count representing the number of members in the class. + (Technically represented left of the line. + + + + + Gets or sets the next category, which should have a minimum corresponding to this break. + + + + + Gets or sets the position of this slider + + + + + Gets or sets whether or not this slider is selected. + + + + + Gets or sets the selected color + + + + + Gets or sets the double value where this break should occur. + + + + + BreakSliderEventArgs + + + + + Creates a new instance of BreakSliderEventArgs + + + + + Gets or sets the protected break slider + + + + + BreakSliderGraph + + + + + Given a scheme, this resets the graph extents to the statistical bounds. + + + + + + + + + + Given a scheme, this will build the break list to match approximately. This does not + force the interval method to build a new scheme. + + + + + Fires the statistics updated event + + + + + Fires the SliderSelected event + + + + + + Handles disposing to release unmanaged memory + + + + + + Creates a new instance of BreakSliderGraph + + + + + Zooms so that the minimum is the minimum of the lowest category or else the + minimum of the extents, and the maximum is the maximum of the largest category + or else the maximum of the statistics. + + + + + resets the breaks using the current settings, and generates a new set of + categories using the given interval method. + + + + + Selects one of the specific breaks. + + + + + + occurs during a resize + + + + + + When the mouse wheel event occurs, this forwards the event to this contro. + + + + + Occurs when the mose down occurs + + + + + + Occurs when the slider moves + + + + + Handles the mouse move event + + + + + + Handles the mouse up event + + + + + + Given a break slider's new position, this will update the category related to that + break. + + + + + + Returns the BreakSlider that corresponds to the specified mouse position, where + the actual handle and divider represent the maximum of that range. + + The location, which can be anywhere to the left of the slider but to the + right of any other sliders. + The BreakSlider that covers the range that contains the location, or null. + + + + Fires the slider moved event + + + + + Occurs during drawing + + + + + + + prevents flicker by preventing the white background being drawn here + + + + + + Custom drawing + + + + + + Occurs when manual break sliding begins so that the mode can be + switched to manual, rather than showing equal breaks or something. + + + + + Occurs when a click in a range changes the slider that is selected. + + + + + Occurs after the slider has been completely repositioned. + + + + + Occurs after the statistics have been re-calculated. + + + + + Gets or sets the attribute source. + + + + + Gets or sets the border style for this control + + + + + Gets the list of breaks that are currently part of this graph. + + + + + Gets or sets the color to use for the moveable breaks. + + + + + Gets or sets the color to use when a break is selected + + + + + Gets or sets the font color + + + + + Gets or sets the number of columns. Setting this will recalculate the bins. + + + + + The method to use when breaks are calculated or reset + + + + + Boolean, if this is true, the mean will be shown as a blue dotted line. + + + + + Boolean, if this is true, the integral standard deviations from the mean will be drawn + as red dotted lines. + + + + + Gets or sets the data Table for which the statistics should be applied + + + + + Gets or sets the title of the graph. + + + + + Gets or sets the color to use for the graph title + + + + + Gets or sets the font to use for the graph title + + + + + Gets or sets the string field name + + + + + Gets or sets the string normalization field + + + + + Very small counts frequently dissappear next to big counts. One strategey is to use a + minimum height, so that the difference between 0 and 1 is magnified on the columns. + + + + + Gets or sets the maximum sample size to use when calculating statistics. + The default is 10000. + + + + + Gets the statistics that have been currently calculated for this graph. + + + + + Gets or sets the scheme that is currently being used to symbolize the values. + Setting this automatically updates the graph extents to the statistical bounds + of the scheme. + + + + + Gets or sets the raster layer. This will also force this control to use + the raster for calculations, rather than the dataset. + + + + + Gets or sets a boolean that indicates whether or not count values should be drawn with + heights that are proportional to the logarithm of the count, instead of the count itself. + + + + + StatisticalEventArgs + + + + + Creates a new instance of StatisticalEventArgs + + + + + Gets the set of statistics related to this event. + + + + + This class is the System.Windows.Forms interpretor of symbology events being fired. + + + + + The symbology event manager. + + + + + Allows setting the owner for any dialogs that need to be launched. + + + + + Gets or sets the custom actions for ColorCategory + + + + + Gets or sets the custom actions for FeatureLayer + + + + + Gets or sets the custom actions for RasterLayer + + + + + Gets or sets the actions for ImageLayers + + + + + Gets or sets the custom actions for Layer + + + + + DetailedLineSymbolDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a new line symbol dialog where only the original is specified and the + duplicate is created. + + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the symbolizer being used by this control. + + + + + DetailedPointSymbolDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a new DetailedPointSymbolDialog that will update the specified original symbol + by copying the new aspects to it only if the Apply Changes, or Ok buttons are used. + + The original IPointSymbolizer to modify. + + + + Resets the existing control with the new symbolizer + + + + + + Applies the specified changes + + + + + Fires the ChangesApplied event + + + + + Fires the AddtoCustomSymbols event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Occurs when the add to custom symbols button is pressed. + + + + + Gets the current (copied) symbolizer or initializes this control to work with the + specified symbolizer as the original. + + + + + DetailedPointSymbolDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + + + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the symbolizer being used by this control. + + + + + DetailedPolygonSymbolDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a new dialog where the properties displayed on the form are a duplicate of the original properties, + and those properties will be copied back to the original on an apply changes or an ok click. + + + + + + Assigns the original symbolizer to this control + + The polygon symbolizer to modify. + + + + Forces the current settings to be written back to the original symbolizer + + + + + Fires the ChangesApplied event + + + + + Fires the AddToCustomSymbols event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Occurs when the the Add To Custom Symbols button is clicked + + + + + Gets the current (copied) symbolizer or initializes this control to work with the + specified symbolizer as the original. + + + + + DetailedPolygonSymbolDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a new DetailedPolygonSymbolControl using the specified + + + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the symbolizer being used by this control. + + + + + Initial dialog for selecting a predefined line symbol + + + + + Required designer variable. + + + + + Creates a new instance of DetailedLineSymbolDialog + + + + + Creates a new Detailed Line Symbol Dialog + + + + + + Shows the 'Symbol Details' dialog + + + + + Fires the ChangesApplied event + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires an event indicating that changes should be applied. + + + + + StatisticalBreaksDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Gets or sets the string field name to apply statistics to + + + + + Gets or sets the normalization field to apply statistics to. + + + + + Gets or sets the Table that has the data row values to use for statistics. + + + + + Gets or sets the feature scheme to use for coloring and existing break positions + + + + + Gets or sets the title for the graph + + + + + Size2DDialog + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Creates a Size2DDialog with a specific symbol to edit when "Apply Changes" is clicked + + + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the symbol that should be edited whenever apply changes is clicked. + + + + + This represents a single box inside of a symbol size chooser. + + + + + The graphics device and clip rectangle are in the parent coordinates. + + + + The symbol to use for drawing. + + + + This draws the specified symbol using the "Size" property from this box rather than the real size. + The transform has been zeroed on the center of this box. + + + + + + + Gets or sets the base color for the normal background color for this box. + + + + + Gets or sets the rectangular bounds for this size box. + + + + + Gets or sets the size + + + + + Gets or sets whether or not this item should draw itself as though it has been selected. + + + + + Gets or sets the selection color for this selection. + + + + + Gets or sets the rouding radius for this box. + + + + + A user control that is specifically designed to control the point sizes + + + + + Required designer variable. + + + + + Creates a new instance of the size control + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the SizeChanged event + + + + + Occurs when the size changes on this control, ether through applying changes in the dialog or else + by selecting one of the pre-configured sizes. + + + + + Gets or sets the symbol to use when drawing the various sizes + + + + + SymbolSizeChooser + + + + + Prevent redundant updates to the boxes every time a property is changed + + + + + Enable live updating so that from now on, changes rebuild boxes. + + + + + Creates a new instance of SymbolSizeChooser + + + + + Gets or sets a new SymbolSize chooser, specifying the symbol as part of the constructor. + + The symbol to draw. + + + + Forces the box sub-categories to refresh given the new content. + + + + + Fires the selected size changed event + + + + + Handles the mouse up situation + + + + + + Occurs durring drawing but is overridable by subclasses + + + + + + + Prevent flicker + + + + + + Occurs as the SymbolSizeChooser control is being drawn. + + + + + + Occurs when the selected size has changed + + + + + Gets or sets the normal background color for the boxes. + + + + + Gets or sets the box selection color + + + + + Gets or sets the rectangular extent for all the boxes. This is not the size of the symbol. + + + + + Gets or sets the maximum symbol size. + + + + + Gets or sets the minimum symbol size + + + + + Gets or sets whether the boxes are drawn horizontally or vertically. + + + + + Gets or sets the number of boxes + + + + + Gets or sets the symbol to use for this control. + + + + + Gets or sets the rounding radius for the boxes + + + + + Gets or sets the currently selected size. + + + + + TabColorDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of CollectionPropertyGrid + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Fires the ChangesApplied event + + + + + Occurs whenever the apply changes button is clicked, or else when the ok button is clicked. + + + + + Gets or sets the start color for this control + + + + + Gets or sets the end color for this control. + + + + + OpacityEditor + + + + + Edits the value by showing a slider control in the drop down. + + + + + + + + + Sets the behavior to drop-down + + + + + + + Ensures that we can widen the drop-down without having to close the drop down, + widen the control, and re-open it again. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.MapWindowProjectFileCompatibility/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allow to open MapWindow 4 projects. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/seed_3d.dgn =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-CN/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.StatusBarImprovements/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.StatusBarImprovements/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.StatusBarImprovements/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Contains several improvements to StatusBar. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/nzgd2kgrid0005.gsb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/libmysql.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/ntf_r93.gsb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.dll.config (revision 2866) @@ -0,0 +1,14 @@ + + + + +
+ + + + + + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/libeay32.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/start_page_background.jpg =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/cs/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/cubewerx_extra.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/cubewerx_extra.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/cubewerx_extra.wkt (revision 2866) @@ -0,0 +1,48 @@ +# +# This file derived from the public_coordsys.txt file distributed with +# CubeSTOR by CubeWerx (http://www.cubewerx.com) +# +# OGC-defined "AUTO" codes +# http://www.digitalearth.gov/wmt/auto.html +# +# Hmm, not really much point to including these as they require extra +# substitutions. See the importFromWMSAUTO() if you need these. +# +#42001,PROJCS["WGS 84 / Auto UTM%s",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["central_meridian","%.16g"],PARAMETER["latitude_of_origin",0],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing","%.16g"],UNIT["Meter",1],AUTHORITY["EPSG","42001"]] +#42002,PROJCS["WGS 84 / Auto Tr. Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["central_meridian","%.16g"],PARAMETER["latitude_of_origin",0],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing","%.16g"],UNIT["Meter",1],AUTHORITY["EPSG","42002"]] +#42003,PROJCS["WGS 84 / Auto Orthographic",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Orthographic"],PARAMETER["central_meridian","%.16g"],PARAMETER["latitude_of_origin","%.16g"],UNIT["Meter",1],AUTHORITY["EPSG","42003"]] +#42004,PROJCS["WGS 84 / Auto Equirectangular",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Equirectangular"],PARAMETER["central_meridian",0],PARAMETER["latitude_of_origin",0],PARAMETER["standard_parallel_1","%.16g"],UNIT["Meter",1],AUTHORITY["EPSG","42004"]] +# +# OGC-defined extended codes (41000--41999) +# see http://www.digitalearth.gov/wmt/auto.html +# +41001,PROJCS["WGS84 / Simple Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","41001"]] +# +# CubeWerx-defined extended codes (42100--42199) +# +42101,PROJCS["WGS 84 / LCC Canada",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-95.0],PARAMETER["latitude_of_origin",0],PARAMETER["standard_parallel_1",49.0],PARAMETER["standard_parallel_2",77.0],PARAMETER["false_easting",0.0],PARAMETER["false_northing",-8000000.0],UNIT["Meter",1],AUTHORITY["EPSG","42101"]] +#EPSG:42102,"PROJCS[\"NAD83 / BC Albers\",GEOGCS[\"NAD83\",DATUM[\"North_American_Datum_1983\",SPHEROID[\"GRS_1980\",6378137,298.257222101]],PRIMEM[\"Greenwich\",0],UNIT[\"Decimal_Degree\",0.0174532925199433]],PROJECTION[\"Albers_conic_equal_area\"],PARAMETER[\"central_meridian\",-126.0],PARAMETER[\"latitude_of_origin\",45],PARAMETER[\"standard_parallel_1\",50.0],PARAMETER[\"standard_parallel_2\",58.5],PARAMETER[\"false_easting\",1000000.0],PARAMETER[\"false_northing\",0],UNIT[\"Meter\",1]]" +42103,PROJCS["WGS 84 / LCC USA",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1978",6378135,298.26]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-100.0],PARAMETER["latitude_of_origin",0],PARAMETER["standard_parallel_1",33.0],PARAMETER["standard_parallel_2",45.0],PARAMETER["false_easting",0.0],PARAMETER["false_northing",0.0],UNIT["Meter",1],AUTHORITY["EPSG","42103"]] +42104,PROJCS["NAD83 / MTM zone 8 Qu�bec",GEOGCS["GRS80",DATUM["GRS_1980",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-73.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",304800],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42104"]] +42105,PROJCS["WGS84 / Merc NorthAm",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-96],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42105"]] +42106,PROJCS["WGS84 / Lambert Azim Mozambique",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["Sphere_radius_6370997_m",6370997,0]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Azimuthal_equal_area"],PARAMETER["latitude_of_origin",5],PARAMETER["central_meridian",20],PARAMETER["standard_parallel_1",5],PARAMETER["standard_parallel_2",5],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42106"]] +# +# CubeWerx-customer definitions (42300--42399) +# +42301,PROJCS["NAD27 / Polar Stereographic / CM=-98",GEOGCS["NAD27",DATUM["North_American_Datum_1927",SPHEROID["Clarke 1866",6378206.4,294.978698213901]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Stereographic"],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",-98.0],PARAMETER["standard_parallel_1",90],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42301"]] +42302,PROJCS["JapanOrtho.09 09",GEOGCS["Lon/Lat.Tokyo Datum",DATUM["Tokyo Datum",SPHEROID["anon",6377397.155,299.15281310608]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["Central_Meridian",139.833333333333],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Latitude_of_Origin",36],PARAMETER["Scale_Factor",0.9999],UNIT["Meter",1],AUTHORITY["EPSG","42302"]] +42303,PROJCS["NAD83 / Albers NorthAm",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Albers_conic_equal_area"],PARAMETER["central_meridian",-96.0],PARAMETER["latitude_of_origin",23],PARAMETER["standard_parallel_1",29.5],PARAMETER["standard_parallel_2",45.5],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42303"]] +42304,PROJCS["NAD83 / NRCan LCC Canada",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-95.0],PARAMETER["latitude_of_origin",49.0],PARAMETER["standard_parallel_1",49.0],PARAMETER["standard_parallel_2",77.0],PARAMETER["false_easting",0.0],PARAMETER["false_northing",0.0],UNIT["Meter",1],AUTHORITY["EPSG","42304"]] +42305,PROJCS["France_II",GEOGCS["GCS_NTF_Paris",DATUM["Nouvelle_Triangulation_Francaise",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Paris",2.337229166666667],UNIT["degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",2200000],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",45.898918964419],PARAMETER["Standard_Parallel_2",47.696014502038],PARAMETER["Latitude_Of_Origin",46.8],UNIT["Meter",1],AUTHORITY["EPSG","42305"]] +42306,PROJCS["NAD83/QC_LCC",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-68.5],PARAMETER["latitude_of_origin",44],PARAMETER["standard_parallel_1",46],PARAMETER["standard_parallel_2",60],PARAMETER["false_easting",0.0],PARAMETER["false_northing",0.0],UNIT["Meter",1],AUTHORITY["EPSG","42306"]] +42307,PROJCS["NAD83 / Texas Central - feet",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.8833333333333],PARAMETER["standard_parallel_2",30.1166666666667],PARAMETER["latitude_of_origin",29.6666666666667],PARAMETER["central_meridian",-100.333333333333],PARAMETER["false_easting",2296583.33333333333333],PARAMETER["false_northing",9842500],UNIT["US_Foot",0.30480060960121924],AUTHORITY["EPSG","42307"]] +42308,PROJCS["NAD27 / California Albers",GEOGCS["NAD27",DATUM["North_American_Datum_1927",SPHEROID["Clarke 1866",6378206.4,294.978698213901]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Albers_conic_equal_area"],PARAMETER["central_meridian",-120.0],PARAMETER["latitude_of_origin",0],PARAMETER["standard_parallel_1",34],PARAMETER["standard_parallel_2",40.5],PARAMETER["false_easting",0],PARAMETER["false_northing",-4000000],UNIT["Meter",1],AUTHORITY["EPSG","42308"]] +42309,PROJCS["NAD 83 / LCC Canada AVHRR-2",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-95.0],PARAMETER["latitude_of_origin",0],PARAMETER["standard_parallel_1",49.0],PARAMETER["standard_parallel_2",77.0],PARAMETER["false_easting",0.0],PARAMETER["false_northing",0.0],UNIT["Meter",1],AUTHORITY["EPSG","42309"]] +42310,PROJCS["WGS84+GRS80 / Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["GRS 1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Mercator_1SP"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],AUTHORITY["EPSG","42310"]] +42311,PROJCS["NAD83 / LCC Statcan",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["central_meridian",-91.866667],PARAMETER["latitude_of_origin",63.390675],PARAMETER["standard_parallel_1",49],PARAMETER["standard_parallel_2",77],PARAMETER["false_easting",6200000],PARAMETER["false_northing",3000000],UNIT["Meter",1],AUTHORITY["EPSG","42311"]] +# +# BC-Forestry/NFIS code +# +100001,GEOGCS["NAD83 / NFIS Seconds",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Decimal_Second",4.84813681109536e-06],AUTHORITY["EPSG","100001"]] +100002,PROJCS["NAD83 / Austin",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",31.8833333333333],PARAMETER["standard_parallel_2",30.1166666666667],PARAMETER["latitude_of_origin",29.6666666666667],PARAMETER["central_meridian",-100.333333333333],PARAMETER["false_easting",2296583.333333],PARAMETER["false_northing",9842500.0000000],UNIT["Meter",1],AUTHORITY["EPSG","100002"]] +900913,PROJCS["Google Maps Global Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_2SP"],PARAMETER["standard_parallel_1",0],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"]] Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/NuGet.Core.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Compatibility.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/vi-VN/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.Taudem.Port/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Plugin wrapper for the modified taudem plugin to be used by BASINS. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Extensions.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_ellips.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_ellips.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pci_ellips.txt (revision 2866) @@ -0,0 +1,76 @@ +! +! By email on December 2nd, 2010: +! +! I, Louis Burry, on behalf of PCI Geomatics agree to allow the ellips.txt +! and datum.txt file to be distributed under the GDAL open source license. +! +! Louis Burry +! VP Technology & Delivery +! PCI Geomatics +! +! +! NOTE: The range of "E908" to "E998" is set aside for +! the use of local customer development. +! +"E009","Airy 1830",6377563.396,6356256.91 +"E011","Modified Airy",6377340.189,6356034.448 +"E910","ATS77",6378135.0,6356750.304922 +"E014","Australian National 1965",6378160.,6356774.719 +"E002","Bessel 1841",6377397.155,6356078.96284 +"E900","Bessel 1841 (Namibia)",6377483.865,6356165.382966 +"E333","Bessel 1841 (Japan By Law)",6377397.155,6356078.963 +"E000","Clarke 1866",6378206.4,6356583.8 +"E001","Clarke 1880 (RGS)",6378249.145,6356514.86955 +"E202","Clarke 1880 (IGN, France)",6378249.2,6356515.0 +"E006","Everest (India 1830)",6377276.3452,6356075.4133 +"E010","Everest (W. Malaysia and Singapore 1948)",6377304.063,6356103.039 +"E901","Everest (India 1956)",6377301.243,6356100.228368 +"E902","Everest (W. Malaysia 1969)",6377295.664,6356094.667915 +"E903","Everest (E. Malaysia and Brunei)",6377298.556,6356097.550301 +"E201","Everest (Pakistan)",6377309.613,6356108.570542 +"E017","Fischer 1960",6378166.,6356784.283666 +"E013","Modified Fischer 1960",6378155.,6356773.3205 +"E018","Fischer 1968",6378150.,6356768.337303 +"E008","GRS 1980",6378137.,6356752.31414 +"E904","Helmert 1906",6378200.,6356818.169628 +"E016","Hough 1960",6378270.,6356794.343479 +"E200","Indonesian 1974",6378160.,6356774.504086 +"E004","International 1924",6378388.,6356911.94613 +"E203","IUGG 67",6378160.,6356774.516090714 +"E015","Krassovsky 1940",6378245.,6356863.0188 +"E700","MODIS (Sphere from WGS84)",6371007.181,6371007.181 +"E003","New International 1967",6378157.5,6356772.2 +"E019","Normal Sphere",6370997.,6370997. +"E905","SGS 85",6378136.,6356751.301569 +"E907","South American 1969",6378160.,6356774.719 +"E906","WGS 60",6378165.,6356783.286959 +"E007","WGS 66",6378145.,6356759.769356 +"E005","WGS 72",6378135.,6356750.519915 +"E012","WGS 84",6378137.,6356752.314245 +"E600","D-PAF (Orbits)",6378144.0,6356759.0 +"E601","Test Data Set 1",6378144.0,6356759.0 +"E602","Test Data Set 2",6377397.2,6356079.0 +"E204","War Office",6378300.583,6356752.270 +"E205","Clarke 1880 Arc",6378249.145,6356514.966 +"E206","Bessel Modified",6377492.018,6356173.5087 +"E207","Clarke 1858",6378293.639,6356617.98149 +"E208","Clarke 1880",6378249.138,6356514.95942 +"E209","Everest (1937 Adjustment)",6377276.345,6356075.413 +"E210","Everest (1962 Definition)",6377301.243,6356100.23 +"E211","Everest Modified",6377304.063,6356103.039 +"E212","Modified Everest 1969",6377295.664,6356094.668 +"E213","Everest (1967 Definition)",6377298.556,6356097.550 +"E214","Clarke 1880 (Benoit)",6378300.79,6356566.43 +"E215","Clarke 1880 (SGA)",6378249.2,6356515.0 +"E216","Everest (1975 Definition)",6377299.151,6356098.1451 +"E217","GEM 10C",6378137,6356752.31414 +"E218","OSU 86F",6378136.2,6356751.516672 +"E219","OSU 91A",6378136.3,6356751.6163367 +"E220","Sphere",6371000,6371000 +"E221","Struve 1860",6378297,6356655.847 +"E222","Walbeck",6376896,6355834.847 +"E223","Plessis 1817",6376523,6355862.933 +"E224","Xian 1980",6378140.0,6356755.288 +"E225","EMEP Sphere",6370000,6370000 +"E226","Everest (India and Nepal)",6377301.243,6356100.228368 +"E899","GRS 1967 Modified",6378160.,6356774.719195306 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Compatibility.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/System.Data.SQLite.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/System.Data.SQLite.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SpatiaLite/System.Data.SQLite.xml (revision 2866) @@ -0,0 +1,12758 @@ + + + + System.Data.SQLite + + + + + Defines a source code identifier custom attribute for an assembly + manifest. + + + + + Constructs an instance of this attribute class using the specified + source code identifier value. + + + The source code identifier value to use. + + + + + Gets the source code identifier value. + + + + + Defines a source code time-stamp custom attribute for an assembly + manifest. + + + + + Constructs an instance of this attribute class using the specified + source code time-stamp value. + + + The source code time-stamp value to use. + + + + + Gets the source code time-stamp value. + + + + + This is the method signature for the SQLite core library logging callback + function for use with sqlite3_log() and the SQLITE_CONFIG_LOG. + + WARNING: This delegate is used more-or-less directly by native code, do + not modify its type signature. + + + The extra data associated with this message, if any. + + + The error code associated with this message. + + + The message string to be logged. + + + + + This class implements SQLiteBase completely, and is the guts of the code that interop's SQLite with .NET + + + + + This internal class provides the foundation of SQLite support. It defines all the abstract members needed to implement + a SQLite data provider, and inherits from SQLiteConvert which allows for simple translations of string to and from SQLite. + + + + + This base class provides datatype conversion services for the SQLite provider. + + + + + The format string for DateTime values when using the InvariantCulture or CurrentCulture formats. + + + + + The value for the Unix epoch (e.g. January 1, 1970 at midnight, in UTC). + + + + + The value of the OLE Automation epoch represented as a Julian day. + + + + + An array of ISO-8601 DateTime formats that we support parsing. + + + + + The internal default format for UTC DateTime values when converting + to a string. + + + + + The internal default format for local DateTime values when converting + to a string. + + + + + An UTF-8 Encoding instance, so we can convert strings to and from UTF-8 + + + + + The default DateTime format for this instance. + + + + + The default DateTimeKind for this instance. + + + + + The default DateTime format string for this instance. + + + + + Initializes the conversion class + + The default date/time format to use for this instance + The DateTimeKind to use. + The DateTime format string to use. + + + + Converts a string to a UTF-8 encoded byte array sized to include a null-terminating character. + + The string to convert to UTF-8 + A byte array containing the converted string plus an extra 0 terminating byte at the end of the array. + + + + Convert a DateTime to a UTF-8 encoded, zero-terminated byte array. + + + This function is a convenience function, which first calls ToString() on the DateTime, and then calls ToUTF8() with the + string result. + + The DateTime to convert. + The UTF-8 encoded string, including a 0 terminating byte at the end of the array. + + + + Converts a UTF-8 encoded IntPtr of the specified length into a .NET string + + The pointer to the memory where the UTF-8 string is encoded + The number of bytes to decode + A string containing the translated character(s) + + + + Converts a UTF-8 encoded IntPtr of the specified length into a .NET string + + The pointer to the memory where the UTF-8 string is encoded + The number of bytes to decode + A string containing the translated character(s) + + + + Converts a string into a DateTime, using the DateTimeFormat, DateTimeKind, + and DateTimeFormatString specified for the connection when it was opened. + + + Acceptable ISO8601 DateTime formats are: + + THHmmssK + THHmmK + HH:mm:ss.FFFFFFFK + HH:mm:ssK + HH:mmK + yyyy-MM-dd HH:mm:ss.FFFFFFFK + yyyy-MM-dd HH:mm:ssK + yyyy-MM-dd HH:mmK + yyyy-MM-ddTHH:mm:ss.FFFFFFFK + yyyy-MM-ddTHH:mmK + yyyy-MM-ddTHH:mm:ssK + yyyyMMddHHmmssK + yyyyMMddHHmmK + yyyyMMddTHHmmssFFFFFFFK + THHmmss + THHmm + HH:mm:ss.FFFFFFF + HH:mm:ss + HH:mm + yyyy-MM-dd HH:mm:ss.FFFFFFF + yyyy-MM-dd HH:mm:ss + yyyy-MM-dd HH:mm + yyyy-MM-ddTHH:mm:ss.FFFFFFF + yyyy-MM-ddTHH:mm + yyyy-MM-ddTHH:mm:ss + yyyyMMddHHmmss + yyyyMMddHHmm + yyyyMMddTHHmmssFFFFFFF + yyyy-MM-dd + yyyyMMdd + yy-MM-dd + + If the string cannot be matched to one of the above formats -OR- + the DateTimeFormatString if one was provided, an exception will + be thrown. + + The string containing either a long integer number of 100-nanosecond units since + System.DateTime.MinValue, a Julian day double, an integer number of seconds since the Unix epoch, a + culture-independent formatted date and time string, a formatted date and time string in the current + culture, or an ISO8601-format string. + A DateTime value + + + + Converts a string into a DateTime, using the specified DateTimeFormat, + DateTimeKind and DateTimeFormatString. + + + Acceptable ISO8601 DateTime formats are: + + THHmmssK + THHmmK + HH:mm:ss.FFFFFFFK + HH:mm:ssK + HH:mmK + yyyy-MM-dd HH:mm:ss.FFFFFFFK + yyyy-MM-dd HH:mm:ssK + yyyy-MM-dd HH:mmK + yyyy-MM-ddTHH:mm:ss.FFFFFFFK + yyyy-MM-ddTHH:mmK + yyyy-MM-ddTHH:mm:ssK + yyyyMMddHHmmssK + yyyyMMddHHmmK + yyyyMMddTHHmmssFFFFFFFK + THHmmss + THHmm + HH:mm:ss.FFFFFFF + HH:mm:ss + HH:mm + yyyy-MM-dd HH:mm:ss.FFFFFFF + yyyy-MM-dd HH:mm:ss + yyyy-MM-dd HH:mm + yyyy-MM-ddTHH:mm:ss.FFFFFFF + yyyy-MM-ddTHH:mm + yyyy-MM-ddTHH:mm:ss + yyyyMMddHHmmss + yyyyMMddHHmm + yyyyMMddTHHmmssFFFFFFF + yyyy-MM-dd + yyyyMMdd + yy-MM-dd + + If the string cannot be matched to one of the above formats -OR- + the DateTimeFormatString if one was provided, an exception will + be thrown. + + The string containing either a long integer number of 100-nanosecond units since + System.DateTime.MinValue, a Julian day double, an integer number of seconds since the Unix epoch, a + culture-independent formatted date and time string, a formatted date and time string in the current + culture, or an ISO8601-format string. + The SQLiteDateFormats to use. + The DateTimeKind to use. + The DateTime format string to use. + A DateTime value + + + + Converts a julianday value into a DateTime + + The value to convert + A .NET DateTime + + + + Converts a julianday value into a DateTime + + The value to convert + The DateTimeKind to use. + A .NET DateTime + + + + Converts the specified number of seconds from the Unix epoch into a + value. + + + The number of whole seconds since the Unix epoch. + + + Either Utc or Local time. + + + The new value. + + + + + Converts the specified number of ticks since the epoch into a + value. + + + The number of whole ticks since the epoch. + + + Either Utc or Local time. + + + The new value. + + + + + Converts a DateTime struct to a JulianDay double + + The DateTime to convert + The JulianDay value the Datetime represents + + + + Converts a DateTime struct to the whole number of seconds since the + Unix epoch. + + The DateTime to convert + The whole number of seconds since the Unix epoch + + + + Returns the DateTime format string to use for the specified DateTimeKind. + If is not null, it will be returned verbatim. + + The DateTimeKind to use. + The DateTime format string to use. + + The DateTime format string to use for the specified DateTimeKind. + + + + + Converts a string into a DateTime, using the DateTimeFormat, DateTimeKind, + and DateTimeFormatString specified for the connection when it was opened. + + The DateTime value to convert + Either a string containing the long integer number of 100-nanosecond units since System.DateTime.MinValue, a + Julian day double, an integer number of seconds since the Unix epoch, a culture-independent formatted date and time + string, a formatted date and time string in the current culture, or an ISO8601-format date/time string. + + + + Internal function to convert a UTF-8 encoded IntPtr of the specified length to a DateTime. + + + This is a convenience function, which first calls ToString() on the IntPtr to convert it to a string, then calls + ToDateTime() on the string to return a DateTime. + + A pointer to the UTF-8 encoded string + The length in bytes of the string + The parsed DateTime value + + + + Smart method of splitting a string. Skips quoted elements, removes the quotes. + + + This split function works somewhat like the String.Split() function in that it breaks apart a string into + pieces and returns the pieces as an array. The primary differences are: + + Only one character can be provided as a separator character + Quoted text inside the string is skipped over when searching for the separator, and the quotes are removed. + + Thus, if splitting the following string looking for a comma:
+ One,Two, "Three, Four", Five
+
+ The resulting array would contain
+ [0] One
+ [1] Two
+ [2] Three, Four
+ [3] Five
+
+ Note that the leading and trailing spaces were removed from each item during the split. +
+ Source string to split apart + Separator character + A string array of the split up elements +
+ + + Splits the specified string into multiple strings based on a separator + and returns the result as an array of strings. + + + The string to split into pieces based on the separator character. If + this string is null, null will always be returned. If this string is + empty, an array of zero strings will always be returned. + + + The character used to divide the original string into sub-strings. + This character cannot be a backslash or a double-quote; otherwise, no + work will be performed and null will be returned. + + + If this parameter is non-zero, all double-quote characters will be + retained in the returned list of strings; otherwise, they will be + dropped. + + + Upon failure, this parameter will be modified to contain an appropriate + error message. + + + The new array of strings or null if the input string is null -OR- the + separator character is a backslash or a double-quote -OR- the string + contains an unbalanced backslash or double-quote character. + + + + + Convert a value to true or false. + + A string or number representing true or false + + + + + Convert a string to true or false. + + A string representing true or false + + + "yes", "no", "y", "n", "0", "1", "on", "off" as well as Boolean.FalseString and Boolean.TrueString will all be + converted to a proper boolean value. + + + + + Converts a SQLiteType to a .NET Type object + + The SQLiteType to convert + Returns a .NET Type object + + + + For a given intrinsic type, return a DbType + + The native type to convert + The corresponding (closest match) DbType + + + + Returns the ColumnSize for the given DbType + + The DbType to get the size of + + + + + Determines the type name for the given database value type. + + The database value type. + The flags associated with the parent connection object. + The type name or an empty string if it cannot be determined. + + + + Convert a DbType to a Type + + The DbType to convert from + The closest-match .NET type + + + + For a given type, return the closest-match SQLite TypeAffinity, which only understands a very limited subset of types. + + The type to evaluate + The SQLite type affinity for that type. + + + + Builds and returns a map containing the database column types + recognized by this provider. + + + A map containing the database column types recognized by this + provider. + + + + + For a given type name, return a closest-match .NET type + + The name of the type to match + The flags associated with the parent connection object. + The .NET DBType the text evaluates to. + + + + The error code used for logging exceptions caught in user-provided + code. + + + + + Sets the status of the memory usage tracking subsystem in the SQLite core library. By default, this is enabled. + If this is disabled, memory usage tracking will not be performed. This is not really a per-connection value, it is + global to the process. + + Non-zero to enable memory usage tracking, zero otherwise. + A standard SQLite return code (i.e. zero for success and non-zero for failure). + + + + Attempts to free as much heap memory as possible for the database connection. + + A standard SQLite return code (i.e. zero for success and non-zero for failure). + + + + Shutdown the SQLite engine so that it can be restarted with different config options. + We depend on auto initialization to recover. + + + + + Determines if the associated native connection handle is open. + + + Non-zero if a database connection is open. + + + + + Opens a database. + + + Implementers should call SQLiteFunction.BindFunctions() and save the array after opening a connection + to bind all attributed user-defined functions and collating sequences to the new connection. + + The filename of the database to open. SQLite automatically creates it if it doesn't exist. + The flags associated with the parent connection object + The open flags to use when creating the connection + The maximum size of the pool for the given filename + If true, the connection can be pulled from the connection pool + + + + Closes the currently-open database. + + + After the database has been closed implemeters should call SQLiteFunction.UnbindFunctions() to deallocate all interop allocated + memory associated with the user-defined functions and collating sequences tied to the closed connection. + + Non-zero if the operation is allowed to throw exceptions, zero otherwise. + + + + Sets the busy timeout on the connection. SQLiteCommand will call this before executing any command. + + The number of milliseconds to wait before returning SQLITE_BUSY + + + + Returns the text of the last error issued by SQLite + + + + + + Returns the text of the last error issued by SQLite -OR- the specified default error text if + none is available from the SQLite core library. + + + The error text to return in the event that one is not available from the SQLite core library. + + + The error text. + + + + + When pooling is enabled, force this connection to be disposed rather than returned to the pool + + + + + When pooling is enabled, returns the number of pool entries matching the current file name. + + The number of pool entries matching the current file name. + + + + Prepares a SQL statement for execution. + + The source connection preparing the command. Can be null for any caller except LINQ + The SQL command text to prepare + The previous statement in a multi-statement command, or null if no previous statement exists + The timeout to wait before aborting the prepare + The remainder of the statement that was not processed. Each call to prepare parses the + SQL up to to either the end of the text or to the first semi-colon delimiter. The remaining text is returned + here for a subsequent call to Prepare() until all the text has been processed. + Returns an initialized SQLiteStatement. + + + + Steps through a prepared statement. + + The SQLiteStatement to step through + True if a row was returned, False if not. + + + + Resets a prepared statement so it can be executed again. If the error returned is SQLITE_SCHEMA, + transparently attempt to rebuild the SQL statement and throw an error if that was not possible. + + The statement to reset + Returns -1 if the schema changed while resetting, 0 if the reset was sucessful or 6 (SQLITE_LOCKED) if the reset failed due to a lock + + + + Attempts to interrupt the query currently executing on the associated + native database connection. + + + + + This function binds a user-defined functions to the connection. + + + The object instance containing + the metadata for the function to be bound. + + + The object instance that implements the + function to be bound. + + + The flags associated with the parent connection object. + + + + + Calls the native SQLite core library in order to create a disposable + module containing the implementation of a virtual table. + + + The module object to be used when creating the native disposable module. + + + The flags for the associated object instance. + + + + + Calls the native SQLite core library in order to cleanup the resources + associated with a module containing the implementation of a virtual table. + + + The module object previously passed to the + method. + + + The flags for the associated object instance. + + + + + Calls the native SQLite core library in order to declare a virtual table + in response to a call into the + or virtual table methods. + + + The virtual table module that is to be responsible for the virtual table + being declared. + + + The string containing the SQL statement describing the virtual table to + be declared. + + + Upon success, the contents of this parameter are undefined. Upon failure, + it should contain an appropriate error message. + + + A standard SQLite return code. + + + + + Calls the native SQLite core library in order to declare a virtual table + function in response to a call into the + or virtual table methods. + + + The virtual table module that is to be responsible for the virtual table + function being declared. + + + The number of arguments to the function being declared. + + + The name of the function being declared. + + + Upon success, the contents of this parameter are undefined. Upon failure, + it should contain an appropriate error message. + + + A standard SQLite return code. + + + + + Enables or disabled extension loading by SQLite. + + + True to enable loading of extensions, false to disable. + + + + + Loads a SQLite extension library from the named file. + + + The name of the dynamic link library file containing the extension. + + + The name of the exported function used to initialize the extension. + If null, the default "sqlite3_extension_init" will be used. + + + + + Enables or disabled extened result codes returned by SQLite + + true to enable extended result codes, false to disable. + + + + + Returns the numeric result code for the most recent failed SQLite API call + associated with the database connection. + + Result code + + + + Returns the extended numeric result code for the most recent failed SQLite API call + associated with the database connection. + + Extended result code + + + + Add a log message via the SQLite sqlite3_log interface. + + Error code to be logged with the message. + String to be logged. Unlike the SQLite sqlite3_log() + interface, this should be pre-formatted. Consider using the + String.Format() function. + + + + + Checks if the SQLite core library has been initialized in the current process. + + + Non-zero if the SQLite core library has been initialized in the current process, + zero otherwise. + + + + + Creates a new SQLite backup object based on the provided destination + database connection. The source database connection is the one + associated with this object. The source and destination database + connections cannot be the same. + + The destination database connection. + The destination database name. + The source database name. + The newly created backup object. + + + + Copies up to N pages from the source database to the destination + database associated with the specified backup object. + + The backup object to use. + + The number of pages to copy or negative to copy all remaining pages. + + + Set to true if the operation needs to be retried due to database + locking issues. + + + True if there are more pages to be copied, false otherwise. + + + + + Returns the number of pages remaining to be copied from the source + database to the destination database associated with the specified + backup object. + + The backup object to check. + The number of pages remaining to be copied. + + + + Returns the total number of pages in the source database associated + with the specified backup object. + + The backup object to check. + The total number of pages in the source database. + + + + Destroys the backup object, rolling back any backup that may be in + progess. + + The backup object to destroy. + + + + Returns the error message for the specified SQLite return code using + the internal static lookup table. + + The SQLite return code. + The error message or null if it cannot be found. + + + + Returns the error message for the specified SQLite return code using + the sqlite3_errstr() function, falling back to the internal lookup + table if necessary. + + The SQLite return code. + The error message or null if it cannot be found. + + + + Returns a string representing the active version of SQLite + + + + + Returns an integer representing the active version of SQLite + + + + + Returns the rowid of the most recent successful INSERT into the database from this connection. + + + + + Returns the number of changes the last executing insert/update caused. + + + + + Returns the amount of memory (in bytes) currently in use by the SQLite core library. This is not really a per-connection + value, it is global to the process. + + + + + Returns the maximum amount of memory (in bytes) used by the SQLite core library since the high-water mark was last reset. + This is not really a per-connection value, it is global to the process. + + + + + Returns non-zero if the underlying native connection handle is owned by this instance. + + + + + Returns non-zero if the given database connection is in autocommit mode. + Autocommit mode is on by default. Autocommit mode is disabled by a BEGIN + statement. Autocommit mode is re-enabled by a COMMIT or ROLLBACK. + + + + + The opaque pointer returned to us by the sqlite provider + + + + + The user-defined functions registered on this connection + + + + + The modules created using this connection. + + + + + Constructs the object used to interact with the SQLite core library + using the UTF-8 text encoding. + + + The DateTime format to be used when converting string values to a + DateTime and binding DateTime parameters. + + + The to be used when creating DateTime + values. + + + The format string to be used when parsing and formatting DateTime + values. + + + The native handle to be associated with the database connection. + + + The fully qualified file name associated with . + + + Non-zero if the newly created object instance will need to dispose + of when it is no longer needed. + + + + + This method attempts to dispose of all the derived + object instances currently associated with the native database connection. + + + + + Attempts to interrupt the query currently executing on the associated + native database connection. + + + + + This function binds a user-defined function to the connection. + + + The object instance containing + the metadata for the function to be bound. + + + The object instance that implements the + function to be bound. + + + The flags associated with the parent connection object. + + + + + Attempts to free as much heap memory as possible for the database connection. + + A standard SQLite return code (i.e. zero for success and non-zero for failure). + + + + Attempts to free N bytes of heap memory by deallocating non-essential memory + allocations held by the database library. Memory used to cache database pages + to improve performance is an example of non-essential memory. This is a no-op + returning zero if the SQLite core library was not compiled with the compile-time + option SQLITE_ENABLE_MEMORY_MANAGEMENT. Optionally, attempts to reset and/or + compact the Win32 native heap, if applicable. + + + The requested number of bytes to free. + + + Non-zero to attempt a heap reset. + + + Non-zero to attempt heap compaction. + + + The number of bytes actually freed. This value may be zero. + + + This value will be non-zero if the heap reset was successful. + + + The size of the largest committed free block in the heap, in bytes. + This value will be zero unless heap compaction is enabled. + + + A standard SQLite return code (i.e. zero for success and non-zero + for failure). + + + + + Shutdown the SQLite engine so that it can be restarted with different + configuration options. We depend on auto initialization to recover. + + Returns a standard SQLite result code. + + + + Shutdown the SQLite engine so that it can be restarted with different + configuration options. We depend on auto initialization to recover. + + + Non-zero to reset the database and temporary directories to their + default values, which should be null for both. This parameter has no + effect on non-Windows operating systems. + + Returns a standard SQLite result code. + + + + Determines if the associated native connection handle is open. + + + Non-zero if the associated native connection handle is open. + + + + + Calls the native SQLite core library in order to create a disposable + module containing the implementation of a virtual table. + + + The module object to be used when creating the native disposable module. + + + The flags for the associated object instance. + + + + + Calls the native SQLite core library in order to cleanup the resources + associated with a module containing the implementation of a virtual table. + + + The module object previously passed to the + method. + + + The flags for the associated object instance. + + + + + Calls the native SQLite core library in order to declare a virtual table + in response to a call into the + or virtual table methods. + + + The virtual table module that is to be responsible for the virtual table + being declared. + + + The string containing the SQL statement describing the virtual table to + be declared. + + + Upon success, the contents of this parameter are undefined. Upon failure, + it should contain an appropriate error message. + + + A standard SQLite return code. + + + + + Calls the native SQLite core library in order to declare a virtual table + function in response to a call into the + or virtual table methods. + + + The virtual table module that is to be responsible for the virtual table + function being declared. + + + The number of arguments to the function being declared. + + + The name of the function being declared. + + + Upon success, the contents of this parameter are undefined. Upon failure, + it should contain an appropriate error message. + + + A standard SQLite return code. + + + + + Enables or disabled extension loading by SQLite. + + + True to enable loading of extensions, false to disable. + + + + + Loads a SQLite extension library from the named file. + + + The name of the dynamic link library file containing the extension. + + + The name of the exported function used to initialize the extension. + If null, the default "sqlite3_extension_init" will be used. + + + + Enables or disabled extended result codes returned by SQLite + + + Gets the last SQLite error code + + + Gets the last SQLite extended error code + + + Add a log message via the SQLite sqlite3_log interface. + + + Add a log message via the SQLite sqlite3_log interface. + + + + Allows the setting of a logging callback invoked by SQLite when a + log event occurs. Only one callback may be set. If NULL is passed, + the logging callback is unregistered. + + The callback function to invoke. + Returns a result code + + + + Creates a new SQLite backup object based on the provided destination + database connection. The source database connection is the one + associated with this object. The source and destination database + connections cannot be the same. + + The destination database connection. + The destination database name. + The source database name. + The newly created backup object. + + + + Copies up to N pages from the source database to the destination + database associated with the specified backup object. + + The backup object to use. + + The number of pages to copy, negative to copy all remaining pages. + + + Set to true if the operation needs to be retried due to database + locking issues; otherwise, set to false. + + + True if there are more pages to be copied, false otherwise. + + + + + Returns the number of pages remaining to be copied from the source + database to the destination database associated with the specified + backup object. + + The backup object to check. + The number of pages remaining to be copied. + + + + Returns the total number of pages in the source database associated + with the specified backup object. + + The backup object to check. + The total number of pages in the source database. + + + + Destroys the backup object, rolling back any backup that may be in + progess. + + The backup object to destroy. + + + + Determines if the SQLite core library has been initialized for the + current process. + + + A boolean indicating whether or not the SQLite core library has been + initialized for the current process. + + + + + Determines if the SQLite core library has been initialized for the + current process. + + + A boolean indicating whether or not the SQLite core library has been + initialized for the current process. + + + + + Helper function to retrieve a column of data from an active statement. + + The statement being step()'d through + The flags associated with the connection. + The column index to retrieve + The type of data contained in the column. If Uninitialized, this function will retrieve the datatype information. + Returns the data in the column + + + + Returns non-zero if the underlying native connection handle is owned + by this instance. + + + + + Alternate SQLite3 object, overriding many text behaviors to support UTF-16 (Unicode) + + + + + Constructs the object used to interact with the SQLite core library + using the UTF-8 text encoding. + + + The DateTime format to be used when converting string values to a + DateTime and binding DateTime parameters. + + + The to be used when creating DateTime + values. + + + The format string to be used when parsing and formatting DateTime + values. + + + The native handle to be associated with the database connection. + + + The fully qualified file name associated with . + + + Non-zero if the newly created object instance will need to dispose + of when it is no longer needed. + + + + + Overrides SQLiteConvert.ToString() to marshal UTF-16 strings instead of UTF-8 + + A pointer to a UTF-16 string + The length (IN BYTES) of the string + A .NET string + + + + Represents a single SQL backup in SQLite. + + + + + The underlying SQLite object this backup is bound to. + + + + + The actual backup handle. + + + + + The destination database for the backup. + + + + + The destination database name for the backup. + + + + + The source database for the backup. + + + + + The source database name for the backup. + + + + + The last result from the StepBackup method of the SQLite3 class. + This is used to determine if the call to the FinishBackup method of + the SQLite3 class should throw an exception when it receives a non-Ok + return code from the core SQLite library. + + + + + Initializes the backup. + + The base SQLite object. + The backup handle. + The destination database for the backup. + The destination database name for the backup. + The source database for the backup. + The source database name for the backup. + + + + Disposes and finalizes the backup. + + + + + The extra behavioral flags that can be applied to a connection. + + + + + No extra flags. + + + + + Enable logging of all SQL statements to be prepared. + + + + + Enable logging of all bound parameter types and raw values. + + + + + Enable logging of all bound parameter strongly typed values. + + + + + Enable logging of all exceptions caught from user-provided + managed code called from native code via delegates. + + + + + Enable logging of backup API errors. + + + + + Skip adding the extension functions provided by the native + interop assembly. + + + + + When binding parameter values with the + type, use the interop method that accepts an + value. + + + + + When binding parameter values, always bind them as though they were + plain text (i.e. no numeric, date/time, or other conversions should + be attempted). + + + + + When returning column values, always return them as though they were + plain text (i.e. no numeric, date/time, or other conversions should + be attempted). + + + + + Prevent this object instance from + loading extensions. + + + + + Prevent this object instance from + creating virtual table modules. + + + + + Skip binding any functions provided by other managed assemblies when + opening the connection. + + + + + Skip setting the logging related properties of the + object instance that was passed to + the method. + + + + + Enable logging of all virtual table module errors seen by the + method. + + + + + Enable logging of certain virtual table module exceptions that cannot + be easily discovered via other means. + + + + + Enable tracing of potentially important [non-fatal] error conditions + that cannot be easily reported through other means. + + + + + When binding and returning column values, always treat them as though + they were plain text (i.e. no numeric, date/time, or other conversions + should be attempted). + + + + + Enable all logging. + + + + + The default extra flags for new connections. + + + + + SQLite implementation of DbCommand. + + + + + The default connection string to be used when creating a temporary + connection to execute a command via the static + or + + methods. + + + + + The command text this command is based on + + + + + The connection the command is associated with + + + + + The version of the connection the command is associated with + + + + + Indicates whether or not a DataReader is active on the command. + + + + + The timeout for the command, kludged because SQLite doesn't support per-command timeout values + + + + + Designer support + + + + + Used by DbDataAdapter to determine updating behavior + + + + + The collection of parameters for the command + + + + + The SQL command text, broken into individual SQL statements as they are executed + + + + + Unprocessed SQL text that has not been executed + + + + + Transaction associated with this command + + + + + Constructs a new SQLiteCommand + + + Default constructor + + + + + Initializes the command with the given command text + + The SQL command text + + + + Initializes the command with the given SQL command text and attach the command to the specified + connection. + + The SQL command text + The connection to associate with the command + + + + Initializes the command and associates it with the specified connection. + + The connection to associate with the command + + + + Initializes a command with the given SQL, connection and transaction + + The SQL command text + The connection to associate with the command + The transaction the command should be associated with + + + + Disposes of the command and clears all member variables + + Whether or not the class is being explicitly or implicitly disposed + + + + This method attempts to query the flags associated with the database + connection in use. If the database connection is disposed, the default + flags will be returned. + + + The command containing the databse connection to query the flags from. + + + The connection flags value. + + + + + Clears and destroys all statements currently prepared + + + + + Builds an array of prepared statements for each complete SQL statement in the command text + + + + + Not implemented + + + + + Forwards to the local CreateParameter() function + + + + + + Create a new parameter + + + + + + This function ensures there are no active readers, that we have a valid connection, + that the connection is open, that all statements are prepared and all parameters are assigned + in preparation for allocating a data reader. + + + + + Creates a new SQLiteDataReader to execute/iterate the array of SQLite prepared statements + + The behavior the data reader should adopt + Returns a SQLiteDataReader object + + + + This method creates a new connection, executes the query using the given + execution type, closes the connection, and returns the results. If the + connection string is null, a temporary in-memory database connection will + be used. + + + The text of the command to be executed. + + + The execution type for the command. This is used to determine which method + of the command object to call, which then determines the type of results + returned, if any. + + + The connection string to the database to be opened, used, and closed. If + this parameter is null, a temporary in-memory databse will be used. + + + The SQL parameter values to be used when building the command object to be + executed, if any. + + + The results of the query -OR- null if no results were produced from the + given execution type. + + + + + This method creates a new connection, executes the query using the given + execution type and command behavior, closes the connection, and returns + the results. If the connection string is null, a temporary in-memory + database connection will be used. + + + The text of the command to be executed. + + + The execution type for the command. This is used to determine which method + of the command object to call, which then determines the type of results + returned, if any. + + + The command behavior flags for the command. + + + The connection string to the database to be opened, used, and closed. If + this parameter is null, a temporary in-memory databse will be used. + + + The SQL parameter values to be used when building the command object to be + executed, if any. + + + The results of the query -OR- null if no results were produced from the + given execution type. + + + + + Overrides the default behavior to return a SQLiteDataReader specialization class + + The flags to be associated with the reader. + A SQLiteDataReader + + + + Overrides the default behavior of DbDataReader to return a specialized SQLiteDataReader class + + A SQLiteDataReader + + + + Called by the SQLiteDataReader when the data reader is closed. + + + + + Execute the command and return the number of rows inserted/updated affected by it. + + The number of rows inserted/updated affected by it. + + + + Execute the command and return the number of rows inserted/updated affected by it. + + The flags to be associated with the reader. + The number of rows inserted/updated affected by it. + + + + Execute the command and return the first column of the first row of the resultset + (if present), or null if no resultset was returned. + + The first column of the first row of the first resultset from the query. + + + + Execute the command and return the first column of the first row of the resultset + (if present), or null if no resultset was returned. + + The flags to be associated with the reader. + The first column of the first row of the first resultset from the query. + + + + Does nothing. Commands are prepared as they are executed the first time, and kept in prepared state afterwards. + + + + + Clones a command, including all its parameters + + A new SQLiteCommand with the same commandtext, connection and parameters + + + + The SQL command text associated with the command + + + + + The amount of time to wait for the connection to become available before erroring out + + + + + The type of the command. SQLite only supports CommandType.Text + + + + + The connection associated with this command + + + + + Forwards to the local Connection property + + + + + Returns the SQLiteParameterCollection for the given command + + + + + Forwards to the local Parameters property + + + + + The transaction associated with this command. SQLite only supports one transaction per connection, so this property forwards to the + command's underlying connection. + + + + + Forwards to the local Transaction property + + + + + Sets the method the SQLiteCommandBuilder uses to determine how to update inserted or updated rows in a DataTable. + + + + + Determines if the command is visible at design time. Defaults to True. + + + + + SQLite implementation of DbCommandBuilder. + + + + + Default constructor + + + + + Initializes the command builder and associates it with the specified data adapter. + + + + + + Minimal amount of parameter processing. Primarily sets the DbType for the parameter equal to the provider type in the schema + + The parameter to use in applying custom behaviors to a row + The row to apply the parameter to + The type of statement + Whether the application of the parameter is part of a WHERE clause + + + + Returns a valid named parameter + + The name of the parameter + Error + + + + Returns a named parameter for the given ordinal + + The i of the parameter + Error + + + + Returns a placeholder character for the specified parameter i. + + The index of the parameter to provide a placeholder for + Returns a named parameter + + + + Sets the handler for receiving row updating events. Used by the DbCommandBuilder to autogenerate SQL + statements that may not have previously been generated. + + A data adapter to receive events on. + + + + Returns the automatically-generated SQLite command to delete rows from the database + + + + + + Returns the automatically-generated SQLite command to delete rows from the database + + + + + + + Returns the automatically-generated SQLite command to update rows in the database + + + + + + Returns the automatically-generated SQLite command to update rows in the database + + + + + + + Returns the automatically-generated SQLite command to insert rows into the database + + + + + + Returns the automatically-generated SQLite command to insert rows into the database + + + + + + + Places brackets around an identifier + + The identifier to quote + The bracketed identifier + + + + Removes brackets around an identifier + + The quoted (bracketed) identifier + The undecorated identifier + + + + Override helper, which can help the base command builder choose the right keys for the given query + + + + + + + Gets/sets the DataAdapter for this CommandBuilder + + + + + Overridden to hide its property from the designer + + + + + Overridden to hide its property from the designer + + + + + Overridden to hide its property from the designer + + + + + Overridden to hide its property from the designer + + + + + Overridden to hide its property from the designer + + + + + Event data for connection event handlers. + + + + + The type of event being raised. + + + + + The associated with this event, if any. + + + + + The transaction associated with this event, if any. + + + + + The command associated with this event, if any. + + + + + The data reader associated with this event, if any. + + + + + The critical handle associated with this event, if any. + + + + + Command or message text associated with this event, if any. + + + + + Extra data associated with this event, if any. + + + + + Constructs the object. + + The type of event being raised. + The base associated + with this event, if any. + The transaction associated with this event, if any. + The command associated with this event, if any. + The data reader associated with this event, if any. + The critical handle associated with this event, if any. + The command or message text, if any. + The extra data, if any. + + + + Raised when an event pertaining to a connection occurs. + + The connection involved. + Extra information about the event. + + + + SQLite implentation of DbConnection. + + + The property can contain the following parameter(s), delimited with a semi-colon: + + + Parameter + Values + Required + Default + + + Data Source + + This may be a file name, the string ":memory:", or any supported URI (starting with SQLite 3.7.7). + Starting with release 1.0.86.0, in order to use more than one consecutive backslash (e.g. for a + UNC path), each of the adjoining backslash characters must be doubled (e.g. "\\Network\Share\test.db" + would become "\\\\Network\Share\test.db"). + + Y + + + + Version + 3 + N + 3 + + + UseUTF16Encoding + True
False
+ N + False +
+ + DateTimeFormat + + Ticks - Use the value of DateTime.Ticks.
+ ISO8601 - Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC + DateTime values and "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).
+ JulianDay - The interval of time in days and fractions of a day since January 1, 4713 BC.
+ UnixEpoch - The whole number of seconds since the Unix epoch (January 1, 1970).
+ InvariantCulture - Any culture-independent string value that the .NET Framework can interpret as a valid DateTime.
+ CurrentCulture - Any string value that the .NET Framework can interpret as a valid DateTime using the current culture.
+ N + ISO8601 +
+ + DateTimeKind + Unspecified - Not specified as either UTC or local time.
Utc - The time represented is UTC.
Local - The time represented is local time.
+ N + Unspecified +
+ + DateTimeFormatString + The exact DateTime format string to use for all formatting and parsing of all DateTime + values for this connection. + N + null + + + BaseSchemaName + Some base data classes in the framework (e.g. those that build SQL queries dynamically) + assume that an ADO.NET provider cannot support an alternate catalog (i.e. database) without supporting + alternate schemas as well; however, SQLite does not fit into this model. Therefore, this value is used + as a placeholder and removed prior to preparing any SQL statements that may contain it. + N + sqlite_default_schema + + + BinaryGUID + True - Store GUID columns in binary form
False - Store GUID columns as text
+ N + True +
+ + Cache Size + {size in bytes} + N + 2000 + + + Synchronous + Normal - Normal file flushing behavior
Full - Full flushing after all writes
Off - Underlying OS flushes I/O's
+ N + Full +
+ + Page Size + {size in bytes} + N + 1024 + + + Password + {password} - Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection. + N + + + + HexPassword + {hexPassword} - Must contain a sequence of zero or more hexadecimal encoded byte values without a leading "0x" prefix. Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection. + N + + + + Enlist + Y - Automatically enlist in distributed transactions
N - No automatic enlistment
+ N + Y +
+ + Pooling + + True - Use connection pooling.
+ False - Do not use connection pooling.

+ WARNING: When using the default connection pool implementation, + setting this property to True should be avoided by applications that make + use of COM (either directly or indirectly) due to possible deadlocks that + can occur during the finalization of some COM objects. +
+ N + False +
+ + FailIfMissing + True - Don't create the database if it does not exist, throw an error instead
False - Automatically create the database if it does not exist
+ N + False +
+ + Max Page Count + {size in pages} - Limits the maximum number of pages (limits the size) of the database + N + 0 + + + Legacy Format + True - Use the more compatible legacy 3.x database format
False - Use the newer 3.3x database format which compresses numbers more effectively
+ N + False +
+ + Default Timeout + {time in seconds}
The default command timeout
+ N + 30 +
+ + Journal Mode + Delete - Delete the journal file after a commit
Persist - Zero out and leave the journal file on disk after a commit
Off - Disable the rollback journal entirely
+ N + Delete +
+ + Read Only + True - Open the database for read only access
False - Open the database for normal read/write access
+ N + False +
+ + Max Pool Size + The maximum number of connections for the given connection string that can be in the connection pool + N + 100 + + + Default IsolationLevel + The default transaciton isolation level + N + Serializable + + + Foreign Keys + Enable foreign key constraints + N + False + + + Flags + Extra behavioral flags for the connection. See the enumeration for possible values. + N + Default + + + SetDefaults + + True - Apply the default connection settings to the opened database.
+ False - Skip applying the default connection settings to the opened database. +
+ N + True +
+ + ToFullPath + + True - Attempt to expand the data source file name to a fully qualified path before opening.
+ False - Skip attempting to expand the data source file name to a fully qualified path before opening. +
+ N + True +
+
+
+
+ + + The default "stub" (i.e. placeholder) base schema name to use when + returning column schema information. Used as the initial value of + the BaseSchemaName property. This should start with "sqlite_*" + because those names are reserved for use by SQLite (i.e. they cannot + be confused with the names of user objects). + + + + + The managed assembly containing this type. + + + + + Object used to synchronize access to the static instance data + for this class. + + + + + State of the current connection + + + + + The connection string + + + + + Nesting level of the transactions open on the connection + + + + + If set, then the connection is currently being disposed. + + + + + The default isolation level for new transactions + + + + + Whether or not the connection is enlisted in a distrubuted transaction + + + + + The base SQLite object to interop with + + + + + The database filename minus path and extension + + + + + Temporary password storage, emptied after the database has been opened + + + + + The "stub" (i.e. placeholder) base schema name to use when returning + column schema information. + + + + + The extra behavioral flags for this connection, if any. See the + enumeration for a list of + possible values. + + + + + Default command timeout + + + + + Non-zero if the built-in (i.e. framework provided) connection string + parser should be used when opening the connection. + + + + + Constructs a new SQLiteConnection object + + + Default constructor + + + + + Initializes the connection with the specified connection string. + + The connection string to use. + + + + Initializes the connection with a pre-existing native connection handle. + This constructor overload is intended to be used only by the private + method. + + + The native connection handle to use. + + + The file name corresponding to the native connection handle. + + + Non-zero if this instance owns the native connection handle and + should dispose of it when it is no longer needed. + + + + + Initializes the connection with the specified connection string. + + + The connection string to use. + + + Non-zero to parse the connection string using the built-in (i.e. + framework provided) parser when opening the connection. + + + + + Clones the settings and connection string from an existing connection. If the existing connection is already open, this + function will open its own connection, enumerate any attached databases of the original connection, and automatically + attach to them. + + The connection to copy the settings from. + + + + Raises the event. + + + The connection associated with this event. If this parameter is not + null and the specified connection cannot raise events, then the + registered event handlers will not be invoked. + + + A that contains the event data. + + + + + Creates and returns a new managed database connection handle. This + method is intended to be used by implementations of the + interface only. In theory, it + could be used by other classes; however, that usage is not supported. + + + This must be a native database connection handle returned by the + SQLite core library and it must remain valid and open during the + entire duration of the calling method. + + + The new managed database connection handle or null if it cannot be + created. + + + + + Backs up the database, using the specified database connection as the + destination. + + The destination database connection. + The destination database name. + The source database name. + + The number of pages to copy or negative to copy all remaining pages. + + + The method to invoke between each step of the backup process. This + parameter may be null (i.e. no callbacks will be performed). + + + The number of milliseconds to sleep after encountering a locking error + during the backup process. A value less than zero means that no sleep + should be performed. + + + + + Attempts to bind the specified object + instance to this connection. + + + The object instance containing + the metadata for the function to be bound. + + + The object instance that implements the + function to be bound. + + + + + Creates a clone of the connection. All attached databases and user-defined functions are cloned. If the existing connection is open, the cloned connection + will also be opened. + + + + + + Creates a database file. This just creates a zero-byte file which SQLite + will turn into a database when the file is opened properly. + + The file to create + + + + Raises the state change event when the state of the connection changes + + The new connection state. If this is different + from the previous state, the event is + raised. + The event data created for the raised event, if + it was actually raised. + + + + Determines and returns the fallback default isolation level when one cannot be + obtained from an existing connection instance. + + + The fallback default isolation level for this connection instance -OR- + if it cannot be determined. + + + + + Determines and returns the default isolation level for this connection instance. + + + The default isolation level for this connection instance -OR- + if it cannot be determined. + + + + + OBSOLETE. Creates a new SQLiteTransaction if one isn't already active on the connection. + + This parameter is ignored. + When TRUE, SQLite defers obtaining a write lock until a write operation is requested. + When FALSE, a writelock is obtained immediately. The default is TRUE, but in a multi-threaded multi-writer + environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock. + Returns a SQLiteTransaction object. + + + + OBSOLETE. Creates a new SQLiteTransaction if one isn't already active on the connection. + + When TRUE, SQLite defers obtaining a write lock until a write operation is requested. + When FALSE, a writelock is obtained immediately. The default is false, but in a multi-threaded multi-writer + environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock. + Returns a SQLiteTransaction object. + + + + Creates a new if one isn't already active on the connection. + + Supported isolation levels are Serializable, ReadCommitted and Unspecified. + + Unspecified will use the default isolation level specified in the connection string. If no isolation level is specified in the + connection string, Serializable is used. + Serializable transactions are the default. In this mode, the engine gets an immediate lock on the database, and no other threads + may begin a transaction. Other threads may read from the database, but not write. + With a ReadCommitted isolation level, locks are deferred and elevated as needed. It is possible for multiple threads to start + a transaction in ReadCommitted mode, but if a thread attempts to commit a transaction while another thread + has a ReadCommitted lock, it may timeout or cause a deadlock on both threads until both threads' CommandTimeout's are reached. + + Returns a SQLiteTransaction object. + + + + Creates a new if one isn't already + active on the connection. + + Returns the new transaction object. + + + + Forwards to the local function + + Supported isolation levels are Unspecified, Serializable, and ReadCommitted + + + + + This method is not implemented; however, the + event will still be raised. + + + + + + When the database connection is closed, all commands linked to this connection are automatically reset. + + + + + Clears the connection pool associated with the connection. Any other active connections using the same database file + will be discarded instead of returned to the pool when they are closed. + + + + + + Clears all connection pools. Any active connections will be discarded instead of sent to the pool when they are closed. + + + + + Create a new and associate it with this connection. + + Returns a new command object already assigned to this connection. + + + + Forwards to the local function. + + + + + + Parses the connection string into component parts using the custom + connection string parser. + + The connection string to parse + An array of key-value pairs representing each parameter of the connection string + + + + Parses a connection string using the built-in (i.e. framework provided) + connection string parser class and returns the key/value pairs. An + exception may be thrown if the connection string is invalid or cannot be + parsed. When compiled for the .NET Compact Framework, the custom + connection string parser is always used instead because the framework + provided one is unavailable there. + + + The connection string to parse. + + + Non-zero to throw an exception if any connection string values are not of + the type. + + The list of key/value pairs. + + + + Manual distributed transaction enlistment support + + The distributed transaction to enlist in + + + + Looks for a key in the array of key/values of the parameter string. If not found, return the specified default value + + The list to look in + The key to find + The default value to return if the key is not found + The value corresponding to the specified key, or the default value if not found. + + + + Attempts to convert the string value to an enumerated value of the specified type. + + The enumerated type to convert the string value to. + The string value to be converted. + Non-zero to make the conversion case-insensitive. + The enumerated value upon success or null upon error. + + + + Attempts to convert an input string into a byte value. + + + The string value to be converted. + + + The number styles to use for the conversion. + + + Upon sucess, this will contain the parsed byte value. + Upon failure, the value of this parameter is undefined. + + + Non-zero upon success; zero on failure. + + + + + Enables or disabled extension loading. + + + True to enable loading of extensions, false to disable. + + + + + Loads a SQLite extension library from the named dynamic link library file. + + + The name of the dynamic link library file containing the extension. + + + + + Loads a SQLite extension library from the named dynamic link library file. + + + The name of the dynamic link library file containing the extension. + + + The name of the exported function used to initialize the extension. + If null, the default "sqlite3_extension_init" will be used. + + + + + Creates a disposable module containing the implementation of a virtual + table. + + + The module object to be used when creating the disposable module. + + + + + Parses a string containing a sequence of zero or more hexadecimal + encoded byte values and returns the resulting byte array. The + "0x" prefix is not allowed on the input string. + + + The input string containing zero or more hexadecimal encoded byte + values. + + + A byte array containing the parsed byte values or null if an error + was encountered. + + + + + Creates and returns a string containing the hexadecimal encoded byte + values from the input array. + + + The input array of bytes. + + + The resulting string or null upon failure. + + + + + Parses a string containing a sequence of zero or more hexadecimal + encoded byte values and returns the resulting byte array. The + "0x" prefix is not allowed on the input string. + + + The input string containing zero or more hexadecimal encoded byte + values. + + + Upon failure, this will contain an appropriate error message. + + + A byte array containing the parsed byte values or null if an error + was encountered. + + + + + Opens the connection using the parameters found in the . + + + + + Opens the connection using the parameters found in the and then returns it. + + The current connection object. + + + + This method causes any pending database operation to abort and return at + its earliest opportunity. This routine is typically called in response + to a user action such as pressing "Cancel" or Ctrl-C where the user wants + a long query operation to halt immediately. It is safe to call this + routine from any thread. However, it is not safe to call this routine + with a database connection that is closed or might close before this method + returns. + + + + + Returns various global memory statistics for the SQLite core library via + a dictionary of key/value pairs. Currently, only the "MemoryUsed" and + "MemoryHighwater" keys are returned and they have values that correspond + to the values that could be obtained via the + and connection properties. + + + This dictionary will be populated with the global memory statistics. It + will be created if necessary. + + + + + Attempts to free as much heap memory as possible for this database connection. + + + + + Attempts to free N bytes of heap memory by deallocating non-essential memory + allocations held by the database library. Memory used to cache database pages + to improve performance is an example of non-essential memory. This is a no-op + returning zero if the SQLite core library was not compiled with the compile-time + option SQLITE_ENABLE_MEMORY_MANAGEMENT. Optionally, attempts to reset and/or + compact the Win32 native heap, if applicable. + + + The requested number of bytes to free. + + + Non-zero to attempt a heap reset. + + + Non-zero to attempt heap compaction. + + + The number of bytes actually freed. This value may be zero. + + + This value will be non-zero if the heap reset was successful. + + + The size of the largest committed free block in the heap, in bytes. + This value will be zero unless heap compaction is enabled. + + + A standard SQLite return code (i.e. zero for success and non-zero + for failure). + + + + + Sets the status of the memory usage tracking subsystem in the SQLite core library. By default, this is enabled. + If this is disabled, memory usage tracking will not be performed. This is not really a per-connection value, it is + global to the process. + + Non-zero to enable memory usage tracking, zero otherwise. + A standard SQLite return code (i.e. zero for success and non-zero for failure). + + + + Passes a shutdown request to the SQLite core library. Does not throw + an exception if the shutdown request fails. + + + A standard SQLite return code (i.e. zero for success and non-zero for + failure). + + + + + Passes a shutdown request to the SQLite core library. Throws an + exception if the shutdown request fails and the no-throw parameter + is non-zero. + + + Non-zero to reset the database and temporary directories to their + default values, which should be null for both. + + + When non-zero, throw an exception if the shutdown request fails. + + + + Enables or disabled extended result codes returned by SQLite + + + Enables or disabled extended result codes returned by SQLite + + + Enables or disabled extended result codes returned by SQLite + + + Add a log message via the SQLite sqlite3_log interface. + + + Add a log message via the SQLite sqlite3_log interface. + + + + Change the password (or assign a password) to an open database. + + + No readers or writers may be active for this process. The database must already be open + and if it already was password protected, the existing password must already have been supplied. + + The new password to assign to the database + + + + Change the password (or assign a password) to an open database. + + + No readers or writers may be active for this process. The database must already be open + and if it already was password protected, the existing password must already have been supplied. + + The new password to assign to the database + + + + Sets the password for a password-protected database. A password-protected database is + unusable for any operation until the password has been set. + + The password for the database + + + + Sets the password for a password-protected database. A password-protected database is + unusable for any operation until the password has been set. + + The password for the database + + + + Queries or modifies the number of retries or the retry interval (in milliseconds) for + certain I/O operations that may fail due to anti-virus software. + + The number of times to retry the I/O operation. A negative value + will cause the current count to be queried and replace that negative value. + The number of milliseconds to wait before retrying the I/O + operation. This number is multiplied by the number of retry attempts so far to come + up with the final number of milliseconds to wait. A negative value will cause the + current interval to be queried and replace that negative value. + Zero for success, non-zero for error. + + + + Removes one set of surrounding single -OR- double quotes from the string + value and returns the resulting string value. If the string is null, empty, + or contains quotes that are not balanced, nothing is done and the original + string value will be returned. + + The string value to process. + + The string value, modified to remove one set of surrounding single -OR- + double quotes, if applicable. + + + + + Expand the filename of the data source, resolving the |DataDirectory| + macro as appropriate. + + The database filename to expand + + Non-zero if the returned file name should be converted to a full path + (except when using the .NET Compact Framework). + + The expanded path and filename of the filename + + + + The following commands are used to extract schema information out of the database. Valid schema types are: + + + MetaDataCollections + + + DataSourceInformation + + + Catalogs + + + Columns + + + ForeignKeys + + + Indexes + + + IndexColumns + + + Tables + + + Views + + + ViewColumns + + + + + Returns the MetaDataCollections schema + + A DataTable of the MetaDataCollections schema + + + + Returns schema information of the specified collection + + The schema collection to retrieve + A DataTable of the specified collection + + + + Retrieves schema information using the specified constraint(s) for the specified collection + + The collection to retrieve + The restrictions to impose + A DataTable of the specified collection + + + + Builds a MetaDataCollections schema datatable + + DataTable + + + + Builds a DataSourceInformation datatable + + DataTable + + + + Build a Columns schema + + The catalog (attached database) to query, can be null + The table to retrieve schema information for, must not be null + The column to retrieve schema information for, can be null + DataTable + + + + Returns index information for the given database and catalog + + The catalog (attached database) to query, can be null + The name of the index to retrieve information for, can be null + The table to retrieve index information for, can be null + DataTable + + + + Retrieves table schema information for the database and catalog + + The catalog (attached database) to retrieve tables on + The table to retrieve, can be null + The table type, can be null + DataTable + + + + Retrieves view schema information for the database + + The catalog (attached database) to retrieve views on + The view name, can be null + DataTable + + + + Retrieves catalog (attached databases) schema information for the database + + The catalog to retrieve, can be null + DataTable + + + + Returns the base column information for indexes in a database + + The catalog to retrieve indexes for (can be null) + The table to restrict index information by (can be null) + The index to restrict index information by (can be null) + The source column to restrict index information by (can be null) + A DataTable containing the results + + + + Returns detailed column information for a specified view + + The catalog to retrieve columns for (can be null) + The view to restrict column information by (can be null) + The source column to restrict column information by (can be null) + A DataTable containing the results + + + + Retrieves foreign key information from the specified set of filters + + An optional catalog to restrict results on + An optional table to restrict results on + An optional foreign key name to restrict results on + A DataTable with the results of the query + + + + Static variable to store the connection event handlers to call. + + + + + This event is raised whenever the database is opened or closed. + + + + + This event is raised when events related to the lifecycle of a + SQLiteConnection object occur. + + + + + This property is used to obtain or set the custom connection pool + implementation to use, if any. Setting this property to null will + cause the default connection pool implementation to be used. + + + + + Returns the number of pool entries for the file name associated with this connection. + + + + + The connection string containing the parameters for the connection + + + + + Parameter + Values + Required + Default + + + Data Source + + This may be a file name, the string ":memory:", or any supported URI (starting with SQLite 3.7.7). + Starting with release 1.0.86.0, in order to use more than one consecutive backslash (e.g. for a + UNC path), each of the adjoining backslash characters must be doubled (e.g. "\\Network\Share\test.db" + would become "\\\\Network\Share\test.db"). + + Y + + + + Version + 3 + N + 3 + + + UseUTF16Encoding + True
False
+ N + False +
+ + DateTimeFormat + + Ticks - Use the value of DateTime.Ticks.
+ ISO8601 - Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC + DateTime values and "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).
+ JulianDay - The interval of time in days and fractions of a day since January 1, 4713 BC.
+ UnixEpoch - The whole number of seconds since the Unix epoch (January 1, 1970).
+ InvariantCulture - Any culture-independent string value that the .NET Framework can interpret as a valid DateTime.
+ CurrentCulture - Any string value that the .NET Framework can interpret as a valid DateTime using the current culture.
+ N + ISO8601 +
+ + DateTimeKind + Unspecified - Not specified as either UTC or local time.
Utc - The time represented is UTC.
Local - The time represented is local time.
+ N + Unspecified +
+ + DateTimeFormatString + The exact DateTime format string to use for all formatting and parsing of all DateTime + values for this connection. + N + null + + + BaseSchemaName + Some base data classes in the framework (e.g. those that build SQL queries dynamically) + assume that an ADO.NET provider cannot support an alternate catalog (i.e. database) without supporting + alternate schemas as well; however, SQLite does not fit into this model. Therefore, this value is used + as a placeholder and removed prior to preparing any SQL statements that may contain it. + N + sqlite_default_schema + + + BinaryGUID + True - Store GUID columns in binary form
False - Store GUID columns as text
+ N + True +
+ + Cache Size + {size in bytes} + N + 2000 + + + Synchronous + Normal - Normal file flushing behavior
Full - Full flushing after all writes
Off - Underlying OS flushes I/O's
+ N + Full +
+ + Page Size + {size in bytes} + N + 1024 + + + Password + {password} - Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection. + N + + + + HexPassword + {hexPassword} - Must contain a sequence of zero or more hexadecimal encoded byte values without a leading "0x" prefix. Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection. + N + + + + Enlist + Y - Automatically enlist in distributed transactions
N - No automatic enlistment
+ N + Y +
+ + Pooling + + True - Use connection pooling.
+ False - Do not use connection pooling.

+ WARNING: When using the default connection pool implementation, + setting this property to True should be avoided by applications that + make use of COM (either directly or indirectly) due to possible + deadlocks that can occur during the finalization of some COM objects. +
+ N + False +
+ + FailIfMissing + True - Don't create the database if it does not exist, throw an error instead
False - Automatically create the database if it does not exist
+ N + False +
+ + Max Page Count + {size in pages} - Limits the maximum number of pages (limits the size) of the database + N + 0 + + + Legacy Format + True - Use the more compatible legacy 3.x database format
False - Use the newer 3.3x database format which compresses numbers more effectively
+ N + False +
+ + Default Timeout + {time in seconds}
The default command timeout
+ N + 30 +
+ + Journal Mode + Delete - Delete the journal file after a commit
Persist - Zero out and leave the journal file on disk after a commit
Off - Disable the rollback journal entirely
+ N + Delete +
+ + Read Only + True - Open the database for read only access
False - Open the database for normal read/write access
+ N + False +
+ + Max Pool Size + The maximum number of connections for the given connection string that can be in the connection pool + N + 100 + + + Default IsolationLevel + The default transaciton isolation level + N + Serializable + + + Foreign Keys + Enable foreign key constraints + N + False + + + Flags + Extra behavioral flags for the connection. See the enumeration for possible values. + N + Default + + + SetDefaults + + True - Apply the default connection settings to the opened database.
+ False - Skip applying the default connection settings to the opened database. +
+ N + True +
+ + ToFullPath + + True - Attempt to expand the data source file name to a fully qualified path before opening.
+ False - Skip attempting to expand the data source file name to a fully qualified path before opening. +
+ N + True +
+
+
+
+ + + Returns the data source file name without extension or path. + + + + + Returns the string "main". + + + + + Gets/sets the default command timeout for newly-created commands. This is especially useful for + commands used internally such as inside a SQLiteTransaction, where setting the timeout is not possible. + This can also be set in the ConnectionString with "Default Timeout" + + + + + Non-zero if the built-in (i.e. framework provided) connection string + parser should be used when opening the connection. + + + + + Gets/sets the extra behavioral flags for this connection. See the + enumeration for a list of + possible values. + + + + + Returns non-zero if the underlying native connection handle is + owned by this instance. + + + + + Returns the version of the underlying SQLite database engine + + + + + Returns the rowid of the most recent successful INSERT into the database from this connection. + + + + + Returns the number of rows changed by the last INSERT, UPDATE, or DELETE statement executed on + this connection. + + + + + Returns non-zero if the given database connection is in autocommit mode. + Autocommit mode is on by default. Autocommit mode is disabled by a BEGIN + statement. Autocommit mode is re-enabled by a COMMIT or ROLLBACK. + + + + + Returns the amount of memory (in bytes) currently in use by the SQLite core library. + + + + + Returns the maximum amount of memory (in bytes) used by the SQLite core library since the high-water mark was last reset. + + + + + Returns a string containing the define constants (i.e. compile-time + options) used to compile the core managed assembly, delimited with + spaces. + + + + + Returns the version of the underlying SQLite core library. + + + + + This method returns the string whose value is the same as the + SQLITE_SOURCE_ID C preprocessor macro used when compiling the + SQLite core library. + + + + + This method returns the version of the interop SQLite assembly + used. If the SQLite interop assembly is not in use or the + necessary information cannot be obtained for any reason, a null + value may be returned. + + + + + This method returns the string whose value contains the unique + identifier for the source checkout used to build the interop + assembly. If the SQLite interop assembly is not in use or the + necessary information cannot be obtained for any reason, a null + value may be returned. + + + + + This method returns the version of the managed components used + to interact with the SQLite core library. If the necessary + information cannot be obtained for any reason, a null value may + be returned. + + + + + This method returns the string whose value contains the unique + identifier for the source checkout used to build the managed + components currently executing. If the necessary information + cannot be obtained for any reason, a null value may be returned. + + + + + Returns the state of the connection. + + + + + This event is raised whenever SQLite encounters an action covered by the + authorizer during query preparation. Changing the value of the + property will determine if + the specific action will be allowed, ignored, or denied. For the entire + duration of the event, the associated connection and statement objects + must not be modified, either directly or indirectly, by the called code. + + + + + This event is raised whenever SQLite makes an update/delete/insert into the database on + this connection. It only applies to the given connection. + + + + + This event is raised whenever SQLite is committing a transaction. + Return non-zero to trigger a rollback. + + + + + This event is raised whenever SQLite statement first begins executing on + this connection. It only applies to the given connection. + + + + + This event is raised whenever SQLite is rolling back a transaction. + + + + + Returns the instance. + + + + + The I/O file cache flushing behavior for the connection + + + + + Normal file flushing at critical sections of the code + + + + + Full file flushing after every write operation + + + + + Use the default operating system's file flushing, SQLite does not explicitly flush the file buffers after writing + + + + + Raised when authorization is required to perform an action contained + within a SQL query. + + The connection performing the action. + A that contains the + event data. + + + + Raised when a transaction is about to be committed. To roll back a transaction, set the + rollbackTrans boolean value to true. + + The connection committing the transaction + Event arguments on the transaction + + + + Raised when data is inserted, updated and deleted on a given connection + + The connection committing the transaction + The event parameters which triggered the event + + + + Raised when a statement first begins executing on a given connection + + The connection executing the statement + Event arguments of the trace + + + + Raised between each backup step. + + + The source database connection. + + + The source database name. + + + The destination database connection. + + + The destination database name. + + + The number of pages copied with each step. + + + The number of pages remaining to be copied. + + + The total number of pages in the source database. + + + Set to true if the operation needs to be retried due to database + locking issues; otherwise, set to false. + + + True to continue with the backup process or false to halt the backup + process, rolling back any changes that have been made so far. + + + + + The data associated with a call into the authorizer. + + + + + The user-defined native data associated with this event. Currently, + this will always contain the value of . + + + + + The action code responsible for the current call into the authorizer. + + + + + The first string argument for the current call into the authorizer. + The exact value will vary based on the action code, see the + enumeration for possible + values. + + + + + The second string argument for the current call into the authorizer. + The exact value will vary based on the action code, see the + enumeration for possible + values. + + + + + The database name for the current call into the authorizer, if + applicable. + + + + + The name of the inner-most trigger or view that is responsible for + the access attempt or a null value if this access attempt is directly + from top-level SQL code. + + + + + The return code for the current call into the authorizer. + + + + + Constructs an instance of this class with default property values. + + + + + Constructs an instance of this class with specific property values. + + + The user-defined native data associated with this event. + + + The authorizer action code. + + + The first authorizer argument. + + + The second authorizer argument. + + + The database name, if applicable. + + + The name of the inner-most trigger or view that is responsible for + the access attempt or a null value if this access attempt is directly + from top-level SQL code. + + + The authorizer return code. + + + + + Whenever an update event is triggered on a connection, this enum will indicate + exactly what type of operation is being performed. + + + + + A row is being deleted from the given database and table + + + + + A row is being inserted into the table. + + + + + A row is being updated in the table. + + + + + Passed during an Update callback, these event arguments detail the type of update operation being performed + on the given connection. + + + + + The name of the database being updated (usually "main" but can be any attached or temporary database) + + + + + The name of the table being updated + + + + + The type of update being performed (insert/update/delete) + + + + + The RowId affected by this update. + + + + + Event arguments raised when a transaction is being committed + + + + + Set to true to abort the transaction and trigger a rollback + + + + + Passed during an Trace callback, these event arguments contain the UTF-8 rendering of the SQL statement text + + + + + SQL statement text as the statement first begins executing + + + + + This interface represents a custom connection pool implementation + usable by System.Data.SQLite. + + + + + Counts the number of pool entries matching the specified file name. + + + The file name to match or null to match all files. + + + The pool entry counts for each matching file. + + + The total number of connections successfully opened from any pool. + + + The total number of connections successfully closed from any pool. + + + The total number of pool entries for all matching files. + + + + + Disposes of all pooled connections associated with the specified + database file name. + + + The database file name. + + + + + Disposes of all pooled connections. + + + + + Adds a connection to the pool of those associated with the + specified database file name. + + + The database file name. + + + The database connection handle. + + + The connection pool version at the point the database connection + handle was received from the connection pool. This is also the + connection pool version that the database connection handle was + created under. + + + + + Removes a connection from the pool of those associated with the + specified database file name with the intent of using it to + interact with the database. + + + The database file name. + + + The new maximum size of the connection pool for the specified + database file name. + + + The connection pool version associated with the returned database + connection handle, if any. + + + The database connection handle associated with the specified + database file name or null if it cannot be obtained. + + + + + This default method implementations in this class should not be used by + applications that make use of COM (either directly or indirectly) due + to possible deadlocks that can occur during finalization of some COM + objects. + + + + + This field is used to synchronize access to the private static data + in this class. + + + + + When this field is non-null, it will be used to provide the + implementation of all the connection pool methods; otherwise, + the default method implementations will be used. + + + + + The dictionary of connection pools, based on the normalized file + name of the SQLite database. + + + + + The default version number new pools will get. + + + + + The number of connections successfully opened from any pool. + This value is incremented by the Remove method. + + + + + The number of connections successfully closed from any pool. + This value is incremented by the Add method. + + + + + Counts the number of pool entries matching the specified file name. + + + The file name to match or null to match all files. + + + The pool entry counts for each matching file. + + + The total number of connections successfully opened from any pool. + + + The total number of connections successfully closed from any pool. + + + The total number of pool entries for all matching files. + + + + + Disposes of all pooled connections associated with the specified + database file name. + + + The database file name. + + + + + Disposes of all pooled connections. + + + + + Adds a connection to the pool of those associated with the + specified database file name. + + + The database file name. + + + The database connection handle. + + + The connection pool version at the point the database connection + handle was received from the connection pool. This is also the + connection pool version that the database connection handle was + created under. + + + + + Removes a connection from the pool of those associated with the + specified database file name with the intent of using it to + interact with the database. + + + The database file name. + + + The new maximum size of the connection pool for the specified + database file name. + + + The connection pool version associated with the returned database + connection handle, if any. + + + The database connection handle associated with the specified + database file name or null if it cannot be obtained. + + + + + This method is used to obtain a reference to the custom connection + pool implementation currently in use, if any. + + + The custom connection pool implementation or null if the default + connection pool implementation should be used. + + + + + This method is used to set the reference to the custom connection + pool implementation to use, if any. + + + The custom connection pool implementation to use or null if the + default connection pool implementation should be used. + + + + + We do not have to thread-lock anything in this function, because it + is only called by other functions above which already take the lock. + + + The pool queue to resize. + + + If a function intends to add to the pool, this is true, which + forces the resize to take one more than it needs from the pool. + + + + + Keeps track of connections made on a specified file. The PoolVersion + dictates whether old objects get returned to the pool or discarded + when no longer in use. + + + + + The queue of weak references to the actual database connection + handles. + + + + + This pool version associated with the database connection + handles in this pool queue. + + + + + The maximum size of this pool queue. + + + + + Constructs a connection pool queue using the specified version + and maximum size. Normally, all the database connection + handles in this pool are associated with a single database file + name. + + + The initial pool version for this connection pool queue. + + + The initial maximum size for this connection pool queue. + + + + + SQLite implementation of DbConnectionStringBuilder. + + + + + Properties of this class + + + + + Constructs a new instance of the class + + + Default constructor + + + + + Constructs a new instance of the class using the specified connection string. + + The connection string to parse + + + + Private initializer, which assigns the connection string and resets the builder + + The connection string to assign + + + + Helper function for retrieving values from the connectionstring + + The keyword to retrieve settings for + The resulting parameter value + Returns true if the value was found and returned + + + + Fallback method for MONO, which doesn't implement DbConnectionStringBuilder.GetProperties() + + The hashtable to fill with property descriptors + + + + Gets/Sets the default version of the SQLite engine to instantiate. Currently the only valid value is 3, indicating version 3 of the sqlite library. + + + + + Gets/Sets the synchronization mode (file flushing) of the connection string. Default is "Normal". + + + + + Gets/Sets the encoding for the connection string. The default is "False" which indicates UTF-8 encoding. + + + + + Gets/Sets whether or not to use connection pooling. The default is "False" + + + + + Gets/Sets whethor not to store GUID's in binary format. The default is True + which saves space in the database. + + + + + Gets/Sets the filename to open on the connection string. + + + + + An alternate to the data source property + + + + + An alternate to the data source property that uses the SQLite URI syntax. + + + + + Gets/sets the default command timeout for newly-created commands. This is especially useful for + commands used internally such as inside a SQLiteTransaction, where setting the timeout is not possible. + + + + + Determines whether or not the connection will automatically participate + in the current distributed transaction (if one exists) + + + + + If set to true, will throw an exception if the database specified in the connection + string does not exist. If false, the database will be created automatically. + + + + + If enabled, uses the legacy 3.xx format for maximum compatibility, but results in larger + database sizes. + + + + + When enabled, the database will be opened for read-only access and writing will be disabled. + + + + + Gets/sets the database encryption password + + + + + Gets/sets the database encryption hexadecimal password + + + + + Gets/Sets the page size for the connection. + + + + + Gets/Sets the maximum number of pages the database may hold + + + + + Gets/Sets the cache size for the connection. + + + + + Gets/Sets the DateTime format for the connection. + + + + + Gets/Sets the DateTime kind for the connection. + + + + + Gets/sets the DateTime format string used for formatting + and parsing purposes. + + + + + Gets/Sets the placeholder base schema name used for + .NET Framework compatibility purposes. + + + + + Determines how SQLite handles the transaction journal file. + + + + + Sets the default isolation level for transactions on the connection. + + + + + If enabled, use foreign key constraints + + + + + Gets/Sets the extra behavioral flags. + + + + + If enabled, apply the default connection settings to opened databases. + + + + + If enabled, attempt to resolve the provided data source file name to a + full path before opening. + + + + + SQLite has very limited types, and is inherently text-based. The first 5 types below represent the sum of all types SQLite + understands. The DateTime extension to the spec is for internal use only. + + + + + Not used + + + + + All integers in SQLite default to Int64 + + + + + All floating point numbers in SQLite default to double + + + + + The default data type of SQLite is text + + + + + Typically blob types are only seen when returned from a function + + + + + Null types can be returned from functions + + + + + Used internally by this provider + + + + + Used internally by this provider + + + + + These are the event types associated with the + + delegate (and its corresponding event) and the + class. + + + + + Not used. + + + + + Not used. + + + + + The connection is being opened. + + + + + The connection string has been parsed. + + + + + The connection was opened. + + + + + The method was called on the + connection. + + + + + A transaction was created using the connection. + + + + + The connection was enlisted into a transaction. + + + + + A command was created using the connection. + + + + + A data reader was created using the connection. + + + + + An instance of a derived class has + been created to wrap a native resource. + + + + + The connection is being closed. + + + + + The connection was closed. + + + + + This implementation of SQLite for ADO.NET can process date/time fields in + databases in one of six formats. + + + ISO8601 format is more compatible, readable, fully-processable, but less + accurate as it does not provide time down to fractions of a second. + JulianDay is the numeric format the SQLite uses internally and is arguably + the most compatible with 3rd party tools. It is not readable as text + without post-processing. Ticks less compatible with 3rd party tools that + query the database, and renders the DateTime field unreadable as text + without post-processing. UnixEpoch is more compatible with Unix systems. + InvariantCulture allows the configured format for the invariant culture + format to be used and is human readable. CurrentCulture allows the + configured format for the current culture to be used and is also human + readable. + + The preferred order of choosing a DateTime format is JulianDay, ISO8601, + and then Ticks. Ticks is mainly present for legacy code support. + + + + + Use the value of DateTime.Ticks. This value is not recommended and is not well supported with LINQ. + + + + + Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC DateTime values and + "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values). + + + + + The interval of time in days and fractions of a day since January 1, 4713 BC. + + + + + The whole number of seconds since the Unix epoch (January 1, 1970). + + + + + Any culture-independent string value that the .NET Framework can interpret as a valid DateTime. + + + + + Any string value that the .NET Framework can interpret as a valid DateTime using the current culture. + + + + + The default format for this provider. + + + + + This enum determines how SQLite treats its journal file. + + + By default SQLite will create and delete the journal file when needed during a transaction. + However, for some computers running certain filesystem monitoring tools, the rapid + creation and deletion of the journal file can cause those programs to fail, or to interfere with SQLite. + + If a program or virus scanner is interfering with SQLite's journal file, you may receive errors like "unable to open database file" + when starting a transaction. If this is happening, you may want to change the default journal mode to Persist. + + + + + The default mode, this causes SQLite to use the existing journaling mode for the database. + + + + + SQLite will create and destroy the journal file as-needed. + + + + + When this is set, SQLite will keep the journal file even after a transaction has completed. It's contents will be erased, + and the journal re-used as often as needed. If it is deleted, it will be recreated the next time it is needed. + + + + + This option disables the rollback journal entirely. Interrupted transactions or a program crash can cause database + corruption in this mode! + + + + + SQLite will truncate the journal file to zero-length instead of deleting it. + + + + + SQLite will store the journal in volatile RAM. This saves disk I/O but at the expense of database safety and integrity. + If the application using SQLite crashes in the middle of a transaction when the MEMORY journaling mode is set, then the + database file will very likely go corrupt. + + + + + SQLite uses a write-ahead log instead of a rollback journal to implement transactions. The WAL journaling mode is persistent; + after being set it stays in effect across multiple database connections and after closing and reopening the database. A database + in WAL journaling mode can only be accessed by SQLite version 3.7.0 or later. + + + + + Possible values for the "synchronous" database setting. This setting determines + how often the database engine calls the xSync method of the VFS. + + + + + Use the default "synchronous" database setting. Currently, this should be + the same as using the FULL mode. + + + + + The database engine continues without syncing as soon as it has handed + data off to the operating system. If the application running SQLite + crashes, the data will be safe, but the database might become corrupted + if the operating system crashes or the computer loses power before that + data has been written to the disk surface. + + + + + The database engine will still sync at the most critical moments, but + less often than in FULL mode. There is a very small (though non-zero) + chance that a power failure at just the wrong time could corrupt the + database in NORMAL mode. + + + + + The database engine will use the xSync method of the VFS to ensure that + all content is safely written to the disk surface prior to continuing. + This ensures that an operating system crash or power failure will not + corrupt the database. FULL synchronous is very safe, but it is also + slower. + + + + + The requested command execution type. This controls which method of the + object will be called. + + + + + Do nothing. No method will be called. + + + + + The command is not expected to return a result -OR- the result is not + needed. The or + method + will be called. + + + + + The command is expected to return a scalar result -OR- the result should + be limited to a scalar result. The + or method will + be called. + + + + + The command is expected to return result. + The or + method will + be called. + + + + + Use the default command execution type. Using this value is the same + as using the value. + + + + + The action code responsible for the current call into the authorizer. + + + + + No action is being performed. This value should not be used from + external code. + + + + + No longer used. + + + + + An index will be created. The action-specific arguments are the + index name and the table name. + + + + + + A table will be created. The action-specific arguments are the + table name and a null value. + + + + + A temporary index will be created. The action-specific arguments + are the index name and the table name. + + + + + A temporary table will be created. The action-specific arguments + are the table name and a null value. + + + + + A temporary trigger will be created. The action-specific arguments + are the trigger name and the table name. + + + + + A temporary view will be created. The action-specific arguments are + the view name and a null value. + + + + + A trigger will be created. The action-specific arguments are the + trigger name and the table name. + + + + + A view will be created. The action-specific arguments are the view + name and a null value. + + + + + A DELETE statement will be executed. The action-specific arguments + are the table name and a null value. + + + + + An index will be dropped. The action-specific arguments are the + index name and the table name. + + + + + A table will be dropped. The action-specific arguments are the tables + name and a null value. + + + + + A temporary index will be dropped. The action-specific arguments are + the index name and the table name. + + + + + A temporary table will be dropped. The action-specific arguments are + the table name and a null value. + + + + + A temporary trigger will be dropped. The action-specific arguments + are the trigger name and the table name. + + + + + A temporary view will be dropped. The action-specific arguments are + the view name and a null value. + + + + + A trigger will be dropped. The action-specific arguments are the + trigger name and the table name. + + + + + A view will be dropped. The action-specific arguments are the view + name and a null value. + + + + + An INSERT statement will be executed. The action-specific arguments + are the table name and a null value. + + + + + A PRAGMA statement will be executed. The action-specific arguments + are the name of the PRAGMA and the new value or a null value. + + + + + A table column will be read. The action-specific arguments are the + table name and the column name. + + + + + A SELECT statement will be executed. The action-specific arguments + are both null values. + + + + + A transaction will be started, committed, or rolled back. The + action-specific arguments are the name of the operation (BEGIN, + COMMIT, or ROLLBACK) and a null value. + + + + + An UPDATE statement will be executed. The action-specific arguments + are the table name and the column name. + + + + + A database will be attached to the connection. The action-specific + arguments are the database file name and a null value. + + + + + A database will be detached from the connection. The action-specific + arguments are the database name and a null value. + + + + + The schema of a table will be altered. The action-specific arguments + are the database name and the table name. + + + + + An index will be deleted and then recreated. The action-specific + arguments are the index name and a null value. + + + + + A table will be analyzed to gathers statistics about it. The + action-specific arguments are the table name and a null value. + + + + + A virtual table will be created. The action-specific arguments are + the table name and the module name. + + + + + A virtual table will be dropped. The action-specific arguments are + the table name and the module name. + + + + + A SQL function will be called. The action-specific arguments are a + null value and the function name. + + + + + A savepoint will be created, released, or rolled back. The + action-specific arguments are the name of the operation (BEGIN, + RELEASE, or ROLLBACK) and the savepoint name. + + + + + The return code for the current call into the authorizer. + + + + + The action will be allowed. + + + + + The overall action will be disallowed and an error message will be + returned from the query preparation method. + + + + + The specific action will be disallowed; however, the overall action + will continue. The exact effects of this return code vary depending + on the specific action, please refer to the SQLite core library + documentation for futher details. + + + + + Class used internally to determine the datatype of a column in a resultset + + + + + The DbType of the column, or DbType.Object if it cannot be determined + + + + + The affinity of a column, used for expressions or when Type is DbType.Object + + + + + SQLite implementation of DbDataAdapter. + + + + + This class is just a shell around the DbDataAdapter. Nothing from + DbDataAdapter is overridden here, just a few constructors are defined. + + + Default constructor. + + + + + Constructs a data adapter using the specified select command. + + + The select command to associate with the adapter. + + + + + Constructs a data adapter with the supplied select command text and + associated with the specified connection. + + + The select command text to associate with the data adapter. + + + The connection to associate with the select command. + + + + + Constructs a data adapter with the specified select command text, + and using the specified database connection string. + + + The select command text to use to construct a select command. + + + A connection string suitable for passing to a new SQLiteConnection, + which is associated with the select command. + + + + + Constructs a data adapter with the specified select command text, + and using the specified database connection string. + + + The select command text to use to construct a select command. + + + A connection string suitable for passing to a new SQLiteConnection, + which is associated with the select command. + + + Non-zero to parse the connection string using the built-in (i.e. + framework provided) parser when opening the connection. + + + + + Raised by the underlying DbDataAdapter when a row is being updated + + The event's specifics + + + + Raised by DbDataAdapter after a row is updated + + The event's specifics + + + + Row updating event handler + + + + + Row updated event handler + + + + + Gets/sets the select command for this DataAdapter + + + + + Gets/sets the insert command for this DataAdapter + + + + + Gets/sets the update command for this DataAdapter + + + + + Gets/sets the delete command for this DataAdapter + + + + + SQLite implementation of DbDataReader. + + + + + Underlying command this reader is attached to + + + + + Index of the current statement in the command being processed + + + + + Current statement being Read() + + + + + State of the current statement being processed. + -1 = First Step() executed, so the first Read() will be ignored + 0 = Actively reading + 1 = Finished reading + 2 = Non-row-returning statement, no records + + + + + Number of records affected by the insert/update statements executed on the command + + + + + Count of fields (columns) in the row-returning statement currently being processed + + + + + Maps the field (column) names to their corresponding indexes within the results. + + + + + Datatypes of active fields (columns) in the current statement, used for type-restricting data + + + + + The behavior of the datareader + + + + + If set, then dispose of the command object when the reader is finished + + + + + If set, then raise an exception when the object is accessed after being disposed. + + + + + An array of rowid's for the active statement if CommandBehavior.KeyInfo is specified + + + + + Matches the version of the connection. + + + + + The "stub" (i.e. placeholder) base schema name to use when returning + column schema information. Matches the base schema name used by the + associated connection. + + + + + Internal constructor, initializes the datareader and sets up to begin executing statements + + The SQLiteCommand this data reader is for + The expected behavior of the data reader + + + + Dispose of all resources used by this datareader. + + + + + + Closes the datareader, potentially closing the connection as well if CommandBehavior.CloseConnection was specified. + + + + + Throw an error if the datareader is closed + + + + + Throw an error if a row is not loaded + + + + + Enumerator support + + Returns a DbEnumerator object. + + + + SQLite is inherently un-typed. All datatypes in SQLite are natively strings. The definition of the columns of a table + and the affinity of returned types are all we have to go on to type-restrict data in the reader. + + This function attempts to verify that the type of data being requested of a column matches the datatype of the column. In + the case of columns that are not backed into a table definition, we attempt to match up the affinity of a column (int, double, string or blob) + to a set of known types that closely match that affinity. It's not an exact science, but its the best we can do. + + + This function throws an InvalidTypeCast() exception if the requested type doesn't match the column's definition or affinity. + + The index of the column to type-check + The type we want to get out of the column + + + + Retrieves the column as a boolean value + + The index of the column to retrieve + bool + + + + Retrieves the column as a single byte value + + The index of the column to retrieve + byte + + + + Retrieves a column as an array of bytes (blob) + + The index of the column to retrieve + The zero-based index of where to begin reading the data + The buffer to write the bytes into + The zero-based index of where to begin writing into the array + The number of bytes to retrieve + The actual number of bytes written into the array + + To determine the number of bytes in the column, pass a null value for the buffer. The total length will be returned. + + + + + Returns the column as a single character + + The index of the column to retrieve + char + + + + Retrieves a column as an array of chars (blob) + + The index of the column to retrieve + The zero-based index of where to begin reading the data + The buffer to write the characters into + The zero-based index of where to begin writing into the array + The number of bytes to retrieve + The actual number of characters written into the array + + To determine the number of characters in the column, pass a null value for the buffer. The total length will be returned. + + + + + Retrieves the name of the back-end datatype of the column + + The index of the column to retrieve + string + + + + Retrieve the column as a date/time value + + The index of the column to retrieve + DateTime + + + + Retrieve the column as a decimal value + + The index of the column to retrieve + decimal + + + + Returns the column as a double + + The index of the column to retrieve + double + + + + Returns the .NET type of a given column + + The index of the column to retrieve + Type + + + + Returns a column as a float value + + The index of the column to retrieve + float + + + + Returns the column as a Guid + + The index of the column to retrieve + Guid + + + + Returns the column as a short + + The index of the column to retrieve + Int16 + + + + Retrieves the column as an int + + The index of the column to retrieve + Int32 + + + + Retrieves the column as a long + + The index of the column to retrieve + Int64 + + + + Retrieves the name of the column + + The index of the column to retrieve + string + + + + Retrieves the i of a column, given its name + + The name of the column to retrieve + The int i of the column + + + + Schema information in SQLite is difficult to map into .NET conventions, so a lot of work must be done + to gather the necessary information so it can be represented in an ADO.NET manner. + + Returns a DataTable containing the schema information for the active SELECT statement being processed. + + + + Retrieves the column as a string + + The index of the column to retrieve + string + + + + Retrieves the column as an object corresponding to the underlying datatype of the column + + The index of the column to retrieve + object + + + + Retreives the values of multiple columns, up to the size of the supplied array + + The array to fill with values from the columns in the current resultset + The number of columns retrieved + + + + Returns a collection containing all the column names and values for the + current row of data in the current resultset, if any. If there is no + current row or no current resultset, an exception may be thrown. + + + The collection containing the column name and value information for the + current row of data in the current resultset or null if this information + cannot be obtained. + + + + + Returns True if the specified column is null + + The index of the column to retrieve + True or False + + + + Moves to the next resultset in multiple row-returning SQL command. + + True if the command was successful and a new resultset is available, False otherwise. + + + + This method attempts to query the flags associated with the database + connection in use. If the database connection is disposed, the default + flags will be returned. + + + The data reader containing the databse connection to query the flags from. + + + The connection flags value. + + + + + Retrieves the SQLiteType for a given column, and caches it to avoid repetetive interop calls. + + The index of the column to retrieve + A SQLiteType structure + + + + Reads the next row from the resultset + + True if a new row was successfully loaded and is ready for processing + + + + Not implemented. Returns 0 + + + + + Returns the number of columns in the current resultset + + + + + Returns the number of visible fields in the current resultset + + + + + Returns True if the resultset has rows that can be fetched + + + + + Returns True if the data reader is closed + + + + + Retrieve the count of records affected by an update/insert command. Only valid once the data reader is closed! + + + + + Indexer to retrieve data from a column given its name + + The name of the column to retrieve data for + The value contained in the column + + + + Indexer to retrieve data from a column given its i + + The index of the column to retrieve + The value contained in the column + + + + SQLite exception class. + + + + + Private constructor for use with serialization. + + + Holds the serialized object data about the exception being thrown. + + + Contains contextual information about the source or destination. + + + + + Public constructor for generating a SQLite exception given the error + code and message. + + + The SQLite return code to report. + + + Message text to go along with the return code message text. + + + + + Public constructor that uses the base class constructor for the error + message. + + Error message text. + + + + Public constructor that uses the default base class constructor. + + + + + Public constructor that uses the base class constructor for the error + message and inner exception. + + Error message text. + The original (inner) exception. + + + + Adds extra information to the serialized object data specific to this + class type. This is only used for serialization. + + + Holds the serialized object data about the exception being thrown. + + + Contains contextual information about the source or destination. + + + + + Returns the error message for the specified SQLite return code. + + The SQLite return code. + The error message or null if it cannot be found. + + + + Returns the composite error message based on the SQLite return code + and the optional detailed error message. + + The SQLite return code. + Optional detailed error message. + Error message text for the return code. + + + + Gets the associated SQLite result code for this exception as a + . This property returns the same + underlying value as the property. + + + + + Gets the associated SQLite return code for this exception as an + . For desktop versions of the .NET Framework, + this property overrides the property of the same name within the + + class. This property returns the same underlying value as the + property. + + + + + SQLite error codes. Actually, this enumeration represents a return code, + which may also indicate success in one of several ways (e.g. SQLITE_OK, + SQLITE_ROW, and SQLITE_DONE). Therefore, the name of this enumeration is + something of a misnomer. + + + + + The error code is unknown. This error code + is only used by the managed wrapper itself. + + + + + Successful result + + + + + SQL error or missing database + + + + + Internal logic error in SQLite + + + + + Access permission denied + + + + + Callback routine requested an abort + + + + + The database file is locked + + + + + A table in the database is locked + + + + + A malloc() failed + + + + + Attempt to write a readonly database + + + + + Operation terminated by sqlite3_interrupt() + + + + + Some kind of disk I/O error occurred + + + + + The database disk image is malformed + + + + + Unknown opcode in sqlite3_file_control() + + + + + Insertion failed because database is full + + + + + Unable to open the database file + + + + + Database lock protocol error + + + + + Database is empty + + + + + The database schema changed + + + + + String or BLOB exceeds size limit + + + + + Abort due to constraint violation + + + + + Data type mismatch + + + + + Library used incorrectly + + + + + Uses OS features not supported on host + + + + + Authorization denied + + + + + Auxiliary database format error + + + + + 2nd parameter to sqlite3_bind out of range + + + + + File opened that is not a database file + + + + + Notifications from sqlite3_log() + + + + + Warnings from sqlite3_log() + + + + + sqlite3_step() has another row ready + + + + + sqlite3_step() has finished executing + + + + + Used to mask off extended result codes + + + + + SQLite implementation of . + + + SQLite implementation of . + + + + + Constructs a new instance. + + + + + Static instance member which returns an instanced class. + + + + + Creates and returns a new object. + + The new object. + + + + Creates and returns a new object. + + The new object. + + + + Creates and returns a new object. + + The new object. + + + + Creates and returns a new object. + + The new object. + + + + Creates and returns a new object. + + The new object. + + + + Creates and returns a new object. + + The new object. + + + + Will provide a object in .NET 3.5. + + The class or interface type to query for. + + + + + This event is raised whenever SQLite raises a logging event. + Note that this should be set as one of the first things in the + application. This event is provided for backward compatibility only. + New code should use the class instead. + + + + + This abstract class is designed to handle user-defined functions easily. An instance of the derived class is made for each + connection to the database. + + + Although there is one instance of a class derived from SQLiteFunction per database connection, the derived class has no access + to the underlying connection. This is necessary to deter implementers from thinking it would be a good idea to make database + calls during processing. + + It is important to distinguish between a per-connection instance, and a per-SQL statement context. One instance of this class + services all SQL statements being stepped through on that connection, and there can be many. One should never store per-statement + information in member variables of user-defined function classes. + + For aggregate functions, always create and store your per-statement data in the contextData object on the 1st step. This data will + be automatically freed for you (and Dispose() called if the item supports IDisposable) when the statement completes. + + + + + The base connection this function is attached to + + + + + Internal array used to keep track of aggregate function context data + + + + + The connection flags associated with this object (this should be the + same value as the flags associated with the parent connection object). + + + + + Holds a reference to the callback function for user functions + + + + + Holds a reference to the callbakc function for stepping in an aggregate function + + + + + Holds a reference to the callback function for finalizing an aggregate function + + + + + Holds a reference to the callback function for collation sequences + + + + + Current context of the current callback. Only valid during a callback + + + + + This static list contains all the user-defined functions declared using the proper attributes. + + + + + Internal constructor, initializes the function's internal variables. + + + + + Constructs an instance of this class using the specified data-type + conversion parameters. + + + The DateTime format to be used when converting string values to a + DateTime and binding DateTime parameters. + + + The to be used when creating DateTime + values. + + + The format string to be used when parsing and formatting DateTime + values. + + + Non-zero to create a UTF-16 data-type conversion context; otherwise, + a UTF-8 data-type conversion context will be created. + + + + + Disposes of any active contextData variables that were not automatically cleaned up. Sometimes this can happen if + someone closes the connection while a DataReader is open. + + + + + Placeholder for a user-defined disposal routine + + True if the object is being disposed explicitly + + + + Scalar functions override this method to do their magic. + + + Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available + to force them into a certain type. Therefore the only types you will ever see as parameters are + DBNull.Value, Int64, Double, String or byte[] array. + + The arguments for the command to process + You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or + you may return an Exception-derived class if you wish to return an error to SQLite. Do not actually throw the error, + just return it! + + + + Aggregate functions override this method to do their magic. + + + Typically you'll be updating whatever you've placed in the contextData field and returning as quickly as possible. + + The arguments for the command to process + The 1-based step number. This is incrememted each time the step method is called. + A placeholder for implementers to store contextual data pertaining to the current context. + + + + Aggregate functions override this method to finish their aggregate processing. + + + If you implemented your aggregate function properly, + you've been recording and keeping track of your data in the contextData object provided, and now at this stage you should have + all the information you need in there to figure out what to return. + NOTE: It is possible to arrive here without receiving a previous call to Step(), in which case the contextData will + be null. This can happen when no rows were returned. You can either return null, or 0 or some other custom return value + if that is the case. + + Your own assigned contextData, provided for you so you can return your final results. + You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or + you may return an Exception-derived class if you wish to return an error to SQLite. Do not actually throw the error, + just return it! + + + + + User-defined collation sequences override this method to provide a custom string sorting algorithm. + + The first string to compare + The second strnig to compare + 1 if param1 is greater than param2, 0 if they are equal, or -1 if param1 is less than param2 + + + + Converts an IntPtr array of context arguments to an object array containing the resolved parameters the pointers point to. + + + Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available + to force them into a certain type. Therefore the only types you will ever see as parameters are + DBNull.Value, Int64, Double, String or byte[] array. + + The number of arguments + A pointer to the array of arguments + An object array of the arguments once they've been converted to .NET values + + + + Takes the return value from Invoke() and Final() and figures out how to return it to SQLite's context. + + The context the return value applies to + The parameter to return to SQLite + + + + Internal scalar callback function, which wraps the raw context pointer and calls the virtual Invoke() method. + WARNING: Must not throw exceptions. + + A raw context pointer + Number of arguments passed in + A pointer to the array of arguments + + + + Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function. + WARNING: Must not throw exceptions. + + Not used + Length of the string pv1 + Pointer to the first string to compare + Length of the string pv2 + Pointer to the second string to compare + Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater + than the second. Returns 0 if an exception is caught. + + + + Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function. + WARNING: Must not throw exceptions. + + Not used + Length of the string pv1 + Pointer to the first string to compare + Length of the string pv2 + Pointer to the second string to compare + Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater + than the second. Returns 0 if an exception is caught. + + + + The internal aggregate Step function callback, which wraps the raw context pointer and calls the virtual Step() method. + WARNING: Must not throw exceptions. + + + This function takes care of doing the lookups and getting the important information put together to call the Step() function. + That includes pulling out the user's contextData and updating it after the call is made. We use a sorted list for this so + binary searches can be done to find the data. + + A raw context pointer + Number of arguments passed in + A pointer to the array of arguments + + + + An internal aggregate Final function callback, which wraps the context pointer and calls the virtual Final() method. + WARNING: Must not throw exceptions. + + A raw context pointer + + + + Using reflection, enumerate all assemblies in the current appdomain looking for classes that + have a SQLiteFunctionAttribute attribute, and registering them accordingly. + + + + + Manual method of registering a function. The type must still have the SQLiteFunctionAttributes in order to work + properly, but this is a workaround for the Compact Framework where enumerating assemblies is not currently supported. + + The type of the function to register + + + + Called by SQLiteBase derived classes, this function binds all user-defined functions to a connection. + It is done this way so that all user-defined functions will access the database using the same encoding scheme + as the connection (UTF-8 or UTF-16). + + + The wrapper functions that interop with SQLite will create a unique cookie value, which internally is a pointer to + all the wrapped callback functions. The interop function uses it to map CDecl callbacks to StdCall callbacks. + + The base object on which the functions are to bind + The flags associated with the parent connection object + Returns a logical list of functions which the connection should retain until it is closed. + + + + This function binds a user-defined functions to a connection. + + + The object instance associated with the + that the function should be bound to. + + + The object instance containing + the metadata for the function to be bound. + + + The object instance that implements the + function to be bound. + + + The flags associated with the parent connection object. + + + + + Returns a reference to the underlying connection's SQLiteConvert class, which can be used to convert + strings and DateTime's into the current connection's encoding schema. + + + + + Extends SQLiteFunction and allows an inherited class to obtain the collating sequence associated with a function call. + + + User-defined functions can call the GetCollationSequence() method in this class and use it to compare strings and char arrays. + + + + + Obtains the collating sequence in effect for the given function. + + + + + + The type of user-defined function to declare + + + + + Scalar functions are designed to be called and return a result immediately. Examples include ABS(), Upper(), Lower(), etc. + + + + + Aggregate functions are designed to accumulate data until the end of a call and then return a result gleaned from the accumulated data. + Examples include SUM(), COUNT(), AVG(), etc. + + + + + Collation sequences are used to sort textual data in a custom manner, and appear in an ORDER BY clause. Typically text in an ORDER BY is + sorted using a straight case-insensitive comparison function. Custom collating sequences can be used to alter the behavior of text sorting + in a user-defined manner. + + + + + An internal callback delegate declaration. + + Raw native context pointer for the user function. + Total number of arguments to the user function. + Raw native pointer to the array of raw native argument pointers. + + + + An internal final callback delegate declaration. + + Raw context pointer for the user function + + + + Internal callback delegate for implementing collation sequences + + Not used + Length of the string pv1 + Pointer to the first string to compare + Length of the string pv2 + Pointer to the second string to compare + Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater + than the second. + + + + The type of collating sequence + + + + + The built-in BINARY collating sequence + + + + + The built-in NOCASE collating sequence + + + + + The built-in REVERSE collating sequence + + + + + A custom user-defined collating sequence + + + + + The encoding type the collation sequence uses + + + + + The collation sequence is UTF8 + + + + + The collation sequence is UTF16 little-endian + + + + + The collation sequence is UTF16 big-endian + + + + + A struct describing the collating sequence a function is executing in + + + + + The name of the collating sequence + + + + + The type of collating sequence + + + + + The text encoding of the collation sequence + + + + + Context of the function that requested the collating sequence + + + + + Calls the base collating sequence to compare two strings + + The first string to compare + The second string to compare + -1 if s1 is less than s2, 0 if s1 is equal to s2, and 1 if s1 is greater than s2 + + + + Calls the base collating sequence to compare two character arrays + + The first array to compare + The second array to compare + -1 if c1 is less than c2, 0 if c1 is equal to c2, and 1 if c1 is greater than c2 + + + + A simple custom attribute to enable us to easily find user-defined functions in + the loaded assemblies and initialize them in SQLite as connections are made. + + + + + Default constructor, initializes the internal variables for the function. + + + + + Constructs an instance of this class. + + + The name of the function, as seen by the SQLite core library. + + + The number of arguments that the function will accept. + + + The type of function being declared. This will either be Scalar, + Aggregate, or Collation. + + + + + The function's name as it will be used in SQLite command text. + + + + + The number of arguments this function expects. -1 if the number of arguments is variable. + + + + + The type of function this implementation will be. + + + + + The object instance that describes the class + containing the implementation for the associated function. + + + + + This class provides key info for a given SQLite statement. + + Providing key information for a given statement is non-trivial :( + + + + + + This function does all the nasty work at determining what keys need to be returned for + a given statement. + + + + + + + + Make sure all the subqueries are open and ready and sync'd with the current rowid + of the table they're supporting + + + + + Release any readers on any subqueries + + + + + Append all the columns we've added to the original query to the schema + + + + + + How many additional columns of keyinfo we're holding + + + + + Used to support CommandBehavior.KeyInfo + + + + + A single sub-query for a given table/database. + + + + + Event data for logging event handlers. + + + + + The error code. The type of this object value should be + or . + + + + + SQL statement text as the statement first begins executing + + + + + Extra data associated with this event, if any. + + + + + Constructs the object. + + Should be null. + + The error code. The type of this object value should be + or . + + The error message, if any. + The extra data, if any. + + + + Raised when a log event occurs. + + The current connection + Event arguments of the trace + + + + Manages the SQLite custom logging functionality and the associated + callback for the whole process. + + + + + Object used to synchronize access to the static instance data + for this class. + + + + + Member variable to store the AppDomain.DomainUnload event handler. + + + + + The default log event handler. + + + + + The log callback passed to native SQLite engine. This must live + as long as the SQLite library has a pointer to it. + + + + + The base SQLite object to interop with. + + + + + This will be non-zero if logging is currently enabled. + + + + + Initializes the SQLite logging facilities. + + + + + Handles the AppDomain being unloaded. + + Should be null. + The data associated with this event. + + + + Log a message to all the registered log event handlers without going + through the SQLite library. + + The message to be logged. + + + + Log a message to all the registered log event handlers without going + through the SQLite library. + + The SQLite error code. + The message to be logged. + + + + Log a message to all the registered log event handlers without going + through the SQLite library. + + The integer error code. + The message to be logged. + + + + Log a message to all the registered log event handlers without going + through the SQLite library. + + + The error code. The type of this object value should be + System.Int32 or SQLiteErrorCode. + + The message to be logged. + + + + Creates and initializes the default log event handler. + + + + + Adds the default log event handler to the list of handlers. + + + + + Removes the default log event handler from the list of handlers. + + + + + Internal proxy function that calls any registered application log + event handlers. + + WARNING: This method is used more-or-less directly by native code, + do not modify its type signature. + + + The extra data associated with this message, if any. + + + The error code associated with this message. + + + The message string to be logged. + + + + + Default logger. Currently, uses the Trace class (i.e. sends events + to the current trace listeners, if any). + + Should be null. + The data associated with this event. + + + + Member variable to store the application log handler to call. + + + + + This event is raised whenever SQLite raises a logging event. + Note that this should be set as one of the first things in the + application. + + + + + If this property is true, logging is enabled; otherwise, logging is + disabled. When logging is disabled, no logging events will fire. + + + + + MetaDataCollections specific to SQLite + + + + + Returns a list of databases attached to the connection + + + + + Returns column information for the specified table + + + + + Returns index information for the optionally-specified table + + + + + Returns base columns for the given index + + + + + Returns the tables in the given catalog + + + + + Returns user-defined views in the given catalog + + + + + Returns underlying column information on the given view + + + + + Returns foreign key information for the given catalog + + + + + Returns the triggers on the database + + + + + SQLite implementation of DbParameter. + + + + + The data type of the parameter + + + + + The version information for mapping the parameter + + + + + The value of the data in the parameter + + + + + The source column for the parameter + + + + + The column name + + + + + The data size, unused by SQLite + + + + + Default constructor + + + + + Constructs a named parameter given the specified parameter name + + The parameter name + + + + Constructs a named parameter given the specified parameter name and initial value + + The parameter name + The initial value of the parameter + + + + Constructs a named parameter of the specified type + + The parameter name + The datatype of the parameter + + + + Constructs a named parameter of the specified type and source column reference + + The parameter name + The data type + The source column + + + + Constructs a named parameter of the specified type, source column and row version + + The parameter name + The data type + The source column + The row version information + + + + Constructs an unnamed parameter of the specified data type + + The datatype of the parameter + + + + Constructs an unnamed parameter of the specified data type and sets the initial value + + The datatype of the parameter + The initial value of the parameter + + + + Constructs an unnamed parameter of the specified data type and source column + + The datatype of the parameter + The source column + + + + Constructs an unnamed parameter of the specified data type, source column and row version + + The data type + The source column + The row version information + + + + Constructs a named parameter of the specified type and size + + The parameter name + The data type + The size of the parameter + + + + Constructs a named parameter of the specified type, size and source column + + The name of the parameter + The data type + The size of the parameter + The source column + + + + Constructs a named parameter of the specified type, size, source column and row version + + The name of the parameter + The data type + The size of the parameter + The source column + The row version information + + + + Constructs a named parameter of the specified type, size, source column and row version + + The name of the parameter + The data type + The size of the parameter + Only input parameters are supported in SQLite + Ignored + Ignored + Ignored + The source column + The row version information + The initial value to assign the parameter + + + + Constructs a named parameter, yet another flavor + + The name of the parameter + The data type + The size of the parameter + Only input parameters are supported in SQLite + Ignored + Ignored + The source column + The row version information + Whether or not this parameter is for comparing NULL's + The intial value to assign the parameter + + + + Constructs an unnamed parameter of the specified type and size + + The data type + The size of the parameter + + + + Constructs an unnamed parameter of the specified type, size, and source column + + The data type + The size of the parameter + The source column + + + + Constructs an unnamed parameter of the specified type, size, source column and row version + + The data type + The size of the parameter + The source column + The row version information + + + + Resets the DbType of the parameter so it can be inferred from the value + + + + + Clones a parameter + + A new, unassociated SQLiteParameter + + + + Whether or not the parameter can contain a null value + + + + + Returns the datatype of the parameter + + + + + Supports only input parameters + + + + + Returns the parameter name + + + + + Returns the size of the parameter + + + + + Gets/sets the source column + + + + + Used by DbCommandBuilder to determine the mapping for nullable fields + + + + + Gets and sets the row version + + + + + Gets and sets the parameter value. If no datatype was specified, the datatype will assume the type from the value given. + + + + + SQLite implementation of DbParameterCollection. + + + + + The underlying command to which this collection belongs + + + + + The internal array of parameters in this collection + + + + + Determines whether or not all parameters have been bound to their statement(s) + + + + + Initializes the collection + + The command to which the collection belongs + + + + Retrieves an enumerator for the collection + + An enumerator for the underlying array + + + + Adds a parameter to the collection + + The parameter name + The data type + The size of the value + The source column + A SQLiteParameter object + + + + Adds a parameter to the collection + + The parameter name + The data type + The size of the value + A SQLiteParameter object + + + + Adds a parameter to the collection + + The parameter name + The data type + A SQLiteParameter object + + + + Adds a parameter to the collection + + The parameter to add + A zero-based index of where the parameter is located in the array + + + + Adds a parameter to the collection + + The parameter to add + A zero-based index of where the parameter is located in the array + + + + Adds a named/unnamed parameter and its value to the parameter collection. + + Name of the parameter, or null to indicate an unnamed parameter + The initial value of the parameter + Returns the SQLiteParameter object created during the call. + + + + Adds an array of parameters to the collection + + The array of parameters to add + + + + Adds an array of parameters to the collection + + The array of parameters to add + + + + Clears the array and resets the collection + + + + + Determines if the named parameter exists in the collection + + The name of the parameter to check + True if the parameter is in the collection + + + + Determines if the parameter exists in the collection + + The SQLiteParameter to check + True if the parameter is in the collection + + + + Not implemented + + + + + + + Retrieve a parameter by name from the collection + + The name of the parameter to fetch + A DbParameter object + + + + Retrieves a parameter by its index in the collection + + The index of the parameter to retrieve + A DbParameter object + + + + Returns the index of a parameter given its name + + The name of the parameter to find + -1 if not found, otherwise a zero-based index of the parameter + + + + Returns the index of a parameter + + The parameter to find + -1 if not found, otherwise a zero-based index of the parameter + + + + Inserts a parameter into the array at the specified location + + The zero-based index to insert the parameter at + The parameter to insert + + + + Removes a parameter from the collection + + The parameter to remove + + + + Removes a parameter from the collection given its name + + The name of the parameter to remove + + + + Removes a parameter from the collection given its index + + The zero-based parameter index to remove + + + + Re-assign the named parameter to a new parameter object + + The name of the parameter to replace + The new parameter + + + + Re-assign a parameter at the specified index + + The zero-based index of the parameter to replace + The new parameter + + + + Un-binds all parameters from their statements + + + + + This function attempts to map all parameters in the collection to all statements in a Command. + Since named parameters may span multiple statements, this function makes sure all statements are bound + to the same named parameter. Unnamed parameters are bound in sequence. + + + + + Returns false + + + + + Returns false + + + + + Returns false + + + + + Returns null + + + + + Returns a count of parameters in the collection + + + + + Overloaded to specialize the return value of the default indexer + + Name of the parameter to get/set + The specified named SQLite parameter + + + + Overloaded to specialize the return value of the default indexer + + The index of the parameter to get/set + The specified SQLite parameter + + + + Represents a single SQL statement in SQLite. + + + + + The underlying SQLite object this statement is bound to + + + + + The command text of this SQL statement + + + + + The actual statement pointer + + + + + An index from which unnamed parameters begin + + + + + Names of the parameters as SQLite understands them to be + + + + + Parameters for this statement + + + + + Command this statement belongs to (if any) + + + + + The flags associated with the parent connection object. + + + + + Initializes the statement and attempts to get all information about parameters in the statement + + The base SQLite object + The flags associated with the parent connection object + The statement + The command text for this statement + The previous command in a multi-statement command + + + + Disposes and finalizes the statement + + + + + If the underlying database connection is open, fetches the number of changed rows + resulting from the most recent query; otherwise, does nothing. + + + The number of changes when true is returned. + Undefined if false is returned. + + Non-zero if the number of changed rows was fetched. + + + + Called by SQLiteParameterCollection, this function determines if the specified parameter name belongs to + this statement, and if so, keeps a reference to the parameter so it can be bound later. + + The parameter name to map + The parameter to assign it + + + + Bind all parameters, making sure the caller didn't miss any + + + + + Attempts to convert an arbitrary object to the Boolean data type. + Null object values are converted to false. Throws a SQLiteException + upon failure. + + The object value to convert. + The format provider to use. + The converted boolean value. + + + + Perform the bind operation for an individual parameter + + The index of the parameter to bind + The parameter we're binding + + + + SQLite implementation of DbTransaction. + + + + + The connection to which this transaction is bound + + + + + Constructs the transaction object, binding it to the supplied connection + + The connection to open a transaction on + TRUE to defer the writelock, or FALSE to lock immediately + + + + Disposes the transaction. If it is currently active, any changes are rolled back. + + + + + Commits the current transaction. + + + + + Rolls back the active transaction. + + + + + Returns the underlying connection to which this transaction applies. + + + + + Forwards to the local Connection property + + + + + Gets the isolation level of the transaction. SQLite only supports Serializable transactions. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to <?xml version="1.0" standalone="yes"?> + <DocumentElement> + <DataTypes> + <TypeName>smallint</TypeName> + <ProviderDbType>10</ProviderDbType> + <ColumnSize>5</ColumnSize> + <DataType>System.Int16</DataType> + <CreateFormat>smallint</CreateFormat> + <IsAutoIncrementable>false</IsAutoIncrementable> + <IsCaseSensitive>false</IsCaseSensitive> + <IsFixedLength>true</IsFixedLength> + <IsFixedPrecisionScale>true</IsFixedPrecisionScale> + <IsLong>false</IsLong> + <IsNullable>true</ [rest of string was truncated]";. + + + + + Looks up a localized string similar to ALL,ALTER,AND,AS,AUTOINCREMENT,BETWEEN,BY,CASE,CHECK,COLLATE,COMMIT,CONSTRAINT,CREATE,CROSS,DEFAULT,DEFERRABLE,DELETE,DISTINCT,DROP,ELSE,ESCAPE,EXCEPT,FOREIGN,FROM,FULL,GROUP,HAVING,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,ISNULL,JOIN,LEFT,LIMIT,NATURAL,NOT,NOTNULL,NULL,ON,OR,ORDER,OUTER,PRIMARY,REFERENCES,RIGHT,ROLLBACK,SELECT,SET,TABLE,THEN,TO,TRANSACTION,UNION,UNIQUE,UPDATE,USING,VALUES,WHEN,WHERE. + + + + + Looks up a localized string similar to <?xml version="1.0" encoding="utf-8" ?> + <DocumentElement> + <MetaDataCollections> + <CollectionName>MetaDataCollections</CollectionName> + <NumberOfRestrictions>0</NumberOfRestrictions> + <NumberOfIdentifierParts>0</NumberOfIdentifierParts> + </MetaDataCollections> + <MetaDataCollections> + <CollectionName>DataSourceInformation</CollectionName> + <NumberOfRestrictions>0</NumberOfRestrictions> + <NumberOfIdentifierParts>0</NumberOfIdentifierParts> + </MetaDataCollections> + <MetaDataC [rest of string was truncated]";. + + + + + The name of the environment variable containing the processor + architecture of the current process. + + + + + This is the P/Invoke method that wraps the native Win32 LoadLibrary + function. See the MSDN documentation for full details on what it + does. + + + The name of the executable library. + + + The native module handle upon success -OR- IntPtr.Zero on failure. + + + + + This lock is used to protect the static _SQLiteModule and + processorArchitecturePlatforms fields, below. + + + + + Stores the mappings between processor architecture names and platform + names. + + + + + The native module handle for the native SQLite library or the value + IntPtr.Zero. + + + + + For now, this method simply calls the Initialize method. + + + + + Attempts to initialize this class by pre-loading the native SQLite + library for the processor architecture of the current process. + + + + + Queries and returns the base directory of the current application + domain. + + + The base directory for the current application domain -OR- null if it + cannot be determined. + + + + + Determines if the dynamic link library file name requires a suffix + and adds it if necessary. + + + The original dynamic link library file name to inspect. + + + The dynamic link library file name, possibly modified to include an + extension. + + + + + Queries and returns the processor architecture of the current + process. + + + The processor architecture of the current process -OR- null if it + cannot be determined. + + + + + Given the processor architecture, returns the name of the platform. + + + The processor architecture to be translated to a platform name. + + + The platform name for the specified processor architecture -OR- null + if it cannot be determined. + + + + + Attempts to load the native SQLite library based on the specified + directory and processor architecture. + + + The base directory to use, null for default (the base directory of + the current application domain). This directory should contain the + processor architecture specific sub-directories. + + + The requested processor architecture, null for default (the + processor architecture of the current process). This caller should + almost always specify null for this parameter. + + + The native module handle as returned by LoadLibrary -OR- IntPtr.Zero + if the loading fails for any reason. + + + + + This class represents a context from the SQLite core library that can + be passed to the sqlite3_result_*() and associated functions. + + + + + This interface represents a native handle provided by the SQLite core + library. + + + + + The native handle value. + + + + + The native context handle. + + + + + Constructs an instance of this class using the specified native + context handle. + + + The native context handle to use. + + + + + Sets the context result to NULL. + + + + + Sets the context result to the specified + value. + + + The value to use. + + + + + Sets the context result to the specified + value. + + + The value to use. + + + + + Sets the context result to the specified + value. + + + The value to use. + + + + + Sets the context result to the specified + value. + + + The value to use. This value will be + converted to the UTF-8 encoding prior to being used. + + + + + Sets the context result to the specified + value containing an error message. + + + The value containing the error message text. + This value will be converted to the UTF-8 encoding prior to being + used. + + + + + Sets the context result to the specified + value. + + + The value to use. + + + + + Sets the context result to contain the error code SQLITE_TOOBIG. + + + + + Sets the context result to contain the error code SQLITE_NOMEM. + + + + + Sets the context result to the specified array + value. + + + The array value to use. + + + + + Sets the context result to a BLOB of zeros of the specified size. + + + The number of zero bytes to use for the BLOB context result. + + + + + Sets the context result to the specified . + + + The to use. + + + + + Returns the underlying SQLite native handle associated with this + object instance. + + + + + This class represents a value from the SQLite core library that can be + passed to the sqlite3_value_*() and associated functions. + + + + + The native value handle. + + + + + Constructs an instance of this class using the specified native + value handle. + + + The native value handle to use. + + + + + Invalidates the native value handle, thereby preventing further + access to it from this object instance. + + + + + Converts a logical array of native pointers to native sqlite3_value + structures into a managed array of + object instances. + + + The number of elements in the logical array of native sqlite3_value + structures. + + + The native pointer to the logical array of native sqlite3_value + structures to convert. + + + The managed array of object instances or + null upon failure. + + + + + Gets and returns the type affinity associated with this value. + + + The type affinity associated with this value. + + + + + Gets and returns the number of bytes associated with this value, if + it refers to a UTF-8 encoded string. + + + The number of bytes associated with this value. The returned value + may be zero. + + + + + Gets and returns the associated with this + value. + + + The associated with this value. + + + + + Gets and returns the associated with + this value. + + + The associated with this value. + + + + + Gets and returns the associated with this + value. + + + The associated with this value. + + + + + Gets and returns the associated with this + value. + + + The associated with this value. The value is + converted from the UTF-8 encoding prior to being returned. + + + + + Gets and returns the array associated with this + value. + + + The array associated with this value. + + + + + Uses the native value handle to obtain and store the managed value + for this object instance, thus saving it for later use. The type + of the managed value is determined by the type affinity of the + native value. If the type affinity is not recognized by this + method, no work is done and false is returned. + + + Non-zero if the native value was persisted successfully. + + + + + Returns the underlying SQLite native handle associated with this + object instance. + + + + + Returns non-zero if the native SQLite value has been successfully + persisted as a managed value within this object instance (i.e. the + property may then be read successfully). + + + + + If the managed value for this object instance is available (i.e. it + has been previously persisted via the ) method, + that value is returned; otherwise, an exception is thrown. The + returned value may be null. + + + + + These are the allowed values for the operators that are part of a + constraint term in the WHERE clause of a query that uses a virtual + table. + + + + + This value represents the equality operator. + + + + + This value represents the greater than operator. + + + + + This value represents the less than or equal to operator. + + + + + This value represents the less than operator. + + + + + This value represents the greater than or equal to operator. + + + + + This value represents the MATCH operator. + + + + + This class represents the native sqlite3_index_constraint structure + from the SQLite core library. + + + + + Constructs an instance of this class using the specified native + sqlite3_index_constraint structure. + + + The native sqlite3_index_constraint structure to use. + + + + + Constructs an instance of this class using the specified field + values. + + + Column on left-hand side of constraint. + + + Constraint operator (). + + + True if this constraint is usable. + + + Used internally - + should ignore. + + + + + Column on left-hand side of constraint. + + + + + Constraint operator (). + + + + + True if this constraint is usable. + + + + + Used internally - + should ignore. + + + + + This class represents the native sqlite3_index_orderby structure from + the SQLite core library. + + + + + Constructs an instance of this class using the specified native + sqlite3_index_orderby structure. + + + The native sqlite3_index_orderby structure to use. + + + + + Constructs an instance of this class using the specified field + values. + + + Column number. + + + True for DESC. False for ASC. + + + + + Column number. + + + + + True for DESC. False for ASC. + + + + + This class represents the native sqlite3_index_constraint_usage + structure from the SQLite core library. + + + + + Constructs an instance of this class using the specified native + sqlite3_index_constraint_usage structure. + + + The native sqlite3_index_constraint_usage structure to use. + + + + + Constructs an instance of this class using the specified field + values. + + + If greater than 0, constraint is part of argv to xFilter. + + + Do not code a test for this constraint. + + + + + If greater than 0, constraint is part of argv to xFilter. + + + + + Do not code a test for this constraint. + + + + + This class represents the various inputs provided by the SQLite core + library to the method. + + + + + Constructs an instance of this class. + + + The number of instances to + pre-allocate space for. + + + The number of instances to + pre-allocate space for. + + + + + An array of object instances, + each containing information supplied by the SQLite core library. + + + + + An array of object instances, + each containing information supplied by the SQLite core library. + + + + + This class represents the various outputs provided to the SQLite core + library by the method. + + + + + Constructs an instance of this class. + + + The number of instances + to pre-allocate space for. + + + + + Determines if the native estimatedRows field can be used, based on + the available version of the SQLite core library. + + + Non-zero if the property is supported + by the SQLite core library. + + + + + An array of object + instances, each containing information to be supplied to the SQLite + core library. + + + + + Number used to help identify the selected index. This value will + later be provided to the + method. + + + + + String used to help identify the selected index. This value will + later be provided to the + method. + + + + + Non-zero if the index string must be freed by the SQLite core + library. + + + + + True if output is already ordered. + + + + + Estimated cost of using this index. Using a null value here + indicates that a default estimated cost value should be used. + + + + + Estimated number of rows returned. Using a null value here + indicates that a default estimated rows value should be used. + + + + + This class represents the various inputs and outputs used with the + method. + + + + + Constructs an instance of this class. + + + The number of (and + ) instances to + pre-allocate space for. + + + The number of instances to + pre-allocate space for. + + + + + Converts a native pointer to a native sqlite3_index_info structure + into a new object instance. + + + The native pointer to the native sqlite3_index_info structure to + convert. + + + Upon success, this parameter will be modified to contain the newly + created object instance. + + + + + Populates the outputs of a pre-allocated native sqlite3_index_info + structure using an existing object + instance. + + + The existing object instance containing + the output data to use. + + + The native pointer to the pre-allocated native sqlite3_index_info + structure. + + + + + The object instance containing + the inputs to the + method. + + + + + The object instance containing + the outputs from the + method. + + + + + This class represents a managed virtual table implementation. It is + not sealed and should be used as the base class for any user-defined + virtual table classes implemented in managed code. + + + + + The index within the array of strings provided to the + and + methods containing the + name of the module implementing this virtual table. + + + + + The index within the array of strings provided to the + and + methods containing the + name of the database containing this virtual table. + + + + + The index within the array of strings provided to the + and + methods containing the + name of the virtual table. + + + + + Constructs an instance of this class. + + + The original array of strings provided to the + and + methods. + + + + + This method should normally be used by the + method in order to + perform index selection based on the constraints provided by the + SQLite core library. + + + The object instance containing all the + data for the inputs and outputs relating to index selection. + + + Non-zero upon success. + + + + + Attempts to record the renaming of the virtual table associated + with this object instance. + + + The new name for the virtual table. + + + Non-zero upon success. + + + + + Disposes of this object instance. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is being called + from the finalizer. + + + + + Finalizes this object instance. + + + + + The original array of strings provided to the + and + methods. + + + + + The name of the module implementing this virtual table. + + + + + The name of the database containing this virtual table. + + + + + The name of the virtual table. + + + + + The object instance containing all the + data for the inputs and outputs relating to the most recent index + selection. + + + + + Returns the underlying SQLite native handle associated with this + object instance. + + + + + This class represents a managed virtual table cursor implementation. + It is not sealed and should be used as the base class for any + user-defined virtual table cursor classes implemented in managed code. + + + + + This value represents an invalid integer row sequence number. + + + + + The field holds the integer row sequence number for the current row + pointed to by this cursor object instance. + + + + + Constructs an instance of this class. + + + The object instance associated + with this object instance. + + + + + Constructs an instance of this class. + + + + + Attempts to persist the specified object + instances in order to make them available after the + method returns. + + + The array of object instances to be + persisted. + + + The number of object instances that were + successfully persisted. + + + + + This method should normally be used by the + method in order to + perform filtering of the result rows and/or to record the filtering + criteria provided by the SQLite core library. + + + Number used to help identify the selected index. + + + String used to help identify the selected index. + + + The values corresponding to each column in the selected index. + + + + + Determines the integer row sequence number for the current row. + + + The integer row sequence number for the current row -OR- zero if + it cannot be determined. + + + + + Adjusts the integer row sequence number so that it refers to the + next row. + + + + + Disposes of this object instance. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is being called + from the finalizer. + + + + + Finalizes this object instance. + + + + + The object instance associated + with this object instance. + + + + + Number used to help identify the selected index. This value will + be set via the method. + + + + + String used to help identify the selected index. This value will + be set via the method. + + + + + The values used to filter the rows returned via this cursor object + instance. This value will be set via the + method. + + + + + Returns the underlying SQLite native handle associated with this + object instance. + + + + + This interface represents a virtual table implementation written in + native code. + + + + + + This method is called to create a new instance of a virtual table + in response to a CREATE VIRTUAL TABLE statement. The db parameter + is a pointer to the SQLite database connection that is executing + the CREATE VIRTUAL TABLE statement. The pAux argument is the copy + of the client data pointer that was the fourth argument to the + sqlite3_create_module() or sqlite3_create_module_v2() call that + registered the virtual table module. The argv parameter is an + array of argc pointers to null terminated strings. The first + string, argv[0], is the name of the module being invoked. The + module name is the name provided as the second argument to + sqlite3_create_module() and as the argument to the USING clause of + the CREATE VIRTUAL TABLE statement that is running. The second, + argv[1], is the name of the database in which the new virtual table + is being created. The database name is "main" for the primary + database, or "temp" for TEMP database, or the name given at the + end of the ATTACH statement for attached databases. The third + element of the array, argv[2], is the name of the new virtual + table, as specified following the TABLE keyword in the CREATE + VIRTUAL TABLE statement. If present, the fourth and subsequent + strings in the argv[] array report the arguments to the module name + in the CREATE VIRTUAL TABLE statement. + + + The job of this method is to construct the new virtual table object + (an sqlite3_vtab object) and return a pointer to it in *ppVTab. + + + As part of the task of creating a new sqlite3_vtab structure, this + method must invoke sqlite3_declare_vtab() to tell the SQLite core + about the columns and datatypes in the virtual table. The + sqlite3_declare_vtab() API has the following prototype: + + + + int sqlite3_declare_vtab(sqlite3 *db, const char *zCreateTable) + + + + The first argument to sqlite3_declare_vtab() must be the same + database connection pointer as the first parameter to this method. + The second argument to sqlite3_declare_vtab() must a + zero-terminated UTF-8 string that contains a well-formed CREATE + TABLE statement that defines the columns in the virtual table and + their data types. The name of the table in this CREATE TABLE + statement is ignored, as are all constraints. Only the column names + and datatypes matter. The CREATE TABLE statement string need not to + be held in persistent memory. The string can be deallocated and/or + reused as soon as the sqlite3_declare_vtab() routine returns. + + + + The native database connection handle. + + + The original native pointer value that was provided to the + sqlite3_create_module(), sqlite3_create_module_v2() or + sqlite3_create_disposable_module() functions. + + + The number of arguments from the CREATE VIRTUAL TABLE statement. + + + The array of string arguments from the CREATE VIRTUAL TABLE + statement. + + + Upon success, this parameter must be modified to point to the newly + created native sqlite3_vtab derived structure. + + + Upon failure, this parameter must be modified to point to the error + message, with the underlying memory having been obtained from the + sqlite3_malloc() function. + + + A standard SQLite return code. + + + + + + The xConnect method is very similar to xCreate. It has the same + parameters and constructs a new sqlite3_vtab structure just like + xCreate. And it must also call sqlite3_declare_vtab() like xCreate. + + + The difference is that xConnect is called to establish a new + connection to an existing virtual table whereas xCreate is called + to create a new virtual table from scratch. + + + The xCreate and xConnect methods are only different when the + virtual table has some kind of backing store that must be + initialized the first time the virtual table is created. The + xCreate method creates and initializes the backing store. The + xConnect method just connects to an existing backing store. + + + As an example, consider a virtual table implementation that + provides read-only access to existing comma-separated-value (CSV) + files on disk. There is no backing store that needs to be created + or initialized for such a virtual table (since the CSV files + already exist on disk) so the xCreate and xConnect methods will be + identical for that module. + + + Another example is a virtual table that implements a full-text + index. The xCreate method must create and initialize data + structures to hold the dictionary and posting lists for that index. + The xConnect method, on the other hand, only has to locate and use + an existing dictionary and posting lists that were created by a + prior xCreate call. + + + The xConnect method must return SQLITE_OK if it is successful in + creating the new virtual table, or SQLITE_ERROR if it is not + successful. If not successful, the sqlite3_vtab structure must not + be allocated. An error message may optionally be returned in *pzErr + if unsuccessful. Space to hold the error message string must be + allocated using an SQLite memory allocation function like + sqlite3_malloc() or sqlite3_mprintf() as the SQLite core will + attempt to free the space using sqlite3_free() after the error has + been reported up to the application. + + + The xConnect method is required for every virtual table + implementation, though the xCreate and xConnect pointers of the + sqlite3_module object may point to the same function the virtual + table does not need to initialize backing store. + + + + The native database connection handle. + + + The original native pointer value that was provided to the + sqlite3_create_module(), sqlite3_create_module_v2() or + sqlite3_create_disposable_module() functions. + + + The number of arguments from the CREATE VIRTUAL TABLE statement. + + + The array of string arguments from the CREATE VIRTUAL TABLE + statement. + + + Upon success, this parameter must be modified to point to the newly + created native sqlite3_vtab derived structure. + + + Upon failure, this parameter must be modified to point to the error + message, with the underlying memory having been obtained from the + sqlite3_malloc() function. + + + A standard SQLite return code. + + + + + + SQLite uses the xBestIndex method of a virtual table module to + determine the best way to access the virtual table. The xBestIndex + method has a prototype like this: + + + int (*xBestIndex)(sqlite3_vtab *pVTab, sqlite3_index_info*); + + + The SQLite core communicates with the xBestIndex method by filling + in certain fields of the sqlite3_index_info structure and passing a + pointer to that structure into xBestIndex as the second parameter. + The xBestIndex method fills out other fields of this structure + which forms the reply. The sqlite3_index_info structure looks like + this: + + + struct sqlite3_index_info { + /* Inputs */ + const int nConstraint; /* Number of entries in aConstraint */ + const struct sqlite3_index_constraint { + int iColumn; /* Column on left-hand side of + * constraint */ + unsigned char op; /* Constraint operator */ + unsigned char usable; /* True if this constraint is usable */ + int iTermOffset; /* Used internally - xBestIndex should + * ignore */ + } *const aConstraint; /* Table of WHERE clause constraints */ + const int nOrderBy; /* Number of terms in the ORDER BY + * clause */ + const struct sqlite3_index_orderby { + int iColumn; /* Column number */ + unsigned char desc; /* True for DESC. False for ASC. */ + } *const aOrderBy; /* The ORDER BY clause */ + /* Outputs */ + struct sqlite3_index_constraint_usage { + int argvIndex; /* if greater than zero, constraint is + * part of argv to xFilter */ + unsigned char omit; /* Do not code a test for this + * constraint */ + } *const aConstraintUsage; + int idxNum; /* Number used to identify the index */ + char *idxStr; /* String, possibly obtained from + * sqlite3_malloc() */ + int needToFreeIdxStr; /* Free idxStr using sqlite3_free() if + * true */ + int orderByConsumed; /* True if output is already ordered */ + double estimatedCost; /* Estimated cost of using this index */ + }; + + + In addition, there are some defined constants: + + + #define SQLITE_INDEX_CONSTRAINT_EQ 2 + #define SQLITE_INDEX_CONSTRAINT_GT 4 + #define SQLITE_INDEX_CONSTRAINT_LE 8 + #define SQLITE_INDEX_CONSTRAINT_LT 16 + #define SQLITE_INDEX_CONSTRAINT_GE 32 + #define SQLITE_INDEX_CONSTRAINT_MATCH 64 + + + The SQLite core calls the xBestIndex method when it is compiling a + query that involves a virtual table. In other words, SQLite calls + this method when it is running sqlite3_prepare() or the equivalent. + By calling this method, the SQLite core is saying to the virtual + table that it needs to access some subset of the rows in the + virtual table and it wants to know the most efficient way to do + that access. The xBestIndex method replies with information that + the SQLite core can then use to conduct an efficient search of the + virtual table. + + + While compiling a single SQL query, the SQLite core might call + xBestIndex multiple times with different settings in + sqlite3_index_info. The SQLite core will then select the + combination that appears to give the best performance. + + + Before calling this method, the SQLite core initializes an instance + of the sqlite3_index_info structure with information about the + query that it is currently trying to process. This information + derives mainly from the WHERE clause and ORDER BY or GROUP BY + clauses of the query, but also from any ON or USING clauses if the + query is a join. The information that the SQLite core provides to + the xBestIndex method is held in the part of the structure that is + marked as "Inputs". The "Outputs" section is initialized to zero. + + + The information in the sqlite3_index_info structure is ephemeral + and may be overwritten or deallocated as soon as the xBestIndex + method returns. If the xBestIndex method needs to remember any part + of the sqlite3_index_info structure, it should make a copy. Care + must be take to store the copy in a place where it will be + deallocated, such as in the idxStr field with needToFreeIdxStr set + to 1. + + + Note that xBestIndex will always be called before xFilter, since + the idxNum and idxStr outputs from xBestIndex are required inputs + to xFilter. However, there is no guarantee that xFilter will be + called following a successful xBestIndex. + + + The xBestIndex method is required for every virtual table + implementation. + + + 2.3.1 Inputs + + + The main thing that the SQLite core is trying to communicate to the + virtual table is the constraints that are available to limit the + number of rows that need to be searched. The aConstraint[] array + contains one entry for each constraint. There will be exactly + nConstraint entries in that array. + + + Each constraint will correspond to a term in the WHERE clause or in + a USING or ON clause that is of the form + + + column OP EXPR + + + Where "column" is a column in the virtual table, OP is an operator + like "=" or "<", and EXPR is an arbitrary expression. So, for + example, if the WHERE clause contained a term like this: + + + a = 5 + + + Then one of the constraints would be on the "a" column with + operator "=" and an expression of "5". Constraints need not have a + literal representation of the WHERE clause. The query optimizer + might make transformations to the WHERE clause in order to extract + as many constraints as it can. So, for example, if the WHERE clause + contained something like this: + + + x BETWEEN 10 AND 100 AND 999>y + + + The query optimizer might translate this into three separate + constraints: + + + x >= 10 + x <= 100 + y < 999 + + + For each constraint, the aConstraint[].iColumn field indicates + which column appears on the left-hand side of the constraint. The + first column of the virtual table is column 0. The rowid of the + virtual table is column -1. The aConstraint[].op field indicates + which operator is used. The SQLITE_INDEX_CONSTRAINT_* constants map + integer constants into operator values. Columns occur in the order + they were defined by the call to sqlite3_declare_vtab() in the + xCreate or xConnect method. Hidden columns are counted when + determining the column index. + + + The aConstraint[] array contains information about all constraints + that apply to the virtual table. But some of the constraints might + not be usable because of the way tables are ordered in a join. The + xBestIndex method must therefore only consider constraints that + have an aConstraint[].usable flag which is true. + + + In addition to WHERE clause constraints, the SQLite core also tells + the xBestIndex method about the ORDER BY clause. (In an aggregate + query, the SQLite core might put in GROUP BY clause information in + place of the ORDER BY clause information, but this fact should not + make any difference to the xBestIndex method.) If all terms of the + ORDER BY clause are columns in the virtual table, then nOrderBy + will be the number of terms in the ORDER BY clause and the + aOrderBy[] array will identify the column for each term in the + order by clause and whether or not that column is ASC or DESC. + + + 2.3.2 Outputs + + + Given all of the information above, the job of the xBestIndex + method it to figure out the best way to search the virtual table. + + + The xBestIndex method fills the idxNum and idxStr fields with + information that communicates an indexing strategy to the xFilter + method. The information in idxNum and idxStr is arbitrary as far as + the SQLite core is concerned. The SQLite core just copies the + information through to the xFilter method. Any desired meaning can + be assigned to idxNum and idxStr as long as xBestIndex and xFilter + agree on what that meaning is. + + + The idxStr value may be a string obtained from an SQLite memory + allocation function such as sqlite3_mprintf(). If this is the case, + then the needToFreeIdxStr flag must be set to true so that the + SQLite core will know to call sqlite3_free() on that string when it + has finished with it, and thus avoid a memory leak. + + + If the virtual table will output rows in the order specified by the + ORDER BY clause, then the orderByConsumed flag may be set to true. + If the output is not automatically in the correct order then + orderByConsumed must be left in its default false setting. This + will indicate to the SQLite core that it will need to do a separate + sorting pass over the data after it comes out of the virtual table. + + + The estimatedCost field should be set to the estimated number of + disk access operations required to execute this query against the + virtual table. The SQLite core will often call xBestIndex multiple + times with different constraints, obtain multiple cost estimates, + then choose the query plan that gives the lowest estimate. + + + The aConstraintUsage[] array contains one element for each of the + nConstraint constraints in the inputs section of the + sqlite3_index_info structure. The aConstraintUsage[] array is used + by xBestIndex to tell the core how it is using the constraints. + + + The xBestIndex method may set aConstraintUsage[].argvIndex entries + to values greater than one. Exactly one entry should be set to 1, + another to 2, another to 3, and so forth up to as many or as few as + the xBestIndex method wants. The EXPR of the corresponding + constraints will then be passed in as the argv[] parameters to + xFilter. + + + For example, if the aConstraint[3].argvIndex is set to 1, then when + xFilter is called, the argv[0] passed to xFilter will have the EXPR + value of the aConstraint[3] constraint. + + + By default, the SQLite core double checks all constraints on each + row of the virtual table that it receives. If such a check is + redundant, the xBestFilter method can suppress that double-check by + setting aConstraintUsage[].omit. + + + + The native pointer to the sqlite3_vtab derived structure. + + + The native pointer to the sqlite3_index_info structure. + + + A standard SQLite return code. + + + + + + This method releases a connection to a virtual table. Only the + sqlite3_vtab object is destroyed. The virtual table is not + destroyed and any backing store associated with the virtual table + persists. This method undoes the work of xConnect. + + + This method is a destructor for a connection to the virtual table. + Contrast this method with xDestroy. The xDestroy is a destructor + for the entire virtual table. + + + The xDisconnect method is required for every virtual table + implementation, though it is acceptable for the xDisconnect and + xDestroy methods to be the same function if that makes sense for + the particular virtual table. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + This method releases a connection to a virtual table, just like the + xDisconnect method, and it also destroys the underlying table + implementation. This method undoes the work of xCreate. + + + The xDisconnect method is called whenever a database connection + that uses a virtual table is closed. The xDestroy method is only + called when a DROP TABLE statement is executed against the virtual + table. + + + The xDestroy method is required for every virtual table + implementation, though it is acceptable for the xDisconnect and + xDestroy methods to be the same function if that makes sense for + the particular virtual table. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + The xOpen method creates a new cursor used for accessing (read + and/or writing) a virtual table. A successful invocation of this + method will allocate the memory for the sqlite3_vtab_cursor (or a + subclass), initialize the new object, and make *ppCursor point to + the new object. The successful call then returns SQLITE_OK. + + + For every successful call to this method, the SQLite core will + later invoke the xClose method to destroy the allocated cursor. + + + The xOpen method need not initialize the pVtab field of the + sqlite3_vtab_cursor structure. The SQLite core will take care of + that chore automatically. + + + A virtual table implementation must be able to support an arbitrary + number of simultaneously open cursors. + + + When initially opened, the cursor is in an undefined state. The + SQLite core will invoke the xFilter method on the cursor prior to + any attempt to position or read from the cursor. + + + The xOpen method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab derived structure. + + + Upon success, this parameter must be modified to point to the newly + created native sqlite3_vtab_cursor derived structure. + + + A standard SQLite return code. + + + + + + The xClose method closes a cursor previously opened by xOpen. The + SQLite core will always call xClose once for each cursor opened + using xOpen. + + + This method must release all resources allocated by the + corresponding xOpen call. The routine will not be called again even + if it returns an error. The SQLite core will not use the + sqlite3_vtab_cursor again after it has been closed. + + + The xClose method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + A standard SQLite return code. + + + + + + This method begins a search of a virtual table. The first argument + is a cursor opened by xOpen. The next two argument define a + particular search index previously chosen by xBestIndex. The + specific meanings of idxNum and idxStr are unimportant as long as + xFilter and xBestIndex agree on what that meaning is. + + + The xBestIndex function may have requested the values of certain + expressions using the aConstraintUsage[].argvIndex values of the + sqlite3_index_info structure. Those values are passed to xFilter + using the argc and argv parameters. + + + If the virtual table contains one or more rows that match the + search criteria, then the cursor must be left point at the first + row. Subsequent calls to xEof must return false (zero). If there + are no rows match, then the cursor must be left in a state that + will cause the xEof to return true (non-zero). The SQLite engine + will use the xColumn and xRowid methods to access that row content. + The xNext method will be used to advance to the next row. + + + This method must return SQLITE_OK if successful, or an sqlite error + code if an error occurs. + + + The xFilter method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + Number used to help identify the selected index. + + + The native pointer to the UTF-8 encoded string containing the + string used to help identify the selected index. + + + The number of native pointers to sqlite3_value structures specified + in . + + + An array of native pointers to sqlite3_value structures containing + filtering criteria for the selected index. + + + A standard SQLite return code. + + + + + + The xNext method advances a virtual table cursor to the next row of + a result set initiated by xFilter. If the cursor is already + pointing at the last row when this routine is called, then the + cursor no longer points to valid data and a subsequent call to the + xEof method must return true (non-zero). If the cursor is + successfully advanced to another row of content, then subsequent + calls to xEof must return false (zero). + + + This method must return SQLITE_OK if successful, or an sqlite error + code if an error occurs. + + + The xNext method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + A standard SQLite return code. + + + + + + The xEof method must return false (zero) if the specified cursor + currently points to a valid row of data, or true (non-zero) + otherwise. This method is called by the SQL engine immediately + after each xFilter and xNext invocation. + + + The xEof method is required for every virtual table implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + Non-zero if no more rows are available; zero otherwise. + + + + + + The SQLite core invokes this method in order to find the value for + the N-th column of the current row. N is zero-based so the first + column is numbered 0. The xColumn method may return its result back + to SQLite using one of the following interface: + + + sqlite3_result_blob() + sqlite3_result_double() + sqlite3_result_int() + sqlite3_result_int64() + sqlite3_result_null() + sqlite3_result_text() + sqlite3_result_text16() + sqlite3_result_text16le() + sqlite3_result_text16be() + sqlite3_result_zeroblob() + + + If the xColumn method implementation calls none of the functions + above, then the value of the column defaults to an SQL NULL. + + + To raise an error, the xColumn method should use one of the + result_text() methods to set the error message text, then return an + appropriate error code. The xColumn method must return SQLITE_OK on + success. + + + The xColumn method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + The native pointer to the sqlite3_context structure to be used + for returning the specified column value to the SQLite core + library. + + + The zero-based index corresponding to the column containing the + value to be returned. + + + A standard SQLite return code. + + + + + + A successful invocation of this method will cause *pRowid to be + filled with the rowid of row that the virtual table cursor pCur is + currently pointing at. This method returns SQLITE_OK on success. It + returns an appropriate error code on failure. + + + The xRowid method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the current row for the specified cursor. + + + A standard SQLite return code. + + + + + + All changes to a virtual table are made using the xUpdate method. + This one method can be used to insert, delete, or update. + + + The argc parameter specifies the number of entries in the argv + array. The value of argc will be 1 for a pure delete operation or + N+2 for an insert or replace or update where N is the number of + columns in the table. In the previous sentence, N includes any + hidden columns. + + + Every argv entry will have a non-NULL value in C but may contain + the SQL value NULL. In other words, it is always true that + argv[i]!=0 for i between 0 and argc-1. However, it might be the + case that sqlite3_value_type(argv[i])==SQLITE_NULL. + + + The argv[0] parameter is the rowid of a row in the virtual table + to be deleted. If argv[0] is an SQL NULL, then no deletion occurs. + + + The argv[1] parameter is the rowid of a new row to be inserted into + the virtual table. If argv[1] is an SQL NULL, then the + implementation must choose a rowid for the newly inserted row. + Subsequent argv[] entries contain values of the columns of the + virtual table, in the order that the columns were declared. The + number of columns will match the table declaration that the + xConnect or xCreate method made using the sqlite3_declare_vtab() + call. All hidden columns are included. + + + When doing an insert without a rowid (argc>1, argv[1] is an SQL + NULL), the implementation must set *pRowid to the rowid of the + newly inserted row; this will become the value returned by the + sqlite3_last_insert_rowid() function. Setting this value in all the + other cases is a harmless no-op; the SQLite engine ignores the + *pRowid return value if argc==1 or argv[1] is not an SQL NULL. + + + Each call to xUpdate will fall into one of cases shown below. Note + that references to argv[i] mean the SQL value held within the + argv[i] object, not the argv[i] object itself. + + + argc = 1 + + + The single row with rowid equal to argv[0] is deleted. No + insert occurs. + + + argc > 1 + argv[0] = NULL + + + A new row is inserted with a rowid argv[1] and column + values in argv[2] and following. If argv[1] is an SQL NULL, + the a new unique rowid is generated automatically. + + + argc > 1 + argv[0] ? NULL + argv[0] = argv[1] + + + The row with rowid argv[0] is updated with new values in + argv[2] and following parameters. + + + argc > 1 + argv[0] ? NULL + argv[0] ? argv[1] + + + The row with rowid argv[0] is updated with rowid argv[1] + and new values in argv[2] and following parameters. This + will occur when an SQL statement updates a rowid, as in + the statement: + + + UPDATE table SET rowid=rowid+1 WHERE ...; + + + The xUpdate method must return SQLITE_OK if and only if it is + successful. If a failure occurs, the xUpdate must return an + appropriate error code. On a failure, the pVTab->zErrMsg element + may optionally be replaced with error message text stored in memory + allocated from SQLite using functions such as sqlite3_mprintf() or + sqlite3_malloc(). + + + If the xUpdate method violates some constraint of the virtual table + (including, but not limited to, attempting to store a value of the + wrong datatype, attempting to store a value that is too large or + too small, or attempting to change a read-only value) then the + xUpdate must fail with an appropriate error code. + + + There might be one or more sqlite3_vtab_cursor objects open and in + use on the virtual table instance and perhaps even on the row of + the virtual table when the xUpdate method is invoked. The + implementation of xUpdate must be prepared for attempts to delete + or modify rows of the table out from other existing cursors. If the + virtual table cannot accommodate such changes, the xUpdate method + must return an error code. + + + The xUpdate method is optional. If the xUpdate pointer in the + sqlite3_module for a virtual table is a NULL pointer, then the + virtual table is read-only. + + + + The native pointer to the sqlite3_vtab derived structure. + + + The number of new or modified column values contained in + . + + + The array of native pointers to sqlite3_value structures containing + the new or modified column values, if any. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the row that was inserted, if any. + + + A standard SQLite return code. + + + + + + This method begins a transaction on a virtual table. This is method + is optional. The xBegin pointer of sqlite3_module may be NULL. + + + This method is always followed by one call to either the xCommit or + xRollback method. Virtual table transactions do not nest, so the + xBegin method will not be invoked more than once on a single + virtual table without an intervening call to either xCommit or + xRollback. Multiple calls to other methods can and likely will + occur in between the xBegin and the corresponding xCommit or + xRollback. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + This method signals the start of a two-phase commit on a virtual + table. This is method is optional. The xSync pointer of + sqlite3_module may be NULL. + + + This method is only invoked after call to the xBegin method and + prior to an xCommit or xRollback. In order to implement two-phase + commit, the xSync method on all virtual tables is invoked prior to + invoking the xCommit method on any virtual table. If any of the + xSync methods fail, the entire transaction is rolled back. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + This method causes a virtual table transaction to commit. This is + method is optional. The xCommit pointer of sqlite3_module may be + NULL. + + + A call to this method always follows a prior call to xBegin and + xSync. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + This method causes a virtual table transaction to rollback. This is + method is optional. The xRollback pointer of sqlite3_module may be + NULL. + + + A call to this method always follows a prior call to xBegin. + + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + + This method provides notification that the virtual table + implementation that the virtual table will be given a new name. If + this method returns SQLITE_OK then SQLite renames the table. If + this method returns an error code then the renaming is prevented. + + + The xRename method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab derived structure. + + + The number of arguments to the function being sought. + + + The name of the function being sought. + + + Upon success, this parameter must be modified to contain the + delegate responsible for implementing the specified function. + + + Upon success, this parameter must be modified to contain the + native user-data pointer associated with + . + + + Non-zero if the specified function was found; zero otherwise. + + + + + + This method provides notification that the virtual table + implementation that the virtual table will be given a new name. If + this method returns SQLITE_OK then SQLite renames the table. If + this method returns an error code then the renaming is prevented. + + + The xRename method is required for every virtual table + implementation. + + + + The native pointer to the sqlite3_vtab derived structure. + + + The native pointer to the UTF-8 encoded string containing the new + name for the virtual table. + + + A standard SQLite return code. + + + + + + These methods provide the virtual table implementation an + opportunity to implement nested transactions. They are always + optional and will only be called in SQLite version 3.7.7 and later. + + + When xSavepoint(X,N) is invoked, that is a signal to the virtual + table X that it should save its current state as savepoint N. A + subsequent call to xRollbackTo(X,R) means that the state of the + virtual table should return to what it was when xSavepoint(X,R) was + last called. The call to xRollbackTo(X,R) will invalidate all + savepoints with N>R; none of the invalided savepoints will be + rolled back or released without first being reinitialized by a call + to xSavepoint(). A call to xRelease(X,M) invalidates all savepoints + where N>=M. + + + None of the xSavepoint(), xRelease(), or xRollbackTo() methods will + ever be called except in between calls to xBegin() and either + xCommit() or xRollback(). + + + + The native pointer to the sqlite3_vtab derived structure. + + + This is an integer identifier under which the the current state of + the virtual table should be saved. + + + A standard SQLite return code. + + + + + + These methods provide the virtual table implementation an + opportunity to implement nested transactions. They are always + optional and will only be called in SQLite version 3.7.7 and later. + + + When xSavepoint(X,N) is invoked, that is a signal to the virtual + table X that it should save its current state as savepoint N. A + subsequent call to xRollbackTo(X,R) means that the state of the + virtual table should return to what it was when xSavepoint(X,R) was + last called. The call to xRollbackTo(X,R) will invalidate all + savepoints with N>R; none of the invalided savepoints will be + rolled back or released without first being reinitialized by a call + to xSavepoint(). A call to xRelease(X,M) invalidates all savepoints + where N>=M. + + + None of the xSavepoint(), xRelease(), or xRollbackTo() methods will + ever be called except in between calls to xBegin() and either + xCommit() or xRollback(). + + + + The native pointer to the sqlite3_vtab derived structure. + + + This is an integer used to indicate that any saved states with an + identifier greater than or equal to this should be deleted by the + virtual table. + + + A standard SQLite return code. + + + + + + These methods provide the virtual table implementation an + opportunity to implement nested transactions. They are always + optional and will only be called in SQLite version 3.7.7 and later. + + + When xSavepoint(X,N) is invoked, that is a signal to the virtual + table X that it should save its current state as savepoint N. A + subsequent call to xRollbackTo(X,R) means that the state of the + virtual table should return to what it was when xSavepoint(X,R) was + last called. The call to xRollbackTo(X,R) will invalidate all + savepoints with N>R; none of the invalided savepoints will be + rolled back or released without first being reinitialized by a call + to xSavepoint(). A call to xRelease(X,M) invalidates all savepoints + where N>=M. + + + None of the xSavepoint(), xRelease(), or xRollbackTo() methods will + ever be called except in between calls to xBegin() and either + xCommit() or xRollback(). + + + + The native pointer to the sqlite3_vtab derived structure. + + + This is an integer identifier used to specify a specific saved + state for the virtual table for it to restore itself back to, which + should also have the effect of deleting all saved states with an + integer identifier greater than this one. + + + A standard SQLite return code. + + + + + This interface represents a virtual table implementation written in + managed code. + + + + + This method is called in response to the + method. + + + The object instance associated with + the virtual table. + + + The native user-data pointer associated with this module, as it was + provided to the SQLite core library when the native module instance + was created. + + + The module name, database name, virtual table name, and all other + arguments passed to the CREATE VIRTUAL TABLE statement. + + + Upon success, this parameter must be modified to contain the + object instance associated with + the virtual table. + + + Upon failure, this parameter must be modified to contain an error + message. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated with + the virtual table. + + + The native user-data pointer associated with this module, as it was + provided to the SQLite core library when the native module instance + was created. + + + The module name, database name, virtual table name, and all other + arguments passed to the CREATE VIRTUAL TABLE statement. + + + Upon success, this parameter must be modified to contain the + object instance associated with + the virtual table. + + + Upon failure, this parameter must be modified to contain an error + message. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The object instance containing all the + data for the inputs and outputs relating to index selection. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + Upon success, this parameter must be modified to contain the + object instance associated + with the newly opened virtual table cursor. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Number used to help identify the selected index. + + + String used to help identify the selected index. + + + The values corresponding to each column in the selected index. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Non-zero if no more rows are available; zero otherwise. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + The object instance to be used for + returning the specified column value to the SQLite core library. + + + The zero-based index corresponding to the column containing the + value to be returned. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the current row for the specified cursor. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The array of object instances containing + the new or modified column values, if any. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the row that was inserted, if any. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The number of arguments to the function being sought. + + + The name of the function being sought. + + + Upon success, this parameter must be modified to contain the + object instance responsible for + implementing the specified function. + + + Upon success, this parameter must be modified to contain the + native user-data pointer associated with + . + + + Non-zero if the specified function was found; zero otherwise. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The new name for the virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer identifier under which the the current state of + the virtual table should be saved. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer used to indicate that any saved states with an + identifier greater than or equal to this should be deleted by the + virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer identifier used to specify a specific saved + state for the virtual table for it to restore itself back to, which + should also have the effect of deleting all saved states with an + integer identifier greater than this one. + + + A standard SQLite return code. + + + + + Returns non-zero if the schema for the virtual table has been + declared. + + + + + Returns the name of the module as it was registered with the SQLite + core library. + + + + + This class contains static methods that are used to allocate, + manipulate, and free native memory provided by the SQLite core library. + + + + + Allocates at least the specified number of bytes of native memory + via the SQLite core library sqlite3_malloc() function and returns + the resulting native pointer. + + + The number of bytes to allocate. + + + The native pointer that points to a block of memory of at least the + specified size -OR- if the memory could + not be allocated. + + + + + Gets and returns the actual size of the specified memory block that + was previously obtained from the method. + + + The native pointer to the memory block previously obtained from the + method. + + + The actual size, in bytes, of the memory block specified via the + native pointer. + + + + + Frees a memory block previously obtained from the + method. + + + The native pointer to the memory block previously obtained from the + method. + + + + + This class contains static methods that are used to deal with native + UTF-8 string pointers to be used with the SQLite core library. + + + + + This is the maximum possible length for the native UTF-8 encoded + strings used with the SQLite core library. + + + + + This is the object instance used to handle + conversions from/to UTF-8. + + + + + Converts the specified managed string into the UTF-8 encoding and + returns the array of bytes containing its representation in that + encoding. + + + The managed string to convert. + + + The array of bytes containing the representation of the managed + string in the UTF-8 encoding or null upon failure. + + + + + Converts the specified array of bytes representing a string in the + UTF-8 encoding and returns a managed string. + + + The array of bytes to convert. + + + The managed string or null upon failure. + + + + + Probes a native pointer to a string in the UTF-8 encoding for its + terminating NUL character, within the specified length limit. + + + The native NUL-terminated string pointer. + + + The maximum length of the native string, in bytes. + + + The length of the native string, in bytes -OR- zero if the length + could not be determined. + + + + + Converts the specified native NUL-terminated UTF-8 string pointer + into a managed string. + + + The native NUL-terminated UTF-8 string pointer. + + + The managed string or null upon failure. + + + + + Converts the specified native UTF-8 string pointer of the specified + length into a managed string. + + + The native UTF-8 string pointer. + + + The length of the native string, in bytes. + + + The managed string or null upon failure. + + + + + Converts the specified managed string into a native NUL-terminated + UTF-8 string pointer using memory obtained from the SQLite core + library. + + + The managed string to convert. + + + The native NUL-terminated UTF-8 string pointer or + upon failure. + + + + + Converts a logical array of native NUL-terminated UTF-8 string + pointers into an array of managed strings. + + + The number of elements in the logical array of native + NUL-terminated UTF-8 string pointers. + + + The native pointer to the logical array of native NUL-terminated + UTF-8 string pointers to convert. + + + The array of managed strings or null upon failure. + + + + + Converts an array of managed strings into an array of native + NUL-terminated UTF-8 string pointers. + + + The array of managed strings to convert. + + + The array of native NUL-terminated UTF-8 string pointers or null + upon failure. + + + + + This class contains static methods that are used to deal with native + pointers to memory blocks that logically contain arrays of bytes to be + used with the SQLite core library. + + + + + Converts a native pointer to a logical array of bytes of the + specified length into a managed byte array. + + + The native pointer to the logical array of bytes to convert. + + + The length, in bytes, of the logical array of bytes to convert. + + + The managed byte array or null upon failure. + + + + + Converts a managed byte array into a native pointer to a logical + array of bytes. + + + The managed byte array to convert. + + + The native pointer to a logical byte array or null upon failure. + + + + + This class contains static methods that are used to perform several + low-level data marshalling tasks between native and managed code. + + + + + Returns a new object instance based on the + specified object instance and an integer + offset. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location that the new + object instance should point to. + + + The new object instance. + + + + + Rounds up an integer size to the next multiple of the alignment. + + + The size, in bytes, to be rounded up. + + + The required alignment for the return value. + + + The size, in bytes, rounded up to the next multiple of the + alignment. This value may end up being the same as the original + size. + + + + + Determines the offset, in bytes, of the next structure member. + + + The offset, in bytes, of the current structure member. + + + The size, in bytes, of the current structure member. + + + The alignment, in bytes, of the next structure member. + + + The offset, in bytes, of the next structure member. + + + + + Reads a value from the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be read is located. + + + The value at the specified memory location. + + + + + Reads a value from the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + to be read is located. + + + The value at the specified memory location. + + + + + Reads an value from the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be read is located. + + + The value at the specified memory location. + + + + + Writes an value to the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be written is located. + + + The value to write. + + + + + Writes an value to the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be written is located. + + + The value to write. + + + + + Writes a value to the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be written is located. + + + The value to write. + + + + + Writes a value to the specified memory + location. + + + The object instance representing the base + memory location. + + + The integer offset from the base memory location where the + value to be written is located. + + + The value to write. + + + + + This class represents a managed virtual table module implementation. + It is not sealed and must be used as the base class for any + user-defined virtual table module classes implemented in managed code. + + + + + The default version of the native sqlite3_module structure in use. + + + + + This field is used to store the native sqlite3_module structure + associated with this object instance. + + + + + This field is used to store the destructor delegate to be passed to + the SQLite core library via the sqlite3_create_disposable_module() + function. + + + + + This field is used to store a pointer to the native sqlite3_module + structure returned by the sqlite3_create_disposable_module + function. + + + + + This field is used to store the virtual table instances associated + with this module. The native pointer to the sqlite3_vtab derived + structure is used to key into this collection. + + + + + This field is used to store the virtual table cursor instances + associated with this module. The native pointer to the + sqlite3_vtab_cursor derived structure is used to key into this + collection. + + + + + This field is used to store the virtual table function instances + associated with this module. The case-insensitive function name + and the number of arguments (with -1 meaning "any") are used to + construct the string that is used to key into this collection. + + + + + Constructs an instance of this class. + + + The name of the module. This parameter cannot be null. + + + + + Calls the native SQLite core library in order to create a new + disposable module containing the implementation of a virtual table. + + + The native database connection pointer to use. + + + Non-zero upon success. + + + + + This method is called by the SQLite core library when the native + module associated with this object instance is being destroyed due + to its parent connection being closed. It may also be called by + the "vtshim" module if/when the sqlite3_dispose_module() function + is called. + + + The native user-data pointer associated with this module, as it was + provided to the SQLite core library when the native module instance + was created. + + + + + Creates and returns the native sqlite_module structure using the + configured (or default) + interface implementation. + + + The native sqlite_module structure using the configured (or + default) interface + implementation. + + + + + Creates and returns the native sqlite_module structure using the + specified interface + implementation. + + + The interface implementation to + use. + + + The native sqlite_module structure using the specified + interface implementation. + + + + + Creates a copy of the specified + object instance, + using default implementations for the contained delegates when + necessary. + + + The object + instance to copy. + + + The new object + instance. + + + + + Calls one of the virtual table initialization methods. + + + Non-zero to call the + method; otherwise, the + method will be called. + + + The native database connection handle. + + + The original native pointer value that was provided to the + sqlite3_create_module(), sqlite3_create_module_v2() or + sqlite3_create_disposable_module() functions. + + + The number of arguments from the CREATE VIRTUAL TABLE statement. + + + The array of string arguments from the CREATE VIRTUAL TABLE + statement. + + + Upon success, this parameter must be modified to point to the newly + created native sqlite3_vtab derived structure. + + + Upon failure, this parameter must be modified to point to the error + message, with the underlying memory having been obtained from the + sqlite3_malloc() function. + + + A standard SQLite return code. + + + + + Calls one of the virtual table finalization methods. + + + Non-zero to call the + method; otherwise, the + method will be + called. + + + The native pointer to the sqlite3_vtab derived structure. + + + A standard SQLite return code. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance to be used. + + + The native pointer to the sqlite3_vtab derived structure. + + + Non-zero if this error message should also be logged using the + class. + + + The error message. + + + Non-zero upon success. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance to be used. + + + The object instance used to + lookup the native pointer to the sqlite3_vtab derived structure. + + + Non-zero if this error message should also be logged using the + class. + + + The error message. + + + Non-zero upon success. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance to be used. + + + The native pointer to the sqlite3_vtab_cursor derived structure + used to get the native pointer to the sqlite3_vtab derived + structure. + + + Non-zero if this error message should also be logged using the + class. + + + The error message. + + + Non-zero upon success. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance to be used. + + + The object instance used to + lookup the native pointer to the sqlite3_vtab derived structure. + + + Non-zero if this error message should also be logged using the + class. + + + The error message. + + + Non-zero upon success. + + + + + Gets and returns the interface + implementation to be used when creating the native sqlite3_module + structure. Derived classes may override this method to supply an + alternate implementation for the + interface. + + + The interface implementation to + be used when populating the native sqlite3_module structure. If + the returned value is null, the private methods provided by the + class and relating to the + interface will be used to + create the necessary delegates. + + + + + Creates and returns the + interface implementation corresponding to the current + object instance. + + + The interface implementation + corresponding to the current object + instance. + + + + + Allocates a native sqlite3_vtab derived structure and returns a + native pointer to it. + + + A native pointer to a native sqlite3_vtab derived structure. + + + + + Zeros out the fields of a native sqlite3_vtab derived structure. + + + The native pointer to the native sqlite3_vtab derived structure to + zero. + + + + + Frees a native sqlite3_vtab structure using the provided native + pointer to it. + + + A native pointer to a native sqlite3_vtab derived structure. + + + + + Allocates a native sqlite3_vtab_cursor derived structure and + returns a native pointer to it. + + + A native pointer to a native sqlite3_vtab_cursor derived structure. + + + + + Frees a native sqlite3_vtab_cursor structure using the provided + native pointer to it. + + + A native pointer to a native sqlite3_vtab_cursor derived structure. + + + + + Reads and returns the native pointer to the sqlite3_vtab derived + structure based on the native pointer to the sqlite3_vtab_cursor + derived structure. + + + The object instance to be used. + + + The native pointer to the sqlite3_vtab_cursor derived structure + from which to read the native pointer to the sqlite3_vtab derived + structure. + + + The native pointer to the sqlite3_vtab derived structure -OR- + if it cannot be determined. + + + + + Reads and returns the native pointer to the sqlite3_vtab derived + structure based on the native pointer to the sqlite3_vtab_cursor + derived structure. + + + The native pointer to the sqlite3_vtab_cursor derived structure + from which to read the native pointer to the sqlite3_vtab derived + structure. + + + The native pointer to the sqlite3_vtab derived structure -OR- + if it cannot be determined. + + + + + Looks up and returns the object + instance based on the native pointer to the sqlite3_vtab derived + structure. + + + The native pointer to the sqlite3_vtab derived structure. + + + The object instance or null if + the corresponding one cannot be found. + + + + + Allocates and returns a native pointer to a sqlite3_vtab derived + structure and creates an association between it and the specified + object instance. + + + The object instance to be used + when creating the association. + + + The native pointer to a sqlite3_vtab derived structure or + if the method fails for any reason. + + + + + Looks up and returns the + object instance based on the native pointer to the + sqlite3_vtab_cursor derived structure. + + + The native pointer to the sqlite3_vtab derived structure. + + + The native pointer to the sqlite3_vtab_cursor derived structure. + + + The object instance or null + if the corresponding one cannot be found. + + + + + Allocates and returns a native pointer to a sqlite3_vtab_cursor + derived structure and creates an association between it and the + specified object instance. + + + The object instance to be + used when creating the association. + + + The native pointer to a sqlite3_vtab_cursor derived structure or + if the method fails for any reason. + + + + + Deterimines the key that should be used to identify and store the + object instance for the virtual table + (i.e. to be returned via the + method). + + + The number of arguments to the virtual table function. + + + The name of the virtual table function. + + + The object instance associated with + this virtual table function. + + + The string that should be used to identify and store the virtual + table function instance. This method cannot return null. If null + is returned from this method, the behavior is undefined. + + + + + Attempts to declare the schema for the virtual table using the + specified database connection. + + + The object instance to use when + declaring the schema of the virtual table. This parameter may not + be null. + + + The string containing the CREATE TABLE statement that completely + describes the schema for the virtual table. This parameter may not + be null. + + + Upon failure, this parameter must be modified to contain an error + message. + + + A standard SQLite return code. + + + + + Calls the native SQLite core library in order to declare a virtual + table function in response to a call into the + + or virtual table + methods. + + + The object instance to use when + declaring the schema of the virtual table. + + + The number of arguments to the function being declared. + + + The name of the function being declared. + + + Upon success, the contents of this parameter are undefined. Upon + failure, it should contain an appropriate error message. + + + A standard SQLite return code. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The native pointer to the sqlite3_vtab derived structure. + + + The error message. + + + Non-zero upon success. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance used to + lookup the native pointer to the sqlite3_vtab derived structure. + + + The error message. + + + Non-zero upon success. + + + + + Arranges for the specified error message to be placed into the + zErrMsg field of a sqlite3_vtab derived structure, freeing the + existing error message, if any. + + + The object instance used to + lookup the native pointer to the sqlite3_vtab derived structure. + + + The error message. + + + Non-zero upon success. + + + + + Modifies the specified object instance + to contain the specified estimated cost. + + + The object instance to modify. + + + The estimated cost value to use. Using a null value means that the + default value provided by the SQLite core library should be used. + + + Non-zero upon success. + + + + + Modifies the specified object instance + to contain the default estimated cost. + + + The object instance to modify. + + + Non-zero upon success. + + + + + Modifies the specified object instance + to contain the specified estimated rows. + + + The object instance to modify. + + + The estimated rows value to use. Using a null value means that the + default value provided by the SQLite core library should be used. + + + Non-zero upon success. + + + + + Modifies the specified object instance + to contain the default estimated rows. + + + The object instance to modify. + + + Non-zero upon success. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + This method is called in response to the + method. + + + The object instance associated with + the virtual table. + + + The native user-data pointer associated with this module, as it was + provided to the SQLite core library when the native module instance + was created. + + + The module name, database name, virtual table name, and all other + arguments passed to the CREATE VIRTUAL TABLE statement. + + + Upon success, this parameter must be modified to contain the + object instance associated with + the virtual table. + + + Upon failure, this parameter must be modified to contain an error + message. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated with + the virtual table. + + + The native user-data pointer associated with this module, as it was + provided to the SQLite core library when the native module instance + was created. + + + The module name, database name, virtual table name, and all other + arguments passed to the CREATE VIRTUAL TABLE statement. + + + Upon success, this parameter must be modified to contain the + object instance associated with + the virtual table. + + + Upon failure, this parameter must be modified to contain an error + message. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The object instance containing all the + data for the inputs and outputs relating to index selection. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + Upon success, this parameter must be modified to contain the + object instance associated + with the newly opened virtual table cursor. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Number used to help identify the selected index. + + + String used to help identify the selected index. + + + The values corresponding to each column in the selected index. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Non-zero if no more rows are available; zero otherwise. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + The object instance to be used for + returning the specified column value to the SQLite core library. + + + The zero-based index corresponding to the column containing the + value to be returned. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the current row for the specified cursor. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The array of object instances containing + the new or modified column values, if any. + + + Upon success, this parameter must be modified to contain the unique + integer row identifier for the row that was inserted, if any. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The number of arguments to the function being sought. + + + The name of the function being sought. + + + Upon success, this parameter must be modified to contain the + object instance responsible for + implementing the specified function. + + + Upon success, this parameter must be modified to contain the + native user-data pointer associated with + . + + + Non-zero if the specified function was found; zero otherwise. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + The new name for the virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer identifier under which the the current state of + the virtual table should be saved. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer used to indicate that any saved states with an + identifier greater than or equal to this should be deleted by the + virtual table. + + + A standard SQLite return code. + + + + + This method is called in response to the + method. + + + The object instance associated + with this virtual table. + + + This is an integer identifier used to specify a specific saved + state for the virtual table for it to restore itself back to, which + should also have the effect of deleting all saved states with an + integer identifier greater than this one. + + + A standard SQLite return code. + + + + + Disposes of this object instance. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is being + called from the finalizer. + + + + + Finalizes this object instance. + + + + + Returns or sets a boolean value indicating whether virtual table + errors should be logged using the class. + + + + + Returns or sets a boolean value indicating whether exceptions + caught in the + method, + method, and the + method should be logged using the + class. + + + + + Returns or sets a boolean value indicating whether virtual table + errors should be logged using the class. + + + + + Returns or sets a boolean value indicating whether exceptions + caught in the + method, + method, and the + method should be logged using the + class. + + + + + Returns non-zero if the schema for the virtual table has been + declared. + + + + + Returns the name of the module as it was registered with the SQLite + core library. + + + + + This class implements the + interface by forwarding those method calls to the + object instance it contains. If the + contained object instance is null, all + the methods simply generate an + error. + + + + + This is the value that is always used for the "logErrors" + parameter to the various static error handling methods provided + by the class. + + + + + This is the error message text used when the contained + object instance is not available + for any reason. + + + + + The object instance used to provide + an implementation of the + interface. + + + + + Constructs an instance of this class. + + + The object instance used to provide + an implementation of the + interface. + + + + + Sets the table error message to one that indicates the native + module implementation is not available. + + + The native pointer to the sqlite3_vtab derived structure. + + + The value of . + + + + + Sets the table error message to one that indicates the native + module implementation is not available. + + + The native pointer to the sqlite3_vtab_cursor derived + structure. + + + The value of . + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + Disposes of this object instance. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is being + called from the finalizer. + + + + + Finalizes this object instance. + + + + + This class represents a virtual table cursor to be used with the + class. It is not sealed and may + be used as the base class for any user-defined virtual table cursor + class that wraps an object instance. + + + + + The instance provided when this cursor + was created. + + + + + This value will be non-zero if false has been returned from the + method. + + + + + Constructs an instance of this class. + + + The object instance associated + with this object instance. + + + The instance to expose as a virtual + table cursor. + + + + + Advances to the next row of the virtual table cursor using the + method of the + object instance. + + + Non-zero if the current row is valid; zero otherwise. If zero is + returned, no further rows are available. + + + + + Resets the virtual table cursor position, also invalidating the + current row, using the method of + the object instance. + + + + + Closes the virtual table cursor. This method must not throw any + exceptions. + + + + + Throws an if the virtual + table cursor has been closed. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is + being called from the finalizer. + + + + + Returns the value for the current row of the virtual table cursor + using the property of the + object instance. + + + + + Returns non-zero if the end of the virtual table cursor has been + seen (i.e. no more rows are available, including the current one). + + + + + Returns non-zero if the virtual table cursor is open. + + + + + This class implements a virtual table module that exposes an + object instance as a read-only virtual + table. It is not sealed and may be used as the base class for any + user-defined virtual table class that wraps an + object instance. The following short + example shows it being used to treat an array of strings as a table + data source: + + public static class Sample + { + public static void Main() + { + using (SQLiteConnection connection = new SQLiteConnection( + "Data Source=:memory:;")) + { + connection.Open(); + + connection.CreateModule(new SQLiteModuleEnumerable( + "sampleModule", new string[] { "one", "two", "three" })); + + using (SQLiteCommand command = connection.CreateCommand()) + { + command.CommandText = + "CREATE VIRTUAL TABLE t1 USING sampleModule;"; + + command.ExecuteNonQuery(); + } + + using (SQLiteCommand command = connection.CreateCommand()) + { + command.CommandText = "SELECT * FROM t1;"; + + using (SQLiteDataReader dataReader = command.ExecuteReader()) + { + while (dataReader.Read()) + Console.WriteLine(dataReader[0].ToString()); + } + } + + connection.Close(); + } + } + } + + + + + + This class implements a virtual table module that does nothing by + providing "empty" implementations for all of the + interface methods. The result + codes returned by these "empty" method implementations may be + controlled on a per-method basis by using and/or overriding the + , + , + , + , and + methods from within derived classes. + + + + + This field is used to store the + values to return, on a per-method basis, for all methods that are + part of the interface. + + + + + Constructs an instance of this class. + + + The name of the module. This parameter cannot be null. + + + + + Determines the default value to be + returned by methods of the + interface that lack an overridden implementation in all classes + derived from the class. + + + The value that should be returned + by all interface methods unless + a more specific result code has been set for that interface method. + + + + + Converts a value into a boolean + return value for use with the + method. + + + The value to convert. + + + The value. + + + + + Converts a value into a boolean + return value for use with the + method. + + + The value to convert. + + + The value. + + + + + Determines the value that should be + returned by the specified + interface method if it lack an overridden implementation. If no + specific value is available (or set) + for the specified method, the value + returned by the method will be + returned instead. + + + The name of the method. Currently, this method must be part of + the interface. + + + The value that should be returned + by the interface method. + + + + + Sets the value that should be + returned by the specified + interface method if it lack an overridden implementation. + + + The name of the method. Currently, this method must be part of + the interface. + + + The value that should be returned + by the interface method. + + + Non-zero upon success. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is + being called from the finalizer. + + + + + The CREATE TABLE statement used to declare the schema for the + virtual table. + + + + + The instance containing the backing data + for the virtual table. + + + + + Constructs an instance of this class. + + + The name of the module. This parameter cannot be null. + + + The instance to expose as a virtual + table. This parameter cannot be null. + + + + + Determines the SQL statement used to declare the virtual table. + This method should be overridden in derived classes if they require + a custom virtual table schema. + + + The SQL statement used to declare the virtual table -OR- null if it + cannot be determined. + + + + + Sets the table error message to one that indicates the virtual + table cursor is of the wrong type. + + + The object instance. + + + The value of . + + + + + Sets the table error message to one that indicates the virtual + table cursor has no current row. + + + The object instance. + + + The value of . + + + + + Determines the string to return as the column value for the object + instance value. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + The object instance to return a string representation for. + + + The string representation of the specified object instance or null + upon failure. + + + + + Constructs an unique row identifier from two + values. The first value + must contain the row sequence number for the current row and the + second value must contain the hash code of the enumerator value + for the current row. + + + The integer row sequence number for the current row. + + + The hash code of the enumerator value for the current row. + + + The unique row identifier or zero upon failure. + + + + + Determines the unique row identifier for the current row. + + + The object instance + associated with the previously opened virtual table cursor to be + used. + + + The object instance to return a unique row identifier for. + + + The unique row identifier or zero upon failure. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is + being called from the finalizer. + + + + + This class represents a virtual table cursor to be used with the + class. It is not sealed and may + be used as the base class for any user-defined virtual table cursor + class that wraps an object instance. + + + + + The instance provided when this + cursor was created. + + + + + Constructs an instance of this class. + + + The object instance associated + with this object instance. + + + The instance to expose as a virtual + table cursor. + + + + + Closes the virtual table cursor. This method must not throw any + exceptions. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is + being called from the finalizer. + + + + + Returns the value for the current row of the virtual table cursor + using the property of the + object instance. + + + + + This class implements a virtual table module that exposes an + object instance as a read-only virtual + table. It is not sealed and may be used as the base class for any + user-defined virtual table class that wraps an + object instance. + + + + + The instance containing the backing + data for the virtual table. + + + + + Constructs an instance of this class. + + + The name of the module. This parameter cannot be null. + + + The instance to expose as a virtual + table. This parameter cannot be null. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + See the method. + + + + + Throws an if this object + instance has been disposed. + + + + + Disposes of this object instance. + + + Non-zero if this method is being called from the + method. Zero if this method is + being called from the finalizer. + + +
+
Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Modeling.Forms.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Modeling.Forms.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Modeling.Forms.xml (revision 2866) @@ -0,0 +1,2212 @@ + + + + DotSpatial.Modeling.Forms + + + + + ProjectionElement + + + + + A modular component that can be inherited to retrieve parameters for functions. + + + + + The group box for this element + + + + + Creates a blank dialog element + + + + + Fires whenever the + + + + + + Called to fire the click event for this element + + A mouse event args thingy + + + + Occurs when the dialong element is clicked + + + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required designer variable + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Fires when the inactive areas around the controls are clicked on the element. + + + + + Gets or sets the group box that surrounds the element contents + + + + + Gets or sets the status label + + + + + Gets or sets the tool tip text to display when the mouse hovers over the light status + + + + + Gets the current status the input + + + + + Gets or sets the Parameter that the element represents + + + + + Creates a new instance of ProjectionElement + + + + + Gets or sets the Parameter that the element represents + + + + + Used to create arrays of data sets with an associated name to be passed into Tools to populate their dialog boxes + + + + + Creates an instance of a simple object that holds a name and a dataset + + The name of the DataSet in this object + The IDataSet in this object + + + + Returns the Name + + + + + + The name of the DataSet in this object + + + + + The IDataSet in this object + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Defines the way a tool interfaces with the toolbox + + + + + The parameters array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output parameters value, this can be used to populate other parameters default values. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + A cancel progress handler that used to indicate how much of the tool is done + + + + + Returns the name of the tool + + + + + A UniqueName Identifying this Tool, if another tool with the same UniqueName exists this tool will not be loaded. The is persisted by the model builder in saved files. + + + + + Returns the category of tool that the ITool should be added to + + + + + Returns the Version of the tool + + + + + Returns the Author of the tool's name + + + + + Returns a brief description displayed when the user hovers over the tool in the toolbox + + + + + Gets or Sets the input paramater array + + + + + Gets or Sets the output paramater array + + + + + 32x32 Bitmap - The Large icon that will appears in the Tool Dialog Next to the tools name + + + + + Image displayed in the help area when no input field is selected + + + + + Help text to be displayed when no input field is selected + + + + + Returns the address of the tools help web page in HTTP://... format. Return a empty string to hide the help hyperlink. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to There are no setting for the default Tool Provider. It scans the same folders the ToolManager scans for Tool Providers. + + + + + Looks up a localized string similar to Default Tool Provider Settings. + + + + + Looks up a localized string similar to Press the button to specify an Extent. + + + + + Looks up a localized string similar to No feature set is specified.. + + + + + Looks up a localized string similar to The feature set is valid.. + + + + + Looks up a localized string similar to Selected features. + + + + + Looks up a localized string similar to The feature set selected was the incorrect type.. + + + + + Looks up a localized string similar to Input. + + + + + Looks up a localized string similar to The value is invalid, it must be a decimal between %min and %max. + + + + + Looks up a localized string similar to The value is invalid, it must be an integer between %min and %max. + + + + + Looks up a localized string similar to Output. + + + + + Looks up a localized string similar to The parameter is invalid. + + + + + Looks up a localized string similar to The parameter is valid. + + + + + Boolean Parameters returned by an ITool allows the tool to specify default value + + + + + This is the base class for the parameter array to be passed into a ITool + + + + + Call this when the parameter's value is changed + + + + + Populates the parameter with default values + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + This returns a duplicate of this object. + + + + + + Returns a shallow copy of the Parameter class + + A new Parameters class that is a shallow copy of the original parameters class + + + + Fires when the parameter's value is changed + + + + + Specify if a graphic should be added to the model to represent the parameter + + + + + Used to identify this parameter in the modeler, it will be set automatically by the modeler + + + + + Gets true if the parameter contains a value and false if none has been specified + + + + + Gets or sets the value of the parameter + + + + + The name of that parameter that shows up in auto generated forms + + + + + Gets the type of data used in this parameter + + + + + Gets or Sets the help image that will appear beside the parameter element when it is clicked + + + + + Gets or Sets the help text that will appear beside the parameter element when it is clicked + + + + + Creates a new Boolean parameter + + The name of the parameter + The text to appear adjacent to the checkBox + + + + Creates a new Boolean parameter + + The name of the parameter + The text to appear adjacent to the checkBox + The default value + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Gets or sets the text that appears beside the check box in a Tool Dialog + + + + + DateTime Parameters returned by an ITool allows the tool to specify default value + + + + + Creates a new string parameter + + The name of the parameter + + + + Creates a new string parameter + + The name of the parameter + The default value + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Double Parameter returned by an ITool allows the tool to specify a range and default value + + + + + Creates a new double parameter + + The name of the parameter + + + + Creates a new double parameter + + The name of the parameter + The default value + + + + Creates a new double parameter + + The name of the parameter + The default value + The minimum value + The maximum value + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + The minimum range for the parameter Default: -1.79769313486232e308 + + + + + The maximum range for the paramater Default: 1.79769313486232e308 + + + + + ProjectionParam + + + + + Creates a new instance of ProjectionParam with the specified name + and a default projection of WGS1984 + + + + + Creates a new instance of an Extent Param with the specified name + and the specified projection as the default projection that will + appear if no changes are made. + + + + + + + This method returns the dialog component that should be used to visualize INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualize OUTPUT to this parameter + + + + + + + Gets or sets a value indicating whether the extent should be modified to show the MapExtent + before being shown in the tool dialog. + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Raster parameter allows ITools to specify that they require a Raster data set as input + + + + + Creates a new Feature Set Parameter + + The name of the parameter + + + + Generates a default instance of the data type so that tools have something to write too + + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + A File access parameter + + + + + Creates a new Feature Set Parameter + + The name of the parameter + The string dialog filter to use. + + + + Creates a new Feature Set Parameter + + The name of the parameter + + + + Creates a new Feature Set Parameter + + The name of the parameter + A TextFile + + + + Generates a default instance of the data type so that tools have something to write too + + + + + + This method returns the dialog component that should be used to visualize INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualize OUTPUT to this parameter + + + + + + + Gets or sets the filter expression to limit extensions that can be used for this FileParam. + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Index Parameters returned by an ITool allows the tool to select the index for given Featureset indexs. + + + + + Creates a new Index parameter + + The name of the parameter + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + The featureset used to populate the query generator + + + + + Specifies the value of the parameter (This will give the result featureset that user want handle.) + + + + + Int Parameters returned by an ITool allows the tool to specify a range and default value + + + + + Creates a new integer parameter + + The name of the parameter + + + + Creates a new integer parameter + + The name of the parameter + The default value + + + + Creates a new integer parameter + + The name of the parameter + The default value + The minimum value + The maximum value + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + The minimum range for the parameter Default: -2, 147, 483, 648 + + + + + The maximum range for the paramater Default: 2, 147, 483, 648 + + + + + Specifies the value to use by default must be between the min and max + + + + + Line Feature Parameter past back from a ITool to the toolbox manager + + + + + Creates a new Line Feature Set parameter + + The name of the parameter + + + + Generates a default instance of the data type so that tools have something to write too + + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + List of strings parameter returned by an ITool allows the tool to specify a list of values and a default + + + + + Creates a new list parameter + + The name of the parameter + + + + Creates a new list parameter + + The name of the parameter + The list of string values to poluate the combo box + + + + Creates a new list parameter + + The name of the parameter + The list of string values to poluate the combo box + The default item in the list + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Gets or sets the index of the list + + + + + Gets or sets the list of items in the valuelist + + + + + EventHandler delegate for the tool parameter when a value is changed. + + + + + + Point Feature Set Parameters past back from a ITool to the toolbox manager + + + + + Creates a new Line Feature Set parameter + + The name of the parameter + + + + Generates a default instance of the data type so that tools have something to write too + + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Polygon Feature Set Parameters past back from a ITool to the toolbox manager + + + + + Creates a new Polygon Feature Set parameter + + The name of the parameter + + + + Generates a default instance of the data type so that tools have something to write too + + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + ProjectionParam + + + + + Creates a new instance of ProjectionParam with the specified name + and a default projection of WGS1984 + + + + + Creates a new instance of a Projection Param with the specified name + and the specified projection as the default projection that will + appear if no changes are made. + + + + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Raster parameter allows ITools to specify that they require a Raster data set as input + + + + + Creates a new Raster parameter + + The name of the parameter + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Creates a new blank raster + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Defines whether or not to add the parameter to the model + + + + + Always add the parameter to the model + + + + + Show the parameter in the model + + + + + Don't show the parameter in the model + + + + + String Parameters returned by an ITool allows the tool to specify a default value + + + + + Creates a new string parameter + + The name of the parameter + + + + Creates a new string parameter + + The name of the parameter + The default value + + + + This method returns the dialog component that should be used to visualise INPUT to this parameter + + + + + + + This method returns the dialog component that should be used to visualise OUTPUT to this parameter + + + + + + + Specifies the value of the parameter (This is also the default value for input) + + + + + Defines the data types which can be parameters for a ITool + + + + + Defines a parameter of type Int which takes a max/min and default value + + + + + Defines a parameter of type Double which takes a max/min and default value + + + + + Defines a parameter which specifies a raster + + + + + Defines a parameter which specifies a Feature Set + + + + + Defines a parameter which specifies a Point Feature Set + + + + + Defines a parameter which specifies a Line Feature Set + + + + + Defines a parameter which specifies a Polygon Feature Set + + + + + Defines a parameter which specifies a string + + + + + Defines a parameter which specifies a boolean value + + + + + Defines a parameter that is presented by a comboBox in the form + + + + + An element for true/false values + + + + + Creates an instance of the dialog + + The parameter this element represents + + + + Updates the status lights + + + + + This changes the color of the light and the tooltip of the light based on the status of the checkbox + + + + + When the check box it clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + Creates an instance of the dialog + + The parameter this element represents + + + + Gets or sets the Parameter that the element represents + + + + + An element for DialogSpacing + + + + + Creates an instance of a dialogspacerelement + + + + + Gets or sets the text of the spacer + + + + + Gets the current status the input + + + + + An element for doubles + + + + + Creates an instance of the dialog + + The parameter this element represents + + + + Refreshes status lights or other content + + + + + This changes the color of the light and the tooltip of the light based on the status of the text in the box + + + + + Checks if text contains a value double + + The text to text + Returns true if it is a valid double + + + + When the text box is clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + Indicates the allowed values for the status of the element, illustrated by the light + + + + + Indicates that no value has been set for this yet. + + + + + Indicates that the element parameter is ok and won't halt. + + + + + Indicates that the element value will cause an error. + + + + + Feature Set element + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + This fires when the selected value in the combo box is changed + + + + + Adds a new entry to the drop down list from data provider + + + + + + + Feature Set element out + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + /// A modular component that can be inherited to retrieve parameters for functions. + + + + + Create a new instant. + + + + + + When the text box is clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + an element for integers + + + + + Creates an instance of the dialog + + The parameter this element represents + + + + Updates the status lights + + + + + This changes the color of the light and the tooltip of the light based on the status of the text in the box + + + + + Checks if text contains a value integer + + The text to text + Returns true if it is a valid integer + + + + When the text box is clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + This fires when the selected value in the combo box is changed + + + + + Adds a new entry to the drop down list from data provider + + + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + Creates an instance of the dialog + + The parameter this element represents + + + + + + + + + This changes the color of the light and the tooltip of the light based on the status of the text in the box + + + + + When the control is clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + Open File Element + + + + + Create an instance of the dialog + + + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + This fires when the selected value in the combo box is changed + + + + + Adds a new entry to the drop down list from data provider + + + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + This fires when the selected value in the combo box is changed + + + + + Adds a new entry to the drop down list from data provider + + + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + ProjectionElement + + + + + Creates a new instance of ProjectionElement + + + + + + + + Gets or sets the Parameter that the element represents + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + updates the param if something's been changed + + + + + This changes the color of the light and the tooltip of the light based on the status of the text in the box + + + + + Adds a new entry to the drop down list from data provider + + + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + Save File Element + + + + + Creates an instance of the dialog + + The parameter this element represents + An array of available data + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates an instance of the dialog + + The parameter this element represents + + + + This changes the color of the light and the tooltip of the light based on the status of the text in the box + + + + + When the text box is clicked this event fires + + + + + Gets or sets the Parameter that the element represents + + + + + A class from which Tools may be derived. Implments mundane parts of ITool for Assembly based tools. + + + + + Once the parameters have been configured the Execute command can be called, it returns true if succesful + + A cancel progress handler that used to indicate how much of the tool is done + + + + + The parameters array should be populated with default values here + + + + + Fires when one of the paramters value has beend changed, usually when a user changes a input or output parameters value, this can be used to populate other parameters default values. + + + + + + Author of the plugin. + + + + + Returns the category of tool that the ITool should be added to + + + + + Short description of the plugin. + + + + + Image displayed in the help area when no input field is selected + + + + + Returns the address of the tools help web page in HTTP://... format. Returns null if no URL has been specified. + + + + + 32x32 Bitmap - The Large icon that will appears in the Tool Dialog Next to the tools name + + + + + Gets or Sets the input paramater array + + + + + Name of the plugin. + + + + + Gets or Sets the output paramater array + + + + + Returns a brief description displayed when the user hovers over the tool in the toolbox + + + + + A generic form that works with the various dialog elements in order to create a fully working process. + + + + + The constructor for the ToolDialog + + The ITool to create the dialog box for + The list of available DataSets available + Creates a new instance of the tool dialog with map extent. + + + + The constructor for the ToolDialog + + The ITool to create the dialog box for + A list of all model elements + + + + This adds the Elements to the form incrementally lower down + + The element to add + + + + When one of the DialogElements is clicked this event fires to populate the help + + + + + + + The constructor for the ToolDialog + + The ITool to create the dialog box for + + + + Fires when a parameter is changed + + + + + + This adds a Bitmap to the help section. + + The text to appear in the help box. + The title to appear in the help box. + The bitmap to appear at the bottom of the help box. + + + + Adds Elements to the dialog based on what input Parameter the ITool contains + + + + + Adds Elements to the dialog based on what output Parameter the ITool contains + + + + + When the user clicks Cancel + + + + + + + When the user clicks OK + + + + + + + When the hyperlink is clicked this event fires. + + + + + + + If the user clicks out side of one of the tool elements + + + + + + + When the size of the help panel changes this event fires to move stuff around. + + + + + + + Disposes of the resources (other than memory) used by the . + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Returns a list of IDataSet that are available in the ToolDialog excluding any of its own outputs. + + + + + Gets the status of the tool + + + + + An arrow + + + + + Defines the base class for all model components + + + + + Creates an instance of the model Element + A list of all the elements in the model + + + + + This returns a duplicate of this object. + + + + + + Returns a shallow copy of the Parameter class + + A new Parameters class that is a shallow copy of the original parameters class + + + + Darkens the component slightly + + Darkens if true returns to normal if false + + + + Repaints the form with cool background and stuff + + The graphics object to paint to, the element will be drawn to 0, 0 + + + + This does nothing in the base class but child classes may override it + + + + + + Returns true if the point is in the extents rectangle of the element + + A point to test, assuming 0, 0 is the top left corner of the shapes drawing rectangle + + + + + Calculates if a point is within the shape that defines the element + + A point to test in the virtual modeling plane + + + + + Returns true if the element intersect the rectangle from the parent class + + The rectangle to test must be in the virtual modeling coordinant plane + + + + + Returns true if a point is in a rectangle + + + + + + + When a double click is caught by the parent class call this method + + + + + Creates a rounded corner rectangle from a regular rectangel + + + + + + + + Returns true if this model element is downstram of the potentialUpstream element + + + + + + + Returns a list of all model elements that are direct parents of this element + + + + + + Returns true if this model element is downstream of the potentialUpstream element + + + + + + + Returns a list of all model elements that are direct children of this element + + + + + + Gets a list of all elements in the model + + + + + Returns 1 if the object is not highlighted less than 1 if it is highlighted + + + + + Gets or sets the text that is drawn on the element + + + + + Gets or sets the font used to draw the text on the element + + + + + Gets or Sets the shape of the model component + + + + + Gets or set the base color of the shapes gradient + + + + + Gets a rectangle representing the element, top left corner being the location of the parent form of the element + + + + + Gets or sets the width of the element + + + + + Gets or sets the shape of the element + + + + + Gets or sets the location of the element in the parent form + + + + + Creates an instance of an ArrowElement + + The element the arrow starts at + the element the arrow ends at + A list of all the elements in the model + + + + Updates the dimentions + + + + + Repaints the form with cool background and stuff + + The graphics object to paint to, the element will be drawn to 0, 0 + + + + Calculates if a point is within the shape that defines the element + + A point to test in the virtual modeling plane + + + + + Returns true if the element intersect the rectangle from the parent class + + The rectangle to test must be in the virtual modeling coordinant plane + + + + + Gets or sets the destination Element + + + + + Gets or sets the source element + + + + + the point in the arrows coordinants we draw from + + + + + the point in the arrows coordinants we stop drawing from + + + + + A default element + + + + + Creates an instance of the Data Element + A list of all the elements in the model + + + + + Does nothing + + + + + + Element for Data + + + + + Creates an instance of the Data Element + One of Brian's Parameter classes + A list of all the elements in the model + + + + + When the user doulbe clicks on a tool call this method + + + + + Gets the dataType of the DataElement + + + + + Gets or sets the Data set that this element represents + + + + + Definitions for the shapes that components can have in the modeler + + + + + Defines the Model Component as a Rectangle + + + + + Defines the Model Component as a Triangle + + + + + Defines the Model Component as a Ellipse + + + + + Defines an Arrow + + + + + Used internally to decided if a tool has executed, is done, or finished in error + + + + + The tool has not been run yet + + + + + The tool is currently executing + + + + + The tool finished running succesfully + + + + + The tool returned an error when executing + + + + + A Menu strip that is part of Brian's toolbox + + + + + Creates a new instance of hte ModelerMenuStrip + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + the basic element for tools + + + + + Creates an instance of the tool element + + The tool that the tool element represents + A list of all the elements in the model + + + + Updates the status indicator + + + + + Draws the status light on the background of the DataElement + + + + + + When the user doulbe clicks on a tool call this method + + + + + Gets or sets the status of the tools execution, used when the modeler runs the model. + + + + + Gets the ITool this element represents + + + + + Gets or sets the list of Elements presently available in the Modeler + + + + + Gets the current status of the tool + + + + + This class is used to enable linking of tools + that work with File parameters + + + + + Text File constructor + + + + + Creates a new instance of the TextFile class + + the associated file name + + + + To string + + + + + + The file name associated with this text file + + + + + A form which shows the progress of a tool + + + + + Creates an instance of the Tool Progress forms and hands over an array of tools which will then be executed + + The number of tools that are going to be executed + + + + Handles the progress method necessary to implement IProgress + + This a message with no percentage information..this is ignored + The integer percentage from 0 to 100 that is used to control the progress bar + The actual complete message to show..this is also ignored + + + + This method should be called when the process has been completed + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the number of tools that have been succesfully executed + + + + + Returns true if the cancel button was pressed + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/freexl.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Extensions.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/cs/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/NuGet.Core.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/lt/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/de/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/pt-BR/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/geos_c.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/DotSpatial.Plugins.Contourer.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/xerces-c_2_8.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Topology.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Topology.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Topology.xml (revision 2866) @@ -0,0 +1,24664 @@ + + + + DotSpatial.Topology + + + + + Constants representing the dimensions of a point, a curve and a surface. + Also, constants representing the dimensions of the empty point and + non-empty geometries, and a wildcard dimension meaning "any dimension". + + + + + Dimension value of a point (0). + + + + + Dimension value of a curve (1). + + + + + Dimension value of a surface (2). + + + + + Dimension value of a empty point (-1). + + + + + Dimension value of non-empty geometries (= {Point, Curve, A}). + + + + + Dimension value for any dimension (= {False, True}). + + + + + An abreviated list for quick classification + + + + + None specified or custom + + + + + Point + + + + + Line + + + + + Polygon + + + + + MultiPoint + + + + + A geometric angle mesured in degrees or radians + the angle will wrap around, so setting larger values will + result in an appropriate angle. + + + + + The value of 3.14159 or whatever from Math.PI + + + + + Creates a new instance of an angle with the radians specified + + The angle in radians + + + + Returns a new instance of the Angle class with the same angle as this object. + + Angle which has the same values + + + + False for anything that is not an angle. + Tests two angles to see if they have the same value. + + An object to test. + Boolean, true if the angles have the same value. + + + + Gets a hash code + + Int hash code + + + + Returns a new angle object with an angle of Value in radians + + The double value indicating the angle + An Angle structure with the specified value + + + + Returns a double specifying the radian value of the angle + + The angle structure to determine the angle of + A Double with the angle in radians + + + + Returns true if the two angles are equal to each other. + + An angle to compare + A second angle. + Boolean, true if they are equal. + + + + Returns true if the two angles are equal to each other. + + An angle to compare + A second angle. + Boolean, true if they are equal. + + + + Returns the sum of the two angles, cycling if greater than 2 pi. + + An angle to add + A second angle to add + A new Angle structure equal to the sum of the two angles + + + + Returns the difference of two angles. + + An angle to subtract from + The angle to subtract + A new angle structure with a sum equal to the two angles + + + + Divides angle A by angle B + + An angle to divide + An angle to divide into A + A new angle with the quotient of the division + + + + Multiplies angle A by Angle B. + + An angle to multiply + A second angle to multiply. + A new angle with the product of the two angles. + + + + Returns the mathematical Cos of the angle specified + + The Angle to find the cosign of + Double, the cosign of the angle specified + + + + Returns the mathematical Sin of the angle specified + + The Angle to find the Sin of + Double, the Sin of the Angle + + + + Returns the mathematical Tan of the angle specified + + The Angle to find the Tan of + Double, the Tan of the Angle + + + + Returns the mathematical ATan of the value specified + + The Double to find the ATan of + Angle, the ATan of the Value specified + + + + Returns the mathematical ACos of the value specified + + The Double to find the ACos of + Angle, the ACos of the Value specified + + + + Returns the mathematical ASin of the value specified + + The Double to find the ASin of + Angle, the ASin of the Value specified + + + + Gets or sets the angle in degrees, ranging from -360 to 360 + + + + + Gets or sets the angle in degrees ranging from 0 to 360 + + + + + Only allows values from -2PI to 2PI. + + + + + Buffer styles. + + + + + Specifies a round line buffer end cap endCapStyle (Default). + / + + + + Specifies a butt (or flat) line buffer end cap endCapStyle. + + + + + Specifies a square line buffer end cap endCapStyle. + + + + + The types of Precision Model which NTS supports. + + + + + Floating precision corresponds to the standard + double-precision floating-point representation, which is + based on the IEEE-754 standard + + + + + Floating single precision corresponds to the standard + single-precision floating-point representation, which is + based on the IEEE-754 standard + + + + + Fixed Precision indicates that coordinates have a fixed number of decimal places. + The number of decimal places is determined by the log10 of the scale factor. + + + + + A list of DE-9IM row indices clarifying the interior, boundary or exterior. + + + + + DE-9IM row index of the interior of the first point and column index of + the interior of the second point. Location value for the interior of a + point. + int value = 0; + + + + + DE-9IM row index of the boundary of the first point and column index of + the boundary of the second point. Location value for the boundary of a + point. + int value = 1; + + + + + DE-9IM row index of the exterior of the first point and column index of + the exterior of the second point. Location value for the exterior of a + point. + int value = 2; + + + + + Used for uninitialized location values. + int value = -1; + + + + + Standard ordinate index values. + + + + + X Ordinate = 0. + + + + + Y Ordinate = 1. + + + + + Z Ordinate = 2. + + + + + M Ordinate = 3. + + + + + Extends the class to allow reading values in the BigEndian format. + + + While BigEndianBinaryReader extends BinaryReader + adding methods for reading integer values + and double values in the BigEndian format, + this implementation overrides methods, such + and and more, + for reading ByteOrder.BigEndian values in the BigEndian format. + + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the BEBinaryReader class. + + The supplied stream. + The character encoding. + encoding is null. + The stream does not support reading, the stream is null, or the stream is already closed. + + + + Reads a 2-byte signed integer from the current stream using big endian encoding + and advances the current position of the stream by two bytes. + + + A 2-byte signed integer read from the current stream. + + The stream is closed. + An I/O error occurs. + The end of the stream is reached. + + + + Reads a 4-byte signed integer from the current stream using big endian encoding + and advances the current position of the stream by four bytes. + + + A 4-byte signed integer read from the current stream. + + The stream is closed. + An I/O error occurs. + The end of the stream is reached. + + + + Reads an 8-byte signed integer from the current stream using big endian encoding + and advances the current position of the stream by eight bytes. + + + An 8-byte signed integer read from the current stream. + + The stream is closed. + An I/O error occurs. + The end of the stream is reached. + + + + Reads a 4-byte floating point value from the current stream using big endian encoding + and advances the current position of the stream by four bytes. + + + A 4-byte floating point value read from the current stream. + + The stream is closed. + An I/O error occurs. + The end of the stream is reached. + + + + Reads an 8-byte floating point value from the current stream using big endian encoding + and advances the current position of the stream by eight bytes. + + + An 8-byte floating point value read from the current stream. + + The stream is closed. + An I/O error occurs. + The end of the stream is reached. + + + + + + + Extends the class to allow writing values in the BigEndian format. + + + While BigEndianBinaryWriter extends + adding methods for writing integer values (BigEndianBinaryWriter.WriteIntBE) + and double values (BigEndianBinaryWriter.WriteDoubleBE) in the BigEndian format, + this implementation overrides methods, such BinaryWriter.Write(Int32) + and BinaryWriter.Write(Double)and more, + for writing T:ByteOrder.BigEndian values in the BigEndian format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The supplied stream. + output is null. + + The stream does not support writing, or the stream is already closed. + + + + Initializes a new instance of the class. + + The supplied stream. + The character encoding. + output or encoding is null. + + The stream does not support writing, or the stream is already closed. + + + + Writes a two-byte signed integer to the current stream using BigEndian encoding + and advances the stream position by two bytes. + + The two-byte signed integer to write. + The stream is closed. + An I/O error occurs. + + + + Writes a four-byte signed integer to the current stream using BigEndian encoding + and advances the stream position by four bytes. + + The four-byte signed integer to write. + The stream is closed. + An I/O error occurs. + + + + Writes an eight-byte signed integer to the current stream using BigEndian encoding + and advances the stream position by eight bytes. + + The eight-byte signed integer to write. + The stream is closed. + An I/O error occurs. + + + + Writes a four-byte floating-point value to the current stream using BigEndian encoding + and advances the stream position by four bytes. + + The four-byte floating-point value to write. + The stream is closed. + An I/O error occurs. + + + + Writes an eight-byte floating-point value to the current stream using BigEndian encoding + and advances the stream position by eight bytes. + + The eight-byte floating-point value to write. + The stream is closed. + An I/O error occurs. + + + + Writes a length-prefixed string to this stream in the current encoding + of the , + and advances the current position of the stream in accordance + with the encoding used and the specific characters being written to the stream. + + The value to write. + The stream is closed. + An I/O error occurs. + value is null. + + + + Writes a decimal value to the current stream and advances the stream position by sixteen bytes. + + The decimal value to write. + The stream is closed. + An I/O error occurs. + + + + Byte order + + + + + Big Endian + + + + + Little Endian + + + + + The original idea of comming up with a coordinate that used public accessors and an + ICoordinate interface was actually quite slow, given that every access point was + multiplied across many instances. + + + + + An optional place holder for a measure value if needed + + + + + The X or horizontal, or longitudinal ordinate + + + + + The Y or vertical, or latitudinal ordinate + + + + + The Z or up or altitude ordinate + + + + + Creates an empty coordinate + + + + + Creates a 2D coordinate with NaN for the Z and M values + + + + + + + Creates a new coordinate with the specified values + + + + + + + + Creates a new coordinate with the values in X, Y, Z order, or X, Y order. + + + + + + Constructs a new instance of the coordinate + + + + + + Constructs a new instance of the coordinate + + + + + + Creates a new instance of Coordinate + + + + + Compares the X, Y and Z values with the specified item. + If the Z value is NaN then only the X and Y values are considered + + This should be either a Coordiante or an ICoordinate + Boolean, true if the two are equal + + + + returns the simple base.GetHashCode + + + + + + Returns the underlying two dimensional array of coordinates + + + + + + Returns Euclidean 2D distance from ICoordinate p. + + ICoordinate with which to do the distance comparison. + Double, the distance between the two locations. + + + + Returns whether the planar projections of the two Coordinates are equal. + + The ICoordinate with which to do the 2D comparison. + + true if the x- and y-coordinates are equal; + the Z coordinates do not have to be equal. + + + + + Returns true if other has the same values for x, y and z. + + The second ICoordiante for a 3D comparison + true if other is a ICoordinate with the same values for x, y and z. + + + + Returns the distance that is appropriate for N dimensions. In otherwords, if this point is + three dimensional, then all three dimensions will be used for calculating the distance. + + The coordinate to compare to this coordinate + A double valued distance measure that is invariant to the number of coordinates + The number of dimensions does not match between the points. + + + + Returns a string of the form (x, y, z) . + + string of the form (x, y, z) + + + + Compares this object with the specified object for order. + Since Coordinates are 2.5D, this routine ignores the z value when making the comparison. + Returns + -1 : this.x lowerthan other.x || ((this.x == other.x) AND (this.y lowerthan other.y)) + 0 : this.x == other.x AND this.y = other.y + 1 : this.x greaterthan other.x || ((this.x == other.x) AND (this.y greaterthan other.y)) + + Coordinate with which this Coordinate is being compared. + + A negative integer, zero, or a positive integer as this Coordinate + is less than, equal to, or greater than the specified Coordinate. + + + + + Compares this object with the specified object for order. + Since Coordinates are 2.5D, this routine ignores the z value when making the comparison. + Returns + -1 : this.x lowerthan other.x || ((this.x == other.x) AND (this.y lowerthan other.y)) + 0 : this.x == other.x AND this.y = other.y + 1 : this.x greaterthan other.x || ((this.x == other.x) AND (this.y greaterthan other.y)) + + Coordinate with which this Coordinate is being compared. + + A negative integer, zero, or a positive integer as this Coordinate + is less than, equal to, or greater than the specified Coordinate. + + + + + If either X or Y is defined as NaN, then this coordinate is considered empty. + + + + + + Duplicates this coordinate + + + + + + + + + + + + + + + + + + + + + + Overloaded + operator. + + + + + Overloaded + operator. + + + + + Overloaded + operator. + + + + + Overloaded * operator. + + + + + Overloaded * operator. + + + + + Overloaded * operator. + + + + + Overloaded - operator. + + + + + Overloaded - operator. + + + + + Overloaded - operator. + + + + + Overloaded / operator. + + + + + Overloaded / operator. + + + + + Overloaded / operator. + + + + + Gets a pre-defined coordinate that has double.NaN for all the values. + + + + + Gets or sets the double value associated with the specified ordinate index + + The zero-based integer index of the ordinate + A double value representing a single ordinate + + + + This is not a true length, but simply tests the Z value. If the Z value + is NaN then the value is 2. Otherwise this is 3. + + + + + Useful utility functions for handling Coordinate arrays. + + + + + Finds a in a list of s + which is not contained in another list of s. + + The s to test. + An array of s to test the input points against. + + A from + which is not in , or null. + + + + + Compares two arrays + in the forward direction of their coordinates, + using lexicographic ordering. + + + + + + + + Determines which orientation of the array is (overall) increasing. + In other words, determines which end of the array is "smaller" + (using the standard ordering on ). + Returns an integer indicating the increasing direction. + If the sequence is a palindrome, it is defined to be + oriented in a positive direction. + + The array of Coordinates to test. + + 1 if the array is smaller at the start or is a palindrome, + -1 if smaller at the end. + + + + + Determines whether two arrays of equal length + are equal in opposite directions. + + + + + + + + Creates a deep copy of the argument Coordinate array. + + Array of Coordinates. + Deep copy of the input. + + + + Converts the given of + s into a array. + + of coordinates. + + + If contains not only s. + + + + + Converts the given of + s into a array. + + of coordinates. + + + + + Returns whether Equals returns true for any two consecutive + coordinates in the given array. + + Array of Coordinates. + true if coord has repeated points; false otherwise. + + + + Returns either the given coordinate array if its length is greater than + the given amount, or an empty coordinate array. + + Length amount. + Array of Coordinates. + New Coordinate array. + + + + If the coordinate array argument has repeated points, + constructs a new array containing no repeated points. + Otherwise, returns the argument. + + + + + + + Reverses the coordinates in an array in-place. + + Array of Coordinates. + + + + Returns true if the two arrays are identical, both null, or pointwise + equal (as compared using Coordinate.Equals). + + First array of Coordinates. + Second array of Coordinates. + true if two Coordinates array are equals; false otherwise + + + + Returns true if the two arrays are identical, both null, or pointwise + equal, using a user-defined + for s. + + An array of s. + Another array of s. + + A for s. + + + + + + Returns the minimum coordinate, using the usual lexicographic comparison. + + Array to search. + The minimum coordinate in the array, found using CompareTo. + + + + + Shifts the positions of the coordinates until firstCoordinate is first. + + Array to rearrange. + Coordinate to make first. + + + + Returns the index of in . + The first position is 0; the second is 1; etc. + + A to search for. + A array to search. + The position of coordinate, or -1 if it is not found. + + + + Extracts a subsequence of the input array + from indices to (inclusive). + + The input array. + The index of the start of the subsequence to extract. + The index of the end of the subsequence to extract. + A subsequence of the input array. + + + + A comparator for arrays modulo their directionality. + E.g. if two coordinate arrays are identical but reversed + they will compare as equal under this ordering. + If the arrays are not equal, the ordering returned + is the ordering in the forward direction. + + + + + + + + + + + + + Compares two arrays + in the forward direction of their coordinates, + using lexicographic ordering. + + + + + Compares the specified s arrays. + + + + + + + + The ICoordinateSequence implementation that Geometrys use by default. + In this implementation, Coordinates returned by ToArray and Coordinate are live -- + modifications to them are actually changing the + CoordinateSequence's underlying data. + + + + + The internal representation of a list of coordinates inside a Geometry. + + There are some cases in which you might want Geometries to store their + points using something other than the NTS Coordinate class. For example, you + may want to experiment with another implementation, such as an array of x’s + and an array of y’s. or you might want to use your own coordinate class, one + that supports extra attributes like M-values. + + + You can do this by implementing the ICoordinateSequence and + ICoordinateSequenceFactory interfaces. You would then create a + GeometryFactory parameterized by your ICoordinateSequenceFactory, and use + this GeometryFactory to create new Geometries. All of these new Geometries + will use your ICoordinateSequence implementation. + An observation on performance: If your ICoordinateSequence is not based on an array + of Coordinates, it may incur a performance penalty when its ToArray() method + is called because the array needs to be built from scratch. + + + + + + Returns the ordinate of a coordinate in this sequence. + Ordinate indices 0 and 1 are assumed to be X and Y. + Ordinates indices greater than 1 have user-defined semantics + (for instance, they may contain other dimensions or measure values). + + The coordinate index in the sequence. + The ordinate index in the coordinate (in range [0, dimension-1]). + + + + + Sets the value for a given ordinate of a coordinate in this sequence. + + The coordinate index in the sequence. + The ordinate index in the coordinate (in range [0, dimension-1]). + The new ordinate value. + + + + Returns (possibly copies of) the Coordinates in this collection. + Whether or not the Coordinates returned are the actual underlying + Coordinates or merely copies depends on the implementation. Notice that + if this implementation does not store its data as an array of Coordinates, + this method will incur a performance penalty because the array needs to + be built from scratch. + + + + + + Expands the given Envelope to include the coordinates in the sequence. + Does not modify the original envelope, but rather returns a copy of the + original envelope after being modified. + + The envelope use as the starting point for expansion. This envelope will not be modified. + The newly created envelope that is the expanded version of the original. + + + + Returns the dimension (number of ordinates in each coordinate) for this sequence. + + + + + Direct accessor to an ICoordinate + + An integer index in this array sequence + An ICoordinate for the specified index + + + + Every time a member is added to, subtracted from, or edited in the sequence, + this VersionID is incremented. This doesn't uniquely separate this sequence + from other sequences, but rather acts as a way to rapidly track if changes + have occured against a cached version. + + + + + Increments the version with the understanding that we are using integers. If the user + uses too many version, it will cycle around. The statistical odds of accidentally + reaching the same value as a previous version should be small enough to prevent + conflicts. + + + + + Creates a new array sequence dimensioned with exactly 1 coordinate that is empty. + + + + + Creates a new array sequence dimensioned with exactly 1 coordinate, which is set to the coordinate + + The ICoordinate to use when constructing this sequence + + + + Creates a new CoordinateArraySequence whose members are + + The existing list whose members will be copied to the array. + + + + Constructs a sequence based on the given array (the array is not copied). + + The coordinate array that will be referenced. + + + + Constructs a sequence of a given size, populated with new Coordinates. + + The size of the sequence to create. + + + + Constructs a sequence based on the given array (the array is not copied). + + The coordinate array that will be referenced. + + + + Adds a single item to the array. This is very slow for arrays because it has to + copy all the values into a new array. + + + + + + Clears the array, reducing the measure to 1 empty coordinate. + + + + + Tests to see if the array contains the specified item + + the ICoordinate to test + True if the value is in the array. + + + + Creates a deep copy of the object. + + The deep copy. + + + + Copies all of the members from this sequence into the specifeid array. + + The array of Icoordinates to copy values to. + The starting index + + + + Expands the given Envelope to include the coordinates in the sequence. + Does not modify the original envelope, but rather returns a copy of the + original envelope after being modified. + + The envelope use as the starting point for expansion. This envelope will not be modified. + The newly created envelope that is the expanded version of the original. + + + + Returns an enumerator object for cycling through each of the various members of the array. + BEWARE! This will bypass the VersionID code. Since ICoordinateSequence does not contain + the GetEnumerator methods, using an ICoordinateSequence should safely advance the version + during changes. + + An Enumerator for this array. + + + + Returns the ordinate of a coordinate in this sequence. + Ordinate indices 0 and 1 are assumed to be X and Y. + Ordinates indices greater than 1 have user-defined semantics + (for instance, they may contain other dimensions or measure values). + + The coordinate index in the sequence. + The ordinate index in the coordinate (in range [0, dimension-1]). + + + + + For arrays, this is very inneficient. This will copy all the members + except for the item to a new array. + + The item to remove. + Boolean, true if a match was found and an item was removed, false otherwise. + + + + Sets the value for a given ordinate of a coordinate in this sequence. + + The coordinate index in the sequence. + The ordinate index in the coordinate (in range [0, dimension-1]). + The new ordinate value. + + + + This method exposes the internal Array of Coordinate Objects. + + + + + + Returns the string representation of the coordinate array. + + + + + + Returns the length of the coordinate sequence. + + + + + Returns the dimension (number of ordinates in each coordinate) for this sequence. + + + + + + CoordinateArraySequences are not ReadOnly + + + + + Direct accessor to an ICoordinate + + An integer index in this array sequence + An ICoordinate for the specified index + + + + Every time a member is added to, subtracted from, or edited in the sequence, + this VersionID is incremented. This doesn't uniquely separate this sequence + from other sequences, but rather acts as a way to rapidly track if changes + have occured against a cached version. + + + + + CoordinateArraySequenceEnumerator + + + + + Creates a new instance of CoordinateArraySequenceEnumerator + + + + + Does nothing + + + + + Advances the enumerator to the next member + + + + + + Resets the enumerator to the original position + + + + + Gets the current member + + + + + Creates CoordinateSequences represented as an array of Coordinates. + + + + + An object that knows how to build a particular implementation of + ICoordinateSequence from an array of Coordinates. + + + + + + Returns a CoordinateSequence based on the given array; whether or not the + array is copied is implementation-dependent. + + Coordinates array, which may not be null nor contain null elements + + + + Constructs a new coordinate sequence using a single coordinate. + + A single coordinate to be used in a coordinate sequence factory. + A valid ICoordinateSequence. + + + + Constructs either an array with 1 member or an empty list, depending on the implementation. + + A new seqeunce + + + + This appears to be part of a singleton for a coordinate array sequence factory + + + + + + + + + + Returns a CoordinateArraySequence based on the given array (the array is not copied). + + the coordinates, which may not be null nor contain null elements. + + + + + Constructs a new coordinate sequence using a single coordinate. + + A single coordinate to be used in a coordinate sequence factory. + A valid ICoordinateSequence. + + + + Constructs either an array with 1 member or an empty list, depending on the implementation. + + A new seqeunce + + + + + + + + + + + A lightweight class used to store coordinates + on the 2-dimensional Cartesian plane. + It is distinct from Point, which is a subclass of Geometry. + Unlike objects of type Point (which contain additional + information such as an envelope, a precision model, and spatial reference + system information), a Coordinate only contains ordinate values + and accessor methods. + Coordinates are two-dimensional points, with an additional + z-ordinate. NTS does not support any operations on the z-ordinate except + the basic accessor functions. Constructed coordinates will have a + z-ordinate of NaN. The standard comparison functions will ignore + the z-ordinate. + + + + + Creates a CoordinateF by using the X, Y and Z terms of a FloatVector + + + + + + Constructs a Coordinate at (x, y, z). + + X value. + Y value. + Z value. + Measure value. + + + + Constructs a Coordinate at (x, y, z). + + X value. + Y value. + Z value. + + + + Creates a Coordinate from any ICoordinate Interface + + The Vector.IPoint interface to construct a coordinate from + + + + Constructs a Coordinate at (0, 0, NaN). + + + + + Constructs a Coordinate at (x, y, NaN). + + X value. + Y value. + + + + Returns whether the planar projections of the two Coordinates are equal. + + ICoordinate with which to do the 2D comparison. + + true if the x- and y-coordinates are equal; + the Z coordinates do not have to be equal. + + + + + Returns true if other has the same values for the x and y ordinates. + Since Coordinates are 2.5D, this routine ignores the z value when making the comparison. + + Coordinate with which to do the comparison. + true if other is a Coordinate with the same values for the x and y ordinates. + + + + + + + + + + + + + + + + + + + + Compares this object with the specified object for order. + Since Coordinates are 2.5D, this routine ignores the z value when making the comparison. + Returns + -1 : this.x lowerthan other.x || ((this.x == other.x) AND (this.y lowerthan other.y)) + 0 : this.x == other.x AND this.y = other.y + 1 : this.x greaterthan other.x || ((this.x == other.x) AND (this.y greaterthan other.y)) + + Coordinate with which this Coordinate is being compared. + + A negative integer, zero, or a positive integer as this Coordinate + is less than, equal to, or greater than the specified Coordinate. + + + + + Returns true if other has the same values for x, y and z. + + ICoordinate with which to do the 3D comparison. + true if other is a ICoordinate with the same values for x, y and z. + + + + Returns a string of the form (x, y, z) . + + string of the form (x, y, z) + + + + Create a new object as copy of this instance. + + + + + + Creates a new ICoordinate copy of this instance + + + + + + Returns Euclidean 2D distance from ICoordinate p. + + ICoordinate with which to do the distance comparison. + Double, the distance between the two locations. + + + + Returns the distance that is appropriate for N dimensions. In otherwords, if this point is + three dimensional, then all three dimensions will be used for calculating the distance. + + The coordinate to compare to this coordinate + A double valued distance measure that is invariant to the number of coordinates + The number of dimensions does not match between the points. + + + + Return HashCode. + + + + + Return HashCode. + + Value from HashCode computation. + + + + Overloaded + operator. + + + + + Overloaded + operator. + + + + + Overloaded + operator. + + + + + Overloaded * operator. + + + + + Overloaded * operator. + + + + + Overloaded * operator. + + + + + Overloaded - operator. + + + + + Overloaded - operator. + + + + + Overloaded - operator. + + + + + Overloaded / operator. + + + + + Overloaded / operator. + + + + + Overloaded / operator. + + + + + Gets an array of double values for each of the ordinates + + + + + + Direct access to the coordinate works as a float. If you only have the interface, + it must involve conversions to and from a float. This may cause errors if the + value being set is outside the range of the float values. + + + + + Direct access to the Y coordinate as a float + + + + + Z coordinate. + + + + + A Measure coordinate + + + + + Gets/Sets Coordinates (x, y, z) values. + + + + + Gets or sets the double value corresponding to the specific ordinate + + + + + + + For now this is 3D + + + + + Gets or sets the values of this CoordinateF using an array of double values + + + + + A list of Coordinates, which may + be set to prevent repeated coordinates from occuring in the list. + + + + + Creates a new instance of a coordiante list + + + + + The basic constructor for a CoordinateArray allows repeated points + (i.e produces a CoordinateList with exactly the same set of points). + + Initial coordinates + + + + Constructs a new list from an array of Coordinates, + allowing caller to specify if repeated points are to be removed. + + Array of coordinates to load into the list. + If false, repeated points are removed. + + + + Returns a deep copy of this collection. + + The copied object. + + + + Add an array of coordinates. + + Coordinates to be inserted. + If set to false, repeated coordinates are collapsed. + If false, the array is added in reverse order. + + + + Add an array of coordinates. + + Coordinates to be inserted. + If set to false, repeated coordinates are collapsed. + + + + Add a coordinate. + + Coordinate to be inserted. + If set to false, repeated coordinates are collapsed. + + + + + + + + + + + Adds the entire range of coordinates, preventing coordinates with the identical 2D signiture from + being added immediately after it's duplicate. + + + + + + + Ensure this coordList is a ring, by adding the start point if necessary. + + + + + Returns the Coordinates in this collection. + + Coordinater as Coordinate[] array. + + + + An ICoordinateSequence based on a list instead of an array. + + + + + Creates a new instance of a CoordinateListSequence + + + + + + Creates a new instance of a CoordinateListSequence + + + + + Creates a new instance of a CoordinateListSequence + + If this is a List of ICoordinates, the sequence will be a shallow list. + Otherwise, a List is created and shallow copies of each coordinate is added. + + + + Creates a new instance of CoordinateListSequence + + The sequence to use + + + + Adds an item to the end of the CoordinateList + + An ICoordinate to add + + + + Clears the list entirely. + + + + + Creates a deep copy of this object + + CoordinateListSequence + + + + Tests wheather or not the specified ICoordinate is contained in the list. + + An ICoordinate to test + Boolean, true if the list contains the item. + + + + Copies all the members of this list into the specified array. + + The array to copy values to. + The 0 based integer index in the array at which copying begins + + + + Expands the given Envelope to include the coordinates in the sequence. + Does not modify the original envelope, but rather returns a copy of the + original envelope after being modified. + + The envelope use as the starting point for expansion. This envelope will not be modified. + The newly created envelope that is the expanded version of the original. + + + + Obtains an enumerator for cycling through the list. BEWARE! This + will return an underlying list enumerator, and so code that uses + a foreach process or an enumerator will bypass the Version incrementing code. + + An Enumerator object for cycling through the list. + + + + Gets a specific X, Y or Z value depending on the index specified and the ordinate specified + + + + + + + + Removes the specified ICoordinate from the list. + + An ICoordinate that should be removed from the list + Boolean, true if the item was successfully removed. + + + + Sets a specific X, Y or Z value depending on the index specified and the ordinate specified + + + + + + + + Copies all the members to an ICoordiante[] + + + + + + Increments the version with the understanding that we are using integers. If the user + uses too many version, it will cycle around. The statistical odds of accidentally + reaching the same value as a previous version should be small enough to prevent + conflicts. + + + + + Gets an integer representing the number of ICoordinates currently stored in this list + + + + + This always returns 0 + + + + + The CoordinateListSequence is not readonly + + + + + Direct accessor to an ICoordinate + + An integer index in this array sequence + An ICoordinate for the specified index + + + + This only works as long as an enumeration is not used on the CoordinateListSequence. + Since ICoordinateSequence does not support a GetEnumerator object, as long as you + are using an ICoordinateSequence interface, VersionID should work. + + + + + Creates CoordinateSequences represented as an array of Coordinates. + + + + + Creates an instance of the CoordinateListSequenceFactory + + + + + Returns a CoordinateArraySequence based on the given array (the array is not copied). + + the coordinates, which may not be null nor contain null elements. + + + + + + + + + + + Creates a new CoordinateListSequence and populates it with a single coordinate. + + + + + + + + + + + + + + CoordinateMismatchException + + + + + Creates a new instance of CoordinateMismatchException + + + + + Class containing static methods for conversions + between Dimension values and characters. + + + + + Converts the dimension value to a dimension symbol, + for example, True => 'T' + + Number that can be stored in the IntersectionMatrix. + Possible values are True, False, Dontcare, 0, 1, 2. + Character for use in the string representation of an IntersectionMatrix. + Possible values are T, F, *, 0, 1, 2. + + + + Converts the dimension symbol to a dimension value, + for example, '*' => Dontcare + + Character for use in the string representation of an IntersectionMatrix. + Possible values are T, F, *, 0, 1, 2. + Number that can be stored in the IntersectionMatrix. + Possible values are True, False, Dontcare, 0, 1, 2. + + + + This is enumerates not only the specific types, but very specifically + that the types are the Topology variety, and not simply the vector variety + + + + + A non-geometry rectangle that strictly shows extents + + + + + A collective group of geometries + + + + + A closed linestring that doesn't self intersect + + + + + Any linear collection of points joined by line segments + + + + + A collection of independant LineStrings that are not connected + + + + + A Grouping of points + + + + + A Collection of unconnected polygons + + + + + A single coordinate location + + + + + At least one Linear Ring shell with any number of linear ring "holes" + + + + + Any other type + + + + + Shapefile Shape types enumeration + + + + + Null Shape + + + + + Point + + + + + LineString + + + + + Polygon + + + + + MultiPoint + + + + + PointMZ + + + + + PolyLineMZ + + + + + PolygonMZ + + + + + MultiPointMZ + + + + + PointM + + + + + LineStringM + + + + + PolygonM + + + + + MultiPointM + + + + + MultiPatch + + + + + PointZ + + + + + LineStringZ + + + + + PolygonZ + + + + + MultiPointZ + + + + + Field Types + + + + + Integer + + + + + Integer List + + + + + Real + + + + + Real List + + + + + String + + + + + String List + + + + + Wide String + + + + + Side String List + + + + + Binary + + + + + Date + + + + + Time + + + + + DateTime + + + + + Invalid + + + + + Vector Geometry Types + + + + + Unknown + + + + + Well Known Binary Point + + + + + Well Known Binary LineString + + + + + Well Known Binary Polygon + + + + + Well Known Binary MultiPoint + + + + + Well Known Binary MultiLineString + + + + + Well Known Binary MultiPolygon + + + + + Well Known Binary Geometry Collection + + + + + Well Known Binary Linear Ring + /* non-standard, just for createGeometry() */ + + + + + Well Known Binary Point with Z value + + + + + Well Known Binary Line String with Z values + + + + + Well Known Binary Polygon with Z values + + + + + Well Known Binary MultiPoint with Z values + + + + + Well Known Binary LineString with z values + + + + + Well Known Binary MultiPolygon with z values + + + + + Defines a rectangular region of the 2D coordinate plane. + It is often used to represent the bounding box of a Geometry, + e.g. the minimum and maximum x and y values of the Coordinates. + Notice that Envelopes support infinite or half-infinite regions, by using the values of + Double.PositiveInfinity and Double.NegativeInfinity. + When Envelope objects are created or initialized, + the supplies extent values are automatically sorted into the correct order. + + + + + Defines a rectangular region of the 2D coordinate plane. + It is often used to represent the bounding box of a Geometry, + e.g. the minimum and maximum x and y values of the Coordinates. + Notice that Envelopes support infinite or half-infinite regions, by using the values of + Double.PositiveInfinity and Double.NegativeInfinity. + When Envelope objects are created or initialized, + the supplies extent values are automatically sorted into the correct order. + + + + + An IRectangle is not as specific to being a geometry, and can apply to anything as long as it is willing + to support a double valued height, width, X and Y value. + + + + + Gets or sets the difference between the maximum and minimum y values. + Setting this will change only the minimum Y value, leaving the Top alone + + max y - min y, or 0 if this is a null Envelope. + + + + Gets or Sets the difference between the maximum and minimum x values. + Setting this will change only the Maximum X value, and leave the minimum X alone + + max x - min x, or 0 if this is a null Envelope. + + + + In the precedent set by controls, envelopes support an X value and a width. + The X value represents the Minimum.X coordinate for this envelope. + + + + + In the precedent set by controls, envelopes support a Y value and a height. + the Y value represents the Top of the envelope, (Maximum.Y) and the Height + represents the span between Maximum and Minimum Y. + + + + + Creates a copy of the current envelope. + + An IEnvelope Interface that is a duplicate of this envelope + + + + Sets maxx to a value less than minx + usually, maxx = -1 and minx = 0, maxy = -1 and miny = 0 + + + + + True only if the M coordinates are not NaN and the max is greater than the min. + + Boolean + + + + True only of the Z ordinates are not NaN and the max is greater than the min. + + Boolean + + + + Because the envelope class attempts to protect users from accidentally manipulating + the minimum/maximum conditions in an undesirable way, the init method should effectively + initialize the existing envelope based on the new coordinates. This is how values + are "Set" for the envelope. It is expected that this method will do a check + to prevent larger values from being assigned to "maximum". + + The first coordinate to test + the second coordinate to test + + + + This is a coordinate defining the minimum bound in any number of dimensions + as controlled by NumOrdinates. + + + + + This is a coordinate defining the maximum bound in any number of dimensions + as controlled by NumOrdinates. + + + + + Gets the number of ordinates that define both coordinates of this envelope. + + + + + Returns true if this Envelope is a "null" envelope. + + + true if this Envelope is uninitialized + or is the envelope of the empty point. This is usually defined + as having a maxx less than a minx, like maxx = -1 and minx = 0. + + + + + Occurs when there is a basic change in the envelope. + + + + + Creates a null Envelope. + + + + + Creates an Envelope for a region defined by maximum and minimum values. + + The first x-value. + The second x-value. + The first y-value. + The second y-value. + + + + Creates an Envelope for a region defined by maximum and minimum values. + + The first x-value. + The second x-value. + The first y-value. + The second y-value. + The first z-value. + The second z-value. + + + + Creates an Envelope for a region defined by an Vector.IEnvelope + + The IEnvelope to create an envelope from + + + + Creates an Envelope for a region defined by two Coordinates. + + The first Coordinate. + The second Coordinate. + + + + Creates an Envelope for a region defined by a single Coordinate. + + The Coordinate. + + + + This is a special constructor. This will not fire the OnEnvelopeChanged + event, and expects values to be ordered as: + XMin, XMax, YMin, YMax, ZMin, ZMax, higher dimenions... + This constructor. + + The ordinal extents. + The minimum m value. + The max M value. + + + + This is a special constructor. This will not fire the OnEnvelopeChanged + event, and expects values to be ordered as: + XMin, XMax, YMin, YMax, ZMin, ZMax, higher dimenions... + This constructor sets M bounds to be 0. + + The ordinal extents. + + + + Initialize an Envelope of any dimension for a region defined by two Coordinates. + The number of ordinates (dimension) of the coordinates must match. M values + will also be considered. + + The first Coordinate. + The second Coordinate. + + + + This initializes the values without passing any coordinates and creates the default, 2D null envelope. + + + + + This is an internal method forcing assignments to the internal coordinates + + The coordinate to use for the minimum in X, Y, Z etc. + The coordinate to use for the maximum in X, Y, Z etc. + + + + Initialize to a null Envelope. + + + + + Initialize an Envelope for a region defined by maximum and minimum values. + + The first x-value. + The second x-value. + The first y-value. + The second y-value. + + + + This will set all 3 dimensions. Be warned, the Z dimensions are just place holders + for any topology opperations and do not have any true functionality. Whichever + is smaller becomes the minimum and whichever is larger becomes the maximum. + + An X coordinate + Another X coordinate + A Y coordinate + Another Y coordinate + A Z coordinate + Another Z coordinate + + + + Initialize an Envelope for a region defined by a single Coordinate. + + The Coordinate. + + + + Initialize an Envelope from an existing Envelope. + + The Envelope to initialize from. + + + + True only if the M coordinates are not NaN and the max is greater than the min. + + Boolean + + + + True only of the Z ordinates are not NaN and the max is greater than the min. + + Boolean + + + + Creates a copy of the current envelope. + + An object satisfying ICloneable + + + + Makes this Envelope a "null" envelope. + + Internaly, envelopes that vioate that sacred criteria of min being less than max + will be counted as a null case + + + + Creates a copy of the current envelope. + + An IEnvelope Interface that is a duplicate of this envelope + + + + Test the point q to see whether it intersects the Envelope + defined by p1-p2. + + One extremal point of the envelope. + Another extremal point of the envelope. + Point to test for intersection. + true if q intersects the envelope p1-p2. + + + + Test the envelope defined by p1-p2 for intersection + with the envelope defined by q1-q2 + + One extremal point of the envelope Point. + Another extremal point of the envelope Point. + One extremal point of the envelope Q. + Another extremal point of the envelope Q. + true if Q intersects Point + + + + Generates a string form of this envelope. + + + This should not be an extension method because it overrides ToString. + + + + Fires the EnvelopeChanged event + + + + + Specifies that this is in fact an envelope + + + + + Gets the Horizontal boundaries in geographic coordinates + + + + + Gets the vertical boundaries in geographic coordinates + + + + + Gets the minimum coordinate + + + + + Gets the maximum coordinate + + + + + Gets the number of ordinates for this envelope. + + + + + Returns true if this Envelope is a "null" envelope. + + + true if this Envelope is uninitialized + or is the envelope of the empty point. + + + + + Gets or sets the difference between the maximum and minimum y values. + Setting this will only change the _yMin value (leaving the top alone) + + max y - min y, or 0 if this is a null Envelope. + To resemble the precedent set by the dot net framework controls, this is left as a property + + + + Gets or Sets the difference between the maximum and minimum x values. + Setting this will change only the Maximum X value, and leave the minimum X alone + + max x - min x, or 0 if this is a null Envelope. + + + + Gets or sets the Left extent of the envelope, keeping the width the same. + In the precedent set by controls, envelopes support an X value and a width. + The X value represents the Minimum.X coordinate for this envelope. + + + + + Gets or sets the Y coordinate for the top of the envelope. (YMax) + In the precedent set by controls, envelopes support a Y value and a height. + the Y value represents the Top of the envelope, (Maximum.Y) and the Height + represents the span between Maximum and Minimum Y. + + + + + Occurs when there is a basic change in the envelope. + + + + + My concept for the Envelope is that there are several methods that are derived calculations. These are + so straight forward that it is unlikey that "new" implementations of those derived values will be needed + or wanted. However, we want lots of different kinds of things to be able to "become" an envelope + with a minimum of fuss. + + + + + Calculates the area of this envelope. Because the word Area, + like Volume, is dimension specific, this method only looks + at the X and Y ordinates, and requires at least 2 ordinates. + + The IEnvelope to use with this method + The 2D area as a double value. + + + + Gets a linear ring built clockwise around the border, starting from the TopLeft. + + The IEnvelope to use with this method + + + + Gets an array of 4 line segments working clockwise from the top segment. + + The IEnvelope to use with this method + + + + Gets the minY, which is Y - Height. + + The IEnvelope that this calculation is for. + + + + + Gets an ILineSegment from the top right corner to the bottom right corner + + The IEnvelope to use with this method + + + + Gets the bottom left corner of this rectangle as a 2D coordinate. + + The IEnvelope that this calculation is for. + An ICoordinate at the lower left corner of this rectangle + + + + Gets the bottom right corner of this rectangle as a 2D coordinate + + The IEnvelope that this calculation is for. + An ICoordinate at the lower right corner of this rectangle + + + + Gets the coordinate defining the center of this envelope + in all of the dimensions of this envelope. + + The IEnvelope to find the center for + An ICoordinate + + + + Gets the left value for this rectangle. This should be the + X coordinate, but is added for clarity. + + The IEnvelope that this calculation is for. + + + + + Gets an ILineSegment from the bottom left to the top left corners + + The IEnvelope that is being extended by this method + + + + Gets the right value, which is X + Width. + + The IEnvelope that this calculation is for. + + + + + Gets an ILineSegment from the bottom right corner to the bottom left corner + + The IEnvelope to use with this method + + + + Converts this envelope into a linear ring. + + The IEnvelope to use with this method + A Linear ring describing the border of this envelope. + + + + Gets an ILineSegment from the top left to the top right corners + + The IEnvelope to use with this method + + + + Calculates the TopLeft 2D coordinate from this envelope. + + The IEnvelope to use with this method + + + + + Technically an Evelope object is not actually a geometry. + This creates a polygon from the extents. + + The IEnvelope to use with this method + A Polygon, which technically qualifies as an IGeometry + + + + Calcualte the TopRight 2D Coordinate from this envelope + + The IEnvelope to use with this method + An ICoordinate in the position of maximum X, Maximum Y + + + + Changes the envelope extent by the specified amount relative + to it's current extent in that dimension (preserving the aspect ratio). + So Zoom(10) on a 100 unit wide envelope creates a 110 unit wide envlope, + while Zoom(-10) on a 100 unit wide envelope creates a 90 unit wide envelope. + Zoom(-100) on an envelope makes it 100% smaller, or effectively a point. + Tragically, a point cannot be "zoomed" back in, so a check should be used + to ensure that the envelope is not currently a point before attempting + to zoom in. + + The IEnvelope that this zoom method modifies + + Positive 50 makes the envelope 50% larger + Negative 50 makes the envelope 50% smaller + + + perCent = -50 compact the envelope a 50% (make it smaller). + perCent = 200 enlarge envelope by 2. + + + + + Returns a new envelope that is a copy of this envelope, but modified + to include the specified coordinate. + + + + + Calculates the union of the current box and the given box. + + + + + Moves the envelope to the indicated coordinate. + + The IEnvelope to use with this method + The new center coordinate. + + + + Resizes the envelope to the indicated point. + + The IEnvelope to use with this method + The new width. + The new height. + + + + Moves and resizes the current envelope. + + The IEnvelope to use with this method + The new centre coordinate. + The new width. + The new height. + + + + This handles setting the center and scale in N dimensions. The size is equivalent to the + span in each dimension, while the center is the central position in each dimension. The + envelope will have values in each dimension where either the existing envelope or both the + specified center and size values have been specified. If only the existing envelope + and a size is specified for dimension 3, for example, the existing center will be used. + + The envelope to modify + The center position. This can also be null. + The size (or span) in each dimension. This can also be null. + + + + Despite the naming of the extents, this will force the larger of the two x values + to become Xmax etc. + + The IEnvelope to use with this method + An X coordinate + A Y coordinate + A Z coordinate + Another X coordinate + Another Y coordinate + Another Z coordinate + + + + The two dimensional overload for consistency with other code. + Despite the names, this will force the smallest X coordinate given + to become maxX. + + The IEnvelope to use with this method + An X coordinate + A Y coordinate + Another X coordinate + Another Y coordinate + + + + Gets the maxY value, which should be Y. + + The IEnvelope that this calculation is for. + The double value representing the Max Y value of this rectangle + + + + Translates this envelope by given amounts in the X and Y direction. + + The IEnvelope to use with this method + The amount to translate along the X axis. + The amount to translate along the Y axis. + + + + Translates the envelope by given amounts up to the minimum dimension between + the envelope and the shift coordinate. (e.g., A 2D envelope will only + be shifted in 2 dimensions because it has no Z, while a 2D coordinate + can only shift a cube based on the X and Y positions, leaving the Z + info alone. + + The IEnvelope to use with this method + + This does nothing to a "NULL" envelope + + + + Overlaps is defined as intersecting, but having some part of each envelope that is also outside + of the other envelope. Therefore it would amount to saying "Intersects And Not Contains And Not Within" + + The IEnvelope to use with this method + + + + + + For a point, or coordinate, this is a degenerate case and + will simply perform an intersection test instead. + + The IEnvelope to use with this method + + + + + + For a point, or coordinate, this is a degenerate case and + will simply perform an intersection test instead. + + The IEnvelope to use with this method + The x coordinate + The y coordinate + Boolean, true if the specified point intersects with this envelope + + + + Evaluates if the specified coordinate is found inside or on the border. + This will test all the dimensions shared by both the envelope and point. + + + + + Returns true if the given point lies in or on the envelope. + + The IEnvelope that this is for + the x-coordinate of the point which this Envelope is + being checked for containing. + the y-coordinate of the point which this Envelope is + being checked for containing. + true if (x, y) lies in the interior or + on the boundary of this Envelope. + + + + Returns true if the other IEnvelope is within this envelope in all dimensions. + If the boundaries touch, this will true. This will test the number of + dimensions that is the smallest dimensionality. This will ignore M values. + + The first envelope (this object when extending) + the Envelope which this Envelope is being checked for containing. + true if other is contained in this Envelope. + + + + Computes the distance between this and another Envelope. + The distance between overlapping Envelopes is 0. Otherwise, the + distance is the hyper Euclidean distance between the closest points. + M values are ignored, but every dimension is considered, up to + the minimum of the number of ordinates between the two envelopes. + Use Distance with a dimension specified to force 2D distance calculations. + + The first envelope (this object when extending) + The other envelope to calculate the distance to + The distance between this and another Envelope. + Null cases produce a distance of -1 + + + + Sometimes only two dimensions are important, and the full dimensionality is not needed. + The Distance 2D performs the same distance check but only in X and Y, regardless + of how many dimensions exist in the envelopes. Both envelopes should have at least + two ordinates however. (Not a criteria of the Distance() method) + + The first envelope (this object when extending) + The other envelope to calculate the distance to + + + + + Calculates the distance specifically in 3D, even if the envelope + exists in higher dimensions. The NumOrdinates of both envelopes + must be at least 3. + + The first envelope (this object when extending) + The other envelope to calculate the distance to + + + + + Uses the specified distance to expand the envelope by that amount in all dimensions. + + + + + + + Uses the dimensions of the specified distances coordinate to + specify the amount to expand the envelopes in each ordinate. + This will apply the method to the minimum dimensions between + the distances coordinate and this envelope. (eg. A 2D + distances coordinate will not affect Z values in the envelope). + + The first envelope (this object when extending) + The distance to expand the envelope. + + + + Expands this envelope by a given distance in all directions. + Both positive and negative distances are supported. + + The first envelope (this object when extending) + The distance to expand the envelope along the the X axis. + The distance to expand the envelope along the the Y axis. + + + + Enlarges the boundary of the Envelope so that it contains (p). + Does nothing if (p) is already on or within the boundaries. + This executes to the minimum of dimensions between p and this envelope. + + The first envelope (this object when extending) + The Coordinate. + + + + Enlarges the boundary of the Envelope so that it contains + (x, y). Does nothing if (x, y) is already on or within the boundaries. + + The first envelope (this object when extending) + The value to lower the minimum x to or to raise the maximum x to. + The value to lower the minimum y to or to raise the maximum y to. + + + + Enlarges the boundary of the Envelope so that it contains + other. Does nothing if other is wholly on or + within the boundaries. + + The first envelope (this object when extending) + the Envelope to merge with. + + + + Returns the intersection of the specified segment with this bounding box. If there is no intersection, + then this returns null. If the intersection is a corner, then the LineSegment will be degenerate, + that is both the coordinates will be the same. Otherwise, the segment will be returned so that the + direction is the same as the original segment. + + The IEnvelope to use with this method + The LineSegment to intersect. + An ILineSegment that is cropped to fit within the bounding box. + + + + Finds an envelope that represents the intersection between this + envelope and the specified IEnvelope. The number of dimensions of the + returned envelope is the maximum of the NumOrdinates between the two envelopes, + since a 2D envelope will only constrain a cube in 2 dimensions, and allow the + z bounds to remain unaltered. + + The IEnvelope that is being extended by this method + An IEnvelope to compare against + an IEnvelope that bounds the intersection area + + + + Using an envelope intersection has some optimizations by checking against the envelope + of the geometry. In the worst case scenario, the envelope crops the geometry, and a new geometry is created. + This will be much faster if the envelope contains the geometries envelope, however, simply returning + the original geometry. + + The IEnvelope that is being extended by this method + A geometric intersection against the area of this envelope + A geometry, cropped to the space of this envelope if necessary. + + + + Check if the point p overlaps (lies inside) the region of this Envelope. + + The IEnvelope that is being extended by this method + the Coordinate to be tested. + true if the point overlaps this Envelope. + + + + Check if the point (x, y) overlaps (lies inside) the region of this Envelope. + + The IEnvelope that is being extended by this method + the x-ordinate of the point. + the y-ordinate of the point. + true if the point overlaps this Envelope. + + + + This should only be used if the Intersection is not actually required because it uses the Intersection method + and returns false if the return value is null. + + The IEnvelope that is being extended by this method + The segment to be tested against this envelope. + The line segment to compare against. + + + + Tests for intersection (any overlap) between the two envelopes. In cases of unequal + dimensions, the smaller dimension is used (e.g., if a 2D rectangle doesn't intersect + a cube in its own plane, this would return false.) + + The IEnvelope that is being extended by this method + the Envelope which this Envelope is + being checked for overlapping. + + + true if the Envelopes overlap. + + + + + EnumerableEM + + + + + cycles through any strong typed collection where the type implements ICLoneable + and clones each member, inserting that member into the new list. + + The type of the values in the list. + The original enumerable collection of type T. + A deep copy of the list. + + + + A Generic Safe Casting method that should simply exist as part of the core framework + + The type of the member to attempt to cast to. + The original object to attempt to System.Convert. + An output variable of type T. + + + + InsufficientDimensionsException + + + + + Creates a new instance of InsufficientDimensionsException + + + + + Creates a new instance of InsufficientDimesionsException, but specifies the name of the argument, + or a similar string like "both envelopes". + + The string name of the argument to introduce in to exception message + + + + X + + + + + Y + + + + + Z + + + + + Copies the X, Y and Z values from the CoordinateF without doing a conversion. + + X, Y Z + + + + Creates a new FloatVector3 with the specified values + + X + Y + Z + + + + Uses the X, Y and Z values from the coordinate to create a new FloatVector3 + + The coordinate to obtain X, Y and Z values from + + + + tests to see if the specified object has the same X, Y and Z values + + + + + + + Not sure what I should be doing here since Int can't really contain this much info very well + + + + + + Adds all the scalar members of the the two vectors + + Left hand side + Right hand side + + + + + Adds the specified v + + A FloatVector3 to add to this vector + + + + Subtracts all the scalar members of the the two vectors + + Left hand side + Right hand side + + + + + Subtracts the specified value + + A FloatVector3 + + + + Returns the Cross Product of two vectors lhs and V + + Vector, the first input vector + Vector, the second input vector + A FloatVector3 containing the cross product of lhs and V + + + + Multiplies all the scalar members of the the two vectors + + Left hand side + Right hand side + + + + + Multiplies the source vector by a scalar. + + + + + + + + Multiplies this vector by a scalar value. + + The scalar to multiply by + + + + Normalizes the vectors + + + + + Adds the vectors lhs and V using vector addition, which adds the corresponding components + + One vector to be added + A second vector to be added + The sum of the vectors + + + + Tests two float vectors for equality. + + The left hand side FloatVector3 to test. + The right hand side FloatVector3 to test. + Returns true if X, Y and Z are all equal. + + + + Tests two float vectors for inequality. + + The left hand side FloatVector3 to test. + The right hand side FloatVector3 to test. + Returns true if any of X, Y and Z are unequal. + + + + Returns the Cross Product of two vectors lhs and rhs + + Vector, the first input vector + Vector, the second input vector + A FloatVector3 containing the cross product of lhs and V + + + + Divides the components of vector lhs by the respective components + ov vector V and returns the resulting vector. + + FloatVector3 Dividend (Numbers to be divided) + FloatVector3 Divisor (Numbers to divide by) + A FloatVector3 quotient of lhs and V + To prevent divide by 0, if a 0 is in V, it will return 0 in the result + + + + Multiplies each component of vector lhs by the Scalar value + + A vector representing the vector to be multiplied + Double, the scalar value to mulitiply the vector components by + A FloatVector3 representing the vector product of vector lhs and the Scalar + + + + Returns the Inner Product also known as the dot product of two vectors, lhs and V + + The input vector + The vector to take the inner product against lhs + a Double containing the dot product of lhs and V + + + + Multiplies the vectors lhs and V using vector multiplication, + which adds the corresponding components + + A scalar to multpy to the vector + A vector to be multiplied + The scalar product for the vectors + + + + Multiplies each component of vector lhs by the Scalar value + + A vector representing the vector to be multiplied + Double, the scalar value to mulitiply the vector components by + A FloatVector3 representing the vector product of vector lhs and the Scalar + + + + Subtracts FloatVector3 V from FloatVector3 lhs + + A FloatVector3 to subtract from + A FloatVector3 to subtract + The FloatVector3 difference lhs - V + + + + Gets the length of the vector + + + + + Gets the square of length of this vector + + + + + Converts a Well-Known Binary byte data to a Geometry. + + + + + Initialize reader with a standard GeometryFactory. + + + + + Initialize reader with the given GeometryFactory. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Geometry builder. + + + + + Basic implementation of Geometry. + Clone returns a deep copy of the object. + + Binary Predicates: + Because it is not clear at this time what semantics for spatial + analysis methods involving GeometryCollections would be useful, + GeometryCollections are not supported as arguments to binary + predicates (other than ConvexHull) or the Relate method. + + + Set-Theoretic Methods: + The spatial analysis methods will + return the most specific class possible to represent the result. If the + result is homogeneous, a Point, LineString, or + Polygon will be returned if the result contains a single + element; otherwise, a MultiPoint, MultiLineString, + or MultiPolygon will be returned. If the result is + heterogeneous a GeometryCollection will be returned. + + + Representation of Computed Geometries: + The SFS states that the result + of a set-theoretic method is the "point-set" result of the usual + set-theoretic definition of the operation (SFS 3.2.21.1). However, there are + sometimes many ways of representing a point set as a Geometry. + The SFS does not specify an unambiguous representation of a given point set + returned from a spatial analysis method. One goal of NTS is to make this + specification precise and unambiguous. NTS will use a canonical form for + Geometrys returned from spatial analysis methods. The canonical + form is a Geometry which is simple and noded: + Simple means that the Geometry returned will be simple according to + the NTS definition of IsSimple. + Noded applies only to overlays involving LineStrings. It + means that all intersection points on LineStrings will be + present as endpoints of LineStrings in the result. + This definition implies that non-simple geometries which are arguments to + spatial analysis methods must be subjected to a line-dissolve process to + ensure that the results are simple. + + + Constructed Points And The Precision Model: + The results computed by the set-theoretic methods may + contain constructed points which are not present in the input Geometry + s. These new points arise from intersections between line segments in the + edges of the input Geometrys. In the general case it is not + possible to represent constructed points exactly. This is due to the fact + that the coordinates of an intersection point may contain twice as many bits + of precision as the coordinates of the input line segments. In order to + represent these constructed points explicitly, NTS must truncate them to fit + the PrecisionModel. + Unfortunately, truncating coordinates moves them slightly. Line segments + which would not be coincident in the exact result may become coincident in + the truncated representation. This in turn leads to "topology collapses" -- + situations where a computed element has a lower dimension than it would in + the exact result. + When NTS detects topology collapses during the computation of spatial + analysis methods, it will throw an exception. If possible the exception will + report the location of the collapse. + + + + and are not overridden, so that when two + topologically equal Geometries are added to Collections and Dictionaries, they + remain distinct. This behaviour is desired in many cases. + + + + + This has the methods and properties associated with any topology + + + + + Supports the specific methods associated with relationships, usually + returning a boolean style test if the relationship is true. + + + + Contains + + Returns true if other.within(this) returns true. + + The Geometry with which to compare this Geometry. + true if this Geometry contains other. + + + CoveredBy + + Returns true if this geometry is covered by the specified geometry. + + The CoveredBy predicate has the following equivalent definitions: + - Every point of this geometry is a point of the other geometry. + - The DE-9IM Intersection Matrix for the two geometries is T*F**F*** or *TF**F*** or **FT*F*** or **F*TF***. + - g.Covers(this) (CoveredBy is the inverse of Covers). + + Notice the difference between CoveredBy and Within: CoveredBy is a more inclusive relation. + + The Geometry with which to compare this Geometry. + true if this Geometry is covered by . + + + Covers + + Returns true if this geometry covers the specified geometry. + + The Covers predicate has the following equivalent definitions: + - Every point of the other geometry is a point of this geometry. + - The DE-9IM Intersection Matrix for the two geometries is T*****FF* or *T****FF* or ***T**FF* or ****T*FF*. + - g.CoveredBy(this) (Covers is the inverse of CoveredBy). + + Notice the difference between Covers and Contains: Covers is a more inclusive relation. + In particular, unlike Contains it does not distinguish between + points in the boundary and in the interior of geometries. + + + For most situations, Covers should be used in preference to Contains. + As an added benefit, Covers is more amenable to optimization, and hence should be more performant. + + The Geometry with which to compare this Geometry + true if this Geometry covers + + + Crosses + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is + T*T****** (for a point and a curve, a point and an area or a line + and an area) 0******** (for two curves). + + The Geometry with which to compare this Geometry. + + true if the two Geometrys cross. + For this function to return true, the Geometry + s must be a point and a curve; a point and a surface; two curves; or a + curve and a surface. + + + + Disjoint + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is DE-9IM: FF*FF****. + + The Geometry with which to compare this Geometry. + true if the two Geometrys are disjoint. + + + Intersects + + Returns true if disjoint returns false. + + The Geometry with which to compare this Geometry. + true if the two Geometrys intersect. + + + Overlaps + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is + T*T***T** (for two points or two surfaces) + 1*T***T** (for two curves). + + The Geometry with which to compare this Geometry. + + true if the two Geometrys overlap. + For this function to return true, the Geometry + s must be two points, two curves or two surfaces. + + + + Relate + + Returns true if the elements in the DE-9IM intersection + matrix for the two Geometrys match the elements in intersectionPattern + , which may be: + 0 + 1 + 2 + T ( = 0, 1 or 2) + F ( = -1) + * ( = -1, 0, 1 or 2) + For more information on the DE-9IM, see the OpenGIS Simple Features + Specification. + + The Geometry with which to compare this Geometry. + The pattern against which to check the intersection matrix for the two Geometrys. + true if the DE-9IM intersection matrix for the two Geometrys match intersectionPattern. + + + + Returns the DE-9IM intersection matrix for the two Geometrys. + + The Geometry with which to compare this Geometry + + A matrix describing the intersections of the interiors, + boundaries and exteriors of the two Geometrys. + + + + Touches + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is FT*******, F**T***** or F***T****. + + The Geometry with which to compare this Geometry. + + true if the two Geometrys touch; + Returns false if both Geometrys are points. + + + + Within + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is T*F**F***. + + The Geometry with which to compare this Geometry. + true if this Geometry is within other. + + + + An interface for supporting the functions specific to geometry overlay opperations + + + + Difference + + Returns a Geometry representing the points making up this + Geometry that do not make up other. This method + returns the closure of the resultant Geometry. + + The Geometry with which to compute the difference. + The point set difference of this Geometry with other. + + + Intersection + + Returns a Geometry representing the points shared by this + Geometry and other. + + The Geometry with which to compute the intersection. + The points common to the two Geometrys. + + + SymmetricDifference + + Returns a set combining the points in this Geometry not in + other, and the points in other not in this + Geometry. This method returns the closure of the resultant + Geometry. + + The Geometry with which to compute the symmetric difference. + The point set symmetric difference of this Geometry with other. + + + Union + + Returns a Geometry representing all the points in this Geometry + and other. + + The Geometry with which to compute the union. + A set combining the points of this Geometry and the points of other. + + + + This is a lightweight version of the components that represent the strictly data related + commands. + + + + + This returns the index'th BasicGeometry where index is between 0 and NumGeometries - 1. + If there is only one geometry, this will return this object. + + An integer index between 0 and NumGeometries - 1 specifying the basic geometry + A BasicGeometry representing only the specific sub-geometry specified + + + + Returns the string that is the valid GML markup string. + + A String containing the valid GML + + + + Returns the Well-known Binary representation of this Geometry. + For a definition of the Well-known Binary format, see the OpenGIS Simple + Features Specification. + + The Well-known Binary representation of this Geometry. + + + ToString + + Returns the Well-known Text representation of this Geometry. + For a definition of the Well-known Text format, see the OpenGIS Simple + Features Specification. + + + The Well-known Text representation of this Geometry. + + + + + Forces the cached envelope to be re-calculated using the coordinates. + + + + Coordinates + + Using an IList guarantees that we can access indexed coordinates, but the actual implementation + can be either in the form of an array or a list. + + + + + Returns this Geometry's bounding box. If this Geometry is the empty point, + returns an empty Point. If the Geometry is a point, returns a non-empty Point. + Otherwise, returns a Polygon whose points are (minx, miny), (maxx, miny), + (maxx, maxy), (minx, maxy), (minx, miny). + + + + NumGeometries + + Returns the number of Geometries in a Geometry Collection, or 1, if the geometry is not a collection + + + + NumPoints + + Returns the count of this geometry's vertices. The geometries contained by + composite geometries must be geometries. That is, they must implement NumPoints. + + + + + Clarifies the subtype of geometry in string format in accordance with + OGC convenction, but most internal identification simply uses + the type identification. + + + + + Specifies either a Point, Line, Polygon or Empty feature type for simple flow control + + + + + Performs an operation with or on this Geometry's + coordinates. If you are using this method to modify the point, be sure + to call GeometryChanged() afterwards. Notice that you cannot use this + method to + modify this Geometry if its underlying CoordinateSequence's Get method + returns a copy of the Coordinate, rather than the actual Coordinate stored + (if it even stores Coordinates at all). + + The filter to apply to this Geometry's coordinates + + + + Performs an operation with or on this Geometry and its + subelement Geometrys (if any). + Only GeometryCollections and subclasses + have subelement Geometry's. + + + The filter to apply to this Geometry (and + its children, if it is a GeometryCollection). + + + + + Performs an operation with or on this Geometry and its + component Geometry's. Only GeometryCollections and + Polygons have component Geometry's; for Polygons they are the LinearRings + of the shell and holes. + + The filter to apply to this Geometry. + + + + Returns a buffer region around this Geometry having the given width. + The buffer of a Geometry is the Minkowski sum or difference of the Geometry with a disc of radius distance. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + + All points whose distance from this Geometry + are less than or equal to distance. + + + + Buffer + + Returns a buffer region around this Geometry having the given width. + The buffer of a Geometry is the Minkowski sum or difference of the Geometry with a disc of radius distance. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + Cap Style to use for compute buffer. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + Buffer + + Returns a buffer region around this Geometry having the given + width and with a specified number of segments used to approximate curves. + The buffer of a Geometry is the Minkowski sum of the Geometry with + a disc of radius distance. Curves in the buffer polygon are + approximated with line segments. This method allows specifying the + accuracy of that approximation. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + The number of segments to use to approximate a quadrant of a circle. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + Buffer + + Returns a buffer region around this Geometry having the given + width and with a specified number of segments used to approximate curves. + The buffer of a Geometry is the Minkowski sum of the Geometry with + a disc of radius distance. Curves in the buffer polygon are + approximated with line segments. This method allows specifying the + accuracy of that approximation. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + The number of segments to use to approximate a quadrant of a circle. + Cap Style to use for compute buffer. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + + Clears any cached envelopes + + + + + Given the specified test point, this returns the closest point in this geometry. + + + + + + ConvexHull + + Returns the smallest convex Polygon that contains all the points in the Geometry. This obviously applies only to Geometry s which contain 3 or more points. + + the minimum-area convex polygon containing this Geometry's points. + + + + Returns whether this Geometry is greater than, equal to, + or less than another Geometry having the same class. + + A Geometry having the same class as this Geometry. + + A positive number, 0, or a negative number, depending on whether + this object is greater than, equal to, or less than o, as + defined in "Normal Form For Geometry" in the NTS Technical + Specifications. + + + + Distance + + Returns the minimum distance between this Geometry + and the Geometry g. + + The Geometry from which to compute the distance. + + + Equals + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is T*F**FFF*. + + The Geometry with which to compare this Geometry. + true if the two Geometrys are equal. + + + EqualsExact + + Returns true if the two Geometrys are exactly equal, + up to a specified tolerance. + Two Geometries are exactly within a tolerance equal iff: + they have the same class, + they have the same values of Coordinates, + within the given tolerance distance, in their internal + Coordinate lists, in exactly the same order. + If this and the other Geometrys are + composites and any children are not Geometrys, returns + false. + + The Geometry with which to compare this Geometry + Distance at or below which two Coordinates will be considered equal. + + true if this and the other Geometry + are of the same class and have equal internal data. + + + + EqualsExact + + Returns true if the two Geometrys are exactly equal. + Two Geometries are exactly equal iff: + they have the same class, + they have the same values of Coordinates in their internal + Coordinate lists, in exactly the same order. + If this and the other Geometrys are + composites and any children are not Geometrys, returns + false. + This provides a stricter test of equality than equals. + + The Geometry with which to compare this Geometry. + + true if this and the other Geometry + are of the same class and have equal internal data. + + + + + Notifies this Geometry that its Coordinates have been changed by an external + party. When GeometryChanged is called, this method will be called for + this Geometry and its component Geometries. + + + + + Notifies this Geometry that its Coordinates have been changed by an external + party (using a CoordinateFilter, for example). The Geometry will flush + and/or update any information it has cached (such as its Envelope). + + + + GetGeometryN + + Returns an element Geometry from a GeometryCollection, + or this, if the geometry is not a collection. + + The index of the geometry element. + The n'th geometry contained in this geometry. + + + IsWithinDistance + + Tests whether the distance from this Geometry + to another is less than or equal to a specified value. + + the Geometry to check the distance to. + the distance value to compare. + true if the geometries are less than distance apart. + + + Normalize + + Converts this Geometry to normal form (or + canonical form ). Normal form is a unique representation for Geometry + s. It can be used to test whether two Geometrys are equal + in a way that is independent of the ordering of the coordinates within + them. Normal form equality is a stronger condition than topological + equality, but weaker than pointwise equality. The definitions for normal + form use the standard lexicographical ordering for coordinates. "Sorted in + order of coordinates" means the obvious extension of this ordering to + sequences of coordinates. + + + + + Returns the feature representation as GML 2.1.1 XML document. + This XML document is based on Geometry.xsd schema. + NO features or XLink are implemented here! + + + + + Rotates the geometry by the given radian angle around the Origin. + + Coordinate the geometry gets rotated around. + Rotation angle in radian. + + + Area + + Returns the area of this Geometry. + Areal Geometries have a non-zero area. + They override this function to compute the area. + Others return 0.0 + + The area of the Geometry. + + + Boundary + + Returns the boundary, or the empty point if this Geometry + is empty. For a discussion of this function, see the OpenGIS Simple + Features Specification. As stated in SFS Section 2.1.13.1, "the boundary + of a Geometry is a set of Geometries of the next lower dimension." + + The closure of the combinatorial boundary of this Geometry. + + + + Returns the dimension of this Geometrys inherent boundary. + + + The dimension of the boundary of the class implementing this + interface, whether or not this object is the empty point. Returns + Dimension.False if the boundary is the empty point. + + + + Centroid + + Computes the centroid of this Geometry. + The centroid is equal to the centroid of the set of component Geometries of highest + dimension (since the lower-dimension geometries contribute zero "weight" to the centroid). + + A Point which is the centroid of this Geometry. + + + Coordinate + + Returns a vertex of this Geometry + + + + Dimension + + Gets or sets the DotSpatial.Geometries.Dimensions of this Geometry. + + + + EnvelopeInternal + + Returns the interior geometry + + + + Factory + + Gets the factory which contains the context in whcih this geometry was created + + + + InteriorPoint + + Computes an interior point of this Geometry. An interior point is guaranteed + to lie in the interior of the Geometry, if it possible to calculate such a point + exactly. Otherwise, the point may lie on the boundary of the point. + + + + IsEmpty + + Returns whether or not the set of points in this geometry is empty + + + + IsRectangle + + Essentially is false for anything other than a polygon, which + does a check to see if the polygon in question is a rectangle. + + + + IsSimple + + Returns false if the Geometry not simple. Subclasses provide their own definition + of "simple". If this Geometry is empty, returns true. In general, the SFS specifications + of simplicity seem to follow the following rule: A Geometry is simple if the only + self-intersections are at boundary points. For all empty Geometrys, IsSimple==true. + + + + IsValid + + Tests the validity of this Geometry. Subclasses provide their own definition of "valid" + + + + Length + + Returns the length of this Geometry. Linear geometries return their length. + Areal geometries return their perimeter. Others return 0.0 + + + + + There used to be a class for precision model stuff, but for Interface purposes, this will be + communicated as a an enumeration which can later be converted into a full fledged PrecisionModel. + + + + SRID + + Gets/Sets the ID of the Spatial Reference System used by the Geometry. NTS supports Spatial Reference + System information in the simple way defined in the SFS. A Spatial Reference System ID (SRID) is present + in each Geometry object. Geometry provides basic accessor operations for this field, but no others. The SRID + is represented as an integer. + + + + UserData + + Gets/Sets the user data object for this point, if any. A simple scheme for applications to add their own custom + data to a Geometry. An example use might be to add an object representing a Coordinate Reference System. + Notice that user data objects are not present in geometries created by construction methods. + + + + + Creates a sort of default geometry object from the default geometry factory, or creates + a new one if one doesn't exist yet. + + + + + + + + + + + + + + + + A predefined with == . + + + + + + + Returns an element Geometry from a GeometryCollection, + or this, if the geometry is not a collection. + + The index of the geometry element. + The n'th geometry contained in this geometry. + + + + This returns the index'th BasicGeometry where index is between 0 and NumGeometries - 1. + If there is only one geometry, this will return this object. + + An integer index between 0 and NumGeometries - 1 specifying the basic geometry + A BasicGeometry representing only the specific sub-geometry specified + + + + Returns the minimum distance between this Geometry + and the Geometry g. + + The Geometry from which to compute the distance. + + + + Tests whether the distance from this Geometry + to another is less than or equal to a specified value. + + the Geometry to check the distance to. + the distance value to compare. + true if the geometries are less than distance apart. + + + + Given the specified test point, this returns the closest point in this geometry. + + + + + + + Notifies this Geometry that its Coordinates have been changed by an external + party (using a CoordinateFilter, for example). The Geometry will flush + and/or update any information it has cached (such as its Envelope). + + + + + Notifies this Geometry that its Coordinates have been changed by an external + party. When GeometryChanged is called, this method will be called for + this Geometry and its component Geometries. + + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is FF*FF****. + + The Geometry with which to compare this Geometry. + true if the two Geometrys are disjoint. + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is FT*******, F**T***** or F***T****. + + The Geometry with which to compare this Geometry. + + true if the two Geometrys touch; + Returns false if both Geometrys are points. + + + + + Returns true if disjoint returns false. + + The Geometry with which to compare this Geometry. + true if the two Geometrys intersect. + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is + T*T****** (for a point and a curve, a point and an area or a line + and an area) 0******** (for two curves). + + The Geometry with which to compare this Geometry. + + true if the two Geometrys cross. + For this function to return true, the Geometry + s must be a point and a curve; a point and a surface; two curves; or a + curve and a surface. + + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is T*F**F***. + + The Geometry with which to compare this Geometry. + true if this Geometry is within other. + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is + T*T***T** (for two points or two surfaces) + 1*T***T** (for two curves). + + The Geometry with which to compare this Geometry. + + true if the two Geometrys overlap. + For this function to return true, the Geometry + s must be two points, two curves or two surfaces. + + + + + Returns true if this geometry covers the specified geometry. + + The Covers predicate has the following equivalent definitions: + - Every point of the other geometry is a point of this geometry. + - The DE-9IM Intersection Matrix for the two geometries is T*****FF* or *T****FF* or ***T**FF* or ****T*FF*. + - g.CoveredBy(this) (Covers is the inverse of CoveredBy). + + Notice the difference between Covers and Contains: Covers is a more inclusive relation. + In particular, unlike Contains it does not distinguish between + points in the boundary and in the interior of geometries. + + + For most situations, Covers should be used in preference to Contains. + As an added benefit, Covers is more amenable to optimization, and hence should be more performant. + + The Geometry with which to compare this Geometry + true if this Geometry covers + + + + + + Returns true if this geometry is covered by the specified geometry. + + The CoveredBy predicate has the following equivalent definitions: + - Every point of this geometry is a point of the other geometry. + - The DE-9IM Intersection Matrix for the two geometries is T*F**F*** or *TF**F*** or **FT*F*** or **F*TF***. + - g.Covers(this) (CoveredBy is the inverse of Covers). + + Notice the difference between CoveredBy and Within: CoveredBy is a more inclusive relation. + + The Geometry with which to compare this Geometry. + true if this Geometry is covered by . + + + + + + Returns true if the elements in the DE-9IM intersection + matrix for the two Geometrys match the elements in intersectionPattern + , which may be: + 0 + 1 + 2 + T ( = 0, 1 or 2) + F ( = -1) + * ( = -1, 0, 1 or 2) + For more information on the DE-9IM, see the OpenGIS Simple Features + Specification. + + The Geometry with which to compare this Geometry. + The pattern against which to check the intersection matrix for the two Geometrys. + true if the DE-9IM intersection matrix for the two Geometrys match intersectionPattern. + + + + Returns the DE-9IM intersection matrix for the two Geometrys. + + The Geometry with which to compare this Geometry + + A matrix describing the intersections of the interiors, + boundaries and exteriors of the two Geometrys. + + + + + Returns true if the DE-9IM intersection matrix for the two + Geometrys is T*F**FFF*. + + The Geometry with which to compare this Geometry. + true if the two Geometrys are equal. + + + + Returns the Well-known Text representation of this Geometry. + For a definition of the Well-known Text format, see the OpenGIS Simple + Features Specification. + + + The Well-known Text representation of this Geometry. + + + + + Returns the Well-known Binary representation of this Geometry. + For a definition of the Well-known Binary format, see the OpenGIS Simple + Features Specification. + + The Well-known Binary representation of this Geometry. + + + + Returns the feature representation as GML 2.1.1 XML document. + This XML document is based on Geometry.xsd schema. + NO features or XLink are implemented here! + + + + + Returns a GML string for this geometry + + A String with the GML + + + + Returns the smallest convex Polygon that contains all the + points in the Geometry. This obviously applies only to Geometry + s which contain 3 or more points. + + the minimum-area convex polygon containing this Geometry's points. + + + + Returns a Geometry representing the points shared by this + Geometry and other. + + The Geometry with which to compute the intersection. + The points common to the two Geometrys. + + + + Forces the cached envelope to be re-calculated using the coordinates. + + + + + Clears any cached envelopes + + + + + Returns a Geometry representing all the points in this Geometry + and other. + + The Geometry with which to compute the union. + A set combining the points of this Geometry and the points of other. + + + + Returns a Geometry representing the points making up this + Geometry that do not make up other. This method + returns the closure of the resultant Geometry. + + The Geometry with which to compute the difference. + The point set difference of this Geometry with other. + + + + Returns a set combining the points in this Geometry not in + other, and the points in other not in this + Geometry. This method returns the closure of the resultant + Geometry. + + The Geometry with which to compute the symmetric difference. + The point set symmetric difference of this Geometry with other. + + + + Returns true if the two Geometrys are exactly equal, + up to a specified tolerance. + Two Geometries are exactly within a tolerance equal iff: + they have the same class, + they have the same values of Coordinates, + within the given tolerance distance, in their internal + Coordinate lists, in exactly the same order. + If this and the other Geometrys are + composites and any children are not Geometrys, returns + false. + + The Geometry with which to compare this Geometry + Distance at or below which two Coordinates will be considered equal. + + true if this and the other Geometry + are of the same class and have equal internal data. + + + + + Returns true if the two Geometrys are exactly equal. + Two Geometries are exactly equal iff: + they have the same class, + they have the same values of Coordinates in their internal + Coordinate lists, in exactly the same order. + If this and the other Geometrys are + composites and any children are not Geometrys, returns + false. + This provides a stricter test of equality than equals. + + The Geometry with which to compare this Geometry. + + true if this and the other Geometry + are of the same class and have equal internal data. + + + + + Performs an operation with or on this Geometry's + coordinates. If you are using this method to modify the point, be sure + to call GeometryChanged() afterwards. Notice that you cannot use this + method to + modify this Geometry if its underlying CoordinateSequence's Get method + returns a copy of the Coordinate, rather than the actual Coordinate stored + (if it even stores Coordinates at all). + + The filter to apply to this Geometry's coordinates + + + + Performs an operation with or on this Geometry and its + subelement Geometrys (if any). + Only GeometryCollections and subclasses + have subelement Geometry's. + + + The filter to apply to this Geometry (and + its children, if it is a GeometryCollection). + + + + + Performs an operation with or on this Geometry and its + component Geometry's. Only GeometryCollections and + Polygons have component Geometry's; for Polygons they are the LinearRings + of the shell and holes. + + The filter to apply to this Geometry. + + + + + + + + + + Converts this Geometry to normal form (or + canonical form ). Normal form is a unique representation for Geometry + s. It can be used to test whether two Geometrys are equal + in a way that is independent of the ordering of the coordinates within + them. Normal form equality is a stronger condition than topological + equality, but weaker than pointwise equality. The definitions for normal + form use the standard lexicographical ordering for coordinates. "Sorted in + order of coordinates" means the obvious extension of this ordering to + sequences of coordinates. + + + + + Returns whether this Geometry is greater than, equal to, + or less than another Geometry. + If their classes are different, they are compared using the following + ordering: + Point (lowest), + MultiPoint, + LineString, + LinearRing, + MultiLineString, + Polygon, + MultiPolygon, + GeometryCollection (highest). + If the two Geometrys have the same class, their first + elements are compared. If those are the same, the second elements are + compared, etc. + + A Geometry with which to compare this Geometry + + A positive number, 0, or a negative number, depending on whether + this object is greater than, equal to, or less than o, as + defined in "Normal Form For Geometry" in the NTS Technical + Specifications. + + + + + Returns whether this Geometry is greater than, equal to, + or less than another Geometry having the same class. + + A Geometry having the same class as this Geometry. + + A positive number, 0, or a negative number, depending on whether + this object is greater than, equal to, or less than o, as + defined in "Normal Form For Geometry" in the NTS Technical + Specifications. + + + + + Returns a buffer region around this Geometry having the given + width and with a specified number of segments used to approximate curves. + The buffer of a Geometry is the Minkowski sum of the Geometry with + a disc of radius distance. Curves in the buffer polygon are + approximated with line segments. This method allows specifying the + accuracy of that approximation. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + The number of segments to use to approximate a quadrant of a circle. + Cap Style to use for compute buffer. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + + Returns a buffer region around this Geometry having the given + width and with a specified number of segments used to approximate curves. + The buffer of a Geometry is the Minkowski sum of the Geometry with + a disc of radius distance. Curves in the buffer polygon are + approximated with line segments. This method allows specifying the + accuracy of that approximation. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + The number of segments to use to approximate a quadrant of a circle. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + + Returns a buffer region around this Geometry having the given width. + The buffer of a Geometry is the Minkowski sum or difference of the Geometry with a disc of radius distance. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + Cap Style to use for compute buffer. + + All points whose distance from this Geometry + are less than or equal to distance. + + + + + Returns a buffer region around this Geometry having the given width. + The buffer of a Geometry is the Minkowski sum or difference of the Geometry with a disc of radius distance. + + + The width of the buffer, interpreted according to the + PrecisionModel of the Geometry. + + + All points whose distance from this Geometry + are less than or equal to distance. + + + + + Returns true if other.within(this) returns true. + + The Geometry with which to compare this Geometry. + true if this Geometry contains other. + + + + Rotates the geometry by the given radian angle around the Origin. + + Coordinate the geometry gets rotated around. + Rotation angle in radian. + + + + This is convenient for casting troublesome basic geometries into fully fledged geometries + without having to parse them each time. It uses the constructors, and effectively the default factory. + + + + + + + Returns true if the array contains any non-empty Geometrys. + + an array of Geometrys; no elements may be null + + true if any of the Geometrys + IsEmpty methods return false. + + + + + Returns true if the array contains any null elements. + + an array to validate. + true if any of arrays elements are null. + + + + Returns the Well-known Text representation of this Geometry. + For a definition of the Well-known Text format, see the OpenGIS Simple + Features Specification. + + + The Well-known Text representation of this Geometry. + + + + + Allows each geometry to control any custom behavior that cannot be solved with MemberwiseClone. + The Coordinates of the geometry are already duplicated. + + + + + + Returns whether the two Geometrys are equal, from the point + of view of the EqualsExact method. Called by EqualsExact + . In general, two Geometry classes are considered to be + "equivalent" only if they are the same class. An exception is LineString + , which is considered to be equivalent to its subclasses. + + The Geometry with which to compare this Geometry for equality. + + true if the classes of the two Geometry + s are considered to be equal by the equalsExact method. + + + + + Throws an exception if g's class is GeometryCollection. + (Its subclasses do not trigger an exception). + + + The Geometry to check; + throws ArgumentException if g is a GeometryCollection + but not one of its subclasses. + + + + + Returns the minimum and maximum x and y values in this Geometry + , or a null Envelope if this Geometry is empty. + Unlike EnvelopeInternal, this method calculates the Envelope + each time it is called; EnvelopeInternal caches the result + of this method. + + + This Geometrys bounding box; if the Geometry + is empty, Envelope.IsNull will return true. + + + + + Returns the first non-zero result of CompareTo encountered as + the two Collections are iterated over. If, by the time one of + the iterations is complete, no non-zero result has been encountered, + returns 0 if the other iteration is also complete. If b + completes before a, a positive number is returned; if a + before b, a negative number. + + The left hand side ArrayList to compare. + The right hand side ArrayList to compare. + The first non-zero compareTo result, if any; otherwise, zero. + + + + + + + + + + + + + Rotates the given coordinate by the given radian angle around the Origin. + + Coordinate the geometry gets rotated around. + X-value of the coordinate that gets rotated. + Y-value of the coordinate that gets rotated. + Rotation angle in radian. + + + + + + + + + + + + Tests the specified IEnvelope for an intersection with this Geometry + + The IEnvelope to test + True if the envelope intersects this geometry + + + + Tests the specified location to see if it intersects with this geometry + + The double X coordinate to test + The double Y coordinate to test + Boolean, true if the specified coordinates intersect this geometry + + + + Returns this Geometrys bounding box. If this Geometry + is the empty point, returns an empty Point. If the Geometry + is a point, returns a non-empty Point. Otherwise, returns a + Polygon whose points are (minx, miny), (maxx, miny), (maxx, + maxy), (minx, maxy), (minx, miny). + + + An empty Point (for empty Geometrys), a + Point (for Points) or a Polygon + (in all other cases). + + + + + + + + + + Gets the factory which contains the context in which this point was created. + + The factory for this point. + + + + Gets/Sets the user data object for this point, if any. + A simple scheme for applications to add their own custom data to a Geometry. + An example use might be to add an object representing a Coordinate Reference System. + notice that user data objects are not present in geometries created by + construction methods. + + + + + Gets/Sets the ID of the Spatial Reference System used by the Geometry. + NTS supports Spatial Reference System information in the simple way + defined in the SFS. A Spatial Reference System ID (SRID) is present in + each Geometry object. Geometry provides basic + accessor operations for this field, but no others. The SRID is represented + as an integer. + + + + + Clarifies which subtype of geometry we are working with + + + + + Returns the PrecisionModel used by the Geometry. + + + the specification of the grid of allowable points, for this + Geometry and all other Geometrys. + + + + + Returns a vertex of this Geometry. + + + a Coordinate which is a vertex of this Geometry. + Returns null if this Geometry is empty. + + + + + Returns this Geometry s vertices. If you modify the coordinates + in this array, be sure to call GeometryChanged afterwards. + The Geometrys contained by composite Geometrys + must be Geometry's; that is, they must implement Coordinates. + + The vertices of this Geometry. + + + + Returns the count of this Geometrys vertices. The Geometry + s contained by composite Geometrys must be + Geometry's; that is, they must implement NumPoints. + + The number of vertices in this Geometry. + + + + Returns the number of Geometryes in a GeometryCollection, + or 1, if the geometry is not a collection. + + + + + Returns false if the Geometry not simple. + Subclasses provide their own definition of "simple". If + this Geometry is empty, returns true. + In general, the SFS specifications of simplicity seem to follow the + following rule: + A Geometry is simple if the only self-intersections are at boundary points. + For all empty Geometrys, IsSimple==true. + + + false if this Geometry has any points of + self-tangency, self-intersection or other anomalous points. + + + + + Tests the validity of this Geometry. + Subclasses provide their own definition of "valid". + + true if this Geometry is valid. + + + + Returns whether or not the set of points in this Geometry is empty. + + true if this Geometry equals the empty point. + + + + Returns the area of this Geometry. + Areal Geometries have a non-zero area. + They override this function to compute the area. + Others return 0.0 + + The area of the Geometry. + + + + Returns the length of this Geometry. + Linear geometries return their length. + Areal geometries return their perimeter. + They override this function to compute the length. + Others return 0.0 + + The length of the Geometry. + + + + Computes an interior point of this Geometry. + An interior point is guaranteed to lie in the interior of the Geometry, + if it possible to calculate such a point exactly. Otherwise, + the point may lie on the boundary of the point. + + A Point which is in the interior of this Geometry. + + + + Returns the dimension of this Geometry. + + + The dimension of the class implementing this interface, whether + or not this object is the empty point. + + + + + Returns the dimension of this Geometrys inherent boundary. + + + The dimension of the boundary of the class implementing this + interface, whether or not this object is the empty point. Returns + Dimension.False if the boundary is the empty point. + + + + + Returns the minimum and maximum x and y values in this Geometry + , or a null Envelope if this Geometry is empty. + + + This Geometrys bounding box; if the Geometry + is empty, Envelope.IsNull will return true. + + + + + Gets the IEnvelope that contains this geometry + + + + + + + + + + + Returns the boundary, or the empty point if this Geometry + is empty. For a discussion of this function, see the OpenGIS Simple + Features Specification. As stated in SFS Section 2.1.13.1, "the boundary + of a Geometry is a set of Geometries of the next lower dimension." + + The closure of the combinatorial boundary of this Geometry. + + + + Computes the centroid of this Geometry. + The centroid is equal to the centroid of the set of component Geometries of highest + dimension (since the lower-dimension geometries contribute zero "weight" to the centroid). + + A Point which is the centroid of this Geometry. + + + + This will be overridden by the specific feature type since this is abstract + + + + + Geometry classes support the concept of applying + an IGeometryComponentFilter filter to the Geometry. + The filter is applied to every component of the Geometry + which is itself a Geometry. + (For instance, all the LinearRings in Polygons are visited.) + An IGeometryComponentFilter filter can either + record information about the Geometry + or change the Geometry in some way. + IGeometryComponentFilter is an example of the Gang-of-Four Visitor pattern. + + + + + Performs an operation with or on geom. + + A Geometry to which the filter is applied. + + + + Basic implementation of GeometryCollection. + + + + + Specific topology functions for Mutigeometry code + + + + + Returns the number of geometries contained by this . + + + + + Returns the iTh element in the collection. + + + + + + + Return true if all features in collection are of the same type. + + + + + Gets a System.Array of all the geometries in this collection + + + + + Represents an empty GeometryCollection. + + + + + Internal representation of this GeometryCollection. + + + + + + + + The Geometrys for this GeometryCollection, + or null or an empty array to create the empty + point. Elements may be empty Geometrys, + but not nulls. + + + For create this is used a standard + with == . + + + + + This should only be used by derived classes because it does not actually set the geometries + + + + + This should only be used by derived classes because it does not actually set the geometries + + Specifies the factory that should be used when creating shapes in this multigeometry + + + + + + + The Geometrys for this GeometryCollection, + or null or an empty array to create the empty + point. Elements may be empty Geometrys, + but not nulls. + + + + + + If the input geometry is a singular basic geometry, this will become a collection of 1 geometry. + If the input geometry is a multi- basic geometry, this will simply ensure that each member + is upgraded to a full geometry. + + + + + + + Creates a new Geometry Collection + + + + + + + Given the specified test point, this checks each segment, and will + return the closest point on the specified segment. + + The point to test. + + + + + + + + + + + + This returns the index'th BasicGeometry where index is between 0 and NumGeometries - 1. + If there is only one geometry, this will return this object. + + An integer index between 0 and NumGeometries - 1 specifying the basic geometry + A BasicGeometry representing only the specific sub-geometry specified + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a GeometryCollectionEnumerator: + this IEnumerator returns the parent geometry as first element. + In most cases is more useful the code + geometryCollectionInstance.Geometries.GetEnumerator(): + this returns an IEnumerator over geometries composing GeometryCollection. + + + + + + Handles the duplication process for geometry collections + + + + + + + + + + + Rotates the geometries of the GeometryCollection by the given radian angle around the Origin. + + Coordinate the geometries get rotated around. + Rotation angle in radian. + + + + + + + + + Collects all coordinates of all subgeometries into an Array. + Notice that while changes to the coordinate objects themselves + may modify the Geometries in place, the returned Array as such + is only a temporary container which is not synchronized back. + + The collected coordinates. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Uses an Enumeration to clarify the type of geometry + + + + + + + + + + + + + + + Returns the area of this GeometryCollection. + + + + + Returns the length of this GeometryCollection. + + + + + Return true if all features in collection are of the same type. + + + + + Returns the iTh element in the collection. + + + + + + + Returns the number of geometries contained by this . + + + + + Gets the Envelope that envelops this GeometryCollection + + + + + Iterates over all Geometry's in a GeometryCollection. + Implements a pre-order depth-first traversal of the GeometryCollection + (which may be nested). The original GeometryCollection is + returned as well (as the first object), as are all sub-collections. It is + simple to ignore the GeometryCollection objects if they are not + needed. + + + + + The number of Geometrys in the the GeometryCollection. + + + + + The GeometryCollection being iterated over. + + + + + Indicates whether or not the first element (the GeometryCollection + ) has been returned. + + + + + The index of the Geometry that will be returned when next + is called. + + + + + The iterator over a nested GeometryCollection, or null + if this GeometryCollectionIterator is not currently iterating + over a nested GeometryCollection. + + + + + Constructs an iterator over the given GeometryCollection. + + + The collection over which to iterate; also, the first + element returned by the iterator. + + + + + + + + + + + + + + + + + + + + + A GeometryCollectionNotSupportedException Class + + + + + Creates a new instance of GeometryCollectionNotSupportedException + + + + + Supplies a set of utility methods for building Geometry objects from lists + of Coordinates. + + + + + Factory for Geometry stuff + + + + + Generic constructor that parses a list and tries to form a working + object that implements MapWindow.Interfaces.IGeometry + + some list of things + An object that implements DotSpatial.Geometries.IGeometry + + + + Method to produce a point given a coordinate + + An object that implements DotSpatial.Geometries.ICoordinate + An object that implements DotSpatial.Geometries.IPoint + + + + Creates a new object that implements DotSpatial.Geometries.MultiLineString + given an array of objects that implement DotSpatial.Geometries.ILineStringBase + + The Array of objects that implement DotSpatial.Geometries.IlineStringBase + A new MultiLineString that implements IMultiLineString + + + + Creates an object that implements DotSpatial.Geometries.IGeometryCollection + from an array of objects that implement DotSpatial.Geometries.IGeometry + + An array of objects that implement DotSpatial.Geometries.IGeometry + A new object that implements DotSpatial.Geometries.IGeometryCollection + + + + Creates an object that implements DotSpatial.Geometries.IMultiPolygon from an array of + objects that implement DotSpatial.Geometries.IPolygon + + An Array of objects that implement DotSpatial.Geometries.IPolygon + An object that implements DotSpatial.Geometries.IMultiPolygon + + + + Creates an object that implements DotSpatial.Geometries.ILinearRing from an array of DotSpatial.Geometries.ICoordinates + + An array of objects that implement ICoordinate + An object that implements DotSpatial.Geometries.ILinearRing + + + + Creates an object that implements DotSpatial.Geometries.IMultiPoint from an array of objects that implement DotSpatial.Geometries.ICoordinate + + An array of objects that implement DotSpatial.Geometries.ICoordinate + An object that implements DotSpatial.Geometries.IMultiPoint + + + + Creates an object that implements DotSpatial.Geometries.IMultiPoint from an array of objects that implement DotSpatial.Geometries.ICoordinate + + An array of objects that implement DotSpatial.Geometries.ICoordinate + An object that implements DotSpatial.Geometries.IMultiPoint + + + + Creates an object that implements DotSpatial.Geometries.ILineString from an array of objects that implement DotSpatial.Geometries.ICoordinate + + An array of objects that implement DotSpatial.Geometries.ICoordinate + A DotSpatial.Geometries.ILineString + + + + Creates an object that implements DotSpatial.Geometries.IGeometry that is a copy + of the specified object that implements DotSpatial.Geometries.IGeometry + + An object that implements DotSpatial.Geometries.IGeometry + An copy of the original object that implements DotSpatial.Geometries.IGeometry + + + + Creates an object that implements DotSpatial.Geometries.IPolygon given a specified + DotSpatial.Geometries.ILinearRing shell and an array of + DotSpatial.Geometries.ILinearRing that represent the holes + + The outer perimeter of the polygon, represented by an object that implements DotSpatial.Geometries.ILinearRing + The interior holes in the polygon, represented by an array of objects that implements DotSpatial.Geometries.ILinearRing + An object that implements DotSpatial.Geometries.IPolygon + + + + Floating reference + + + + + + + + + + + + + + + + + + + + CoordinateSequenceFactory that can manufacture a coordinate sequence + + + + + A predefined with == . + + + + + A predefined with + == . + + A shortcut for . + + + + A predefined with + == . + + + + + A predefined with + == . + + + + + Constructs a GeometryFactory that generates Geometries having the given + PrecisionModel, spatial-reference ID, and CoordinateSequence implementation. + + + + + + + + Constructs a GeometryFactory object from any valid IGeometryFactory interface + + + + + + Constructs a GeometryFactory pertaining to a specific _coordinateSequenceFactory + using any valid IGeometryFactory and ICoordinateSequenceFactory interface + + An IGeometryFactory Interface + An ICoordianteSequenceFactory interface + + + + Constructs a GeometryFactory that generates Geometries having the given + CoordinateSequence implementation, a double-precision floating PrecisionModel and a + spatial-reference ID of 0. + + + + + + Constructs a GeometryFactory that generates Geometries having the given + {PrecisionModel} and the default CoordinateSequence + implementation. + + The PrecisionModel to use. + + + + Constructs a GeometryFactory that generates Geometries having the given + PrecisionModel and spatial-reference ID, and the default CoordinateSequence + implementation. + + The PrecisionModel to use. + The SRID to use. + + + + Constructs a GeometryFactory that generates Geometries having a floating + PrecisionModel and a spatial-reference ID of 0. + + + + + Creates a Point using the given Coordinate; a null Coordinate will create + an empty Geometry. + + + + + + Creates a MultiLineString using the given LineStrings; a null or empty + array will create an empty MultiLineString. + + LineStrings, each of which may be empty but not null- + + + + Creates a GeometryCollection using the given Geometries; a null or empty + array will create an empty GeometryCollection. + + Geometries, each of which may be empty but not null. + + + + Creates a MultiPolygon using the given Polygons; a null or empty array + will create an empty Polygon. The polygons must conform to the + assertions specified in the OpenGIS Simple Features + Specification for SQL. + + Polygons, each of which may be empty but not null. + + + + Creates a LinearRing using the given Coordinates; a null or empty array will + create an empty LinearRing. The points must form a closed and simple + linestring. Consecutive points must not be equal. + + An array without null elements, or an empty array, or null. + + + + Creates a MultiPoint using the given Points; a null or empty array will + create an empty MultiPoint. + + An array without null elements, or an empty array, or null. + + + + Creates an object that implements DotSpatial.Geometries.IMultiPoint from an array of objects that implement DotSpatial.Geometries.ICoordinate + + An array of objects that implement DotSpatial.Geometries.ICoordinate + An object that implements DotSpatial.Geometries.IMultiPoint + + + + Constructs a Polygon with the given exterior boundary and + interior boundaries. + + + The outer boundary of the new Polygon, or + null or an empty LinearRing if + the empty point is to be created. + + + The inner boundaries of the new Polygon, or + null or empty LinearRing s if + the empty point is to be created. + + + + + + Build an appropriate Geometry, MultiGeometry, or + GeometryCollection to contain the Geometrys in + it. + + If geomList contains a single Polygon, + the Polygon is returned. + If geomList contains several Polygons, a + MultiPolygon is returned. + If geomList contains some Polygons and + some LineStrings, a GeometryCollection is + returned. + If geomList is empty, an empty GeometryCollection + is returned. + Notice that this method does not "flatten" Geometries in the input, and hence if + any MultiGeometries are contained in the input a GeometryCollection containing + them will be returned. + + + The Geometrys to combine. + A Geometry of the "smallest", "most type-specific" class that can contain the elements of geomList. + + + + Creates a LineString using the given Coordinates; a null or empty array will + create an empty LineString. Consecutive points must not be equal. + + An array without null elements, or an empty array, or null. + + + + + + + + + A clone of g based on a CoordinateSequence created by this + GeometryFactory's CoordinateSequenceFactory. + + + + + + + + + + + + + Converts the List to an array. + + The List of Points to convert. + The List in array format. + + + + Converts the List to an array. + + The list of Geometry's to convert. + The List in array format. + + + + Converts the List to an array. + + The List of LinearRings to convert. + The List in array format. + + + + Converts the List to an array. + + The List of LineStrings to convert. + The List in array format. + + + + Converts the List to an array. + + The List of Polygons to convert. + The List in array format. + + + + Converts the List to an array. + + The List of MultiPolygons to convert. + The List in array format. + + + + Converts the List to an array. + + The List of MultiLineStrings to convert. + The List in array format. + + + + Converts the List to an array. + + The List of MultiPoints to convert. + The List in array format. + + + + If the Envelope is a null Envelope, returns an + empty Point. If the Envelope is a point, returns + a non-empty Point. If the Envelope is a + rectangle, returns a Polygon whose points are (minx, miny), + (maxx, miny), (maxx, maxy), (minx, maxy), (minx, miny). + + The Envelope to convert to a Geometry. + + An empty Point (for null Envelope + s), a Point (when min x = max x and min y = max y) or a + Polygon (in all other cases) + throws a TopologyException if coordinates + is not a closed linestring, that is, if the first and last coordinates + are not equal. + + + + + Creates a MultiPoint using the given CoordinateSequence; a null or empty CoordinateSequence will + create an empty MultiPoint. + + A CoordinateSequence possibly empty, or null. + + + + + + + + + + A default IGeometryFactory. + + + + + Returns the Fixed geometry factory + + + + + The floating IGeometryFactory + + + + + A floating Single IGeometryFactory + + + + + Returns the PrecisionModel that Geometries created by this factory + will be associated with. + + + + + + + + + + + + + + + A GeometryEditorOperation which modifies the coordinate list of a Geometry. + Operates on Geometry subclasses which contains a single coordinate list. + + + + + A interface which specifies an edit operation for Geometries. + + + + + Supports creating a new Geometry which is a modification of an existing one. + Geometry objects are intended to be treated as immutable. + This class allows you to "modify" a Geometry + by traversing it and creating a new Geometry with the same overall structure but + possibly modified components. + The following kinds of modifications can be made: + + The values of the coordinates may be changed. + Changing coordinate values may make the result Geometry invalid; + this is not checked by the GeometryEditor. + + The coordinate lists may be changed + (e.g. by adding or deleting coordinates). + The modifed coordinate lists must be consistent with their original parent component + (e.g. a LinearRing must always have at least 4 coordinates, and the first and last + coordinate must be equal). + + Components of the original point may be deleted + (e.g. holes may be removed from a Polygon, or LineStrings removed from a MultiLineString). + Deletions will be propagated up the component tree appropriately. + + Notice that all changes must be consistent with the original Geometry's structure + (e.g. a Polygon cannot be collapsed into a LineString). + The resulting Geometry is not checked for validity. + If validity needs to be enforced, the new Geometry's IsValid should be checked. + + + + + The factory used to create the modified Geometry. + + + + + Creates a new GeometryEditor object which will create + an edited Geometry with the same {GeometryFactory} as the input Geometry. + + + + + Creates a new GeometryEditor object which will create + the edited Geometry with the given GeometryFactory. + + The GeometryFactory to create the edited Geometry with. + + + + Edit the input Geometry with the given edit operation. + Clients will create subclasses of GeometryEditorOperation or + CoordinateOperation to perform required modifications. + + The Geometry to edit. + The edit operation to carry out. + A new Geometry which is the result of the editing. + + + + + + + + + + + + + + + + + + + + A GeometryEditorOperation which modifies the coordinate list of a Geometry. + Operates on Geometry subclasses which contains a single coordinate list. + + + + + A interface which specifies an edit operation for Geometries. + + + + + Edits a Geometry by returning a new Geometry with a modification. + The returned Geometry might be the same as the Geometry passed in. + + The Geometry to modify. + + The factory with which to construct the modified Geometry + (may be different to the factory of the input point). + + A new Geometry which is a modification of the input Geometry. + + + + + + + + + + + + Edits the array of Coordinates from a Geometry. + + The coordinate array to operate on. + The point containing the coordinate list. + An edited coordinate array (which may be the same as the input). + + + + Writes the GML representation of the features of Topology model. + Uses GML 2.1.1 Geometry.xsd schema for base for features. + + + + + Returns an XmlReader with feature informations. + Use XmlDocument.Load(XmlReader) for obtain a XmlDocument to work. + + + + + + + Writes a GML feature into a generic Stream, such a FileStream or other streams. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets corrent length for Byte Stream. + + + + + + + Sets corrent length for Byte Stream. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Formatter for double values of coordinates + + + + + This is the simpler interface to implement + + + + + This is a BasicGeometry that contains information about a specific point. + The easier way to do this is have the IPoint inherit the IBasicGeometry + and the store implementations for ICoordinate. + + + + + Adds any topology functions to the basic Vector ICoordinate + + + + + Return HashCode. + + + + + A Measure coordinate + + + + + A 1D coordinate only has a valid X. A 2D coordinate has X and Y, while a 3D coordinate + has X, Y, and Z. Presumably this is open ended and could support higher coordinates, + but this coordinate is not responsible for storing values beyond its dimension and + may cause exceptions if a value higher than the dimension is used. + + + + + Gets a double value for the specified zero based ordinate. + + The zero based integer ordinate. + A double value. + + + + Gets or sets the values as a one dimensional array of doubles. + + + + + The X coordinate + + + + + The Y coordinate + + + + + The Z coordinate + + + + + This supports some of the basic data-related capabilities of a polygon, but no topology functions. + Each of these uses the specifically different nomenclature so that the parallel concepts in a + full Polygon can return the appropriate datatype. Since Polygon will Implement IPolygonBase, it + is the responsibility of the developer to perform the necessary casts when returning this + set from the more complete topology classes. + + + + + Gets the list of Interior Rings in the form of ILineStringBase objects + + + + + Gets the exterior ring of the polygon as an ILineStringBase. + + + + + Gets the count of holes or interior rings + + + + + ICoordinateF + + + + + Gets or sets the X coordinate using a single precision floating point + + + + + Gets or sets the Y coordinate using a single precision floating point value + + + + + Gets or sets the Z coordinate using a single precision floating point value + + + + + Geometry classes support the concept of applying a + coordinate filter to every coordinate in the Geometry. A + coordinate filter can either record information about each coordinate or + change the coordinate in some way. Coordinate filters implement the + interface ICoordinateFilter. + ICoordinateFilter is an example of the Gang-of-Four Visitor pattern. + Coordinate filters can be + used to implement such things as coordinate transformations, centroid and + envelope computation, and many other functions. + + + + + Performs an operation with or on coord. + + Coordinate to which the filter is applied. + + + + GeometryCollection classes support the concept of + applying a IGeometryFilter to the Geometry. + The filter is applied to every element Geometry. + A IGeometryFilter can either record information about the Geometry + or change the Geometry in some way. + IGeometryFilter is an example of the Gang-of-Four Visitor pattern. + + + + + Performs an operation with or on geom. + + A Geometry to which the filter is applied. + + + + A Dimensionally Extended Nine-Intersection Model (DE-9IM) matrix. This class + can used to represent both computed DE-9IM's (like 212FF1FF2) as well as + patterns for matching them (like T*T******). + Methods are provided to: + Set and query the elements of the matrix in a convenient fashion + convert to and from the standard string representation (specified in + SFS Section 2.1.13.2). + Test to see if a matrix matches a given pattern string. + For a description of the DE-9IM, see the OpenGIS Simple Features + Specification for SQL. + + + + + Adds one matrix to another. + Addition is defined by taking the maximum dimension value of each position + in the summand matrices. + + The matrix to add. + + + + Changes the value of one of this IntersectionMatrixs + elements. + + + The row of this IntersectionMatrix, + indicating the interior, boundary or exterior of the first Geometry + + + The column of this IntersectionMatrix, + indicating the interior, boundary or exterior of the second Geometry + + + The new value of the element + + + + + Changes the elements of this IntersectionMatrix to the + dimension symbols in dimensionSymbols. + + + Nine dimension symbols to which to set this IntersectionMatrix + s elements. Possible values are {T, F, *, 0, 1, 2} + + + + + Changes the specified element to minimumDimensionValue if the + element is less. + + + The row of this IntersectionMatrix + , indicating the interior, boundary or exterior of the first Geometry. + + + The column of this IntersectionMatrix + , indicating the interior, boundary or exterior of the second Geometry. + + + The dimension value with which to compare the + element. The order of dimension values from least to greatest is + True, False, Dontcare, 0, 1, 2. + + + + + If row >= 0 and column >= 0, changes the specified element to minimumDimensionValue + if the element is less. Does nothing if row is smaller to 0 or column is smaller to 0. + + + + + + + + For each element in this IntersectionMatrix, changes the + element to the corresponding minimum dimension symbol if the element is + less. + + + Nine dimension symbols with which to + compare the elements of this IntersectionMatrix. The + order of dimension values from least to greatest is Dontcare, True, False, 0, 1, 2. + + + + + Changes the elements of this IntersectionMatrix to dimensionValue. + + + The dimension value to which to set this IntersectionMatrix + s elements. Possible values True, False, Dontcare, 0, 1, 2}. + + + + + Returns the value of one of this IntersectionMatrixs + elements. + + + The row of this IntersectionMatrix, indicating + the interior, boundary or exterior of the first Geometry. + + + The column of this IntersectionMatrix, + indicating the interior, boundary or exterior of the second Geometry. + + The dimension value at the given matrix position. + + + + Returns true if this IntersectionMatrix is + FF*FF****. + + + true if the two Geometrys related by + this IntersectionMatrix are disjoint. + + + + + Returns true if isDisjoint returns false. + + + true if the two Geometrys related by + this IntersectionMatrix intersect. + + + + + Returns true if this IntersectionMatrix is + FT*******, F**T***** or F***T****. + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix touch; Returns false + if both Geometrys are points. + + + + + Returns true if this IntersectionMatrix is + T*T****** (for a point and a curve, a point and an area or a line + and an area) 0******** (for two curves). + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix cross. For this + function to return true, the Geometrys must + be a point and a curve; a point and a surface; two curves; or a curve + and a surface. + + + + + Returns true if this IntersectionMatrix is + T*F**F***. + + true if the first Geometry is within the second. + + + + Returns true if this IntersectionMatrix is + T*****FF*. + + true if the first Geometry contains the second. + + + + Returns true if this IntersectionMatrix is T*****FF* + or *T****FF* or ***T**FF* or ****T*FF*. + + true if the first Geometry covers the second + + + + Returns true if this IntersectionMatrix is T*F**FFF*. + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix are equal; the + Geometrys must have the same dimension for this function + to return true. + + + + + Returns true if this IntersectionMatrix is + T*T***T** (for two points or two surfaces) + 1*T***T** (for two curves). + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix overlap. For this + function to return true, the Geometrys must + be two points, two curves or two surfaces. + + + + + Returns whether the elements of this IntersectionMatrix + satisfies the required dimension symbols. + + + Nine dimension symbols with which to + compare the elements of this IntersectionMatrix. Possible + values are {T, F, *, 0, 1, 2}. + + + true if this IntersectionMatrix + matches the required dimension symbols. + + + + + Transposes this IntersectionMatrix. + + This IntersectionMatrix as a convenience, + + + + Returns a nine-character String representation of this IntersectionMatrix. + + + The nine dimension symbols of this IntersectionMatrix + in row-major order. + + + + + A closed, non-self intersecting Linestring + + + + + This adds the basic functionality of a + + + + + Retrieves a topologically complete IPoint for the n'th coordinate in the + 0 based index of point values. + + Integer index specifying the point to retrieve + IPoint to retrieve + + + + Returns an ILineString that has its coordinates completely reversed + + + + + + Returns true if the given point is a vertex of this LineString. + + The Coordinate to check. + true if pt is one of this LineString's vertices. + + + + Gets a topologically complete IPoint for the first coordinate + + + + + Gets a topologically complete IPoint for the last coordinate + + + + + If the first coordinate is the same as the final coordinate, then the + linestring is closed. + + + + + If the coordinates listed for the linestring are both closed and simple then + they qualify as a linear ring. + + + + + Returns the value of the angle between the + and the . + + + + + Represents a line segment defined by two Coordinates. + Provides methods to compute various geometric properties + and relationships of line segments. + This class is designed to be easily mutable (to the extent of + having its contained points public). + This supports a common pattern of reusing a single LineSegment + object as a way of computing segment properties on the + segments defined by arrays or lists of Coordinates. + + + + + This is a low-level place holder for a linestring with only two points. + This does not inherit geometry (Use ILineString for those features). + The Idea is that this provides just enough information to communicate + the definition of a LineSegment. + + + + + The first of two coordinates that defines the segment + + + + + The second of two endpoints that defines the segment + + + + + Returns an ICoordinate for the point specified by index i. + + Integer point index. 0 returns the first point, 1 returns the second. + ICoordinate + + + + Sets the two coordinates to match the coordinates in the specified ILineSegment + + + + + + Sets the two coordinates of this ILineString based on the ICoordinate + values passed. + + An ICoordinate that specifies the startpoint of the segment + An ICoordinate that specifies the location of the endpoint of the segment + + + + Determines the orientation of a LineSegment relative to this segment. + The concept of orientation is specified as follows: + Given two line segments A and L, + A is to the left of a segment L if A lies wholly in the + closed half-plane lying to the left of L + A is to the right of a segment L if A lies wholly in the + closed half-plane lying to the right of L + otherwise, A has indeterminate orientation relative to L. This + happens if A is collinear with L or if A crosses the line determined by L. + + The LineSegment to compare. + + 1 if seg is to the left of this segment, + -1 if seg is to the right of this segment, + 0 if seg has indeterminate orientation relative to this segment. + + + + + Reverses the direction of the line segment. + + + + + Puts the line segment into a normalized form. + This is useful for using line segments in maps and indexes when + topological equality rather than exact equality is desired. + + + + + Computes the distance between this line segment and another one. + + + + + + + Computes the distance between this line segment and a point. + + + + + Computes the perpendicular distance between the (infinite) line defined + by this line segment and a point. + + + + + + + Compute the projection factor for the projection of the point p + onto this LineSegment. The projection factor is the constant k + by which the vector for this segment must be multiplied to + equal the vector for the projection of p. + + + + + + + Compute the projection of a point onto the line determined + by this line segment. + Notice that the projected point + may lie outside the line segment. If this is the case, + the projection factor will lie outside the range [0.0, 1.0]. + + + + + + + Project a line segment onto this line segment and return the resulting + line segment. The returned line segment will be a subset of + the target line line segment. This subset may be null, if + the segments are oriented in such a way that there is no projection. + Notice that the returned line may have zero length (i.e. the same endpoints). + This can happen for instance if the lines are perpendicular to one another. + + The line segment to project. + The projected line segment, or null if there is no overlap. + + + + Computes the closest point on this line segment to another point. + + The point to find the closest point to. + + A Coordinate which is the closest point on the line segment to the point p. + + + + + Computes the closest points on a line segment. + + + + A pair of Coordinates which are the closest points on the line segments. + + + + + Computes an intersection point between two segments, if there is one. + There may be 0, 1 or many intersection points between two segments. + If there are 0, null is returned. If there is 1 or more, a single one + is returned (chosen at the discretion of the algorithm). If + more information is required about the details of the intersection, + the {RobustLineIntersector} class should be used. + + + An intersection point, or null if there is none. + + + + Performs an intersection of this line segment with the specified envelope + + The envelope to compare against + An ILineSegment, or null if there is no intersection. + + + + Determines if any portion of this segment intersects the specified extent. + + The + Boolean, true if this line segment intersects the specified envelope + + + + Returns true if other is + topologically equal to this LineSegment (e.g. irrespective + of orientation). + + + A LineSegment with which to do the comparison. + + + true if other is a LineSegment + with the same values for the x and y ordinates. + + + + + Returns Well Known Text for a LineString with just 2 points + + String: Well Known Text + + + + Computes the length of the line segment. + + The length of the line segment. + + + + Tests whether the segment is horizontal. + + true if the segment is horizontal. + + + + Tests whether the segment is vertical. + + true if the segment is vertical. + + + + The angle this segment makes with the x-axis (in radians). + + + + + IMatrix + + + + + Performs the matrix multiplication against the specified matrix + + + + + + + Gets the number of rows + + + + + Gets the number of columns + + + + + Operations on 3D vectors can be carried out using a 4D Matrix. This interface + provides access to methods that are specific to 3D vector opperations. + + + + + IMatrix4 + + + + + Multiplies every value in the specified n x m matrix by the specified double inScalar. + + The double precision floating point to multiply all the members against + A new n x m matrix + + + + This replaces the underlying general multiplication with a more specific type. + + + + + + + Gets or sets the values for this matrix of double precision coordinates + + + + + Specifies amount to rotate + + + + + + + Multiplies the current matrix by a rotation matrix corresponding + to the specified angle to create rotation in the Z direction. + + The angle to rotate in degrees. + + + + + Rotates the current matrix around the Y axis by multiplying the + current matrix by a rotation matrix. + + + + + + + Translates the matrix by the specified amount in each of the directions + by multiplying by a translation matrix created from the specified values. + + The translation in the X coordinate + The translation in the Y coordinate + The translation in the Z coordinate + + + + + A type specific Geometry collection that deals with ILineStrings + + + + + Changes the default indexer to assume that the members are ILineString instead of simply IGeometry + + + + + + + A type specific MultiGeometry that specifically uses points + + + + + Gets or sets the point that resides at the specified index + + A zero-based integer index specifying the point to get or set + + + + + specifically for handling + + + + + A Dimensionally Extended Nine-Intersection Model (DE-9IM) matrix. This class + can used to represent both computed DE-9IM's (like 212FF1FF2) as well as + patterns for matching them (like T*T******). + Methods are provided to: + Set and query the elements of the matrix in a convenient fashion + convert to and from the standard string representation (specified in + SFS Section 2.1.13.2). + Test to see if a matrix matches a given pattern string. + For a description of the DE-9IM, see the OpenGIS Simple Features + Specification for SQL. + + + + + Internal representation of this IntersectionMatrix. + + + + + Creates an IntersectionMatrix with Null location values. + + + + + Creates an IntersectionMatrix with the given dimension + symbols. + + A string of nine dimension symbols in row major order. + + + + Creates an IntersectionMatrix with the same elements as + other. + + An IntersectionMatrix to copy. + + + + Adds one matrix to another. + Addition is defined by taking the maximum dimension value of each position + in the summand matrices. + + The matrix to add. + + + + Changes the value of one of this IntersectionMatrixs + elements. + + + The row of this IntersectionMatrix, + indicating the interior, boundary or exterior of the first Geometry + + + The column of this IntersectionMatrix, + indicating the interior, boundary or exterior of the second Geometry + + + The new value of the element + + + + + Changes the elements of this IntersectionMatrix to the + dimension symbols in dimensionSymbols. + + + Nine dimension symbols to which to set this IntersectionMatrix + s elements. Possible values are {T, F, *, 0, 1, 2} + + + + + Changes the specified element to minimumDimensionValue if the + element is less. + + + The row of this IntersectionMatrix + , indicating the interior, boundary or exterior of the first Geometry. + + + The column of this IntersectionMatrix + , indicating the interior, boundary or exterior of the second Geometry. + + + The dimension value with which to compare the + element. The order of dimension values from least to greatest is + True, False, Dontcare, 0, 1, 2. + + + + + If row >= 0 and column >= 0, changes the specified element to minimumDimensionValue + if the element is less. Does nothing if row is smaller to 0 or column is smaller to 0. + + + + + + + + For each element in this IntersectionMatrix, changes the + element to the corresponding minimum dimension symbol if the element is + less. + + + Nine dimension symbols with which to + compare the elements of this IntersectionMatrix. The + order of dimension values from least to greatest is Dontcare, True, False, 0, 1, 2. + + + + + Changes the elements of this IntersectionMatrix to dimensionValue. + + + The dimension value to which to set this IntersectionMatrix + s elements. Possible values True, False, Dontcare, 0, 1, 2}. + + + + + Returns the value of one of this IntersectionMatrixs + elements. + + + The row of this IntersectionMatrix, indicating + the interior, boundary or exterior of the first Geometry. + + + The column of this IntersectionMatrix, + indicating the interior, boundary or exterior of the second Geometry. + + The dimension value at the given matrix position. + + + + Returns true if this IntersectionMatrix is + FF*FF****. + + + true if the two Geometrys related by + this IntersectionMatrix are disjoint. + + + + + Returns true if isDisjoint returns false. + + + true if the two Geometrys related by + this IntersectionMatrix intersect. + + + + + Returns true if this IntersectionMatrix is + FT*******, F**T***** or F***T****. + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix touch; Returns false + if both Geometrys are points. + + + + + Returns true if this IntersectionMatrix is + T*T****** (for a point and a curve, a point and an area or a line + and an area) 0******** (for two curves). + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix cross. For this + function to return true, the Geometrys must + be a point and a curve; a point and a surface; two curves; or a curve + and a surface. + + + + + Returns true if this IntersectionMatrix is + T*F**F***. + + true if the first Geometry is within the second. + + + + Returns true if this IntersectionMatrix is + T*****FF*. + + true if the first Geometry contains the second. + + + + Returns true if this IntersectionMatrix is T*****FF* + or *T****FF* or ***T**FF* or ****T*FF*. + + true if the first Geometry covers the second + + + + Returns true if this IntersectionMatrix is T*F**FFF*. + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix are equal; the + Geometrys must have the same dimension for this function + to return true. + + + + + Returns true if this IntersectionMatrix is + T*T***T** (for two points or two surfaces) + 1*T***T** (for two curves). + + The dimension of the first Geometry. + The dimension of the second Geometry. + + true if the two Geometry + s related by this IntersectionMatrix overlap. For this + function to return true, the Geometrys must + be two points, two curves or two surfaces. + + + + + Returns whether the elements of this IntersectionMatrix + satisfies the required dimension symbols. + + + Nine dimension symbols with which to + compare the elements of this IntersectionMatrix. Possible + values are {T, F, *, 0, 1, 2}. + + + true if this IntersectionMatrix + matches the required dimension symbols. + + + + + Transposes this IntersectionMatrix. + + This IntersectionMatrix as a convenience, + + + + Returns a nine-character String representation of this IntersectionMatrix. + + + The nine dimension symbols of this IntersectionMatrix + in row-major order. + + + + + Returns true if the dimension value satisfies the dimension symbol. + + + A number that can be stored in the IntersectionMatrix + . Possible values are True, False, Dontcare, 0, 1, 2. + + + A character used in the string + representation of an IntersectionMatrix. Possible values + are T, F, *, 0, 1, 2. + + + True if the dimension symbol encompasses + the dimension value. + + + + + Returns true if each of the actual dimension symbols satisfies the + corresponding required dimension symbol. + + + Nine dimension symbols to validate. + Possible values are T, F, *, 0, 1, 2. + + + Nine dimension symbols to validate + against. Possible values are T, F, *, 0, 1, 2. + + + True if each of the required dimension + symbols encompass the corresponding actual dimension symbol. + + + + + See methods Get(int, int) and Set(int, int, int value) + + + + + This combines the full Topology.Geometry functions to the complete Vector.IPoint set of functions. + + + + + Full powered topology style Polygon + + + + + Gets a specific ILinearRing identified by the 0 based index n + + A 0 based integer index enumerating the rings + ILinearRing outlining the n'th hole in the polygon + + + + Gets the ILinearRing for the Exterior Ring. + + + + + Gets the System.Array of ILinearRings that make up the holes in the polygon. + + + + + ISize interface for expressing a length in the X, Y or Z directions + + + + + Gets or sets the size in the x direction or longitude + + + + + Gets or sets the size in the y direction or latitude + + + + + Gets or sets the size in the z direction or altitude + + + + + Contains a magnitude and direction + Supports more fundamental calculations than LineSegment, rather than topological functions + + + + + Transforms a point that has 3 dimensions by multiplying it by the + specified 3 x 3 matrix in the upper left, but treats the + bottom row as supplying the translation coordinates. + + + + + + + Rotations and transformations work by applying matrix mathematics, + so this creates a 1 x 4 version of this vector. The 4th value + is always 1, and allows for the translation terms to work. + + + + + + Returns the square of the distance of the vector without taking the square root + This is the same as doting the vector with itself + + Double, the square of the distance between the vectors + + + + Assuming the vector starts at the origin of 0, 0, 0, this function returns + a Point representing the tip of the vector. + + + + + Converts this vector to a coordinate by assuming that the X, Y and Z values + are the X, Y and Z values of the locaiton. + + An ICoordinate + + + + Returns a new segment from this vector, where the StartPoint is 0, 0, 0 + and the End Point is the tip of this vector + + An implementation of ILineSegment + + + + Normalizes the vector. + + + + + Returns the cross product of this vector with the specified vector V + + The vector to perform a cross product against + A vector result from the inner product + + + + Returns the dot product of this vector with V2 + + The vector to perform an inner product against + A Double result from the inner product + + + + Compares the values of each element, and if all the elements are equal, returns true. + + The vector to compare against this vector. + Boolean, true if all the elements have the same value. + + + + Override for definition of equality for vectors + + A vector to compare with + true if the X, Y, and Z coordinates are all equal + + + + Subtracts each element of V from each element of this vector + + Vector, the vector to subtract from this vector + A vector result from the subtraction + + + + Adds each of the elements of V to the elements of this vector + + Vector, the vector to add to this vector + A vector result from the addition + + + + Returns the scalar product of this vector against a scalar + + Double, a value to multiply against all the members of this vector + A vector multiplied by the scalar + + + + Rotates the vector about the X axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new IVector that has been rotated + + + + Rotates the vector about the Y axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new IVector that has been rotated + + + + Rotates the vector about the Z axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new IVector that has been rotated + + + + The Euclidean distance from the origin to the tip of the 3 dimensional vector + Setting the magntiude won't change the direction. + + + + + Returns the magnitude of the projection of the vector onto the X-Y plane + Setting this magnitude will not affect Z, which should be adjusted separately + + + + + Obtains the angle above the X-Y plane. Positive towards positive Z. + Values are in radians from -Pi/2 to Pi/2 + Setting this value when no magnitude exists results in a unit vector with angle phi in the X direction. + + + + + Represents the angle in the X-Y plane. 0 along the positive X axis, and increasing counterclockwise + Values are in Radians. Setting this value when no X-Y magnitude exists results in a unit vector + between X and Y, but does not affect Z, so you may have something other than a unit vector in 3-D. + Set theta before phi in order to obtain a unit vector in 3-D space. + + + + + Vector + + + + + Adds each of the elements of V to the elements of this vector + + Vector, the vector to add to this vector + A vector result from the addition + + + + Returns the cross product of this vector with the specified vector V + + The vector to perform a cross product against + A vector result from the inner product + + + + Returns the dot product of this vector with V2 + + The vector to perform an inner product against + A Double result from the inner product + + + + Returns the scalar product of this vector against a scalar + + Double, a value to multiply against all the members of this vector + A vector multiplied by the scalar + + + + Normalizes the vector. + + + + + Subtracts each element of V from each element of this vector + + Vector, the vector to subtract from this vector + A vector result from the subtraction + + + + The Euclidean distance from the origin to the tip of the 3 dimensional vector + Setting the magntiude won't change the direction. + + + + + A Depth object records the topological depth of the sides + of an Edge for up to two Geometries. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A Depth object is null (has never been initialized) if all depths are null. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Normalize the depths for each point, if they are non-null. + A normalized depth + has depth values in the set { 0, 1 }. + Normalizing the depths + involves reducing the depths by the same amount so that at least + one of them is 0. If the remaining value is > 0, it is set to 1. + + + + + + + + + + + Calls GetDepth and SetDepth. + + + + + + + + + + + + + Models the end of an edge incident on a node. + EdgeEnds have a direction + determined by the direction of the ray from the initial + point to the next point. + EdgeEnds are IComparable under the ordering + "a has a greater angle with the x-axis than b". + This ordering is used to sort EdgeEnds around a node. + + + + + The parent edge of this edge end. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Implements the total order relation: + a has a greater angle with the positive x-axis than b. + Using the obvious algorithm of simply computing the angle is not robust, + since the angle calculation is obviously susceptible to roundoff. + A robust algorithm is: + - first compare the quadrant. If the quadrants + are different, it it trivial to determine which vector is "greater". + - if the vectors lie in the same quadrant, the computeOrientation function + can be used to decide the relative orientation of the vectors. + + + + + + Subclasses should override this if they are using labels + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The depth of each side (position) of this edge. + The 0 element of the array is never used. + + + + + Creates a new instance of a directed edge + + The edge to use in order to create a directed edge + A boolean that forces whether or not this edge is counted as forward + + + + Compute the label in the appropriate orientation for this DirEdge. + + + + + Retrieves an integer that describes the depth + + A Positions enumeration + An integer showing the depth + + + + Sets the depth value for this edge based on the specified position + + A Position + The integer depth to specify + Assigned depths do not match + + + + Set both edge depths. + One depth for a given side is provided. + The other is computed depending on the Location + transition and the depthDelta of the edge. + + + + + + + + + + + + + + + + + + + Computes the factor for the change in depth when moving from one location to another. + E.g. if crossing from the Interior to the Exterior the depth decreases, so the factor is -1. + + + + + Obtains the chaing in depth + + + + + Gets or sets the EdgeRing + + + + + Gets a boolean indicating whether this edge is directed forward + + + + + Gets a boolean that is true if this edge is in the result + + + + + This is an interior Area edge if + its label is an Area label for both Geometries + and for each Geometry both sides are in the interior. + + true if this is an interior Area edge. + + + + This edge is a line edge if + at least one of the labels is a line label + any labels which are not line labels have all Locations = Exterior. + + + + + Gets or sets a boolean that is true if this edge has been visited + + + + + Gets or sets the minimum Edge Ring + + + + + Gets or sets the next directed edge relative to this directed edge + + + + + Gets or sets a directed edge for Next Min + + + + + + + + + + VisitedEdge get property returns true if bot Visited + and Sym.Visited are true. + VisitedEdge set property marks both DirectedEdges attached to a given Edge. + This is used for edges corresponding to lines, which will only + appear oriented in a single direction in the result. + + + + + A DirectedEdgeStar is an ordered list of outgoing DirectedEdges around a node. + It supports labelling the edges as well as linking the edges to form both + MaximalEdgeRings and MinimalEdgeRings. + + + + + A EdgeEndStar is an ordered list of EdgeEnds around a node. + They are maintained in CCW order (starting with the positive x-axis) around the node + for efficient lookup and topology building. + + + + + A map which maintains the edges in sorted order around the node. + + + + + The location of the point for this star in Geometry i Areas. + + + + + Insert a EdgeEnd into this EdgeEndStar. + + + + + + Insert an EdgeEnd into the map, and clear the edgeList cache, + since the list of edges has now changed. + + + + + + + Iterator access to the ordered list of edges is optimized by + copying the map collection to a list. (This assumes that + once an iterator is requested, it is likely that insertion into + the map is complete). + + + + + Initializes the edges in the _edgeList + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the EdgeMap + + + + + A list of all outgoing edges in the result, in CCW order. + + + + + The coordinate for the node this star is based at. + + + + + + + + + + + + + + + + + + + + A list of all outgoing edges in the result, in CCW order. + + + + + Insert a directed edge in the list. + + + + + + + + + + + + + + + + + + + + + + + + + Compute the labelling for all dirEdges in this star, as well + as the overall labelling. + + + + + + For each dirEdge in the star, merge the label . + + + + + Update incomplete dirEdge labels from the labelling for the node. + + + + + + Traverse the star of DirectedEdges, linking the included edges together. + To link two dirEdges, the next pointer for an incoming dirEdge + is set to the next outgoing edge. + DirEdges are only linked if: + they belong to an area (i.e. they have sides) + they are marked as being in the result + Edges are linked in CCW order (the order they are stored). + This means that rings have their face on the Right + (in other words, the topological location of the face is given by the RHS label of the DirectedEdge). + PRECONDITION: No pair of dirEdges are both marked as being in the result. + + + + + + + + + + + + + + + + Traverse the star of edges, maintaing the current location in the result + area at this node (if any). + If any L edges are found in the interior of the result, mark them as covered. + + + + + + + + + + + Compute the DirectedEdge depths for a subsequence of the edge array. + + The last depth assigned (from the R side of the last edge visited). + + + + + + + + + + + + + + + + + + + + A GraphComponent is the parent class for the objects' + that form a graph. Each GraphComponent can carry a + Label. + + + + + + + + + + + + + + + + Compute the contribution to an IM for this component. + + + + + Update the IM with the contribution for this component. + A component only contributes if it has a labelling for both parent geometries. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A coordinate in this component (or null, if there are none). + + + + + An isolated component is one that does not intersect or touch any other + component. This is the case if the label has valid locations for + only a single Geometry. + + true if this component is isolated. + + + + + + + + + + + + + + + + + Updates an IM from the label for an edge. + Handles edges from both L and A geometries. + + + + + + + + + + + + + + Adds EdgeIntersections for one or both + intersections found for a segment of an edge to the edge intersection list. + + + + + + + + Add an EdgeIntersection for intersection intIndex. + An intersection that falls exactly on a vertex of the edge is normalized + to use the higher of the two possible segmentIndexes. + + + + + + + + + Update the IM with the contribution for this component. + A component only contributes if it has a labelling for both parent geometries. + + + + + + Equals is defined to be: + e1 equals e2 + iff + the coordinates of e1 are the same or the reverse of the coordinates in e2. + + + + + + Equals is defined to be: + e1 equals e2 + iff + the coordinates of e1 are the same or the reverse of the coordinates in e2. + + + + + + + + + + + + + + + + + + + + + + + + + + + + true if the coordinate sequences of the Edges are identical. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The depthDelta is the change in depth as an edge is crossed from R to L. + + The change in depth as the edge is crossed from R to L. + + + + + + + + + + + + + + + + + + + + + + + + An Edge is collapsed if it is an Area edge and it consists of + two segments which are equal and opposite (eg a zero-width V). + + + + + + + + + + + + + + + + + + + + An EdgeIntersection represents a point on an + edge which intersects with another edge. + The intersection may either be a single point, or a line segment + (in which case this point is the start of the line segment) + The label attached to this intersection point applies to + the edge from this point forwards, until the next + intersection or the end of the edge. + The intersection point must be precise. + + + + + + + + + + + + + + + + + + + + + + + + + -1 this EdgeIntersection is located before the argument location, + 0 this EdgeIntersection is at the argument location, + 1 this EdgeIntersection is located after the argument location. + + + + + + + + + + + + + + + + + + The point of intersection. + + + + + The index of the containing line segment in the parent edge. + + + + + The edge distance of this point along the containing line segment. + + + + + A list of edge intersections along an Edge. + + + + + + + + + + + Adds an intersection into the list, if it isn't already there. + The input segmentIndex and dist are expected to be normalized. + + + + + + + + Returns an iterator of EdgeIntersections. + + + + + + + + + + + + Adds entries for the first and last points of the edge to the list. + + + + + Creates new edges for all the edges that the intersections in this + list split the parent edge into. + Adds the edges to the input list (this is so a single list + can be used to accumulate all split edges for a Geometry). + + + + + + Create a new "split edge" with the section of points between + (and including) the two intersections. + The label for the new edge is the same as the label for the parent edge. + + + + + + + + + + + + + + + + + + A EdgeList is a list of Edges. It supports locating edges + that are pointwise equals to a target edge. + + + + + An index of the edges, for fast lookup. + a Quadtree is used, because this index needs to be dynamic + (e.g. allow insertions after queries). + An alternative would be to use an ordered set based on the values + of the edge coordinates. + + + + + Remove the selected Edge element from the list if present. + + Edge element to remove from list + + + + Insert an edge unless it is already in the list. + + + + + + + + + + + + If there is an edge equal to e already in the list, return it. + Otherwise return null. + + + + equal edge, if there is one already in the list, + null otherwise. + + + + + + + + + + + + + + + + + + If the edge e is already in the list, return its index. + + + + Index, if e is already in the list, + -1 otherwise. + + + + + + + + + + + + + + + + + + + + + + + Validates that a collection of SegmentStrings is correctly noded. + Throws an appropriate exception if an noding error is found. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compute a LinearRing from the point list previously collected. + Test if the ring is a hole (i.e. if it is CCW) and set the hole flag + accordingly. + + + + + + + + + + + + + + + + + + + Collect all the points from the DirectedEdges of this ring into a contiguous list. + + + + + + + + + + + + + + + + + + + + + + Merge the RHS label from a DirectedEdge into the label for this EdgeRing. + The DirectedEdge label may be null. This is acceptable - it results + from a node which is NOT an intersection node between the Geometries + (e.g. the end node of a LinearRing). In this case the DirectedEdge label + does not contribute any information to the overall labelling, and is simply skipped. + + + + + + + + + + + + + + + This method will cause the ring to be computed. + It will also check any holes, if they have been assigned. + + + + + + Gets the inner geometry factory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the list of DirectedEdges that make up this EdgeRing. + + + + + The directed edge which starts the list of edges for this EdgeRing. + + + + + + + + + + A GeometryGraph is a graph that models a given Geometry. + + + + + The computation of the IntersectionMatrix relies on the use of a structure + called a "topology graph". The topology graph contains nodes and edges + corresponding to the nodes and line segments of a Geometry. Each + node and edge in the graph is labeled with its topological location relative to + the source point. + Notice that there is no requirement that points of self-intersection be a vertex. + Thus to obtain a correct topology graph, Geometrys must be + self-noded before constructing their graphs. + Two fundamental operations are supported by topology graphs: + Computing the intersections between all the edges and nodes of a single graph + Computing the intersections between the edges and nodes of two different graphs + + + + + Creates a new instance of a Planar Graph + + A node Factory + + + + Creates a new instance of a Planar Graph using a default NodeFactory + + + + + Adds a new EdgeEnd to the planar graph + + The EdgeEnd to add + + + + Add a set of edges to the graph. For each edge two DirectedEdges + will be created. DirectedEdges are NOT linked by this method. + + + + + + Adds the specified node to the geometry graph's NodeMap + + The node to add + The node after the addition + + + + Adds a new ICoordinate as though it were a Node to the node map + + An ICoordinate to add + The newly added node + + + + The node if found; null otherwise + + + + + + Returns the EdgeEnd which has edge e as its base edge + (MD 18 Feb 2002 - this should return a pair of edges). + + + The edge, if found null if the edge was not found. + + + + Returns the edge whose first two coordinates are p0 and p1. + + + + The edge, if found null if the edge was not found. + + + + Returns the edge which starts at p0 and whose first segment is + parallel to p1. + + + + The edge, if found null if the edge was not found. + + + + + + + + + + + + + + + + Adds a new EdgeEnd to the planar graph + + + + + + Link the DirectedEdges at the nodes of the graph. + This allows clients to link only a subset of nodes in the graph, for + efficiency (because they know that only a subset is of interest). + + + + + Link the DirectedEdges at the nodes of the graph. + This allows clients to link only a subset of nodes in the graph, for + efficiency (because they know that only a subset is of interest). + + + + + The coordinate pairs match if they define line segments lying in the same direction. + E.g. the segments are parallel and in the same quadrant + (as opposed to parallel and opposite!). + + + + + + + + + + + + + + + + + + + + + + + For nodes in the Collection, link the DirectedEdges at the node that are in the result. + This allows clients to link only a subset of nodes in the graph, for + efficiency (because they know that only a subset is of interest). + + + + + + Gets a list of edge ends + + + + + Gets or sets the list of edges. + + + + + Gets or sets the NodeMap for this graph + + + + + Gets a list of the actual values contained in the nodes + + + + + The lineEdgeMap is a map of the linestring components of the + parentGeometry to the edges which are derived from them. + This is used to efficiently perform findEdge queries + + + + + If this flag is true, the Boundary Determination Rule will used when deciding + whether nodes are in the boundary or not + + + + + + + + + + + + This method implements the Boundary Determination Rule + for determining whether + a component (node or edge) that appears multiple times in elements + of a MultiGeometry is in the boundary or the interior of the Geometry. + The SFS uses the "Mod-2 Rule", which this function implements. + An alternative (and possibly more intuitive) rule would be + the "At Most One Rule": + isInBoundary = (componentCount == 1) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The left and right topological location arguments assume that the ring is oriented CW. + If the ring is in the opposite orientation, + the left and right locations must be interchanged. + + + + + + + + + + + + + + + + + + + + Add an Edge computed externally. The label on the Edge is assumed + to be correct. + + + + + + Add a point computed externally. The point is assumed to be a + Point Geometry part, which has a location of INTERIOR. + + + + + + Compute self-nodes, taking advantage of the Geometry type to + minimize the number of intersection tests. (E.g. rings are + not tested for self-intersection, since they are assumed to be valid). + + The LineIntersector to use. + If false, intersection checks are optimized to not test rings for self-intersection. + The SegmentIntersector used, containing information about the intersections found. + + + + + + + + + + + + + + + + + + + + + Adds points using the mod-2 rule of SFS. This is used to add the boundary + points of dim-1 geometries (Curves/MultiCurves). According to the SFS, + an endpoint of a Curve is on the boundary + if it is in the boundaries of an odd number of Geometries. + + + + + + + + + + + + + Add a node for a self-intersection. + If the node is a potential boundary node (e.g. came from an edge which + is a boundary) then insert it as a potential boundary node. + Otherwise, just add it as a regular node. + + + + + + + + + + + + + + + + + + + + + + + + + + + + An EdgeSetIntersector computes all the intersections between the + edges in the set. It adds the computed intersections to each edge + they are found on. It may be used in two scenarios: + determining the internal intersections between a single set of edges + determining the mutual intersections between two different sets of edges + It uses a SegmentIntersector to compute the intersections between + segments and to record statistics about what kinds of intersections were found. + + + + + Computes all self-intersections between edges in a set of edges, + allowing client to choose whether self-intersections are computed. + + A list of edges to test for intersections. + The SegmentIntersector to use. + true if self-intersections are to be tested as well. + + + + Computes all mutual intersections between two sets of edges. + + + + + + + + + + + + + + + + + + + + + + + + MonotoneChains are a way of partitioning the segments of an edge to + allow for fast searching of intersections. + They have the following properties: + the segments within a monotone chain will never intersect each other, and + the envelope of any contiguous subset of the segments in a monotone chain + is simply the envelope of the endpoints of the subset. + Property 1 means that there is no need to test pairs of segments from within + the same monotone chain for intersection. + Property 2 allows + binary search to be used to find the intersection points of two monotone chains. + For many types of real-world data, these properties eliminate a large number of + segment comparisons, producing substantial speed gains. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MonotoneChains are a way of partitioning the segments of an edge to + allow for fast searching of intersections. + They have the following properties: + the segments within a monotone chain will never intersect each other, and + the envelope of any contiguous subset of the segments in a monotone chain + is simply the envelope of the endpoints of the subset. + Property 1 means that there is no need to test pairs of segments from within + the same monotone chain for intersection. + Property 2 allows + binary search to be used to find the intersection points of two monotone chains. + For many types of real-world data, these properties eliminate a large number of + segment comparisons, producing substantial speed gains. + + + + + + + + + + + + + + + + + + + The index of the last point in the monotone chain. + + + + + + + + + + Testing only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + A trivial intersection is an apparent self-intersection which in fact + is simply the point shared by adjacent line segments. + Notice that closed edges require a special check for the point shared by the beginning + and end segments. + + + + + + + + + This method is called by clients of the EdgeIntersector class to test for and add + intersections for two segments of the edges being intersected. + Notice that clients (such as MonotoneChainEdges) may choose not to intersect + certain pairs of segments for efficiency reasons. + + + + + + + + + + + + + + + + + + + + + + + + + The proper intersection point, or null if none was found. + + + + + + + + + + A proper intersection is an intersection which is interior to at least two + line segments. Notice that a proper intersection is not necessarily + in the interior of the entire Geometry, since another edge may have + an endpoint equal to the intersection, which according to SFS semantics + can result in the point being on the Boundary of the Geometry. + + + + + A proper interior intersection is a proper intersection which is not + contained in the set of boundary nodes set for this SegmentIntersector. + + + + + Finds all intersections in one or two sets of edges, + using the straightforward method of + comparing all segments. + This algorithm is too slow for production use, but is useful for testing purposes. + + + + + + + + + + + + + + + + + + + + + Performs a brute-force comparison of every segment in each Edge. + This has n^2 performance, and is about 100 times slower than using + monotone chains. + + + + + + + + Finds all intersections in one or two sets of edges, + using an x-axis sweepline algorithm in conjunction with Monotone Chains. + While still O(n^2) in the worst case, this algorithm + drastically improves the average-case time. + The use of MonotoneChains as the items in the index + seems to offer an improvement in performance over a sweep-line alone. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Because Delete Events have a link to their corresponding Insert event, + it is possible to compute exactly the range of events which must be + compared to a given Insert event object. + + + + + + + + + + + + + + + + + + + + Finds all intersections in one or two sets of edges, + using a simple x-axis sweepline algorithm. + While still O(n^2) in the worst case, this algorithm + drastically improves the average-case time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Because Delete Events have a link to their corresponding Insert event, + it is possible to compute exactly the range of events which must be + compared to a given Insert event object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ProjectionEvents are ordered first by their x-value, and then by their eventType. + It is important that Insert events are sorted before Delete events, so that + items whose Insert and Delete events occur at the same x-value will be + correctly handled. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A Label indicates the topological relationship of a component + of a topology graph to a given Geometry. + This class supports labels for relationships to two Geometrys, + which is sufficient for algorithms for binary operations. + Topology graphs support the concept of labeling nodes and edges in the graph. + The label of a node or edge specifies its topological relationship to one or + more geometries. (In fact, since NTS operations have only two arguments labels + are required for only two geometries). A label for a node or edge has one or + two elements, depending on whether the node or edge occurs in one or both of the + input Geometrys. Elements contain attributes which categorize the + topological location of the node or edge relative to the parent + Geometry; that is, whether the node or edge is in the interior, + boundary or exterior of the Geometry. Attributes have a value + from the set {Interior, Boundary, Exterior}. In a node each + element has a single attribute On. For an edge each element has a + triplet of attributes Left, On, Right. + It is up to the client code to associate the 0 and 1 TopologyLocations + with specific geometries. + + + + + Construct a Label with a single location for both Geometries. + Initialize the locations to Null. + + + + + + Construct a Label with a single location for both Geometries. + Initialize the location for the Geometry index. + + + + + + + Construct a Label with On, Left and Right locations for both Geometries. + Initialize the locations for both Geometries to the given values. + + + + + + + + Construct a Label with On, Left and Right locations for both Geometries. + Initialize the locations for the given Geometry index. + + + + + + + + + Construct a Label with the same values as the argument for the + given Geometry index. + + + + + + + Construct a Label with the same values as the argument Label. + + + + + + Converts a Label to a Line label (that is, one with no side Locations). + + Label to convert. + Label as Line label. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Merge this label with another one. + Merging updates any null attributes of this label with the attributes from lbl. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Converts one GeometryLocation to a Line location. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Basic nodes do not compute IMs. + + + + + + Add the edge to the list of edges at this node. + + + + + + + + + + + + To merge labels for two nodes, + the merged location for each LabelElement is computed. + The location for the corresponding node LabelElement is set to the result, + as long as the location is non-null. + + + + + + + + + + + + + Updates the label of a node to BOUNDARY, + obeying the mod-2 boundaryDetermination rule. + + + + + + The location for a given eltIndex for a node will be one + of { Null, Interior, Boundary }. + A node may be on both the boundary and the interior of a point; + in this case, the rule is that the node is considered to be in the boundary. + The merged location is the maximum of the two input values. + + + + + + + + + + + + + + + + + + + A Coordinate for this node + + + + + Gets the edges for this node + + + + + Gets a boolean that is true if this node is isolated + + + + + + + + + + The basic node constructor does not allow for incident edges. + + + + + + A map of nodes, indexed by the coordinate of the node. + + + + + + + + + + + This method expects that a node has a coordinate value. + + + + + + + + + + + + + Adds a node for the start point of this EdgeEnd + (if one does not already exist in this map). + Adds the EdgeEnd to the (possibly new) node. + + + + + + The node if found; null otherwise. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + An indicator that a Location is on a GraphComponent (0) + + + + + An indicator that a Location is to the left of a GraphComponent (1) + + + + + An indicator that a Location is to the right of a GraphComponent (2) + + + + + An indicator that a Location is is parallel to x-axis of a GraphComponent (-1) + /// + + + + A Position indicates the position of a Location relative to a graph component + (Node, Edge, or Area). + + + + + Returns Positions.Left if the position is Positions.Right, + Positions.Right if the position is Left, or the position + otherwise. + + + + + + Utility functions for working with quadrants, which are numbered as follows: + + 1 | 0 + --+-- + 2 | 3 + + + + + + Only static methods! + + + + + Returns the quadrant of a directed line segment (specified as x and y + displacements, which cannot both be 0). + + + + + + + Returns the quadrant of a directed line segment from p0 to p1. + + + + + + + Returns true if the quadrants are 1 and 3, or 2 and 4. + + + + + + + Returns the right-hand quadrant of the halfplane defined by the two quadrants, + or -1 if the quadrants are opposite, or the quadrant if they are identical. + + + + + + + Returns whether the given quadrant lies within the given halfplane (specified + by its right-hand quadrant). + + + + + + + Returns true if the given quadrant is 0 or 1. + + + + + + A TopologyLocation is the labelling of a + GraphComponent's topological relationship to a single Geometry. + If the parent component is an area edge, each side and the edge itself + have a topological location. These locations are named: + On: on the edge + Left: left-hand side of the edge + Right: right-hand side + If the parent component is a line edge or node, there is a single + topological relationship attribute, On. + The possible values of a topological location are + { Location.Null, Location.Exterior, Location.Boundary, Location.Interior } + The labelling is stored in an array location[j] where + where j has the values On, Left, Right. + + + + + + + + + + + Constructs a TopologyLocation specifying how points on, to the left of, and to the + right of some GraphComponent relate to some Geometry. Possible values for the + parameters are Location.Null, Location.Exterior, Location.Boundary, + and Location.Interior. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Merge updates only the Null attributes of this object + with the attributes of another. + + + + + + + + + + + Get calls Get(Positions posIndex), + Set calls SetLocation(Positions locIndex, Locations locValue) + + + + + + + true if all locations are Null. + + + + + true if any locations are Null. + + + + + + + + + + + + + + + A TwoHorizontalEdgesException Class + + + + + Creates a new instance of TwoHorizontalEdgesException + + + + + Basic implementation of LinearRing. + The first and last point in the coordinate sequence must be equal. + Either orientation of the ring is allowed. + A valid ring must not self-intersect. + + + + + Basic implementation of LineString. + + + + + Represents an empty LineString. + + + + + The points of this LineString. + + + + + + + + The points of the linestring, or null + to create the empty point. Consecutive points may not be equal. + + + + + + Creates a new LineString using the default factory + + + The points of the linestring, or null + to create the empty point. Consecutive points may not be equal. + + + + + Creates a new topologically complete LineString from a LineStringBase + + + + + + Constructor + + + The points of the linestring, or null + to create the empty point. Consecutive points may not be equal. + + + + + + Creates an empty linestring using the specified factory. + + An IGeometryFactory to use when specifying this linestring. + + + + Rather than using the factory trends, this will create a coordinate sequence by simply using the specified list of coordinates. + + The list of coordinates to use as a new ICoordinateSequence + + + + Rather than using the factory trends, this will create a coordinate sequence by simply using the specified list of coordinates. + + The list of coordinates to use as a new ICoordinateSequence + + + + Applys a given ICoordinateFilter to this LineString + + + + + + + + + + + + + + + + + + Performs a CompareTo opperation assuming that the specified object is a LineString + + + + + + + Tests the coordinates of this LineString against another geometry and returns true if they are identical. + + + + + + + + Given the specified test point, this checks each segment, and will + return the closest point on the specified segment. + + The point to test. + + + + + Returns the N'th point as an Implementation of IPoint. The specific + implementation is just the DotSpatial.Geometries.Point + + + + + + + Returns true if the given point is a vertex of this LineString. + + The Coordinate to check. + true if pt is one of this LineString's vertices. + + + + Normalizes a LineString. A normalized linestring + has the first point which is not equal to it's reflected point + less than the reflected point. + + + + + Creates a whose coordinates are in the reverse order of this objects. + + A with coordinates in the reverse order. + + + + Returns the Envelope of this LineString + + An IEnvelope interface for the envelope containing this LineString + + + + Returns a copy of this ILineString + + + + + Returns the Nth coordinate of the coordinate sequence making up this LineString + + + + + + + Tests other and returns true if other is a LineString + + + + + + + Calculates a new linestring representing a linestring that is offset by + distance to the left. Negative distances will be to the right. The final + LineString may be shorter or longer than the original. Left is determined + by the vector direction of the segment between the 0th and 1st points. + Outside bends will be circular curves, rather than extended angles. + + The double distance to create the offset LineString + A valid ILineString interface created from calculations performed on this LineString + + + + Rotates the LineString by the given radian angle around the Origin. + + Coordinate the LineString gets rotated around. + Rotation angle in radian. + + + + Gets the integer count of the number of points in this LineString + + + + + + Gets the ICoordinate that exists at the Nth index + + + + + + + Gets the value of the angle between the + and the . + + + + + Gets a MultiPoint geometry that contains the StartPoint and Endpoint + + + + + Gets False if the LineString is closed, or Point (0) otherwise, representing the endpoints + + + + + Gets the 0th coordinate + + + + + Gets a System.Array of the coordinates + + + + + Gets the dimensionality of a Curve(1) + + + + + Gets the point corresponding to NumPoints-1 and returns it as an IPoint interface + + + + + This will always contain Line, even if it is technically empty + + + + + Gets a string that says "LineString" + + + + + Gets a boolean that is true if the EndPoint is geometrically equal to the StartPoint in 2 Dimensions + + + + + Gets a boolean value that returns true if the count of points in this LineString is 0. + + + + + Gets a boolean that is true if this LineString is both closed (has the same start and end point) + and simple (does not self-intersect) + + + + + Gets a boolean that is false if any part of this LineString intersects with itself. + + + + + Returns the length of this LineString + + The length of the polygon. + + + + Gets an integer count of the points. + + + + + Gets the 0 index point as a valid implementation of IPoint interface + + + + + Creates a new instance of a linear ring where the enumerable collection of + coordinates represents the set of coordinates to add to the ring. + + + + + + Creates a new instance of a linear ring where the enumerable collection of + coordinates represents the set of coordinates to add to the ring. + + + + + + Constructor + + + + + + Correct constructions with non-closed sequences. + + + + + Geometry Type + + + + + Gets a boolean that is true if the EndPoint is geometrically equal to the StartPoint in 2 Dimensions. + + + + + This will always contain Line, even if it is technically empty + + + + + Represents a line segment defined by two Coordinates. + Provides methods to compute various geometric properties + and relationships of line segments. + This class is designed to be easily mutable (to the extent of + having its contained points public). + This supports a common pattern of reusing a single LineSegment + object as a way of computing segment properties on the + segments defined by arrays or lists of Coordinates. + + + + + Creates an instance of LineSegment from two coordiantes + + The first point of the segment + The second point of the segment + + + + Creates a new instance of a LineSegment which implements + ILineSegment and ILineSegmentBase from an ILineSegmentBase + + + + + + Creates a new instance of a LineSegment which implements + ILineSegment and ILineSegmentBase + + + + + Retrieves the i'th coordiante. Since there are only two, + i can be either 0 or 1. + + Integer, specifies the coordiante + A topologically complete ICoordinate + + + + Defines a new LineSegment based on the previous line segment + + The ILineSegmentBase + + + + Sets the new coordinates using the ICoordinate interfaces specified + + The first endpoint + The second endpoint + + + + Determines the orientation of a LineSegment relative to this segment. + The concept of orientation is specified as follows: + Given two line segments A and L, + A is to the left of a segment L if A lies wholly in the + closed half-plane lying to the left of L + A is to the right of a segment L if A lies wholly in the + closed half-plane lying to the right of L + otherwise, A has indeterminate orientation relative to L. This + happens if A is collinear with L or if A crosses the line determined by L. + + The LineSegment to compare. + + 1 if seg is to the left of this segment, + -1 if seg is to the right of this segment, + 0 if seg has indeterminate orientation relative to this segment. + + + + + Reverses the direction of the line segment. + + + + + Puts the line segment into a normalized form. + This is useful for using line segments in maps and indexes when + topological equality rather than exact equality is desired. + + + + + Computes the distance between this line segment and another one. + + + + + + + Computes the distance between this line segment and a point. + + + + + Computes the perpendicular distance between the (infinite) line defined + by this line segment and a point. + + + + + + + Compute the projection factor for the projection of the point p + onto this LineSegment. The projection factor is the constant k + by which the vector for this segment must be multiplied to + equal the vector for the projection of p. + + + + + + + Compute the projection of a point onto the line determined + by this line segment. + Notice that the projected point + may lie outside the line segment. If this is the case, + the projection factor will lie outside the range [0.0, 1.0]. + + + + + + + Project a line segment onto this line segment and return the resulting + line segment. The returned line segment will be a subset of + the target line line segment. This subset may be null, if + the segments are oriented in such a way that there is no projection. + Notice that the returned line may have zero length (i.e. the same endpoints). + This can happen for instance if the lines are perpendicular to one another. + + The line segment to project. + The projected line segment, or null if there is no overlap. + + + + Computes the closest point on this line segment to another point. + + The point to find the closest point to. + + A Coordinate which is the closest point on the line segment to the point p. + + + + + Computes the closest points on a line segment. + + + + A pair of Coordinates which are the closest points on the line segments. + + + + + Computes an intersection point between two segments, if there is one. + There may be 0, 1 or many intersection points between two segments. + If there are 0, null is returned. If there is 1 or more, a single one + is returned (chosen at the discretion of the algorithm). If + more information is required about the details of the intersection, + the {RobustLineIntersector} class should be used. + + + An intersection point, or null if there is none. + + + + Performs an intersection of this line segment with the specified envelope + + The envelope to compare against + An ILineSegment, or null if there is no intersection. + + + + Determines if any portion of this segment intersects the specified extent. + + The + Boolean, true if this line segment intersects the specified envelope + + + + Compares this object with the specified object for order. + Uses the standard lexicographic ordering for the points in the LineSegment. + + + The LineSegment with which this LineSegment + is being compared. + + + A negative integer, zero, or a positive integer as this LineSegment + is less than, equal to, or greater than the specified LineSegment. + + + + + Returns true if other is + topologically equal to this LineSegment (e.g. irrespective + of orientation). + + + A LineSegment with which to do the comparison. + + + true if other is a LineSegment + with the same values for the x and y ordinates. + + + + + + + + + + + Returns true if o has the same values for its points. + + A LineSegment with which to do the comparison. + + true if o is a LineSegment + with the same values for the x and y ordinates. + + + + + + + + + + + + + + + + + + + + + Return HashCode. + + + + + returns the one of the ICoordinate that defines this linesegment + + + + + returns the ICoordianteBase defining the second endpoint of the segment + + + + + Computes the length of the line segment. + + The length of the line segment. + + + + Tests whether the segment is horizontal. + + true if the segment is horizontal. + + + + Tests whether the segment is vertical. + + true if the segment is vertical. + + + + The angle this segment makes with the x-axis (in radians). + + + + + + + + + + Converts the location value to a location symbol, for example, EXTERIOR => 'e'. + + + Either 'e', 'b', 'i' or '-'. + + + + Matrix4 + + + + + A 4 x 4 matrix is required for transformations in 3 dimensions + + + + + Creates a new squre identity matrix of the specified size + + The size of the matrix to create + + + + Creates a new instance of Matrix with m rows and n columns + + + + + Creates a matrix using the specified values. + + + + + + Matrix multiplication only works if the number of columns of the first matrix is the same + as the number of rows of the second matrix. The first matrix is this object, so this + will only work if inMatrix has the same number of rows as this matrix has columns. + + The IMatrix to multiply against this matrix + + + + + Multiplies this matrix by the specified scalar value. + + + + + + + Gets the number of rows + + + + + Gets the number of columns + + + + + Gets the number of rows + + + + + Gets the number of columns + + + + + Gets or sets the values for this matrix + + + + + Creates a new instance of Matrix4 that is an identity matrix + + + + + Rotates this matrix by the specified angle in degrees about the X axis. + + Specified the angle in degrees to rotate counter clockwise about the positive axis + + + + + Rotates this matrix by the specified angle in degrees about the Y axis. + + + + + + + Rotates this matrix by the specified angle in degrees about the Z axis. + + + + + + + Translates the matrix by the specified amount in each of the directions + by multiplying by a translation matrix created from the specified values. + + The translation in the X coordinate + The translation in the Y coordinate + The translation in the Z coordinate + + + + + Creates a 4 x 4 matrix that can be used to rotate a 3D vector about the X axis. + + The counter-clockwise angle of rotation when looking at the origin from the positive axis + A 4x4 rotation matrix + + + + Creates a 4 x 4 matrix that can be used to rotate a 3D vector about the Y axis. + + The counter-clockwise angle of rotation when looking at the origin from the positive axis + A 4x4 rotation matrix + + + + Creates a 4 x 4 matrix that can be used to rotate a 3D vector about the Z axis. + + The counter-clockwise angle of rotation when looking at the origin from the positive axis + A 4x4 rotation matrix + + + + Creates a 4 x 4 matrix where all the values represent an identity matrix except + that the bottom row has been set to be the translation values. The result is + that if a 3D vector is transformed by this matrix, the last row will + control the translation terms. + + The translation in the x direction + The translation in the y direction + The translation in the z direction + The translation matrix + + + + + + + + + Basic implementation of MultiLineString. + + + + + Represents an empty MultiLineString. + + + + + Constructs a multiLineString from the list of IBasicLineStrings, creating new full geometries where necessary. + + An IBasicLineString that is either a full IGeometry itself, or will be cast into one by this step + + + + Constructs a MultiLineString. + + + The LineStrings for this MultiLineString, + or null or an empty array to create the empty + point. Elements may be empty LineStrings, + but not nulls. + + + + + + This will attempt to create a new MultiLineString from the specified basic geometry. + + A Basic geometry that shoule be a LineString or MultiLineString + + + + This will attempt to create a new MultiLineString from the specified basic geometry. + + A Basic geometry that shoule be a LineString or MultiLineString + Any valid Geometry Factory + + + + Constructs a MultiLineString. + + + The LineStrings for this MultiLineString, + or null or an empty array to create the empty + point. Elements may be empty LineStrings, + but not nulls. + + + For create this is used a standard + with == . + + + + + Constructor for a MultiLineString that is empty + + + + + + + + + + + + + Creates a in the reverse order to this object. + Both the order of the component LineStrings + and the order of their coordinate sequences are reversed. + + a in the reverse order. + + + + Gets a value indicating whether this instance is closed. + + true if this instance is closed; otherwise, false. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Always returns FeatureTypes.Line + + + + + Gets the ILineString that corresponds to the specified index + + The integer index to get a linestring + An ILineString + + + + Models a collection of Points. + + + + + Represents an empty MultiPoint. + + + + + Constructs a MultiPoint. + + + The Points for this MultiPoint + , or null or an empty array to create the empty point. + Elements may be empty Points, but not nulls. + + + + + + This will attempt to create a new MultiPoint from the specified basic geometry. + + A Point or MultiPoint + + + + Creates new Multipoint using interface points + + + + + + Creates new Multipoint using interface points + + + + + + + + + + + + + + Converts an array of point interface variables into local points. + Eventually I hope to reduce the amount of "casting" necessary, in order + to allow as much as possible to occur via an interface. + + + + + + + Converts an array of point interface variables into local points. + Eventually I hope to reduce the amount of "casting" necessary, in order + to allow as much as possible to occur via an interface. + + + + + + + Returns the Coordinate at the given position. + + The index of the Coordinate to retrieve, beginning at 0. + + The nth Coordinate. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets the point that resides at the specified index + + A zero-based integer index specifying the point to get or set + + + + + Basic implementation of MultiPolygon. + + + + + Represents an empty MultiPolygon. + + + + + Constructs a MultiPolygon. + + + The Polygons for this MultiPolygon + , or null or an empty array to create the empty point. + Elements may be empty Polygons, but not null + s. The polygons must conform to the assertions specified in the + OpenGIS Simple Features + Specification for SQL. + + + For create this is used a standard + with == . + + + + + This was added by Ted Dunsford to allow the construction of MultiPolygons + from an array of basic polygon interfaces. + + + + + + This will attempt to create a new MultiPolygon from the specified basic geometry. + + A Polygon or MultiPolygon + + + + This will attempt to create a new MultiPolygon from the specified basic geometry. + + A Polygon or MultiPolygon + An implementation of the IGeometryFactory interface + + + + Constructs a MultiPolygon. + + + The Polygons for this MultiPolygon + , or null or an empty array to create the empty point. + Elements may be empty Polygons, but not null + s. The polygons must conform to the assertions specified in the + OpenGIS Simple Features + Specification for SQL. + + + + + + + + + + + + + + Presuming that the specified basic geometry describes a MultiPolygon, this will perform the necessary + casting in order to create a MultiPolygon. If, in fact, it is only a BasicMultiPolygon, this will + create a new, fully functional MultiPolygon based on the same coordinates. + + The IBasicGeometry to turn into a MultiPolygon. + + + + + + + + + + + + + + Always returns "MultiPolygon" + + + + + Always Polygon + + + + + + + + + + + + + + + Basic implementation of Point. + + + + + Creates a null point with X = 0, Y = 0, which can have its properties set later. + + + + + Creates a null point with X = 0, Y = 0 but using the specified factory for + precision and SRID stuff. + + The factory to use when creating this geometry. + + + + Initializes a new instance of the Point class. + + The coordinate used for create this . + + For create this is used a standard + with == . + + + + + Initializes a new instance of the Point class. + + The coordinate used for create this . + + For create this is used a standard + with == . + + + + + Constructs a Point with the given coordinate. + + + Contains the single coordinate on which to base this Point, + or null to create the empty point. + + + + + + Initializes a new instance of the Point class. + + The x coordinate. + The y coordinate. + The z coordinate. + /// + For create this is used a standard + with set to . + + + + + Initializes a new instance of the Point class. + + The x coordinate. + The y coordinate. + /// + For create this is used a standard + with set to . + + + + + Represents an empty Point. + + + + + Performs an operation with or on this Geometry's + coordinates. If you are using this method to modify the point, be sure + to call GeometryChanged() afterwards. Notice that you cannot use this + method to + modify this Geometry if its underlying CoordinateSequence's Get method + returns a copy of the Coordinate, rather than the actual Coordinate stored + (if it even stores Coordinates at all). + + The filter to apply to this Geometry's coordinates + + + + Performs an operation with or on this Geometry and its + subelement Geometrys (if any). + Only GeometryCollections and subclasses + have subelement Geometry's. + + + The filter to apply to this Geometry (and + its children, if it is a GeometryCollection). + + + + + Performs an operation with or on this Geometry and its + component Geometry's. Only GeometryCollections and + Polygons have component Geometry's; for Polygons they are the LinearRings + of the shell and holes. + + The filter to apply to this Geometry. + + + + Returns whether this Geometry is greater than, equal to, + or less than another Geometry having the same class. + + A Geometry having the same class as this Geometry. + + A positive number, 0, or a negative number, depending on whether + this object is greater than, equal to, or less than o, as + defined in "Normal Form For Geometry" in the NTS Technical + Specifications. + + + + + Given the specified test point, this returns the closest point in this geometry. + + + + + + EqualsExact + + Returns true if the two Geometrys are exactly equal, + up to a specified tolerance. + Two Geometries are exactly within a tolerance equal iff: + they have the same class, + they have the same values of Coordinates, + within the given tolerance distance, in their internal + Coordinate lists, in exactly the same order. + If this and the other Geometrys are + composites and any children are not Geometrys, returns + false. + + The Geometry with which to compare this Geometry + Distance at or below which two Coordinates will be considered equal. + + true if this and the other Geometry + are of the same class and have equal internal data. + + + + Normalize + + Converts this Geometry to normal form (or + canonical form ). Normal form is a unique representation for Geometry + s. It can be used to test whether two Geometrys are equal + in a way that is independent of the ordering of the coordinates within + them. Normal form equality is a stronger condition than topological + equality, but weaker than pointwise equality. The definitions for normal + form use the standard lexicographical ordering for coordinates. "Sorted in + order of coordinates" means the obvious extension of this ordering to + sequences of coordinates. This does nothing for points. + + + + + Creates a copy of this Point with the same factory + specifications and values. + + + + + + + + + + + Calculates the vector distance. (This is a 2D operation) + + Any valid implementation of the ICoordinate Interface + The Euclidean distance between two points {Sqrt((X2 - X1)^2 + (Y2 - Y1)^2) + + + + Returns the distance that is appropriate for N dimensions. In otherwords, if this point is + three dimensional, then all three dimensions will be used for calculating the distance. + + The coordinate to compare to this coordinate + A double valued distance measure that is invariant to the number of coordinates + The number of dimensions does not match between the points. + + + + Tests to see if the X coordinate and Y coordinate are the same between this point and the + specified Coordinate + + Any valid implementation of the ICoordinate Interface + True if the coordinates are equal, false otherwise + + + + Tests to see if the X, Y, and Z coordinate are the same between this point and the + specified Coordinate + + Any valid implementation of the ICoordinate Interface + True if the coordinates are equal, false otherwise + + + + Rotates the point by the given radian angle around the Origin. + + Coordinate the point gets rotated around. + Rotation angle in radian. + + + + Sets the coordinate. + + The value to set. + + + + Creates an array of ordinate values that is the size of NumDimensions. This + will not include an M value. + + An Array of double values, with one value for each ordinate. + + + + Gets or sets the double value of the specific ordinate + + + + + + + This is an optional recordnumber index, used specifically for Shapefile points. + + + + Boundary + + Returns the boundary, or the empty point if this Geometry + is empty. For a discussion of this function, see the OpenGIS Simple + Features Specification. As stated in SFS Section 2.1.13.1, "the boundary + of a Geometry is a set of Geometries of the next lower dimension." + + The closure of the combinatorial boundary of this Geometry. + + + + Returns the dimension of this Geometrys inherent boundary. + + + The dimension of the boundary of the class implementing this + interface, whether or not this object is the empty point. Returns + Dimension.False if the boundary is the empty point. + + + + Coordinate + + Returns a vertex of this Geometry + + + + + People might access "Coordinates". If we spontaneously generate a list from + our single coordinate, thne we will have problems. + They cannot SET the coordinate like myPoint.Coordinates[0].X = 5. + + + + Dimension + + Gets or sets the DotSpatial.Geometries.Dimensions of this Geometry. + + + + + Gets the number of ordinates that are being used by the underlying coordinate for + this point. + + + + + Envelope containing this + + + + + This will always contain points, even if it is technically empty + + + + + returns Point + + + + IsEmpty + + Returns whether or not the set of points in this geometry is empty + + + + IsSimple + + Returns false if the Geometry not simple. Subclasses provide their own definition + of "simple". If this Geometry is empty, returns true. In general, the SFS specifications + of simplicity seem to follow the following rule: A Geometry is simple if the only + self-intersections are at boundary points. For all empty Geometrys, IsSimple==true. + + + + IsValid + + Tests the validity of this Geometry. Subclasses provide their own definition of "valid" + + + + + The measure coordinate + + + + + The integer number of points. In this case it is either 1 or 0 if the point is empty. + + + + + Gets or sets the ordinates directly as an array of double values for this point. + + + + + The X coordinate + + + + + The Y coordinate + + + + + The Z coordinate + + + + + Represents a linear polygon, which may include holes. + The shell and holes of the polygon are represented by {LinearRing}s. + In a valid polygon, holes may touch the shell or other holes at a single point. + However, no sequence of touching holes may split the polygon into two pieces. + The orientation of the rings in the polygon does not matter. + The shell and holes must conform to the assertions specified in the + OpenGIS Simple Features Specification for SQL. + + + + + Constructs a Polygon with the given exterior boundary. + + + The outer boundary of the new Polygon, + or null or an empty LinearRing if the empty + polygon is to be created. + + + + + + Constructs a Polygon with the given exterior boundary. + + + The outer boundary of the new Polygon, + or null or an empty LinearRing if the empty + polygon is to be created. + + + + + Generates a new polygon using the default geometry factory from the specified set of coordinates, + where the coordinates will become the polygon shell. + + The shell of the polygon expressed as an enumerable collection of ICoordinate + + + + Initializes a new instance of the Polygon class. + + + The outer boundary of the new Polygon, + or null or an empty LinearRing if the empty + point is to be created. + + + The inner boundaries of the new Polygon + , or null or empty LinearRings if the empty + point is to be created. + + + For create this is used a standard + with == . + + + + + Constructs a Polygon with the given exterior boundary and + interior boundaries. + + + The outer boundary of the new Polygon, + or null or an empty LinearRing if the empty + point is to be created. + + + The inner boundaries of the new Polygon + , or null or empty LinearRings if the empty + point is to be created. + + + Holes must not contain null elements + + + + Constructor for a polygon + + A simpler BasicPolygon to empower with topology functions + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Clears any cached envelopes + + + + + + + + + + + + + + + + + + + Given the specified test point, this checks each segment, and will + return the closest point on the specified segment. + + The point to test. + + + + + + + + + + + + + + + + + Occurs during the copy process and ensures that the shell and holes are all duplicated and not direct references + + + + + + + + + + + + Rotates the polygon by the given radian angle around the Origin. + + Coordinate the polygon gets rotated around. + Rotation angle in radian. + + + + + + + + + + + Hole data might actually already be cast appropriately, but it might need to be + converted into an array of linear rings. + + + + + + Represents an empty Polygon. + + + + + This is just the Shell, but modified to work with IBasicPolygon + + + + + Returns the area of this Polygon + + Area in Meters (by default) when using projected coordinates. + + + + + + + + + + + + + + + + + + + Gets all the coordinates for the polygon. Setting this assumes that all the coordintes + belong in the shell. + + + + + + + + + + This will always contain points, even if it is technically empty + + + + + Specifically returns a Polygon type + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the perimeter of this Polygon. + + + + + + + + + + + For polygons, this returns the complete number of points, including all the points + from the outer ring as well as from the interior holes. + + + + + This returns a full ILinearRing geometry + + + + + PolygonException + + + + + Creates a new instance of PolygonException + + + + + Specifies the precision model of the Coordinates in a Geometry. + In other words, specifies the grid of allowable + points for all Geometrys. + The makePrecise method allows rounding a coordinate to + a "precise" value; that is, one whose + precision is known exactly. + Coordinates are assumed to be precise in geometries. + That is, the coordinates are assumed to be rounded to the + precision model given for the point. + NTS input routines automatically round coordinates to the precision model + before creating Geometries. + All internal operations + assume that coordinates are rounded to the precision model. + Constructive methods (such as bool operations) always round computed + coordinates to the appropriate precision model. + Currently three types of precision model are supported: + + Floating: represents full double precision floating point. + This is the default precision model used in NTS + FloatingSingle: represents single precision floating point. + Fixed: represents a model with a fixed number of decimal places. + + A Fixed Precision Model is specified by a scale factor. + The scale factor specifies the grid which numbers are rounded to. + Input coordinates are mapped to fixed coordinates according to the following + equations: + jtsPt.x = round((inputPt.x * scale ) / scale + jtsPt.y = round((inputPt.y * scale ) / scale + Coordinates are represented internally as double-precision values. + Since .NET uses the IEEE-394 floating point standard, this + provides 53 bits of precision. (Thus the maximum precisely representable + integer is 9, 007, 199, 254, 740, 992). + NTS methods currently do not handle inputs with different precision models. + + + + + The maximum precise value representable in a double. Since IEE754 + double-precision numbers allow 53 bits of mantissa, the value is equal to + 2^53 - 1. This provides almost 16 decimal digits of precision. + + + + + The type of PrecisionModel this represents. + + + + + The scale factor which determines the number of decimal places in fixed precision. + + + + + Creates a PrecisionModel with a default precision + of Floating. + + + + + Creates a PrecisionModel that specifies + an explicit precision model type. + If the model type is Fixed the scale factor will default to 1. + + + The type of the precision model. + + + + + Creates a PrecisionModel that specifies Fixed precision. + Fixed-precision coordinates are represented as precise internal coordinates, + which are rounded to the grid defined by the scale factor. + + + Amount by which to multiply a coordinate after subtracting + the offset, to obtain a precise coordinate. + + + + + Copy constructor to create a new PrecisionModel + from an existing one. + + + + + + Compares this PrecisionModel object with the specified object for order. + A PrecisionModel is greater than another if it provides greater precision. + The comparison is based on the value returned by the + {getMaximumSignificantDigits) method. + This comparison is not strictly accurate when comparing floating precision models + to fixed models; however, it is correct when both models are either floating or fixed. + + + The PrecisionModel with which this PrecisionModel + is being compared. + + + A negative integer, zero, or a positive integer as this PrecisionModel + is less than, equal to, or greater than the specified PrecisionModel. + + + + + Return HashCode. + + + + + Gets the type of this PrecisionModel. + + + + + + Sets internal to the precise representation of external. + + The original coordinate. + + The coordinate whose values will be changed to the + precise representation of external. + + + + + Returns the precise representation of external. + + The original coordinate. + + The coordinate whose values will be changed to the precise + representation of external + + + + + Returns the external representation of internal. + + The original coordinate. + + The coordinate whose values will be changed to the + external representation of internal. + + + + + Sets external to the external representation of internal. + + The original coordinate. + + The coordinate whose values will be changed to the + external representation of internal. + + + + + Rounds a numeric value to the PrecisionModel grid. + Symmetric Arithmetic Rounding is used, to provide + uniform rounding behaviour no matter where the number is + on the number line. + + + + + + Rounds a Coordinate to the PrecisionModel grid. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests whether the precision model supports floating point. + + true if the precision model supports floating point. + + + + Returns the maximum number of significant digits provided by this + precision model. + Intended for use by routines which need to print out precise values. + + + The maximum number of decimal places provided by this precision model. + + + + + Returns the multiplying factor used to obtain a precise coordinate. + This method is private because PrecisionModel is intended to + be an immutable (value) type. + + + the amount by which to multiply a coordinate after subtracting + the offset. + + + + + Returns the x-offset used to obtain a precise coordinate. + + + The amount by which to subtract the x-coordinate before + multiplying by the scale. + + + + + Returns the y-offset used to obtain a precise coordinate. + + + The amount by which to subtract the y-coordinate before + multiplying by the scale + + + + + SizeD is just like a Size class except that it has double valued measures, + and expresses sizes in three dimensions. + + + + + Creates a new instance of SizeD + + + + + Creates a new SizeD structure. + + X or longitude size + Y or latitude size + Z or altitude size + + + + Gets or sets the size in the x direction or longitude + + + + + Gets or sets the size in the y direction or latitude + + + + + Gets or sets the size in the z direction or altitude + + + + + Indicates an invalid or inconsistent topological situation encountered during processing + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a planar triangle, and provides methods for calculating various + properties of triangles. + + + + + + + + + + + + + + + + + + + + + + + + + + + + The inCentre of a triangle is the point which is equidistant + from the sides of the triangle. This is also the point at which the bisectors + of the angles meet. + + + The point which is the InCentre of the triangle. + + + + + A framework for processes which transform an input Geometry into + an output Geometry, possibly changing its structure and type(s). + This class is a framework for implementing subclasses + which perform transformations on + various different Geometry subclasses. + It provides an easy way of applying specific transformations + to given point types, while allowing unhandled types to be simply copied. + Also, the framework handles ensuring that if subcomponents change type + the parent geometries types change appropriately to maintain valid structure. + Subclasses will override whichever TransformX methods + they need to to handle particular Geometry types. + A typically usage would be a transformation that may transform Polygons into + Polygons, LineStrings + or Points. This class would likely need to override the TransformMultiPolygon + method to ensure that if input Polygons change type the result is a GeometryCollection, + not a MultiPolygon. + The default behaviour of this class is to simply recursively transform + each Geometry component into an identical object by copying. + Notice that all TransformX methods may return null, + to avoid creating empty point objects. This will be handled correctly + by the transformer. + The Transform method itself will always + return a point object. + + + + + true if empty geometries should not be included in the result. + + + + + true if the type of the input should be preserved. + + + + + + + + + + + + + + + + + Convenience method which provides standard way of + creating a CoordinateSequence. + + The coordinate array to copy. + A coordinate sequence for the array. + + + + Convenience method which provides statndard way of copying {CoordinateSequence}s + + The sequence to copy. + A deep copy of the sequence. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Extracts all the 1-dimensional (LineString) components from a Geometry. + + + + + Constructs a LineExtracterFilter with a list in which to store LineStrings found. + + + + + + + + + + + + Extracts the linear components from a single point. + If more than one point is to be processed, it is more + efficient to create a single LineExtracterFilter instance + and pass it to multiple geometries. + + The point from which to extract linear components. + The list of linear components. + + + + Extracts all the 0-dimensional (Point) components from a Geometry. + + + + + Constructs a PointExtracterFilter with a list in which to store Points found. + + + + + + + + + + + + Returns the Point components from a single point. + If more than one point is to be processed, it is more + efficient to create a single PointExtracterFilter instance + and pass it to multiple geometries. + + + + + + Extracts all the 2-dimensional (Polygon) components from a Geometry. + + + + + Constructs a PolygonExtracterFilter with a list in which to store Polygons found. + + + + + + + + + + + + Returns the Polygon components from a single point. + If more than one point is to be processed, it is more + efficient to create a single PolygonExtracterFilter instance + and pass it to multiple geometries. + + + + + + A visitor to Geometry elements which can + be short-circuited by a given condition. + + + + + + + + + + + + + + + + + + + + + + + Unsupported geometry Exception + + + + + Creates a new instance of the unsupported geometry exception + + + + + Contains a magnitude and direction + Supports more fundamental calculations than LineSegment, rather than topological functions + + + + + Creates a new empty vector + + + + + Creates a new instance of a vector where the X, Y and Z terms are the same as the + specified coordinate. + + The ICoordinate to use + + + + Creates a new vector from the Point, assuming the tail of the vector is the origin + + The Point to create a vector from + + + + Creates a new vector from a line segment, assuming that the direction is from the start point to the end point + + A Topology.LineSegment object to turn into a vector + + + + Creates a vector that points from the start coordinate to the end coordinate and + uses the distance between the two coordinates to form its length. + + The start coordinate + The end coordinate for the vector + + + + Creates a mathematical vector from X1, Y1 to X2, Y2 + + Double, The X coordinate of the start point for the vector + Double, The Y coordinate of the start point for the vector + Double, the Z coordinate of the start point for the vector + Double, The X coordinate of the end point for the vector + Double, The Y coordinate of the end point for the vector + Double, the Z coordinate of the end point for the vector + + + + Creates a mathemtacal vector from the origin to the x, y, z coordinates + + Double, the X coordinate from the origin + Double, the Y coordinate from the origin + Double, the Z coordinate from the origin + + + + Creates a mathematical vector from the origin with the new magnitude and directions specified + + Double, the length of the vector + The angle in the x-y plane + The angle in the z direction + + + + Creates a mathematical vector in the X-Y plane with angle Theta + + Double, The magnitude of the vector + Angle, The direction measured counterclockwise from Positive X Axis + + + + Creates a new vector from a vector that can be longer or shorter than 3 ordinates. + If an X, Y or Z value is not specified, it will become 0. Values greater than + the Z ordinate are lost. + + + + + + Creates a new vector based on the first three values on the first row of the + matrix. This is useful for working with the result of a transformation matrix. + + An IMatrixD that should represent the vector + + + + Adds each of the elements of V to the elements of this vector + + Vector, the vector to add to this vector + A vector result from the addition + + + + Returns the square of the distance of the vector without taking the square root + This is the same as doting the vector with itself + + Double, the square of the distance between the vectors + + + + Rotates the vector about the X axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new Vector that has been rotated + + + + Rotates the vector about the Y axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new Vector that has been rotated + + + + Rotates the vector about the Z axis as though the tail of the vector were at the origin + + The angle in degrees to rotate counter-clockwise when looking at the origin from the positive axis. + A new Vector that has been rotated + + + + Assuming the vector starts at the origin of 0, 0, 0, this function returns + a Point representing the tip of the vector. + + + + + Returns a new segment from this vector, where the StartPoint is 0, 0, 0 + and the End Point is the tip of this vector + + + + + + Returns an ICoordinate from this vector, where the X, Y and Z value match the values in this vector + + an ICoordinate, where the X, Y and Z value match the values in this vector + + + + Transforms a point that has 3 dimensions by multiplying it by the + specified 3 x 3 matrix in the upper left, but treats the + bottom row as supplying the translation coordinates. + + + + + + + Rotations and transformations work by applying matrix mathematics, + so this creates a 1 x 4 version of this vector. The 4th value + is always 1, and allows for the translation terms to work. + + + + + + Subtracts each element of V from each element of this vector + + Vector, the vector to subtract from this vector + A vector result from the subtraction + + + + Normalizes the vector. + + + + + Returns the cross product of this vector with the specified vector V + + The vector to perform a cross product against + A vector result from the inner product + + + + Returns the dot product of this vector with V2 + + The vector to perform an inner product against + A Double result from the inner product + + + + Compares the values of each element, and if all the elements are equal, returns true. + + The vector to compare against this vector. + Boolean, true if all the elements have the same value. + + + + Override for definition of equality for vectors + + A vector to compare with + true if the X, Y, and Z coordinates are all equal + + + + Checks first to make sure that both objects are vectors. If they are, + then it checks to determine whether or not the X, Y and Z values are equal. + + The object to test against + + + + + Returns the hash code.. or something + + A hash code I guess + + + + Returns the scalar product of this vector against a scalar + + Double, a value to multiply against all the members of this vector + A vector multiplied by the scalar + + + + Adds the vectors U and V using vector addition, which adds the corresponding components + + One vector to be added + A second vector to be added + + + + + Returns the Cross Product of two vectors U and V + + Vector, the first input vector + Vector, the second input vector + A Vector containing the cross product of U and V + + + + Multiplies each component of vector U by the Scalar value + + A vector representing the vector to be multiplied + Double, the scalar value to mulitiply the vector components by + A Vector representing the vector product of vector U and the Scalar + + + + Returns the Inner Product also known as the dot product of two vectors, U and V + + The input vector + The vector to take the inner product against U + a Double containing the dot product of U and V + + + + Non-static version of taking the square distance for a vector + + The vector to find the square of the distance of + Double, the square of the distance + + + + Multiplies each component of vector U by the Scalar value + + A vector representing the vector to be multiplied + Double, the scalar value to mulitiply the vector components by + A Vector representing the vector product of vector U and the Scalar + + + + Subtracts Vector V from Vector U + + A Vector to subtract from + A Vector to subtract + The Vector difference U - V + + + + Adds the vectors U and V using vector addition, which adds the corresponding components + + One vector to be added + A second vector to be added + The sum of the vectors + + + + Tests equality of the X, Y, and Z members. + + The left hand side vector to test for equality. + The right hand side vector to test for equality. + Returns true if X, Y and Z are equal. + + + + Tests inequality of the X, Y and Z members. + + The left hand side vector to test inequality for. + The right hand side vector to test inequality for + Returns true if X, Y and Z are equal + + + + Returns the Cross Product of two vectors U and V + + Vector, the first input vector + Vector, the second input vector + A Vector containing the cross product of U and V + + + + Returns the Inner Product also known as the dot product of two vectors, U and V + + The input vector + The vector to take the inner product against U + a Double containing the dot product of U and V + + + + Multiplies the vectors U and V using vector multiplication, + which adds the corresponding components + + A scalar to multpy to the vector + A vector to be multiplied + The scalar product for the vectors + + + + Multiplies each component of vector U by the Scalar value + + A vector representing the vector to be multiplied + Double, the scalar value to mulitiply the vector components by + A Vector representing the vector product of vector U and the Scalar + + + + Subtracts Vector V from Vector U + + A Vector to subtract from + A Vector to subtract + The Vector difference U - V + + + + The Euclidean distance from the origin to the tip of the 3 dimensional vector + Setting the magntiude won't change the direction. + + + + + Returns the magnitude of the projection of the vector onto the base.X-Y plane + Setting this magnitude will not affect Z, which should be adjusted separately + + + + + Obtains the angle above the X-Y plane. Positive towards positive Z. + Values are in radians from -Pi/2 to Pi/2 + Setting this value when no magnitude exists results in a unit vector with angle phi in the X direction. + + + + + Represents the angle in the X-Y plane. 0 along the positive X axis, and increasing counterclockwise + Values are in Radians. Setting this value when no X-Y magnitude exists results in a unit vector + between X and Y, but does not affect Z, so you may have something other than a unit vector in 3-D. + Set theta before phi in order to obtain a unit vector in 3-D space. + + + + + WkbGeometryTypes + + + + + Point. + + + + + LineString. + + + + + Polygon. + + + + + MultiPoint. + + + + + MultiLineString. + + + + + MultiPolygon. + + + + + GeometryCollection. + + + + + Writes a Well-Known Binary byte data representation of a Geometry. + + + + + Standard byte size for each complex point. + Each complex point (LineString, Polygon, ...) contains: + 1 byte for ByteOrder and + 4 bytes for WKBType. + + + + + Initializes writer with LittleIndian byte order. + + + + + Initializes writer with the specified byte order. + + Encoding type + + + + Writes a WKB representation of a given point. + + + + + + + Writes a WKB representation of a given point. + + + + + + + + + + + + + + Writes LittleIndian ByteOrder. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets corrent length for Byte Stream. + + + + + + + Sets corrent length for Byte Stream. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Outputs the textual representation of a Geometry. + The WktWriter outputs coordinates rounded to the precision + model. No more than the maximum number of necessary decimal places will be + output. + The Well-known Text format is defined in the OpenGIS Simple Features Specification + (http://www.opengis.org/techno/specs.htm) for SQL. + A non-standard "LINEARRING" tag is used for LinearRings. The WKT spec does + not define a special tag for LinearRings. The standard tag to use is + "LINESTRING". + + + + + Generates the WKT for a Point. + + The point coordinate. + + + + + Generates the WKT for a N-point LineString. + + The sequence to output. + + + + + Generates the WKT for a 2-point LineString. + + The first coordinate. + The second coordinate. + + + + + Creates the NumberFormatInfo used to write doubles + with a sufficient number of decimal places. + + + The PrecisionModel used to determine + the number of decimal places to write. + + + A NumberFormatInfo that write double + s without scientific notation. + + + + + Returns a String of repeated characters. + + The character to repeat. + The number of times to repeat the character. + A string of characters. + + + + Converts a Geometry to its Well-known Text representation. + + A Geometry to process. + A Geometry Tagged Text string (see the OpenGIS Simple Features Specification). + + + + Converts a Geometry to its Well-known Text representation. + + A Geometry to process. + + + + + Same as write, but with newlines and spaces to make the + well-known text more readable. + + A Geometry to process + + A "Geometry Tagged Text" string (see the OpenGIS Simple + Features Specification), with newlines and spaces. + + + + + Same as write, but with newlines and spaces to make the + well-known text more readable. + + A Geometry to process + + + + + Converts a Geometry to its Well-known Text representation. + + A Geometry to process + + + + + + Converts a Geometry to <Geometry Tagged Text format, + then appends it to the writer. + + /he Geometry to process. + + /he output writer to append to. + + + + Converts a Coordinate to Point Tagged Text format, + then appends it to the writer. + + The Coordinate to process. + The output writer to append to. + + + + Converts a LineString to <LineString Tagged Text + format, then appends it to the writer. + + The LineString to process. + + The output writer to append to. + + + + Converts a LinearRing to <LinearRing Tagged Text + format, then appends it to the writer. + + The LinearRing to process. + + The output writer to append to. + + + + Converts a Polygon to Polygon Tagged Text format, + then appends it to the writer. + + The Polygon to process. + + The output writer to append to. + + + + Converts a MultiPoint to <MultiPoint Tagged Text + format, then appends it to the writer. + + The MultiPoint to process. + The output writer to append to. + + + + Converts a MultiLineString to MultiLineString Tagged + Text format, then appends it to the writer. + + The MultiLineString to process. + + The output writer to append to. + + + + Converts a MultiPolygon to MultiPolygon Tagged Text + format, then appends it to the writer. + + The MultiPolygon to process. + + The output writer to append to. + + + + Converts a GeometryCollection to GeometryCollection + Tagged Text format, then appends it to the writer. + + The GeometryCollection to process. + + The output writer to append to. + + + + Converts a Coordinate to Point Text format, then + appends it to the writer. + + The Coordinate to process. + The output writer to append to. + + + + Converts a Coordinate to Point format, then appends + it to the writer. + + The Coordinate to process. + The output writer to append to. + The PrecisionModel to use to convert + from a precise coordinate to an external coordinate. + + + + Converts a to a , + not in scientific notation. + + The to convert. + + The as a , + not in scientific notation. + + + + + Converts a LineString to <LineString Text format, then + appends it to the writer. + + The LineString to process. + + + The output writer to append to. + + + + Converts a Polygon to Polygon Text format, then + appends it to the writer. + + The Polygon to process. + + + The output writer to append to. + + + + Converts a MultiPoint to <MultiPoint Text format, then + appends it to the writer. + + The MultiPoint to process. + The output writer to append to. + + + + Converts a MultiLineString to <MultiLineString Text + format, then appends it to the writer. + + The MultiLineString to process. + + + The output writer to append to. + + + + Converts a MultiPolygon to <MultiPolygon Text format, + then appends it to the writer. + + The MultiPolygon to process. + + The output writer to append to. + + + + Converts a GeometryCollection to GeometryCollectionText + format, then appends it to the writer. + + The GeometryCollection to process. + + The output writer to append to. + + + + + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The argument %S cannot be negative.. + + + + + Looks up a localized string similar to The argument %S1 could not be successfully cast into %S2.. + + + + + Looks up a localized string similar to The argument %S was outside the range of accepted values.. + + + + + Looks up a localized string similar to The class %S is not supported.. + + + + + Looks up a localized string similar to The number of ordinates did not match between the dimensions, so the hyperdistance cannot be accurately calculated.. + + + + + Looks up a localized string similar to The same directed edge appeared more than once.. + + + + + Looks up a localized string similar to Geometry collections are not supported for this method.. + + + + + Looks up a localized string similar to The number of dimensions in at least one argument is insufficient for this calculation.. + + + + + Looks up a localized string similar to The number of dimensions in %S is insufficient for this calculation.. + + + + + Looks up a localized string similar to An invalid octant was specified: %S. + + + + + Looks up a localized string similar to The specified key already exists in the tree.. + + + + + Looks up a localized string similar to The specified key could not be found in the tree.. + + + + + Looks up a localized string similar to The size of the key did not match the size of the tree.. + + + + + Looks up a localized string similar to Found null Directed Edge in ring. + + + + + Looks up a localized string similar to Holes must not contain null elements. + + + + + Looks up a localized string similar to Shell is empty but holes are not. + + + + + Looks up a localized string similar to The ICollection is read-only.. + + + + + Looks up a localized string similar to Points in shell and hole appear to be equal. + + + + + Looks up a localized string similar to The code execution should never have reached this location.. + + + + + Looks up a localized string similar to Side location conflict at. + + + + + Looks up a localized string similar to Found single null side at. + + + + + Looks up a localized string similar to Assigned depths do not match. + + + + + Looks up a localized string similar to Found two horizontal edges incident on node.. + + + + + Looks up a localized string similar to Unsupported Geometry classes should be caught in the GeometryEditorOperation.. + + + + + Computes the centroid of an area point. + Algorithm: + Based on the usual algorithm for calculating + the centroid as a weighted sum of the centroids + of a decomposition of the area into (possibly overlapping) triangles. + The algorithm has been extended to handle holes and multi-polygons. + See + for further details of the basic approach. + + + + + Adds the area defined by a Geometry to the centroid total. + If the point has no area it does not contribute to the centroid. + + The point to add. + + + + Adds the area defined by an array of + coordinates. The array must be a ring; + i.e. end with the same coordinate as it starts with. + + An array of Coordinates. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns three times the centroid of the triangle p1-p2-p3. + The factor of 3 is + left in to permit division to be avoided until later. + + + + + Returns twice the signed area of the triangle p1-p2-p3, + positive if a, b, c are oriented Ccw, and negative if cw. + + + + + + + + + + + + + + + Computes the centroid of a linear point. + Algorithm: + Compute the average of the midpoints + of all line segments weighted by the segment length. + + + + + Adds the linestring(s) defined by a Geometry to the centroid total. + If the point is not linear it does not contribute to the centroid. + + The point to add. + + + + Adds the length defined by an array of coordinates. + + An array of Coordinates. + + + + + + + + + Computes the centroid of a point point. + Algorithm: + Compute the average of all points. + + + + + Adds the point(s) defined by a Geometry to the centroid total. + If the point is not of dimension 0 it does not contribute to the centroid. + + The point to add. + + + + Adds the length defined by a coordinate. + + A coordinate. + + + + + + + + + Specifies and implements various fundamental Computational Geometric algorithms. + The algorithms supplied in this class are robust for double-precision floating point. + + + + + A value that indicates an orientation of clockwise, or a right turn. + + + + + A value that indicates an orientation of clockwise, or a right turn. + + + + + A value that indicates an orientation of counterclockwise, or a left turn. + + + + + A value that indicates an orientation of counterclockwise, or a left turn. + + + + + A value that indicates an orientation of collinear, or no turn (straight). + + + + + A value that indicates an orientation of collinear, or no turn (straight). + + + + + Returns the index of the direction of the point q + relative to a vector specified by p1-p2. + + The origin point of the vector. + The final point of the vector. + The point to compute the direction to. + + 1 if q is counter-clockwise (left) from p1-p2, + -1 if q is clockwise (right) from p1-p2, + 0 if q is collinear with p1-p2. + + + + + Test whether a point lies inside a ring. + The ring may be oriented in either direction. + If the point lies on the ring boundary the result of this method is unspecified. + This algorithm does not attempt to first check the point against the envelope + of the ring. + + Point to check for ring inclusion. + Assumed to have first point identical to last point. + true if p is inside ring. + + + + Test whether a point lies on the line segments defined by a + list of coordinates. + + + + + true true if + the point is a vertex of the line or lies in the interior of a line + segment in the linestring. + + + + + Computes whether a ring defined by an array of s is oriented counter-clockwise. + The list of points is assumed to have the first and last points equal. + This will handle coordinate lists which contain repeated points. + This algorithm is only guaranteed to work with valid rings. + If the ring is invalid (e.g. self-crosses or touches), + the computed result may not be correct. + > + + + + + + Computes the orientation of a point q to the directed line segment p1-p2. + The orientation of a point relative to a directed line segment indicates + which way you turn to get to q after travelling from p1 to p2. + + + + + + 1 if q is counter-clockwise from p1-p2, + -1 if q is clockwise from p1-p2, + 0 if q is collinear with p1-p2- + + + + + Computes the distance from a point p to a line segment AB. + Notice: NON-ROBUST! + + The point to compute the distance for. + One point of the line. + Another point of the line (must be different to A). + The distance from p to line segment AB. + + + + Computes the perpendicular distance from a point p + to the (infinite) line containing the points AB + + The point to compute the distance for. + One point of the line. + Another point of the line (must be different to A). + The perpendicular distance from p to line AB. + + + + Computes the distance from a line segment AB to a line segment CD. + Notice: NON-ROBUST! + + A point of one line. + The second point of the line (must be different to A). + One point of the line. + Another point of the line (must be different to A). + The distance from line segment AB to line segment CD. + + + + Returns the signed area for a ring. The area is positive if the ring is oriented CW. + + + Area in Meters (by default) when using projected coordinates. + + + + Computes the length of a linestring specified by a sequence of points. + + The points specifying the linestring. + The length of the linestring. + + + + Computes the convex hull of a . + The convex hull is the smallest convex Geometry that contains all the + points in the input Geometry. + Uses the Graham Scan algorithm. + + + + + Create a new convex hull construction for the input Geometry. + + + + + + Create a new convex hull construction for the input array. + + + + + + + + + + + + + + Returns a Geometry that represents the convex hull of the input point. + The point will contain the minimal number of points needed to + represent the convex hull. In particular, no more than two consecutive + points will be collinear. + + + If the convex hull contains 3 or more points, a Polygon; + 2 points, a LineString; + 1 point, a Point; + 0 points, an empty GeometryCollection. + + + + + Uses a heuristic to reduce the number of points scanned to compute the hull. + The heuristic is to find a polygon guaranteed to + be in (or on) the hull, and eliminate all points inside it. + A quadrilateral defined by the extremal points + in the four orthogonal directions + can be used, but even more inclusive is + to use an octilateral defined by the points in the 8 cardinal directions. + Notice that even if the method used to determine the polygon vertices + is not 100% robust, this does not affect the robustness of the convex hull. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Whether the three coordinates are collinear + and c2 lies between c1 and c3 inclusive. + + + + + + + + + + + + + + + + + + + + + The vertices of a linear ring, which may or may not be flattened (i.e. vertices collinear). + A 2-vertex LineString if the vertices are collinear; + otherwise, a Polygon with unnecessary (collinear) vertices removed. + + + + + + The vertices of a linear ring, which may or may not be flattened (i.e. vertices collinear). + The coordinates with unnecessary (collinear) vertices removed. + + + + Compares s for their angle and distance + relative to an origin. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + Represents a homogeneous coordinate for 2-D coordinates. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Computes the (approximate) intersection point between two line segments + using homogeneous coordinates. + Notice that this algorithm is + not numerically stable; i.e. it can produce intersection points which + lie outside the envelope of the line segments themselves. In order + to increase the precision of the calculation input points should be normalized + before passing them to this routine. + + + + + + + + + + + + + + + + + + + + + + Direct access to x private field + + + + + Direct access to y private field + + + + + Direct access to w private field + + + + + + + + + + Computes a point in the interior of an area point. + Algorithm: + Find the intersections between the point + and the horizontal bisector of the area's envelope + Pick the midpoint of the largest intersection (the intersections + will be lines and points) + Notice: If a fixed precision model is used, + in some cases this method may return a point + which does not lie in the interior. + + + + + + + + + + + + + + + + + + + Tests the interior vertices (if any) + defined by a linear Geometry for the best inside point. + If a Geometry is not of dimension 1 it is not tested. + + The point to add. + + + + Adds a polygon. + + The polygon to add.> + + + + + + + + If point is a collection, the widest sub-point; otherwise, + the point itself. + + + + + + + + + + + + + + + + + + + Returns the centre point of the envelope. + + The envelope to analyze. + The centre of the envelope. + + + + + + + + + Computes a point in the interior of an linear point. + Algorithm: + Find an interior vertex which is closest to + the centroid of the linestring. + If there is no interior vertex, find the endpoint which is + closest to the centroid. + + + + + + + + + + + Tests the interior vertices (if any) + defined by a linear Geometry for the best inside point. + If a Geometry is not of dimension 1 it is not tested. + + The point to add. + + + + + + + + + + Tests the endpoint vertices + defined by a linear Geometry for the best inside point. + If a Geometry is not of dimension 1 it is not tested. + + The point to add. + + + + + + + + + + + + + + + + + + + + + Computes a point in the interior of an point point. + Algorithm: + Find a point which is closest to the centroid of the point. + + + + + + + + + + + Tests the point(s) defined by a Geometry for the best inside point. + If a Geometry is not of dimension 0 it is not tested. + + The point to add. + + + + + + + + + + + + + + + IntersectionTypes + + + + + No intersection occurs + + + + + The lines intersect in a single point + + + + + The lines intersect by overlapping + + + + + An interface for classes which test whether a Coordinate lies inside a ring. + + + + + + + + + + + + A LineIntersector is an algorithm that can both test whether + two line segments intersect and compute the intersection point + if they do. + The intersection point may be computed in a precise or non-precise manner. + Computing it precisely involves rounding it to an integer. (This assumes + that the input coordinates have been made precise by scaling them to + an integer grid.) + + + + + The indexes of the endpoints of the intersection lines, in order along + the corresponding line + + + + + If MakePrecise is true, computed intersection coordinates will be made precise + using Coordinate.MakePrecise. + + + + + + + + + + Computes the "edge distance" of an intersection point p along a segment. + The edge distance is a metric of the point along the edge. + The metric used is a robust and easy to compute metric function. + It is not equivalent to the usual Euclidean metric. + It relies on the fact that either the x or the y ordinates of the + points in the edge are unique, depending on whether the edge is longer in + the horizontal or vertical direction. + Notice: This function may produce incorrect distances + for inputs where p is not precisely on p1-p2 + (E.g. p = (139, 9) p1 = (139, 10), p2 = (280, 1) produces distanct 0.0, which is incorrect. + My hypothesis is that the function is safe to use for points which are the + result of rounding points which lie on the line, but not safe to use for truncated points. + + + + + This function is non-robust, since it may compute the square of large numbers. + Currently not sure how to improve this. + + + + + + + + + Compute the intersection of a point p and the line p1-p2. + This function computes the bool value of the hasIntersection test. + The actual value of the intersection (if there is one) + is equal to the value of p. + + + + + Computes the intersection of the lines p1-p2 and p3-p4. + This function computes both the bool value of the hasIntersection test + and the (approximate) value of the intersection point itself (if there is one). + + + + + + + + + + + + + + + + + + + + + Returns the intIndex'th intersection point. + + is 0 or 1. + The intIndex'th intersection point. + + + + + + + + + Test whether a point is a intersection point of two line segments. + Notice that if the intersection is a line segment, this method only tests for + equality with the endpoints of the intersection segment. + It does not return true if the input point is internal to the intersection segment. + + true if the input point is one of the intersection points. + + + + Tests whether either intersection point is an interior point of one of the input segments. + + + true if either intersection point is in the interior of one of the input segment. + + + + + Tests whether either intersection point is an interior point of the specified input segment. + + + true if either intersection point is in the interior of the input segment. + + + + + Computes the coordinate of the intIndex'th intersection point in the direction of + a specified input line segment. + + The segment index from 0 to 1. + The integer intersection index from 0 to 1. + + The coordinate of the intIndex'th intersection point in the direction of the specified input line segment. + + + + + Computes the index of the intIndex'th intersection point in the direction of + a specified input line segment, and returns the integer index. + + The integer segment index from 0 to 1. + The integer intersection index from 0 to 1. + + The integer index of the intersection point along the segment (0 or 1). + + + + + Computes the integer line index of the specified integer segment index. + + The integer index of the segment. + + + + Computes the "edge distance" of an intersection point along the specified input line segment. + + The integer segment index from 0 to 1. + The integer intersection index from 0 to 1. + The edge distance of the intersection point. + + + + Gets or sets the first intersection coordinate, if any. + + + + + Gets or sets the second intersection coordiante, if any. + + + + + Force computed intersection to be rounded to a given precision model + + + + + Force computed intersection to be rounded to a given precision model. + No getter is provided, because the precision model is not required to be specified. + + + + + Tests whether the input geometries intersect. + + true if the input geometries intersect. + + + + Returns the number of intersection points found. This will be either 0, 1 or 2. + + + + + Gets the array of intersection points + + + + + Gets or sets a two dimensional array of coordinates representing the input lines for the calculation + + + + + This is true if the intersection forms a line + + + + + Gets Whether this is both propper and has an intersection + + + + + Tests whether an intersection is proper. + The intersection between two line segments is considered proper if + they intersect in a single point in the interior of both segments + (e.g. the intersection is a single point and is not equal to any of the endpoints). + The intersection between a point and a line segment is considered proper + if the point lies in the interior of the segment (e.g. is not equal to either of the endpoints). + + true if the intersection is proper. + + + + Gets or sets the integer result + + + + + Implements IPointInRing + using a MonotoneChains and a BinTree index to increase performance. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The action for the internal iterator for performing + envelope select queries on a MonotoneChain. + + + + + These envelopes are used during the MonotoneChain search process. + + + + + This function can be overridden if the original chain is needed. + + + + + + + This is a convenience function which can be overridden to obtain the actual + line segment which is selected. + + + + + + + + + + + + + + + + + + + Computes the minimum diameter of a Geometry. + The minimum diameter is defined to be the + width of the smallest band that contains the point, + where a band is a strip of the plane defined + by two parallel lines. + This can be thought of as the smallest hole that the point can be + moved through, with a single rotation. + The first step in the algorithm is computing the convex hull of the Geometry. + If the input Geometry is known to be convex, a hint can be supplied to + avoid this computation. + + + + + Compute a minimum diameter for a giver Geometry. + + a Geometry. + + + + Compute a minimum diameter for a giver Geometry, + with a hint if + the Geometry is convex + (e.g. a convex Polygon or LinearRing, + or a two-point LineString, or a Point). + + a Geometry which is convex. + true if the input point is convex. + + + + + + + + + + + + + + + Compute the width information for a ring of Coordinates. + Leaves the width information in the instance variables. + + + + + + + + + + + + + + + + + + + + + + + Gets the length of the minimum diameter of the input Geometry. + + The length of the minimum diameter. + + + + Gets the Coordinate forming one end of the minimum diameter. + + A coordinate forming one end of the minimum diameter. + + + + Gets the segment forming the base of the minimum diameter. + + The segment forming the base of the minimum diameter. + + + + Gets a LineString which is a minimum diameter. + + A LineString which is a minimum diameter. + + + + Non-robust versions of various fundamental Computational Geometric algorithms, + FOR TESTING PURPOSES ONLY!. + The non-robustness is due to rounding error in floating point computation. + + + + + + + + + + + + + Computes whether a ring defined by an array of Coordinate is + oriented counter-clockwise. + This will handle coordinate lists which contain repeated points. + + an array of coordinates forming a ring. + + true if the ring is oriented counter-clockwise. + throws ArgumentException if the ring is degenerate (does not contain 3 different points) + + + + + + + + + + + + + + A non-robust version of LineIntersector. + + + + + + + + + + true if both numbers are positive or if both numbers are negative, + false if both numbers are zero. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + RParameter computes the parameter for the point p + in the parameterized equation + of the line from p1 to p2. + This is equal to the 'distance' of p along p1-p2. + + + + + + + + + + + + + + + Computes the topological relationship (Location) of a single point to a Geometry. + The algorithm obeys the SFS boundaryDetermination rule to correctly determine + whether the point lies on the boundary or not. + Notice that instances of this class are not reentrant. + + + + + Convenience method to test a point for intersection with a Geometry + + The coordinate to test. + The Geometry to test. + true if the point is in the interior or boundary of the Geometry. + + + + Computes the topological relationship ({Location}) of a single point to a Geometry. + It handles both single-element and multi-element Geometries. + The algorithm for multi-part Geometries takes into account the boundaryDetermination rule. + + The Location of the point relative to the input Geometry. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Implements an algorithm to compute the + sign of a 2x2 determinant for double precision values robustly. + It is a direct translation of code developed by Olivier Devillers. + + The original code carries the following copyright notice: + ************************************************************************ + Author : Olivier Devillers + Olivier.Devillers@sophia.inria.fr + http:/www.inria.fr:/prisme/personnel/devillers/anglais/determinant.html + ************************************************************************* + ************************************************************************* + Copyright (c) 1995 by INRIA Prisme Project + BP 93 06902 Sophia Antipolis Cedex, France. + All rights reserved + ************************************************************************* + + + + + + + + + + + + returns -1 if the determinant is negative, + returns 1 if the determinant is positive, + retunrs 0 if the determinant is null. + + + + + A robust version of LineIntersector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This method computes the actual value of the intersection point. + To obtain the maximum precision from the intersection calculation, + the coordinates are normalized by subtracting the minimum + ordinate values (in absolute value). This has the effect of + removing common significant digits from the calculation to + maintain more bits of precision. + + + + + + + + + + Normalize the supplied coordinates to + so that the midpoint of their intersection envelope + lies at the origin. + + + + + + + + + + Test whether a point lies in the envelopes of both input segments. + A correctly computed intersection point should return true + for this test. + Since this test is for debugging purposes only, no attempt is + made to optimize the envelope test. + + + true if the input point lies within both input segment envelopes. + + + + Computes whether a point + lies in the interior of an area Geometry. + The algorithm used is only guaranteed to return correct results + for points which are not on the boundary of the Geometry. + + + + + + + + + + Locate is the main location function. It handles both single-element + and multi-element Geometries. The algorithm for multi-element Geometries + is more complex, since it has to take into account the boundaryDetermination rule. + + The coordinate to locate. + The Geometry to locate the coordinate in. + + + + + + + + + + + + + + + + + + + + Tests whether a Coordinate lies inside + a ring, using a linear-time algorithm. + + + + + + + + + + + + + + + + + + + + + + + Implements PointInRing using a SIRtree index to increase performance. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A ClassNotSupportedException Class + + + + + Creates a new instance of ClassNotSupportedException + + + + + + + + + + A visitor for items in an index. + + + + + + + + + + + + + + + + + + + + + + An BinTree (or "Binary Interval Tree") + is a 1-dimensional version of a quadtree. + It indexes 1-dimensional intervals (which of course may + be the projection of 2-D objects on an axis). + It supports range searching + (where the range may be a single point). + This implementation does not require specifying the extent of the inserted + items beforehand. It will automatically expand to accomodate any extent + of dataset. + This index is different to the Interval Tree of Edelsbrunner + or the Segment Tree of Bentley. + + + + + + + + + + Ensure that the Interval for the inserted item has non-zero extents. + Use the current minExtent to pad it, if necessary. + + + + + + + + + + + + + + + + + + + + + + + + + min and max may be the same value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compute the total number of nodes in the tree. + + The number of nodes in the tree. + + + + Represents an (1-dimensional) closed interval on the Real number line. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A Key is a unique identifier for a node in a tree. + It contains a lower-left point and a level number. The level number + is the power of two for the size of the node envelope. + + + + + + + + + + + + + + + + + + Return a square envelope containing the argument envelope, + whose extent is a power of two and which is based at a power of 2. + + + + + + + + + + + + + + + + + + + + + + + + + + + + A node of a Bintree. + + + + + The base class for nodes in a Bintree. + + + + + Subnodes are numbered as follows: + 0 | 1 + + + + + Adds the specified object to the items list for this node. This will not affect child nodes. + + The object item to add to the list. + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the index of the subnode that wholely contains the given interval. + If none does, returns -1. + + + + + + + Gets the count of all the items in this node, plus all the items in all of the child nodes + + + + + Gets an integer representing the maximum levels needed to be decended to account for all the child nodes + + + + + Gets a list of all the items currently stored in this node. This does not include + any items from child nodes. + + + + + Gets the count of this node plus all of the child nodes + + + + + Gets the array of all the sub-nodes below this node. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the subnode containing the envelope. + Creates the node if + it does not already exist. + + + + + + Returns the smallest existing + node containing the envelope. + + + + + + + + + + + + Get the subnode for the index. + If it doesn't exist, create it. + + + + + + + + + + + + + + + + + The root node of a single Bintree. + It is centred at the origin, + and does not have a defined extent. + + + + + Insert an item into the tree this is the root of. + + + + + + + Insert an item which is known to be contained in the tree rooted at + the given Node. Lower levels of the tree will be created + if necessary to hold the item. + + + + + + + + The root node matches all searches. + + + + + + MonotoneChains are a way of partitioning the segments of a linestring to + allow for fast searching of intersections. + They have the following properties: + the segments within a monotone chain will never intersect each other + the envelope of any contiguous subset of the segments in a monotone chain + is equal to the envelope of the endpoints of the subset. + Property 1 means that there is no need to test pairs of segments from within + the same monotone chain for intersection. + Property 2 allows + binary search to be used to find the intersection points of two monotone chains. + For many types of real-world data, these properties eliminate a large number of + segment comparisons, producing substantial speed gains. + One of the goals of this implementation of MonotoneChains is to be + as space and time efficient as possible. One design choice that aids this + is that a MonotoneChain is based on a subarray of a list of points. + This means that new arrays of points (potentially very large) do not + have to be allocated. + MonotoneChains support the following kinds of queries: + Envelope select: determine all the segments in the chain which + intersect a given envelope. + Overlap: determine all the pairs of segments in two chains whose + envelopes overlap. + This implementation of MonotoneChains uses the concept of internal iterators + to return the resultsets for the above queries. + This has time and space advantages, since it + is not necessary to build lists of instantiated objects to represent the segments + returned by the query. + However, it does mean that the queries are not thread-safe. + + + + + + + + + + + + + + Gets a copy of the line segment located at the specified index. + + + + + + Determine all the line segments in the chain whose envelopes overlap + the searchEnvelope, and process them. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Return the subsequence of coordinates forming this chain. + Allocates a new array to hold the Coordinates. + + + + + A MonotoneChainBuilder implements static functions + to determine the monotone chains in a sequence of points. + + + + + Only static methods! + + + + + + + + + + + + + + + + + + + Return a list of the MonotoneChains + for the given list of coordinates. + + + + + + + Return an array containing lists of start/end indexes of the monotone chains + for the given list of coordinates. + The last entry in the array points to the end point of the point array, + for use as a sentinel. + + + + + + + + + + + The index of the last point in the monotone chain starting at start. + + + + + The action for the internal iterator for performing + overlap queries on a MonotoneChain. + + + + + This function can be overridden if the original chains are needed. + + + The index of the start of the overlapping segment from mc1. + + The index of the start of the overlapping segment from mc2. + + + + This is a convenience function which can be overridden to obtain the actual + line segments which overlap. + + + + + + + This envelope is used during the MonotoneChain search process. + + + + + This envelope is used during the MonotoneChain search process. + + + + + One overlapping segment. + + + + + The other overlapping segment. + + + + + A visitor for nodes and items in an index. + + + + + + + + + + + The basic insertion and query operations supported by classes + implementing spatial index algorithms. + A spatial index typically provides a primary filter for range rectangle queries. A + secondary filter is required to test for exact intersection. Of course, this + secondary filter may consist of other tests besides intersection, such as + testing other kinds of spatial relationships. + + + + + Adds a spatial item with an extent specified by the given Envelope to the index. + + + + + Queries the index for all items whose extents intersect the given search Envelope + Notice that some kinds of indexes may also return objects which do not in fact + intersect the query envelope. + + The envelope to query for. + A list of the items found by the query. + + + + Queries the index for all items whose extents intersect the given search , + and applies an to them. + Notice that some kinds of indexes may also return objects which do not in fact + intersect the query envelope. + + The envelope to query for. + A visitor object to apply to the items found. + + + + Removes a single item from the tree. + + The Envelope of the item to remove. + The item to remove. + true if the item was found. + + + + Bjoern Heckel's solution to the KD-Tree n-nearest-neighbor problem + + + + + Creates a new NearestNeighborList + + An integer indicating the maximum size for the cue + + + + Inserts an object with a given priority + + + + + + + + Removes the highest member from the cue and returns that object. + + + + + + Gets the minimum priority, or distance. Since we are looking for the maximum distance, or the + n maximum distances, we want to determine quickly the lowest distance currently contained + in the cue. + + + + + + Gets whether or not the length of the cue has reached the capacity + + + + + Gets the highest object in the nearest neighbor list + + + + + + Gets a boolean indicating whether or not the cue is empty + + + + + + Gets the length of the current list + + + + + Hyper-Point class supporting KdTree class + + + + + Constructs a new HyperPoint where numDimensions indicates the size of the array for the coordinates + + The number of dimensions + + + + Constructs a new HyperPoint where the specified array of doubles defines the internal coordinate values. + + The in coordinate to use when constructing this hyper point. + + + + A Static method for returning the square distance between two coordinates + + One coordinate + A second coordinate + A double representing the square distance + + + + Calculates the Euclidean distance between the two coordinates + + An ICoordinate + Another ICoordinate + A double representing the distance + + + + Calculates the distance in comparison with any coordinate. The coordinate with fewer dimensions + will determine the dimensionality for the comparison. + + + + + + + Calculates the square of the Euclidean distance between this point and the other point. + + Any valid implementation of ICoordinate + A double representing the distances. + + + + Gets or sets the actual values for this class. + + + + + Hyper-Rectangle class supporting KdTree class + + + + + Maximum values + + + + + Minimum values + + + + + Constructs a new instance of a rectangle binding structure based on a specified number of dimensions + + An integer representing the number of dimensions. For X, Y coordinates, this should be 2. + + + + Creates a new bounding rectangle based on the two coordinates specified. It is assumed that + the vmin and vmax coordinates have already been correctly calculated. + + + + + + + Creates a duplicate of this object + + An object duplicate of this object + + + + Creates a duplicate of this bounding box using the existing minimum and maximum. + + An HRect duplicate of this object + + + + Calculates the closest point on the hyper-extent to the specified point. + from Moore's eqn. 6.6 + + + + + + + This method calculates the furthest point on the rectangle + from the specified point. This is to determine if it is + possible for any of the members of the closer rectangle + to be positioned further away from the test point than + the points in the hyper-extent that is further from the point. + + + + + + + Calculates a new HRect object that has a nearly infinite bounds. + + THe number of dimensions to use + A new HRect where the minimum is negative infinity, and the maximum is positive infinity + Used in initial conditions of KdTree.nearest() + + + + If the specified HRect does not intersect this HRect, this returns null. Otherwise, + this will return a smaller rectangular region that represents the intersection + of the two bounding regions. + + Another HRect object to intersect with this one. + The HRect that represents the intersection area for the two bounding boxes. + currently unused + + + + Creates a string that represents this bounding box + + A String + + + + Gets the current hyper-volume. For 1D, this is Length. For 2D this is Area. For 3D this is Volume. + + + + + Gets or sets the minimum coordinate (containing the smaller value) in all dimensions. + + + + + Gets or sets the maximum coordinate + + + + + Gets the number of ordinates for this rectangular structure (based on the minimum HPoint) + + + + + K-D Tree node class + + + + + Constructs a new instance of the KDNode. + + A Hyper Point representing the key to use for storing this value + A valid object value to use for copying this. + The constructor is used only by class; other methods are static + + + + Creates a string representation of this node + + The depth of child nodes to search when creating the string. + A string representation of this node. + + + + Inserts a + + + + + + + + Method ins translated from 352.ins.c of Gonnet and Baeza-Yates + + + + Searches for a specific value + + + + + + Method srch translated from 352.srch.c of Gonnet and Baeza-Yates + + + + Searches for values in a range + + + + + + + + Method rsearch translated from 352.range.c of Gonnet and Baeza-Yates + + + + Method Nearest Neighbor from Andrew Moore's thesis. Numbered + comments are direct quotes from there. Step "SDL" is added to + make the algorithm work correctly. NearestNeighborList solution + courtesy of Bjoern Heckel. + + + + + + + + + + + + This method was written by Ted Dunsford by restructuring the nearest neighbor + algorithm presented by Andrew and Bjoern + + Since this is recursive, this represents the current node + The target is the HPoint that we are trying to calculate the farthest distance from + In this case, the hr is the hyper rectangle bounding the region that must contain the furthest point. + The maximum distance that we have calculated thus far, and will therefore be testing against. + The integer based level of that we have recursed to in the tree + The dimensionality of the kd tree + A list to contain the output, prioritized by distance + + + + Gets or sets whether this node has been _isDeleted + + + + + This is an adaptation of the Java KdTree library implemented by Levy + and Heckel. This simplified version is written by Marco A. Alvarez + + KdTree is a class supporting KD-tree insertion, deletion, equality + search, range search, and nearest neighbor(s) using double-precision + floating-point keys. Splitting dimension is chosen naively, by + depth modulo K. Semantics are as follows: + + Two different keys containing identical numbers should retrieve the + same value from a given KD-tree. Therefore keys are cloned when a + node is inserted. + + As with Hashtables, values inserted into a KD-tree are not + cloned. Modifying a value between insertion and retrieval will + therefore modify the value stored in the tree. + + + @author Simon Levy, Bjoern Heckel + Translation by Marco A. Alvarez + Adapted by Ted Dunsford to better suite the dot net framework by + changing comments to work in intellisense and extending some of the + basic objects to work more tightly with MapWindow. + + + + + Creates a new tree with the specified number of dimensions. + + An integer value specifying how many ordinates each key should have. + + + + Insert a node into the KD-tree. + + The array of double valued keys marking the position to insert this object into the tree + The object value to insert into the tree + if key.length mismatches the dimension of the tree (K) + if the key already exists in the tree + + Uses algorithm translated from 352.ins.c of + @Book{GonnetBaezaYates1991, + author = {G.H. Gonnet and R. Baeza-Yates}, + title = {Handbook of Algorithms and Data Structures}, + publisher = {Addison-Wesley}, + year = {1991} + + + + + Find the KD-tree node whose key is identical to the specified key. + This uses the algorithm translated from 352.srch.c of Connet and Baeza-Yates. + + The key identifying the node to search for + An object that is the node with a matching key, or null if no key was found. + if key.length mismatches the dimension of the tree (K) + + + + Deletes a node from the KD-tree. Instead of actually deleting the node and + rebuilding the tree, it marks the node as deleted. Hence, it is up to the + caller to rebuild the tree as needed for efficiency. + + The key to use to identify the node to delete + if key.length mismatches the dimension of the tree (K) + if the key was not found in the tree + + + + Find KD-tree node whose key is nearest neighbor to key. + Implements the Nearest Neighbor algorithm (Table 6.4) of + + key for KD-tree node + object at node nearest to key, or null on failure + if key.length mismatches the dimensions of the tree (K) + + @techreport{AndrewMooreNearestNeighbor, + author = {Andrew Moore}, + title = {An introductory tutorial on kd-trees}, + institution = {Robotics Institute, Carnegie Mellon University}, + year = {1991}, + number = {Technical Report No. 209, Computer Laboratory, + University of Cambridge}, + address = {Pittsburgh, PA} + + + + + Find KD-tree nodes whose keys are n nearest neighbors to + key. Uses algorithm above. Neighbors are returned in ascending + order of distance to key. + + key for KD-tree node + The Integer showing how many neighbors to find + An array of objects at the node nearest to the key + Mismatch if key length doesn't match the dimension for the tree + if n is negative or exceeds tree size + + + + Reverses the conventional nearest neighbor in order to obtain the furthest neighbor instead. + + The key for the KD-tree node + The object that corresponds to the furthest object + + + + Find KD-tree nodes whose keys are n farthest neighbors from + key. Neighbors are returned in descending order of distance to key. + + key for KD-tree node + The Integer showing how many neighbors to find + An array of objects at the node nearest to the key + Mismatch if key length doesn't match the dimension for the tree + if n is negative or exceeds tree size + + + + Search a range in the KD-tree. + + The lower bound in all ordinates for keys + Teh upper bound in all ordinates for keys + An array of objects whose keys fall in range [lowk, uppk] + Range search in a KD-tree. Uses algorithm translated from 352.range.c of Gonnet and Baeza-Yates. + Mismatch of the specified parameters compared with the tree or each other. + + + + Converts the value to a string + + A string + + + + Gets the number of members in this tree. + + + + + Gets the actual number of dimensions for this tree. + + + + + KeyDuplicateException is thrown when the KdTree.insert method + is invoked on a key already in the KdTree. + + @author Simon Levy + Translation by Marco A. Alvarez + + + + + KeyDuplicateException + + + + + Key-size mismatch exception supporting KdTree class + + @author Simon Levy + Translation by Marco A. Alvarez + + + + + KeyMissing Exception + + + + + KeySizeException is thrown when a KdTree method is invoked on a + key whose size (array length) mismatches the one used in the that + KdTree's constructor. + + @author Simon Levy + Translation by Marco A. Alvarez + + + + + KeySizeException + + + + + Bjoern Heckel's solution to the KD-Tree n-nearest-neighbor problem + + + + + Indicates whether removal should occur from the highest value or lowest value + + + + + + + + + + Creates a new NearestNeighborList + + An integer indicating the maximum size for the cue + + + + Inserts an item with a given priority + + + + + + + + Removes the highest member from the cue and returns that object. + + + + + + Gets the maximum priority + + + + + + Gets whether or not the length fo the cue has reached the capacity + + + + + Gets the highest object in the nearest neighbor list + + + + + + Gets a boolean indicating whether or not the cue is empty + + + + + + Gets the length of the current list + + + + + NeighborsOutOfRangeException + + + + + Creates a new NeighborsOutOfRangeException + + + + + This class implements a PriorityQueue. This class + is implemented in such a way that objects are added using an + add function. The add function takes + two parameters an object and a long. + + The object represents an item in the queue, the long indicates + its priority in the queue. The remove function in this class + returns the object first in the queue and that object is removed + from the queue permanently. + + @author Simon Levy + Translation by Marco A. Alvarez + + + + The maximum priority possible in this priority queue. + + + Holds the number of elements currently in the queue. + + + This contains the list of objects in the queue. + + + This contains the list of prioritys in the queue. + + + Creates a new PriorityQueue object. The + PriorityQueue object allows objects to be + entered into the queue and to leave in the order of + priority i.e the highest priority get's to leave first. + + + Creates a new PriorityQueue object. The + PriorityQueue object allows objects to + be entered into the queue an to leave in the order of + priority i.e the highest priority get's to leave first. + + @param capacity the initial capacity of the queue before + a resize + + + Creates a new PriorityQueue object. The + PriorityQueue object allows objects to + be entered into the queue an to leave in the order of + priority i.e the highest priority get's to leave first. + + @param capacity the initial capacity of the queue before + a resize + @param maxPriority is the maximum possible priority for + an object + + + This is an initializer for the object. It basically initializes + an array of long called value to represent the prioritys of + the objects, it also creates an array of objects to be used + in parallel with the array of longs, to represent the objects + entered, these can be used to sequence the data. + + @param size the initial capacity of the queue, it can be + resized + + + This function adds the given object into the PriorityQueue, + its priority is the long priority. The way in which priority can be + associated with the elements of the queue is by keeping the priority + and the elements array entrys parallel. + + @param element is the object that is to be entered into this + PriorityQueue + @param priority this is the priority that the object holds in the + PriorityQueue + + + Remove is a function to remove the element in the queue with the + maximum priority. Once the element is removed then it can never be + recovered from the queue with further calls. The lowest priority + object will leave last. + + @return the object with the highest priority or if it's empty + null + + + Bubble down is used to put the element at subscript 'pos' into + it's rightful place in the heap (i.e heap is another name + for PriorityQueue). If the priority of an element + at subscript 'pos' is less than it's children then it must + be put under one of these children, i.e the ones with the + maximum priority must come first. + + @param pos is the position within the arrays of the element + and priority + + + Bubble up is used to place an element relatively low in the + queue to it's rightful place higher in the queue, but only + if it's priority allows it to do so, similar to bubbleDown + only in the other direction this swaps out its parents. + + @param pos the position in the arrays of the object + to be bubbled up + + + This ensures that there is enough space to keep adding elements + to the priority queue. It is however advised to make the capacity + of the queue large enough so that this will not be used as it is + an expensive method. This will copy across from 0 as 'off' equals + 0 is contains some important data. + + + This method will empty the queue. This also helps garbage + collection by releasing any reference it has to the elements + in the queue. This starts from offset 1 as off equals 0 + for the elements array. + + + The number of elements in the queue. The length + indicates the number of elements that are currently + in the queue. + + @return the number of elements in the queue + + + + DoubleBits manipulates Double numbers + by using bit manipulation and bit-field extraction. + For some operations (such as determining the exponent) + this is more accurate than using mathematical operations + (which suffer from round-off error). + The algorithms and constants in this class + apply only to IEEE-754 double-precision floating point format. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This computes the number of common most-significant bits in the mantissa. + It does not count the hidden bit, which is always 1. + It does not determine whether the numbers have the same exponent - if they do + not, the value computed by this function is meaningless. + + + The number of common most-significant mantissa bits. + + + + A representation of the Double bits formatted for easy readability. + + + + + + + + + + Determines the exponent for the number. + + + + + Determines the exponent for the number. + + + + + Provides a test for whether an interval is + so small it should be considered as zero for the purposes of + inserting it into a binary tree. + The reason this check is necessary is that round-off error can + cause the algorithm used to subdivide an interval to fail, by + computing a midpoint value which does not lie strictly between the + endpoints. + + + + + This value is chosen to be a few powers of 2 less than the + number of bits available in the double representation (i.e. 53). + This should allow enough extra precision for simple computations to be correct, + at least for comparison purposes. + + + + + Computes whether the interval [min, max] is effectively zero width. + I.e. the width of the interval is so much less than the + location of the interval that the midpoint of the interval cannot be + represented precisely. + + + + + A Key is a unique identifier for a node in a quadtree. + It contains a lower-left point and a level number. The level number + is the power of two for the size of the node envelope. + + + + + + + + + + + + + + + + + + Return a square envelope containing the argument envelope, + whose extent is a power of two and which is based at a power of 2. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a node of a Quadtree. Nodes contain + items which have a spatial extent corresponding to the node's position + in the quadtree. + + + + + The base class for nodes in a Quadtree. + + + + + subquads are numbered as follows: + 2 | 3 + --+-- + 0 | 1 + + + + + Adds a new item to this node. + + The item to add to this node + + + + Insert items in this into the parameter! + + IList for adding items. + Parameter IList with this items. + + + + + + + + + + + Removes a single item from this subtree. + + The envelope containing the item. + The item to remove. + true if the item was found and removed. + + + + + + + + + + + + + + + + + + + + + + + + Returns the index of the subquad that wholly contains the given envelope. + If none does, returns -1. + + + + + + + Because more than one item can be stored in each node, this returns the total count of + items contained by this node and its child nodes. + + + + + Gets an integer representing how deem the deepest child of this node extends. + + + + + Gets or sets the array of 4 nodes represnting the spatial quadrants being used as children + 2 | 3 + --+-- + 0 | 1 + + + + + Gets a boolean indicating whehter or not this node links to any nodes below it in the tree + + + + + Each node can store multiple items. This tests whether or not there are items in this node. + + + + + If this node has no childern or items, then it can be pruned + + + + + If this node has an item, or if any of the children of this node has an item, then this is false. + + + + + Gets or sets the list of items that are stored in this node + + + + + Gets an integer representing this node and the count of all of the children in its subnodes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the subquad containing the envelope. + Creates the subquad if + it does not already exist. + + + + + + Returns the smallest existing + node containing the envelope. + + + + + + + + + + + + Get the subquad for the index. + If it doesn't exist, create it. + + + + + + + + + + + + + + + + + + A Quadtree is a spatial index structure for efficient querying + of 2D rectangles. If other kinds of spatial objects + need to be indexed they can be represented by their + envelopes + The quadtree structure is used to provide a primary filter + for range rectangle queries. The Query() method returns a list of + all objects which may intersect the query rectangle. Notice that + it may return objects which do not in fact intersect. + A secondary filter is required to test for exact intersection. + Of course, this secondary filter may consist of other tests besides + intersection, such as testing other kinds of spatial relationships. + This implementation does not require specifying the extent of the inserted + items beforehand. It will automatically expand to accomodate any extent + of dataset. + This data structure is also known as an MX-CIF quadtree + following the usage of Samet and others. + + + + + Root of Quadtree + + + + + minExtent is the minimum envelope extent of all items + inserted into the tree so far. It is used as a heuristic value + to construct non-zero envelopes for features with zero X and/or Y extent. + Start with a non-zero extent, in case the first feature inserted has + a zero extent in both directions. This value may be non-optimal, but + only one feature will be inserted with this value. + + + + + Constructs a Quadtree with zero items. + + + + + + + + + + + + Removes a single item from the tree. + + The Envelope of the item to remove. + The item to remove. + true if the item was found. + + + + + + + + + + + + + + + + + + Ensure that the envelope for the inserted item has non-zero extents. + Use the current minExtent to pad the envelope, if necessary. + + + + + + + Return a list of all items in the Quadtree. + + + + + + + + + + + Returns the number of levels in the tree. + + + + + Returns the number of items in the tree. + + + + + QuadRoot is the root of a single Quadtree. + It is centred at the origin, + and does not have a defined extent. + + + + + Insert an item into the quadtree this is the root of. + + + + + Insert an item which is known to be contained in the tree rooted at + the given QuadNode root. Lower levels of the tree will be created + if necessary to hold the item. + + + + + + + + + + + + A node of the STR tree. The children of this node are either more nodes + (AbstractNodes) or real data (ItemBoundables). If this node contains real data + (rather than nodes), then we say that this node is a "leaf node". + + + + + A spatial object in an AbstractSTRtree. + + + + + Returns a representation of space that encloses this Boundable, preferably + not much bigger than this Boundable's boundary yet fast to test for intersection + with the bounds of other Boundables. The class of object returned depends + on the subclass of AbstractSTRtree. + + + An Envelope (for STRtrees), an Interval (for SIRtrees), or other object + (for other subclasses of AbstractSTRtree). + + + + + Constructs an AbstractNode at the given level in the tree + + + 0 if this node is a leaf, 1 if a parent of a leaf, and so on; the + root node will have the highest level. + + + + + Returns a representation of space that encloses this Boundable, + preferably not much bigger than this Boundable's boundary yet fast to + test for intersection with the bounds of other Boundables. The class of + object returned depends on the subclass of AbstractSTRtree. + + + An Envelope (for STRtrees), an Interval (for SIRtrees), or other + object (for other subclasses of AbstractSTRtree). + + + + + Adds either an AbstractNode, or if this is a leaf node, a data object + (wrapped in an ItemBoundable). + + + + + + Returns either child AbstractNodes, or if this is a leaf node, real data (wrapped + in ItemBoundables). + + + + + Returns 0 if this node is a leaf, 1 if a parent of a leaf, and so on; the + root node will have the highest level. + + + + + Returns object fromComputeBounds() + + + + + Base class for STRtree and SIRtree. STR-packed R-trees are described in: + P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With + Application To GIS. Morgan Kaufmann, San Francisco, 2002. + + This implementation is based on Boundables rather than just AbstractNodes, + because the STR algorithm operates on both nodes and + data, both of which are treated here as Boundables. + + + + + + Constructs an AbstractSTRtree with the specified maximum number of child + nodes that a node may have. + + + + + + Creates parent nodes, grandparent nodes, and so forth up to the root + node, for the data that has been inserted into the tree. Can only be + called once, and thus can be called only after all of the data has been + inserted into the tree. + + + + + + + + + + + + Sorts the childBoundables then divides them into groups of size M, where + M is the node capacity. + + + + + + + + + + + + + + + + + + + + + + Creates the levels higher than the given level. + + The level to build on. + the level of the Boundables, or -1 if the boundables are item + boundables (that is, below level 0). + The root, which may be a ParentNode or a LeafNode. + + + + + + + + + + + + + + + + + + + + + + + + + Also builds the tree, if necessary. + + + + + + Also builds the tree, if necessary. + + + + + + + + + + + + + + + + + + + + + + + Also builds the tree, if necessary. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -1 to get items. + + + + + + + + + + + + + + + + + Returns the maximum number of child nodes that a node may have. + + + + + + + + + + + + + + + A test for intersection between two bounds, necessary because subclasses + of AbstractSTRtree have different implementations of bounds. + + + + + A test for intersection between two bounds, necessary because subclasses + of AbstractSTRtree have different implementations of bounds. + + + + + For STRtrees, the bounds will be Envelopes; + for SIRtrees, Intervals; + for other subclasses of AbstractSTRtree, some other class. + + The bounds of one spatial object. + The bounds of another spatial object. + Whether the two bounds intersect. + + + + A contiguous portion of 1D-space. Used internally by SIRtree. + + + + + + + + + + + + + + + + + + + + + this + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Boundable wrapper for a non-Boundable spatial object. Used internally by + AbstractSTRtree. + + + + + + + + + + + + + + + + + + + + + + One-dimensional version of an STR-packed R-tree. SIR stands for + "Sort-Interval-Recursive". STR-packed R-trees are described in: + P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With + Application To GIS. Morgan Kaufmann, San Francisco, 2002. + + + + + Constructs an SIRtree with the default (10) node capacity. + + + + + Constructs an SIRtree with the given maximum number of child nodes that + a node may have. + + + + + + + + + + + + Inserts an item having the given bounds into the tree. + + + + + + + + Returns items whose bounds intersect the given value. + + + + + + Returns items whose bounds intersect the given bounds. + + Possibly equal to x2. + Possibly equal to x1. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A query-only R-tree created using the Sort-Tile-Recursive (STR) algorithm. + For two-dimensional spatial data. + The STR packed R-tree is simple to implement and maximizes space + utilization; that is, as many leaves as possible are filled to capacity. + Overlap between nodes is far less than in a basic R-tree. However, once the + tree has been built (explicitly or on the first call to #query), items may + not be added or removed. + Described in: P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With + Application To GIS. Morgan Kaufmann, San Francisco, 2002. + + + + + Constructs an STRtree with the default (10) node capacity. + + + + + Constructs an STRtree with the given maximum number of child nodes that + a node may have. + + + + + Inserts an item having the given bounds into the tree. + + + + + + + Returns items whose bounds intersect the given envelope. + + + + + + Returns items whose bounds intersect the given envelope. + + + + + + + Removes a single item from the tree. + + The Envelope of the item to remove. + The item to remove. + true if the item was found. + + + + + + + + + + + + + + + + + + + + + + + + + + Creates the parent level for the given child level. First, orders the items + by the x-values of the midpoints, and groups them into vertical slices. + For each slice, orders the items by the y-values of the midpoints, and + group them into runs of size M (the node capacity). For each run, creates + a new (parent) node. + + + + + + + + + + + + + + + + + + + + + + + + + Must be sorted by the x-value of the envelope midpoints. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ProjectionEvents are ordered first by their x-value, and then by their eventType. + It is important that Insert events are sorted before Delete events, so that + items whose Insert and Delete events occur at the same x-value will be + correctly handled. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A sweepline implements a sorted index on a set of intervals. + It is used to compute all overlaps between the interval in the index. + + + + + + + + + + + Because Delete Events have a link to their corresponding Insert event, + it is possible to compute exactly the range of events which must be + compared to a given Insert event object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NegativeInvalidException + + + + + This creates a new instance of an exception that occurs if a negative value was passed as an argument and this is invalid + + The name of the parameter that was negative + + + + Computes all intersections between segments in a set of s. + Intersections found are represented as s and added to the + s in which they occur. + As a final step in the noding a new set of segment strings split at the nodes may be returned. + + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Computes the intersections between two line segments in s + and adds them to each string. + The is passed to a . + The method is called whenever the + detects that two s might intersect. + This class is an example of the Strategy pattern. + + + + + Computes the intersections between two line segments in s + and adds them to each string. + The is passed to a . + The method is called whenever the + detects that two s might intersect. + This class is an example of the Strategy pattern. + + + + + This method is called by clients + of the interface to process + intersections for two segments of the s being intersected. + + + + + + + + These variables keep track of what types of intersections were + found during ALL edges that have been intersected. + + + + + + + + + Initializes a new instance of the class. + + + + + + This method is called by clients + of the class to process + intersections for two segments of the being intersected. + Notice that some clients (such as s) may optimize away + this call for segment pairs which they have determined do not intersect + (e.g. by an disjoint envelope test). + + + + + + + + + + + + + + + + + A trivial intersection is an apparent self-intersection which in fact + is simply the point shared by adjacent line segments. + Notice that closed edges require a special check for the point shared by the beginning and end segments. + + + + + + + + + + + + + + + + + + + + A proper intersection is an intersection which is interior to at least two + line segments. Notice that a proper intersection is not necessarily + in the interior of the entire , since another edge may have + an endpoint equal to the intersection, which according to SFS semantics + can result in the point being on the Boundary of the . + + + + + A proper interior intersection is a proper intersection which is not + contained in the set of boundary nodes set for this . + + + + + An interior intersection is an intersection which is + in the interior of some segment. + + + + + Finds proper and interior intersections in a set of s, + and adds them as nodes. + + + + + Creates an intersection finder which finds all proper intersections. + + The to use. + + + + This method is called by clients + of the class to process + intersections for two segments of the s being intersected. + Notice that some clients (such as s) may optimize away + this call for segment pairs which they have determined do not intersect + (e.g. by an disjoint envelope test). + + + + + + + + + + + + + + A InvalidOctantException Class + + + + + Creates a new instance of InvalidOctantException + + + + + Nodes a set of s completely. + The set of s is fully noded; + i.e. noding is repeated until no further intersections are detected. + + Iterated noding using a precision model is not guaranteed to converge, + due to roundoff error. This problem is detected and an exception is thrown. + Clients can choose to rerun the noding using a lower precision model. + + + + + + + + + + + Initializes a new instance of the class. + + + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Fully nodes a list of s, i.e. peforms noding iteratively + until no intersections are found between segments. + Maintains labelling of edges correctly through the noding. + + A collection of SegmentStrings to be noded. + If the iterated noding fails to converge. + + + + Node the input segment strings once + and create the split edges between the nodes. + + + + + + + Gets/Sets the maximum number of noding iterations performed before + the noding is aborted. Experience suggests that this should rarely need to be changed + from the default. The default is . + + + + + Nodes a set of s using a index based + on s and a . + The used should be something that supports + envelope (range) queries efficiently (such as a + or . + + + + + Base class for s which make a single pass to find intersections. + This allows using a custom + (which for instance may simply identify intersections, rather than insert them). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The to use. + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Gets/sets the to use with this noder. + A will normally add intersection nodes + to the input segment strings, but it may not - it may + simply record the presence of intersections. + However, some s may require that intersections be added. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The to use. + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + The + + + + + + + + + + + + + Validates that a collection of s is correctly noded. + Throws an appropriate exception if an noding error is found. + + + + + Initializes a new instance of the class. + + The seg strings. + + + + + + + + + Checks if a segment string contains a segment pattern a-b-a (which implies a self-intersection). + + + + + + + + + + + + + + + + + + + Checks all pairs of segments for intersections at an interior point of a segment. + + + + + + + + + + + + + + + + + + + + + + + + + + true if there is an intersection point which is not an endpoint of the segment p0-p1. + + + + Checks for intersections between an endpoint of a segment string + and an interior vertex of another segment string + + + + + + + + + + + + Octants in the Cartesian plane. + Octants are numbered as follows: + + \2|1/ + 3 \|/ 0 + ---+-- + 4 /|\ 7 + /5|6\ + + If line segments lie along a coordinate axis, the octant is the lower of the two possible values. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Methods for computing and working with of the Cartesian plane. + + + + + Returns the octant of a directed line segment (specified as x and y + displacements, which cannot both be 0). + + + + + + + + Returns the octant of a directed line segment from p0 to p1. + + + + + + + + Allows comparing arrays in an orientation-independent way. + + + + + Creates a new } + for the given array. + + + + + + Compares two s for their relative order. + + + + -1 this one is smaller, or + 0 the two objects are equal, or + 1 this one is greater. + + + + + Computes the canonical orientation for a coordinate array. + + + + true if the points are oriented forwards, or + falseif the points are oriented in reverse. + + + + + Wraps a and transforms its input into the integer domain. + This is intended for use with Snap-Rounding noders, + which typically are only intended to work in the integer domain. + Offsets can be provided to increase the number of digits of available precision. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an intersection point between two s. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + + + + + + + + -1 this SegmentNode is located before the argument location, or + 0 this SegmentNode is at the argument location, or + 1 this SegmentNode is located after the argument location. + + + + + + + + + + + + + + + + + + + + + + + + A list of the s present along a noded . + + + + + Initializes a new instance of the class. + + The edge. + + + + Returns an iterator of SegmentNodes. + + An iterator of SegmentNodes. + + + + Adds an intersection into the list, if it isn't already there. + The input segmentIndex and dist are expected to be normalized. + + + + + + + Adds nodes for the first and last points of the edge. + + + + + Adds nodes for any collapsed edge pairs. + Collapsed edge pairs can be caused by inserted nodes, or they can be + pre-existing in the edge vertex list. + In order to provide the correct fully noded semantics, + the vertex at the base of a collapsed pair must also be added as a node. + + + + + Adds nodes for any collapsed edge pairs + which are pre-existing in the vertex list. + + + + + + Adds nodes for any collapsed edge pairs caused by inserted nodes + Collapsed edge pairs occur when the same coordinate is inserted as a node + both before and after an existing edge vertex. + To provide the correct fully noded semantics, + the vertex must be added as a node as well. + + + + + + + + + + + + + + + Creates new edges for all the edges that the intersections in this + list split the parent edge into. + Adds the edges to the provided argument list + (this is so a single list can be used to accumulate all split edges + for a set of s). + + + + + + Create a new "split edge" with the section of points between + (and including) the two intersections. + The label for the new edge is the same as the label for the parent edge. + + + + + + + + + + + + + + + + + + + + INCOMPLETE!!! + + + + + Consente di spostare l'enumeratore all'elemento successivo dell'insieme. + + + true se l'enumeratore è stato spostato correttamente in avanti in corrispondenza dell'elemento successivo; false se l'enumeratore ha raggiunto la fine dell'insieme. + + L'insieme è stato modificato dopo la creazione dell'enumeratore. + + + + Imposta l'enumeratore sulla propria posizione iniziale, ovvero prima del primo elemento nell'insieme. + + L'insieme è stato modificato dopo la creazione dell'enumeratore. + + + + Not implemented. + + This method is not implemented. + + + + Ottiene l'elemento corrente dell'insieme. + + + Elemento corrente nell'insieme. + L'enumeratore è posizionato prima del primo elemento o dopo l'ultimo elemento dell'insieme. + + + + Implements a robust method of comparing the relative position of two points along the same segment. + The coordinates are assumed to lie "near" the segment. + This means that this algorithm will only return correct results + if the input coordinates have the same precision and correspond to rounded values + of exact coordinates lying on the segment. + + + + + Compares two s for their relative position along a segment + lying in the specified . + + + + + + -1 if node0 occurs first, or + 0 if the two nodes are equal, or + 1 if node1 occurs first. + + + + + + + + + + + + + + + + + + + + + Represents a list of contiguous line segments, and supports noding the segments. + The line segments are represented by an array of s. + Intended to optimize the noding of contiguous segments by + reducing the number of allocated objects. + s can carry a context object, which is useful + for preserving topological or parentage information. + All noded substrings are initialized with the same context object. + + + + + + + + + + + + + + + + + + + Creates a new segment string from a list of vertices. + + The vertices of the segment string. + The user-defined data of this segment string (may be null). + + + + + + + + + + + Gets the octant of the segment starting at vertex index. + + + The index of the vertex starting the segment. + Must not be the last index in the vertex list + + The octant of the segment at the vertex + + + + Adds EdgeIntersections for one or both + intersections found for a segment of an edge to the edge intersection list. + + + + + + + Add an for intersection intIndex. + An intersection that falls exactly on a vertex + of the is normalized + to use the higher of the two possible segmentIndexes. + + + + + + + + + + + + + + + Gets/Sets the user-defined data for this segment string. + + + + + + + + + + + + + + + + + + + + + + + + + + Dissolves a noded collection of s to produce + a set of merged linework with unique segments. + A custom merging strategy can be applied when two identical (up to orientation) + strings are dissolved together. + The default merging strategy is simply to discard the merged string. + + A common use for this class is to merge noded edges + while preserving topological labelling. + + + + + + Creates a dissolver with a user-defined merge strategy. + + + + + + Creates a dissolver with the default merging strategy. + + + + + Dissolve all s in the input . + + + + + + + + + + + + + Dissolve the given . + + + + + + + + + + + + + Gets the collection of dissolved (i.e. unique) s + + + + + + + + + + Updates the context data of a + when an identical (up to orientation) one is found during dissolving. + + The segment string to update. + The segment string being dissolved. + + true if the strings are in the same direction, + false if they are opposite. + + + + + Nodes a set of s by + performing a brute-force comparison of every segment to every other one. + This has n^2 performance, so is too slow for use on large numbers of segments. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + + + + + + + + Implements a "hot pixel" as used in the Snap Rounding algorithm. + A hot pixel contains the interior of the tolerance square and the boundary + minus the top and right segments. + The hot pixel operations are all computed in the integer domain + to avoid rounding problems. + + + + + Initializes a new instance of the class. + + + + + + + + Returns a "safe" envelope that is guaranteed to contain the hot pixel. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests whether the segment p0-p1 intersects the hot pixel tolerance square. + Because the tolerance square point set is partially open (along the + top and right) the test needs to be more sophisticated than + simply checking for any intersection. However, it + can take advantage of the fact that because the hot pixel edges + do not lie on the coordinate grid. It is sufficient to check + if there is at least one of: + - a proper intersection with the segment and any hot pixel edge. + - an intersection between the segment and both the left and bottom edges. + - an intersection between a segment endpoint and the hot pixel coordinate. + + + + + + + + + + + + + "Snaps" all s in a containing + s to a given . + + + + + Initializes a new instance of the class. + + + + + + Snaps (nodes) all interacting segments to this hot pixel. + The hot pixel may represent a vertex of an edge, + in which case this routine uses the optimization + of not noding the vertex itself + + The hot pixel to snap to. + The edge containing the vertex, if applicable, or null. + + true if a node was added for this pixel. + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Uses Snap Rounding to compute a rounded, + fully noded arrangement from a set of {@link SegmentString}s. + Implements the Snap Rounding technique described in Hobby, Guibas and Marimont, and Goodrich et al. + Snap Rounding assumes that all vertices lie on a uniform grid + (hence the precision model of the input must be fixed precision, + and all the input vertices must be rounded to that precision). + + This implementation uses a monotone chains and a spatial index to + speed up the intersection tests. + This implementation appears to be fully robust using an integer precision model. + It will function with non-integer precision models, but the + results are not 100% guaranteed to be correctly noded. + + + + + + Initializes a new instance of the class. + + The to use. + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + + + + + + + + Computes all interior intersections in the collection of s, + and returns their s. + + Does NOT node the segStrings. + + + + A list of Coordinates for the intersections. + + + + Computes nodes introduced as a result of snapping segments to snap points (hot pixels). + + + + + + Computes nodes introduced as a result of + snapping segments to vertices of other segments. + + + + + + Performs a brute-force comparison of every segment in each . + This has n^2 performance. + + + + + + Uses Snap Rounding to compute a rounded, + fully noded arrangement from a set of s. + Implements the Snap Rounding technique described in Hobby, Guibas and Marimont, and Goodrich et al. + Snap Rounding assumes that all vertices lie on a uniform grid + (hence the precision model of the input must be fixed precision, + and all the input vertices must be rounded to that precision). + + This implementation uses simple iteration over the line segments. + This implementation appears to be fully robust using an integer precision model. + It will function with non-integer precision models, but the + results are not 100% guaranteed to be correctly noded. + + + + + + Initializes a new instance of the class. + + The to use. + + + + Returns a of fully noded s. + The s have the same context as their parent. + + + + + + Computes the noding for a collection of s. + Some Noders may add all these nodes to the input s; + others may only add some or none at all. + + + + + + + + + + + + + Computes all interior intersections in the collection of s, + and returns their s. + Does NOT node the segStrings. + + + + A list of s for the intersections. + + + + Computes nodes introduced as a result of snapping segments to snap points (hot pixels). + + + + + + + + + + + + + + Computes nodes introduced as a result of + snapping segments to vertices of other segments. + + + + + + Performs a brute-force comparison of every segment in each . + This has n^2 performance. + + + + + + + Adds a new node (equal to the snap pt) to the segment + if the segment passes through the hot pixel. + + + + + + + + + Builds the buffer point for a given input point and precision model. + Allows setting the level of approximation for circular arcs, + and the precision model in which to carry out the computation. + When computing buffers in floating point double-precision + it can happen that the process of iterated noding can fail to converge (terminate). + In this case a TopologyException will be thrown. + Retrying the computation in a fixed precision + can produce more robust results. + + + + + Compute the change in depth as an edge is crossed from R to L. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Inserted edges are checked to see if an identical edge already exists. + If so, the edge is not inserted, but its label is merged + with the existing edge. + + + + + + Completes the building of the input subgraphs by depth-labelling them, + and adds them to the . + The subgraph list must be sorted in rightmost-coordinate order. + + The subgraphs to build. + The PolygonBuilder which will build the final polygons. + + + + Gets/Sets the number of segments used to approximate a angle fillet. + + + + + Gets/Sets the precision model to use during the curve computation and noding, + if it is different to the precision model of the Geometry. + If the precision model is less than the precision of the Geometry precision model, + the Geometry must have previously been rounded to that precision. + + + + + + + + + + Computes the buffer of a point, for both positive and negative buffer distances. + In GIS, the buffer of a point is defined as + the Minkowski sum or difference of the point + with a circle with radius equal to the absolute value of the buffer distance. + In the CAD/CAM world buffers are known as offset curves. + Since true buffer curves may contain circular arcs, + computed buffer polygons can only be approximations to the true point. + The user can control the accuracy of the curve approximation by specifying + the number of linear segments with which to approximate a curve. + The end cap endCapStyle of a linear buffer may be specified. The + following end cap styles are supported: + + {CAP_ROUND} - the usual round end caps + {CAP_BUTT} - end caps are truncated flat at the line ends + {CAP_SQUARE} - end caps are squared off at the buffer distance beyond the line ends + + The computation uses an algorithm involving iterated noding and precision reduction + to provide a high degree of robustness. + + + + + Initializes a buffer computation for the given point. + + The point to buffer. + + + + Compute a reasonable scale factor to limit the precision of + a given combination of Geometry and buffer distance. + The scale factor is based on a heuristic. + + The Geometry being buffered. + The buffer distance. + The mzx # of digits that should be allowed by + the precision determined by the computed scale factor. + A scale factor that allows a reasonable amount of precision for the buffer computation. + + + + Computes the buffer of a point for a given buffer distance. + + The point to buffer. + The buffer distance. + The buffer of the input point. + + + + Computes the buffer of a point for a given buffer distance, + using the given Cap Style for borders of the point. + + The point to buffer. + The buffer distance. + Cap Style to use for compute buffer. + The buffer of the input point. + + + + Computes the buffer for a point for a given buffer distance + and accuracy of approximation. + + The point to buffer. + The buffer distance. + The number of segments used to approximate a quarter circle. + The buffer of the input point. + + + + Computes the buffer for a point for a given buffer distance + and accuracy of approximation. + + The point to buffer. + The buffer distance. + The number of segments used to approximate a quarter circle. + Cap Style to use for compute buffer. + The buffer of the input point. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the end cap endCapStyle of the generated buffer. + The styles supported are CapRound, CapButt, and CapSquare. + The default is CapRound. + + + + + + + + + + A connected subset of the graph of + DirectedEdges and Nodes. + Its edges will generate either + a single polygon in the complete buffer, with zero or more holes, or + one or more connected holes. + + + + + + + + + + BufferSubgraphs are compared on the x-value of their rightmost Coordinate. + This defines a partial ordering on the graphs such that: + g1 >= g2 - Ring(g2) does not contain Ring(g1) + where Polygon(g) is the buffer polygon that is built from g. + This relationship is used to sort the BufferSubgraphs so that shells are guaranteed to + be built before holes. + + + + + Creates the subgraph consisting of all edges reachable from this node. + Finds the edges in the graph and the rightmost coordinate. + + A node to start the graph traversal from. + + + + Adds all nodes and edges reachable from this node to the subgraph. + Uses an explicit stack to avoid a large depth of recursion. + + A node known to be in the subgraph. + + + + Adds the argument node and all its out edges to the subgraph + + The node to add. + The current set of nodes being traversed. + + + + + + + + + + + + + + + Compute depths for all dirEdges via breadth-first traversal of nodes in graph. + + Edge to start processing with. + + + + + + + + + + + + + + + + Find all edges whose depths indicates that they are in the result area(s). + Since we want polygon shells to be + oriented CW, choose dirEdges with the interior of the result on the RHS. + Mark them as being in the result. + Interior Area edges are the result of dimensional collapses. + They do not form part of the result area boundary. + + + + + + + + + + + + + + + Gets the rightmost coordinate in the edges of the subgraph. + + + + + Computes the raw offset curve for a + single Geometry component (ring, line or point). + A raw offset curve line is not noded - + it may contain self-intersections (and usually will). + The final buffer polygon is computed by forming a topological graph + of all the noded raw curves and tracing outside contours. + The points in the raw curve are rounded to the required precision model. + + + + + The default number of facets into which to divide a fillet of 90 degrees. + A value of 8 gives less than 2% max error in the buffer distance. + For a max error smaller of 1%, use QS = 12 + + + + + + + + + + + + + + + + + + This method handles single points as well as lines. + Lines are assumed to not be closed (the function will not + fail for closed lines, but will generate superfluous line caps). + + + + A List of Coordinate[]. + + + + This method handles the degenerate cases of single points and lines, + as well as rings. + + A List of Coordinate[]. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Add last offset point. + + + + + Compute an offset segment for an input segment on a given side and at a given distance. + The offset points are computed in full double precision, for accuracy. + + The segment to offset. + The side of the segment the offset lies on. + The offset distance. + The points computed for the offset segment. + + + + Add an end cap around point p1, terminating a line segment coming from p0. + + + + + + + Base point of curve. + Start point of fillet curve. + Endpoint of fillet curve. + + + + + + Adds points for a fillet. The start and end point for the fillet are not added - + the caller must add them if required. + + + + + Is -1 for a CW angle, 1 for a CCW angle. + + + + + Adds a CW circle around a point. + + + + + + + Adds a CW square around a point + + + + + + + + + + + + + + + + + Creates all the raw offset curves for a buffer of a Geometry. + Raw curves need to be noded together and polygonized to form the final buffer area. + + + + + + + + + + + + + Computes the set of raw offset curves for the buffer. + Each offset curve has an attached {Label} indicating + its left and right location. + + A Collection of SegmentStrings representing the raw buffer curves. + + + + + + + + + + + + Creates a {SegmentString} for a coordinate list which is a raw offset curve, + and adds it to the list of buffer curves. + The SegmentString is tagged with a Label giving the topology of the curve. + The curve may be oriented in either direction. + If the curve is oriented CW, the locations will be: + Left: Location.Exterior. + Right: Location.Interior. + + + + + + + + + + + + + + + + + Add a Point to the graph. + + + + + + + + + + + + + + + + + + Add an offset curve for a ring. + The side and left and right topological location arguments + assume that the ring is oriented CW. + If the ring is in the opposite orientation, + the left and right locations must be interchanged and the side flipped. + + The coordinates of the ring (must not contain repeated points). + The distance at which to create the buffer. + The side of the ring on which to construct the buffer line. + The location on the L side of the ring (if it is CW). + The location on the R side of the ring (if it is CW). + + + + The ringCoord is assumed to contain no repeated points. + It may be degenerate (i.e. contain only 1, 2, or 3 points). + In this case it has no area, and hence has a minimum diameter of 0. + + + + + + + + Tests whether a triangular ring would be eroded completely by the given + buffer distance. + This is a precise test. It uses the fact that the inner buffer of a + triangle converges on the inCentre of the triangle (the point + equidistant from all sides). If the buffer distance is greater than the + distance of the inCentre from a side, the triangle will be eroded completely. + This test is important, since it removes a problematic case where + the buffer distance is slightly larger than the inCentre distance. + In this case the triangle buffer curve "inverts" with incorrect topology, + producing an incorrect hole in the buffer. + + + + + + + + A RightmostEdgeFinder find the DirectedEdge in a list which has the highest coordinate, + and which is oriented L to R at that point. (I.e. the right side is on the RHS of the edge.) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Locates a subgraph inside a set of subgraphs, + in order to determine the outside depth of the subgraph. + The input subgraphs are assumed to have had depths + already calculated for their edges. + + + + + + + + + + + + + + + + + + Finds all non-horizontal segments intersecting the stabbing line. + The stabbing line is the ray to the right of stabbingRayLeftPt. + + The left-hand origin of the stabbing line. + A List of {DepthSegments} intersecting the stabbing line. + + + + Finds all non-horizontal segments intersecting the stabbing line + in the list of dirEdges. + The stabbing line is the ray to the right of stabbingRayLeftPt. + + The left-hand origin of the stabbing line. + + The current list of DepthSegments intersecting the stabbing line. + + + + Finds all non-horizontal segments intersecting the stabbing line + in the input dirEdge. + The stabbing line is the ray to the right of stabbingRayLeftPt. + + The left-hand origin of the stabbing line. + + The current list of DepthSegments intersecting the stabbing line. + + + + A segment from a directed edge which has been assigned a depth value + for its sides. + + + + + + + + + + + + Defines a comparision operation on DepthSegments + which orders them left to right: + DS1 smaller DS2 if DS1.seg is left of DS2.seg. + DS1 bigger DS2 if DS1.seg is right of DS2.seg. + + + + + + + Compare two collinear segments for left-most ordering. + If segs are vertical, use vertical ordering for comparison. + If segs are equal, return 0. + Segments are assumed to be directed so that the second coordinate is >= to the first + (e.g. up and to the right). + + The left hand side segment to compare. + The riht hand side segment to compare. + An integer, -1 if seg0 is less, 0 if they are the same, and 1 if seg0 is greater. + + + + + + + + + A ConnectedElementPointFilter extracts a single point + from each connected element in a Geometry + (e.g. a polygon, linestring or point) + and returns them in a list. The elements of the list are + com.vividsolutions.jts.operation.distance.GeometryLocations. + + + + + + + + + + + + + + + + + Returns a list containing a point from each Polygon, LineString, and Point + found inside the specified point. Thus, if the specified point is + not a GeometryCollection, an empty list will be returned. The elements of the list + are com.vividsolutions.jts.operation.distance.GeometryLocations. + + + + + Extracts a single point + from each connected element in a Geometry + (e.g. a polygon, linestring or point) + and returns them in a list + + + + + + + + + + + + + + + + + Returns a list containing a Coordinate from each Polygon, LineString, and Point + found inside the specified point. Thus, if the specified point is + not a GeometryCollection, an empty list will be returned. + + + + + Computes the distance and + closest points between two Geometrys. + The distance computation finds a pair of points in the input geometries + which have minimum distance between them. These points may + not be vertices of the geometries, but may lie in the interior of + a line segment. In this case the coordinate computed is a close + approximation to the exact point. + The algorithms used are straightforward O(n^2) + comparisons. This worst-case performance could be improved on + by using Voronoi techniques. + + + + + Constructs a that computes the distance and closest points between + the two specified geometries. + + + + + + + Constructs a that computes the distance and closest points between + the two specified geometries. + + + + The distance on which to terminate the search. + + + + Compute the distance between the closest points of two geometries. + + A Geometry. + Another Geometry. + The distance between the geometries. + + + + Test whether two geometries lie within a given distance of each other. + + + + + + + + + Compute the the closest points of two geometries. + The points are presented in the same order as the input Geometries. + + A Geometry. + Another Geometry. + The closest points in the geometries. + + + + Report the distance between the closest points on the input geometries. + + The distance between the geometries. + + + + Report the coordinates of the closest points in the input geometries. + The points are presented in the same order as the input Geometries. + + A pair of Coordinates of the closest points. + + + + Report the locations of the closest points in the input geometries. + The locations are presented in the same order as the input Geometries. + + A pair of {GeometryLocation}s for the closest points. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents the location of a point on a Geometry. + Maintains both the actual point location (which of course + may not be exact) as well as information about the component + and segment index where the point occurs. + Locations inside area Geometrys will not have an associated segment index, + so in this case the segment index will have the sentinel value of InsideArea. + + + + + Special value of segment-index for locations inside area geometries. These + locations do not have an associated segment index. + + + + + Constructs a GeometryLocation specifying a point on a point, as well as the + segment that the point is on (or InsideArea if the point is not on a segment). + + + + + + + + Constructs a GeometryLocation specifying a point inside an area point. + + + + + Returns the point associated with this location. + + + + + Returns the segment index for this location. If the location is inside an + area, the index will have the value InsideArea; + + + + + Returns the location. + + + + + Returns whether this GeometryLocation represents a point inside an area point. + + + + + The base class for operations that require GeometryGraphs. + + + + + The operation args into an array so they can be accessed by index. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests whether a Geometry is simple. + Only Geometrys whose definition allows them + to be simple or non-simple are tested. (E.g. Polygons must be simple + by definition, so no test is provided. To test whether a given Polygon is valid, + use Geometry.IsValid) + + + + + + + + + + + + + + + + + + + A MultiPoint is simple if it has no repeated points. + + + + + + + + + + + + For all edges, check if there are any intersections which are NOT at an endpoint. + The Geometry is not simple if there are intersections not at endpoints. + + + + + + Test that no edge intersection is the + endpoint of a closed line. To check this we compute the + degree of each endpoint. The degree of endpoints of closed lines + must be exactly 2. + + + + + + Add an endpoint to the map, creating an entry for it if none exists. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A sequence of LineMergeDirectedEdges forming one of the lines that will + be output by the line-merging process. + + + + + Constructs an EdgeString with the given factory used to convert this EdgeString + to a LineString. + + + + + + Adds a directed edge which is known to form part of this line. + + + + + + Converts this EdgeString into a LineString. + + + + + + + + + + A com.vividsolutions.jts.planargraph.DirectedEdge of a LineMergeGraph. + + + + + Represents a directed edge in a PlanarGraph. A DirectedEdge may or + may not have a reference to a parent Edge (some applications of + planar graphs may not require explicit Edge objects to be created). Usually + a client using a PlanarGraph will subclass DirectedEdge + to add its own application-specific data and methods. + + + + + The base class for all graph component classes. + Maintains flags of use in generic graph algorithms. + Provides two flags: + marked - typically this is used to indicate a state that persists + for the course of the graph's lifetime. For instance, it can be + used to indicate that a component has been logically deleted from the graph. + visited - this is used to indicate that a component has been processed + or visited by an single graph algorithm. For instance, a breadth-first traversal of the + graph might use this to indicate that a node has already been traversed. + The visited flag may be set and cleared many times during the lifetime of a graph. + + + + + Sets the state + for all s in an . + + A to scan. + The state to set the flag to. + + + + Sets the state + for all s in an . + + A to scan. + The state to set the flag to. + + + + Finds the first + in a set + which has the specified state. + + A to scan. + The state to test. + The first found, or null if none found. + + + + Tests if a component has been visited during the course of a graph algorithm. + + + + + Tests if a component has been marked at some point during the processing + involving this graph. + + + + + Tests whether this component has been removed from its containing graph. + + + + + Constructs a DirectedEdge connecting the from node to the + to node. + + + + + Specifies this DirectedEdge's direction (given by an imaginary + line from the from node to directionPt). + + + Whether this DirectedEdge's direction is the same as or + opposite to that of the parent Edge (if any). + + + + + Returns 1 if this DirectedEdge has a greater angle with the + positive x-axis than b", 0 if the DirectedEdges are collinear, and -1 otherwise. + Using the obvious algorithm of simply computing the angle is not robust, + since the angle calculation is susceptible to roundoff. A robust algorithm + is: + first compare the quadrants. If the quadrants are different, it it + trivial to determine which vector is "greater". + if the vectors lie in the same quadrant, the robust + RobustCgAlgorithms.ComputeOrientation(Coordinate, Coordinate, Coordinate) + function can be used to decide the relative orientation of the vectors. + + + + + + + Returns a List containing the parent Edge (possibly null) for each of the given + DirectedEdges. + + + + + + + Returns 1 if this DirectedEdge has a greater angle with the + positive x-axis than b", 0 if the DirectedEdges are collinear, and -1 otherwise. + Using the obvious algorithm of simply computing the angle is not robust, + since the angle calculation is susceptible to roundoff. A robust algorithm + is: + first compare the quadrants. If the quadrants are different, it it + trivial to determine which vector is "greater". + if the vectors lie in the same quadrant, the robust + RobustCgAlgorithms.ComputeOrientation(Coordinate, Coordinate, Coordinate) + function can be used to decide the relative orientation of the vectors. + + + + + + + Writes a detailed string representation of this DirectedEdge to the given PrintStream. + + + + + + Removes this directed edge from its containing graph. + + + + + + + + + + + Returns this DirectedEdge's parent Edge, or null if it has none. + Associates this DirectedEdge with an Edge (possibly null, indicating no associated + Edge). + + + + + Returns 0, 1, 2, or 3, indicating the quadrant in which this DirectedEdge's + orientation lies. + + + + + returns a point representing the starting point for a line being drawn + in order to indicate the directed edges vector direction. + + + + + Returns a point to which an imaginary line is drawn from the from-node to + specify this DirectedEdge's orientation. + + + + + Returns whether the direction of the parent Edge (if any) is the same as that + of this Directed Edge. + + + + + Returns the node from which this DirectedEdge leaves. + + + + + Returns the node to which this DirectedEdge goes. + + + + + Returns the coordinate of the from-node. + + + + + Returns the angle that the start of this DirectedEdge makes with the + positive x-axis, in radians. + + + + + Returns the symmetric DirectedEdge -- the other DirectedEdge associated with + this DirectedEdge's parent Edge. + Sets this DirectedEdge's symmetric DirectedEdge, which runs in the opposite + direction. + + + + + Tests whether this component has been removed from its containing graph. + + + + + + Constructs a LineMergeDirectedEdge connecting the from node to the to node. + + + + + specifies this DirectedEdge's direction (given by an imaginary + line from the from node to directionPt). + + + whether this DirectedEdge's direction is the same as or + opposite to that of the parent Edge (if any). + + + + + Returns the directed edge that starts at this directed edge's end point, or null + if there are zero or multiple directed edges starting there. + + + + + An edge of a LineMergeGraph. The marked field indicates + whether this Edge has been logically deleted from the graph. + + + + + Represents an undirected edge of a {PlanarGraph}. An undirected edge + in fact simply acts as a central point of reference for two opposite + DirectedEdges. + Usually a client using a PlanarGraph will subclass Edge + to add its own application-specific data and methods. + + + + + Constructs an Edge whose DirectedEdges are not yet set. Be sure to call + SetDirectedEdges(DirectedEdge, DirectedEdge). + + + + + Constructs an Edge initialized with the given DirectedEdges, and for each + DirectedEdge: sets the Edge, sets the symmetric DirectedEdge, and adds + this Edge to its from-Node. + + + + + + + Initializes this Edge's two DirectedEdges, and for each DirectedEdge: sets the + Edge, sets the symmetric DirectedEdge, and adds this Edge to its from-Node. + + + + + + + Returns one of the DirectedEdges associated with this Edge. + + 0 or 1. + + + + + Returns the DirectedEdge that starts from the given node, or null if the + node is not one of the two nodes associated with this Edge. + + + + + + + If node is one of the two nodes associated with this Edge, + returns the other node; otherwise returns null. + + + + + + + Removes this edge from its containing graph. + + + + + The two DirectedEdges associated with this Edge. + + + + + Tests whether this component has been removed from its containing graph. + + + + + + The line sequencer class seems to need to se this directly + + + + + Constructs a LineMergeEdge with vertices given by the specified LineString. + + + + + + Returns the LineString specifying the vertices of this edge. + + + + + A planar graph of edges that is analyzed to sew the edges together. The + marked flag on com.vividsolutions.planargraph.Edges + and com.vividsolutions.planargraph.Nodes indicates whether they have been + logically deleted from the graph. + + + + + Represents a directed graph which is embeddable in a planar surface. + This class and the other classes in this package serve as a framework for + building planar graphs for specific algorithms. This class must be + subclassed to expose appropriate methods to construct the graph. This allows + controlling the types of graph components ({DirectedEdge}s, + Edges and Nodes) which can be added to the graph. An + application which uses the graph framework will almost always provide + subclasses for one or more graph components, which hold application-specific + data and graph algorithms. + + + + + Returns the Node at the given location, or null if no Node was there. + + + + + + + Adds a node to the map, replacing any that is already at that location. + Only subclasses can add Nodes, to ensure Nodes are of the right type. + + + + + + Adds the Edge and its DirectedEdges with this PlanarGraph. + Assumes that the Edge has already been created with its associated DirectEdges. + Only subclasses can add Edges, to ensure the edges added are of the right class. + + + + + + Adds the Edge to this PlanarGraph; only subclasses can add DirectedEdges, + to ensure the edges added are of the right class. + + + + + + Returns an IEnumerator over the Nodes in this PlanarGraph. + + + + + + Returns an Iterator over the DirectedEdges in this PlanarGraph, in the order in which they + were added. + + + + + + Returns an Iterator over the Edges in this PlanarGraph, in the order in which they + were added. + + + + + + Removes an Edge and its associated DirectedEdges from their from-Nodes and + from this PlanarGraph. Notice: This method does not remove the Nodes associated + with the Edge, even if the removal of the Edge reduces the degree of a + Node to zero. + + + + + + Removes DirectedEdge from its from-Node and from this PlanarGraph. Notice: + This method does not remove the Nodes associated with the DirectedEdge, + even if the removal of the DirectedEdge reduces the degree of a Node to + zero. + + + + + + Removes a node from the graph, along with any associated DirectedEdges and + Edges. + + + + + + Returns all Nodes with the given number of Edges around it. + + + + + + + Gets or sets the IList of directed edges + + + + + Returns the Nodes in this PlanarGraph. + + + + + Returns the Edges that have been added to this PlanarGraph. + + + + + Adds an Edge, DirectedEdges, and Nodes for the given LineString representation + of an edge. + + + + + + + + + + + + Sews together a set of fully noded LineStrings. Sewing stops at nodes of degree 1 + or 3 or more -- the exception is an isolated loop, which only has degree-2 nodes, + in which case a node is simply chosen as a starting point. The direction of each + merged LineString will be that of the majority of the LineStrings from which it + was derived. + Any dimension of Geometry is handled -- the constituent linework is extracted to + form the edges. The edges must be correctly noded; that is, they must only meet + at their endpoints. The LineMerger will still run on incorrectly noded input + but will not form polygons from incorrected noded edges. + + + + + Adds a collection of Geometries to be processed. May be called multiple times. + Any dimension of Geometry may be added; the constituent linework will be + extracted. + + + + + + Adds a Geometry to be processed. May be called multiple times. + Any dimension of Geometry may be added; the constituent linework will be + extracted. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the LineStrings built by the merging process. + + + + + + + + + + + + + + + + + + + + + + Nodes a set of edges. + Takes one or more sets of edges and constructs a + new set of edges consisting of all the split edges created by + noding the input edges together. + + + + + + + + + + + + + + + + + + + + + + Forms NTS LineStrings out of a the graph of DirectedEdges + created by an OverlayOp. + + + + + + + + + + + + + + + + + A list of the LineStrings in the result of the specified overlay operation. + + + + + Find and mark L edges which are "covered" by the result area (if any). + L edges at nodes which also have A edges can be checked by checking + their depth at that node. + L edges at nodes which do not have A edges can be checked by doing a + point-in-polygon test with the previously computed result areas. + + + + + + + + + + + + + + + + + + + Collect edges from Area inputs which should be in the result but + which have not been included in a result area. + This happens ONLY: + during an intersection when the boundaries of two + areas touch in a line segment + OR as a result of a dimensional collapse. + + + + + + + + + + + + + + + + + + + + Label an isolated node with its relationship to the target point. + + + + + + + A ring of edges which may contain nodes of degree > 2. + A MaximalEdgeRing may represent two different spatial entities: + a single polygon possibly containing inversions (if the ring is oriented CW) + a single hole possibly containing exversions (if the ring is oriented CCW) + If the MaximalEdgeRing represents a polygon, + the interior of the polygon is strongly connected. + These are the form of rings used to define polygons under some spatial data models. + However, under the OGC SFS model, MinimalEdgeRings are required. + A MaximalEdgeRing can be converted to a list of MinimalEdgeRings using the + BuildMinimalRings() method. + + + + + + + + + + + + + + + + + + + + + + + + + + For all nodes in this EdgeRing, + link the DirectedEdges at the node to form minimalEdgeRings + + + + + + + + + + + A ring of edges with the property that no node + has degree greater than 2. These are the form of rings required + to represent polygons under the OGC SFS spatial data model. + + + + + + + + + + + + + + + + + + + + + + + + + + Creates nodes for use in the PlanarGraphs constructed during + overlay operations. + + + + + + + + + + + + The spatial functions supported by this class. + These operations implement various bool combinations of the resultants of the overlay. + + + + + + + + + + + + + + + + + + + + + + + + + Computes the overlay of two Geometrys. The overlay + can be used to determine any bool combination of the geometries. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This method will handle arguments of Location.NULL correctly. + + true if the locations correspond to the opCode. + + + + + + + + + + + + + + + + + + + + + + + Insert an edge from one of the noded input graphs. + Checks edges that are inserted to see if an + identical edge already exists. + If so, the edge is not inserted, but its label is merged + with the existing edge. + + + + + + Update the labels for edges according to their depths. + For each edge, the depths are first normalized. + Then, if the depths for the edge are equal, + this edge must have collapsed into a line edge. + If the depths are not equal, update the label + with the locations corresponding to the depths + (i.e. a depth of 0 corresponds to a Location of Exterior, + a depth of 1 corresponds to Interior) + + + + + If edges which have undergone dimensional collapse are found, + replace them with a new edge which is a L edge + + + + + Copy all nodes from an arg point into this graph. + The node label in the arg point overrides any previously computed + label for that argIndex. + (E.g. a node may be an intersection node with + a previously computed label of Boundary, + but in the original arg Geometry it is actually + in the interior due to the Boundary Determination Rule) + + + + + + Compute initial labelling for all DirectedEdges at each node. + In this step, DirectedEdges will acquire a complete labelling + (i.e. one with labels for both Geometries) + only if they + are incident on a node which has edges for both Geometries + + + + + For nodes which have edges from only one Geometry incident on them, + the previous step will have left their dirEdges with no labelling for the other + Geometry. However, the sym dirEdge may have a labelling for the other + Geometry, so merge the two labels. + + + + + + + + + + Incomplete nodes are nodes whose labels are incomplete. + (e.g. the location for one Geometry is null). + These are either isolated nodes, + or nodes which have edges from only a single Geometry incident on them. + Isolated nodes are found because nodes in one graph which don't intersect + nodes in the other are not completely labelled by the initial process + of adding nodes to the nodeList. + To complete the labelling we need to check for nodes that lie in the + interior of edges, and in the interior of areas. + When each node labelling is completed, the labelling of the incident + edges is updated, to complete their labelling as well. + + + + + Label an isolated node with its relationship to the target point. + + + + + Find all edges whose label indicates that they are in the result area(s), + according to the operation being performed. Since we want polygon shells to be + oriented CW, choose dirEdges with the interior of the result on the RHS. + Mark them as being in the result. + Interior Area edges are the result of dimensional collapses. + They do not form part of the result area boundary. + + + + + If both a dirEdge and its sym are marked as being in the result, cancel + them out. + + + + + This method is used to decide if a point node should be included in the result or not. + + true if the coord point is covered by a result Line or Area point. + + + + This method is used to decide if an L edge should be included in the result or not. + + true if the coord point is covered by a result Area point. + + + + true if the coord is located in the interior or boundary of + a point in the list. + + + + + + + + + + + + + + + + + + + Constructs Points from the nodes of an overlay graph. + + + + + + + + + + + + + + + + A list of the Points in the result of the specified overlay operation. + + + + + + + + + + + + This method simplifies the resultant Geometry by finding and eliminating + "covered" points. + A point is covered if it is contained in another element Geometry + with higher dimension (e.g. a point might be contained in a polygon, + in which case the point can be eliminated from the resultant). + + + + + + + Forms Polygons out of a graph of {DirectedEdge}s. + The edges to use are marked as being in the result Area. + + + + + + + + + + + Add a complete graph. + The graph is assumed to contain one or more polygons, + possibly with holes. + + + + + + Add a set of edges and nodes, which form a graph. + The graph is assumed to contain one or more polygons, + possibly with holes. + + + + + + + For all DirectedEdges in result, form them into MaximalEdgeRings. + + + + + + + + + + + + + + + + This method takes a list of MinimalEdgeRings derived from a MaximalEdgeRing, + and tests whether they form a Polygon. This is the case if there is a single shell + in the list. In this case the shell is returned. + The other possibility is that they are a series of connected holes, in which case + no shell is returned. + + The shell EdgeRing, if there is one. + null, if all the rings are holes. + + + + This method assigns the holes for a Polygon (formed from a list of + MinimalEdgeRings) to its shell. + Determining the holes for a MinimalEdgeRing polygon serves two purposes: + it is faster than using a point-in-polygon check later on. + it ensures correctness, since if the PIP test was used the point + chosen might lie on the shell, which might return an incorrect result from the + PIP test. + + + + + + + For all rings in the input list, + determine whether the ring is a shell or a hole + and add it to the appropriate list. + Due to the way the DirectedEdges were linked, + a ring is a shell if it is oriented CW, a hole otherwise. + + + + + + + + This method determines finds a containing shell for all holes + which have not yet been assigned to a shell. + These "free" holes should + all be properly contained in their parent shells, so it is safe to use the + findEdgeRingContaining method. + (This is the case because any holes which are NOT + properly contained (i.e. are connected to their + parent shell) would have formed part of a MaximalEdgeRing + and been handled in a previous step). + + + + + + + Find the innermost enclosing shell EdgeRing containing the argument EdgeRing, if any. + The innermost enclosing ring is the smallest enclosing ring. + The algorithm used depends on the fact that: + ring A contains ring B iff envelope(ring A) contains envelope(ring B). + This routine is only safe to use if the chosen point of the hole + is known to be properly contained in a shell + (which is guaranteed to be the case if the hole does not touch its shell). + + + + Containing EdgeRing, if there is one, OR + null if no containing EdgeRing is found. + + + + + + + + + + + Checks the current set of shells (with their associated holes) to + see if any of them contain the point. + + + + + + + + + + + + This exception occurs when the same directed edge appears more than once in the same list + + + + + Creates a new instance of the Duplicate Edge Exception + + + + + Represents a ring of PolygonizeDirectedEdges which form + a ring of a polygon. The ring may be either an outer shell or a hole. + + + + + + + + + + + Find the innermost enclosing shell EdgeRing containing the argument EdgeRing, if any. + The innermost enclosing ring is the smallest enclosing ring. + The algorithm used depends on the fact that: + ring A contains ring B iff envelope(ring A) contains envelope(ring B). + This routine is only safe to use if the chosen point of the hole + is known to be properly contained in a shell + (which is guaranteed to be the case if the hole does not touch its shell). + + The EdgeRing to test. + The list of shells to test. + Containing EdgeRing, if there is one, OR + null if no containing EdgeRing is found. + + + + Finds a point in a list of points which is not contained in another list of points. + + The Coordinates to test. + An array of Coordinates to test the input points against. + A Coordinate from testPts which is not in pts, + or null. + + + + Tests whether a given point is in an array of points. + Uses a value-based test. + + A Coordinate for the test point. + An array of Coordinates to test, + true if the point is in the array. + + + + Adds a DirectedEdge which is known to form part of this ring. + + The DirectedEdge to add. + + + + Adds a hole to the polygon formed by this ring. + + The LinearRing forming the hole. + + + + + + + + + + + + Tests whether this ring is a hole. + Due to the way the edges in the polyongization graph are linked, + a ring is a hole if it is oriented counter-clockwise. + + true if this ring is a hole. + + + + Computes and returns the Polygon formed by this ring and any contained holes. + + + + + Tests if the LinearRing ring formed by this edge ring is topologically valid. + + + + + Computes and returns the list of coordinates which are contained in this ring. + The coordinatea are computed once only and cached. + + + + + Gets the coordinates for this ring as a LineString. + Used to return the coordinates in this ring + as a valid point, when it has been detected that the ring is topologically + invalid. + + + + + Returns this ring as a LinearRing, or null if an Exception occurs while + creating it (such as a topology problem). Details of problems are written to + standard output. + + + + + Add every linear element in a point into the polygonizer graph. + + + + + Creates a new instance of LineStringAdder + + + + + Applies the Filter to the specified geometry + + + + + + A null directed edge exception + + + + + An exception for when the directed edge was null + + + + + A DirectedEdge of a PolygonizeGraph, which represents + an edge of a polygon formed by the graph. + May be logically deleted from the graph by setting the marked flag. + + + + + Constructs a directed edge connecting the from node to the + to node. + + + + + Specifies this DirectedEdge's direction (given by an imaginary + line from the from node to directionPt). + + + Whether this DirectedEdge's direction is the same as or + opposite to that of the parent Edge (if any). + + + + + Returns the identifier attached to this directed edge. + Attaches an identifier to this directed edge. + + + + + Returns the next directed edge in the EdgeRing that this directed edge is a member of. + Sets the next directed edge in the EdgeRing that this directed edge is a member of. + + + + + Returns the ring of directed edges that this directed edge is + a member of, or null if the ring has not been set. + + + + + Gets/Sets the ring of directed edges that this directed edge is + a member of. + + + + + An edge of a polygonization graph. + + + + + + + + + + + + + + + + Represents a planar graph of edges that can be used to compute a + polygonization, and implements the algorithms to compute the + EdgeRings formed by the graph. + The marked flag on DirectedEdges is used to indicate that a directed edge + has be logically deleted from the graph. + + + + + Create a new polygonization graph. + + + + + + + + + + + + + + + + + + + + + Deletes all edges at a node. + + + + + + Add a LineString forming an edge of the polygon graph. + + The line to add. + + + + + + + + + + + + + + + + Convert the maximal edge rings found by the initial graph traversal + into the minimal edge rings required by NTS polygon topology rules. + + The list of start edges for the edgeRings to convert. + + + + Finds all nodes in a maximal edgering which are self-intersection nodes + + + + + The list of intersection nodes found, + or null if no intersection nodes were found. + + + + + Computes the EdgeRings formed by the edges in this graph. + + A list of the{EdgeRings found by the polygonization process. + + + + + + A List of the DirectedEdges in the graph. + A List of DirectedEdges, one for each edge ring found. + + + + Finds and removes all cut edges from the graph. + + A list of the LineStrings forming the removed cut edges. + + + + + + + + + + + + + + + + + Computes the next edge pointers going CCW around the given node, for the + given edgering label. + This algorithm has the effect of converting maximal edgerings into minimal edgerings + + + + + + + Traverse a ring of DirectedEdges, accumulating them into a list. + This assumes that all dangling directed edges have been removed + from the graph, so that there is always a next dirEdge. + + The DirectedEdge to start traversing at. + A List of DirectedEdges that form a ring. + + + + + + + + + + + Marks all edges from the graph which are "dangles". + Dangles are which are incident on a node with degree 1. + This process is recursive, since removing a dangling edge + may result in another edge becoming a dangle. + In order to handle large recursion depths efficiently, + an explicit recursion stack is used. + + A List containing the LineStrings that formed dangles. + + + + Polygonizes a set of Geometrys which contain linework that + represents the edges of a planar graph. + Any dimension of Geometry is handled - the constituent linework is extracted + to form the edges. + The edges must be correctly noded; that is, they must only meet + at their endpoints. The Polygonizer will still run on incorrectly noded input + but will not form polygons from incorrected noded edges. + The Polygonizer reports the follow kinds of errors: + Dangles - edges which have one or both ends which are not incident on another edge endpoint + Cut Edges - edges which are connected at both ends but which do not form part of polygon + Invalid Ring Lines - edges which form rings which are invalid + (e.g. the component lines contain a self-intersection). + + + + + Create a polygonizer with the same {GeometryFactory} + as the input Geometrys. + + + + + Add a collection of geometries to be polygonized. + May be called multiple times. + Any dimension of Geometry may be added; + the constituent linework will be extracted and used. + + A list of Geometrys with linework to be polygonized. + + + + Add a point to the linework to be polygonized. + May be called multiple times. + Any dimension of Geometry may be added; + the constituent linework will be extracted and used + + A Geometry with linework to be polygonized. + + + + Perform the polygonization, if it has not already been carried out. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compute and returns the list of polygons formed by the polygonization. + + + + + Compute and returns the list of dangling lines found during polygonization. + + + + + Compute and returns the list of cut edges found during polygonization. + + + + + Compute and returns the list of lines forming invalid rings found during polygonization. + + + + + Optimized implementation of spatial predicate "contains" + for cases where the first Geometry is a rectangle. + As a further optimization, + this class can be used directly to test many geometries against a single rectangle. + + + + + Create a new contains computer for two geometries. + + A rectangular geometry. + + + + + + + + + + + + + + + + + + + + + + + + + + Given any valid implementation of ICoordinate, which + will basically provide an X, Y or Z values, this will determine + if the rectangle contains the point. + + + + + + + + + + + + + + + + + + + + + + Optimized implementation of spatial predicate "intersects" + for cases where the first {@link Geometry} is a rectangle. + As a further optimization, + this class can be used directly to test many geometries against a single + rectangle. + + + + + Crossover size at which brute-force intersection scanning + is slower than indexed intersection detection. + Must be determined empirically. Should err on the + safe side by making value smaller rather than larger. + + + + + Create a new intersects computer for a rectangle. + + A rectangular geometry. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests if any line segments in two sets of CoordinateSequences intersect. + Optimized for small geometry size. + Short-circuited to return as soon an intersection is found. + + + + + + + + + + + + + + + + + + + + An EdgeEndBuilder creates EdgeEnds for all the "split edges" + created by the intersections determined for an Edge. + Computes the EdgeEnds which arise from a noded Edge. + + + + + + + + + + + + Creates stub edges for all the intersections in this + Edge (if any) and inserts them into the graph. + + + + + + + Create a EdgeStub for the edge before the intersection eiCurr. + The previous intersection is provided + in case it is the endpoint for the stub edge. + Otherwise, the previous point from the parent edge will be the endpoint. + eiCurr will always be an EdgeIntersection, but eiPrev may be null. + + + + + + + + + Create a StubEdge for the edge after the intersection eiCurr. + The next intersection is provided + in case it is the endpoint for the stub edge. + Otherwise, the next point from the parent edge will be the endpoint. + eiCurr will always be an EdgeIntersection, but eiNext may be null. + + + + + + + + + A collection of EdgeStubs which obey the following invariant: + They originate at the same node and have the same direction. + Contains all EdgeEnds which start at the same point and are parallel. + + + + + + + + + + + + + + + + + + + + + + + This computes the overall edge label for the set of + edges in this EdgeStubBundle. It essentially merges + the ON and side labels for each edge. + These labels must be compatible + + + + + Compute the overall ON location for the list of EdgeStubs. + (This is essentially equivalent to computing the self-overlay of a single Geometry) + edgeStubs can be either on the boundary (eg Polygon edge) + OR in the interior (e.g. segment of a LineString) + of their parent Geometry. + In addition, GeometryCollections use the mod-2 rule to determine + whether a segment is on the boundary or not. + Finally, in GeometryCollections it can still occur that an edge is both + on the boundary and in the interior (e.g. a LineString segment lying on + top of a Polygon edge.) In this case as usual the Boundary is given precendence. + These observations result in the following rules for computing the ON location: + if there are an odd number of Bdy edges, the attribute is Bdy + if there are an even number >= 2 of Bdy edges, the attribute is Int + if there are any Int edges, the attribute is Int + otherwise, the attribute is Null. + + + + + + Compute the labelling for each side + + + + + + To compute the summary label for a side, the algorithm is: + FOR all edges + IF any edge's location is Interior for the side, side location = Interior + ELSE IF there is at least one Exterior attribute, side location = Exterior + ELSE side location = Null + Notice that it is possible for two sides to have apparently contradictory information + i.e. one edge side may indicate that it is in the interior of a point, while + another edge side may indicate the exterior of the same point. This is + not an incompatibility - GeometryCollections may contain two Polygons that touch + along an edge. This is the reason for Interior-primacy rule above - it + results in the summary label having the Geometry interior on both sides. + + + + + + + Update the IM with the contribution for the computed label for the EdgeStubs. + + + + + + + + + + + + + + + + + An ordered list of EdgeEndBundles around a RelateNode. + They are maintained in CCW order (starting with the positive x-axis) around the node + for efficient lookup and topology building. + + + + + Insert a EdgeEnd in order in the list. + If there is an existing EdgeStubBundle which is parallel, the EdgeEnd is + added to the bundle. Otherwise, a new EdgeEndBundle is created + to contain the EdgeEnd. + + + + + + Update the IM with the contribution for the EdgeStubs around the node. + + + + + + Computes the topological relationship between two Geometries. + RelateComputer does not need to build a complete graph structure to compute + the IntersectionMatrix. The relationship between the geometries can + be computed by simply examining the labelling of edges incident on each node. + RelateComputer does not currently support arbitrary GeometryCollections. + This is because GeometryCollections can contain overlapping Polygons. + In order to correct compute relate on overlapping Polygons, they + would first need to be noded and merged (if not explicitly, at least + implicitly). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Copy all nodes from an arg point into this graph. + The node label in the arg point overrides any previously computed + label for that argIndex. + (E.g. a node may be an intersection node with + a computed label of Boundary, + but in the original arg Geometry it is actually + in the interior due to the Boundary Determination Rule) + + + + + + Insert nodes for all intersections on the edges of a Geometry. + Label the created nodes the same as the edge label if they do not already have a label. + This allows nodes created by either self-intersections or + mutual intersections to be labelled. + Endpoint nodes will already be labelled from when they were inserted. + + + + + + If the Geometries are disjoint, we need to enter their dimension and + boundary dimension in the Ext rows in the IM + + + + + + + + + + + Update the IM with the sum of the IMs for each component. + + + + + + Processes isolated edges by computing their labelling and adding them + to the isolated edges list. + Isolated edges are guaranteed not to touch the boundary of the target (since if they + did, they would have caused an intersection to be computed and hence would + not be isolated). + + + + + + + Label an isolated edge of a graph with its relationship to the target point. + If the target has dim 2 or 1, the edge can either be in the interior or the exterior. + If the target has dim 0, the edge must be in the exterior. + + + + + + + + Isolated nodes are nodes whose labels are incomplete + (e.g. the location for one Geometry is null). + This is the case because nodes in one graph which don't intersect + nodes in the other are not completely labelled by the initial process + of adding nodes to the nodeList. + To complete the labelling we need to check for nodes that lie in the + interior of edges, and in the interior of areas. + + + + + Label an isolated node with its relationship to the target point. + + + + + + + A RelateNode is a Node that maintains a list of EdgeStubs + for the edges that are incident on it. + + + + + + + + + + + + Update the IM with the contribution for this component. + A component only contributes if it has a labelling for both parent geometries. + + + + + Update the IM with the contribution for the EdgeEnds incident on this node. + + + + + + Used by the NodeMap in a RelateNodeGraph to create RelateNodes. + + + + + + + + + + + + Implements the simple graph of Nodes and EdgeEnd which is all that is + required to determine topological relationships between Geometries. + Also supports building a topological graph of a single Geometry, to + allow verification of valid topology. + It is not necessary to create a fully linked + PlanarGraph to determine relationships, since it is sufficient + to know how the Geometries interact locally around the nodes. + In fact, this is not even feasible, since it is not possible to compute + exact intersection points, and hence the topology around those nodes + cannot be computed robustly. + The only Nodes that are created are for improper intersections; + that is, nodes which occur at existing vertices of the Geometries. + Proper intersections (e.g. ones which occur between the interior of line segments) + have their topology determined implicitly, without creating a Node object + to represent them. + + + + + + + + + + + + + + + + + Insert nodes for all intersections on the edges of a Geometry. + Label the created nodes the same as the edge label if they do not already have a label. + This allows nodes created by either self-intersections or + mutual intersections to be labelled. + Endpoint nodes will already be labelled from when they were inserted. + Precondition: edge intersections have been computed. + + + + + + + Copy all nodes from an arg point into this graph. + The node label in the arg point overrides any previously computed + label for that argIndex. + (E.g. a node may be an intersection node with + a computed label of Boundary, + but in the original arg Geometry it is actually + in the interior due to the Boundary Determination Rule). + + + + + + + + + + + + + Implements the Relate() operation on Geometrys. + + + + + + + + + + + + + + + + + + + + + + + + + This class tests that the interior of an area + ( or ) + is connected. An area Geometry is invalid if the interior is disconnected. + This can happen if: + - a shell self-intersects, + - one or more holes form a connected chain touching a shell at two different points, + - one or more holes form a ring around a subset of the interior. + If a disconnected situation is found the location of the problem is recorded. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Form s in graph into Minimal EdgeRings. + (Minimal Edgerings must be used, because only they are guaranteed to provide + a correct isHole computation). + + + + + + + Mark all the edges for the edgeRings corresponding to the shells of the input polygons. + Only ONE ring gets marked for each shell - if there are others which remain unmarked + this indicates a disconnected interior. + + + + + + + + + + + + + + + + + + + + Check if any shell ring has an unvisited edge. + A shell ring is a ring which is not a hole and which has the interior + of the parent area on the RHS. + (Notice that there may be non-hole rings with the interior on the LHS, + since the interior of holes will also be polygonized into CW rings + by the LinkAllDirectedEdges() step). + + + true if there is an unvisited edge in a non-hole ring. + + + + + + + + + Checks that a {GeometryGraph} representing an area + (a Polygon or MultiPolygon ) + is consistent with the SFS semantics for area geometries. + Checks include: + Testing for rings which self-intersect (both properly and at nodes). + Testing for duplicate rings. + If an inconsistency if found the location of the problem is recorded. + + + + + + + + + + + Returns the intersection point, or null if none was found. + + + + + + + + + + Check all nodes to see if their labels are consistent. + If any are not, return false. + + + + + Checks for two duplicate rings in an area. + Duplicate rings are rings that are topologically equal + (that is, which have the same sequence of points up to point order). + If the area is topologically consistent (determined by calling the + isNodeConsistentArea, + duplicate rings can be found by checking for EdgeBundles which contain more than one EdgeEnd. + (This is because topologically consistent areas cannot have two rings sharing + the same line segment, unless the rings are equal). + The start point of one of the equal rings will be placed in invalidPoint. + Returns true if this area Geometry is topologically consistent but has two duplicate rings. + + + + + Implements the algorithsm required to compute the + method for s. + See the documentation for the various geometry types for a specification of validity. + + + + If the following condition is TRUE JTS will validate inverted shells and exverted holes (the Esri SDE model). + + + + + + + + + + Checks whether a coordinate is valid for processing. + Coordinates are valid iff their x and y ordinates are in the + range of the floating point representation. + + The coordinate to validate. + true if the coordinate is valid. + + + + Find a point from the list of testCoords + that is NOT a node in the edge for the list of searchCoords. + + + + + The point found, or null if none found. + + + + + + + + + + Checks validity of a Point. + + + + + + Checks validity of a LineString. + Almost anything goes for lineStrings! + + + + + + Checks validity of a LinearRing. + + + + + + Checks the validity of a polygon and sets the validErr flag. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Check that there is no ring which self-intersects (except of course at its endpoints). + This is required by OGC topology rules (but not by other models + such as Esri SDE, which allow inverted shells and exverted holes). + + + + + + Check that a ring does not self-intersect, except at its endpoints. + Algorithm is to count the number of times each node along edge occurs. + If any occur more than once, that must be a self-intersection. + + + + + Tests that each hole is inside the polygon shell. + This routine assumes that the holes have previously been tested + to ensure that all vertices lie on the shell or inside it. + A simple test of a single point in the hole can be used, + provide the point is chosen such that it does not lie on the + boundary of the shell. + + The polygon to be tested for hole inclusion. + A GeometryGraph incorporating the polygon. + + + + Tests that no hole is nested inside another hole. + This routine assumes that the holes are disjoint. + To ensure this, holes have previously been tested + to ensure that: + They do not partially overlap + (checked by checkRelateConsistency). + They are not identical + (checked by checkRelateConsistency). + + + + + Tests that no element polygon is wholly in the interior of another element polygon. + Preconditions: + Shells do not partially overlap. + Shells do not touch along an edge. + No duplicate rings exists. + This routine relies on the fact that while polygon shells may touch at one or + more vertices, they cannot touch at ALL vertices. + + + + + Check if a shell is incorrectly nested within a polygon. This is the case + if the shell is inside the polygon shell, but not inside a polygon hole. + (If the shell is inside a polygon hole, the nesting is valid.) + The algorithm used relies on the fact that the rings must be properly contained. + E.g. they cannot partially overlap (this has been previously checked by + CheckRelateConsistency). + + + + + This routine checks to see if a shell is properly contained in a hole. + It assumes that the edges of the shell and hole do not + properly intersect. + + + + + + null if the shell is properly contained, or + a Coordinate which is not inside the hole if it is not. + + + + + + + + + + + + Gets/Sets whether polygons using Self-Touching Rings to form + holes are reported as valid. + If this flag is set, the following Self-Touching conditions + are treated as being valid: + - The shell ring self-touches to create a hole touching the shell. + - A hole ring self-touches to create two holes touching at a point. + + + The default (following the OGC SFS standard) + is that this condition is not valid (false). + + + This does not affect whether Self-Touching Rings + disconnecting the polygon interior are considered valid + (these are considered to be invalid under the SFS, and many other + spatial models as well). + This includes "bow-tie" shells, + which self-touch at a single point causing the interior to be disconnected, + and "C-shaped" holes which self-touch at a single point causing an island to be formed. + + + States whether geometry with this condition is valid. + + + + + + + + + + + + + + Tests whether any of a set of LinearRings are + nested inside another ring in the set, using a Quadtree + index to speed up the comparisons. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Implements the appropriate checks for repeated points + (consecutive identical coordinates) as defined in the + NTS spec. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A ShellHoleIdentityException Class + + + + + Creates a new instance of ShellHoleIdentityException + + + + + Tests whether any of a set of LinearRings are + nested inside another ring in the set, using a simple O(n^2) + comparison. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests whether any of a set of LinearRings are + nested inside another ring in the set, using a SweepLineIndex + index to speed up the comparisons. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains information about the nature and location of a Geometry + validation error. + + + + + These messages must synch up with the indexes above + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains information about the nature and location of + a validation error. + + + + + Not used. + + + + + No longer used: + repeated points are considered valid as per the SFS. + + + + + Indicates that a hole of a polygon lies partially + or completely in the exterior of the shell. + + + + + Indicates that a hole lies + in the interior of another hole in the same polygon. + + + + + Indicates that the interior of a polygon is disjoint + (often caused by set of contiguous holes splitting + the polygon into two parts). + + + + + Indicates that two rings of a polygonal geometry intersect. + + + + + Indicates that a ring self-intersects. + + + + + Indicates that a polygon component of a + lies inside another polygonal component. + + + + + Indicates that a polygonal geometry + contains two rings which are identical. + + + + + Indicates that either: + - A contains a single point. + - A contains 2 or 3 points. + + + + + Indicates that the X or Y ordinate of + a is not a valid + numeric value (e.g. ). + + + + + Indicates that a ring is not correctly closed + (the first and the last coordinate are different). + + + + + Finds all connected s of a . + + + + + Initializes a new instance of the ConnectedSubgraphFinder class. + + The . + + + + + + + + + + Adds all nodes and edges reachable from this node to the subgraph. + Uses an explicit stack to avoid a large depth of recursion. + + + + + + + Adds the argument node and all its out edges to the subgraph. + + + + + + + + A sorted collection of DirectedEdges which leave a Node + in a PlanarGraph. + + + + + The underlying list of outgoing DirectedEdges. + + + + + Adds a new member to this DirectedEdgeStar. + + + + + + Drops a member of this DirectedEdgeStar. + + + + + + Returns an Iterator over the DirectedEdges, in ascending order by angle with the positive x-axis. + + + + + + + + + + Returns the zero-based index of the given Edge, after sorting in ascending order + by angle with the positive x-axis. + + + + + + + Returns the zero-based index of the given DirectedEdge, after sorting in ascending order + by angle with the positive x-axis. + + + + + + + Returns the remainder when i is divided by the number of edges in this + DirectedEdgeStar. + + + + + + + Returns the DirectedEdge on the left-hand side of the given DirectedEdge (which + must be a member of this DirectedEdgeStar). + + + + + + + The underlying list of outgoing Directed Edges + + + + + Returns the number of edges around the Node associated with this DirectedEdgeStar. + + + + + Returns the coordinate for the node at wich this star is based. + + + + + Returns the DirectedEdges, in ascending order by angle with the positive x-axis. + + + + + A node in a PlanarGraph is a location where 0 or more Edges + meet. A node is connected to each of its incident Edges via an outgoing + DirectedEdge. Some clients using a PlanarGraph may want to + subclass Node to add their own application-specific + data and methods. + + + + + The collection of DirectedEdges that leave this Node. + + + + + The location of this Node. + + + + + Constructs a Node with the given location. + + + + + + Constructs a Node with the given location and collection of outgoing DirectedEdges. + + + + + + + Returns all Edges that connect the two nodes (which are assumed to be different). + + + + + + + + Adds an outgoing DirectedEdge to this Node. + + + + + + Returns the zero-based index of the given Edge, after sorting in ascending order + by angle with the positive x-axis. + + + + + + + Removes this node from its containing graph. + + + + + + + + + + + Returns the location of this Node. + + + + + Returns the collection of DirectedEdges that leave this Node. + + + + + Returns the number of edges around this Node. + + + + + Tests whether this component has been removed from its containing graph. + + + + + + A map of Nodes, indexed by the coordinate of the node. + + + + + Adds a node to the map, replacing any that is already at that location. + + + The added node. + + + + Removes the Node at the given location, and returns it (or null if no Node was there). + + + + + + + Returns the Node at the given location, or null if no Node was there. + + + + + + + Returns an Iterator over the Nodes in this NodeMap, sorted in ascending order + by angle with the positive x-axis. + + + + + Returns the Nodes in this NodeMap, sorted in ascending order + by angle with the positive x-axis. + + + + + A subgraph of a . + A subgraph may contain any subset of s + from the parent graph. + It will also automatically contain all s + and s associated with those edges. + No new objects are created when edges are added - + all associated components must already exist in the parent graph. + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new subgraph of the given . + + + + + + Gets the which this subgraph is part of. + + + + + + Adds an to the subgraph. + The associated s and s are also added. + + The to add. + + + + Returns an over the s in this graph, + in the order in which they were added. + + + + + + Returns an over the s in this graph, + in the order in which they were added. + + + + + + Returns an over the s in this graph. + + + + + + Tests whether an is contained in this subgraph. + + The to test. + true if the is contained in this subgraph. + + + + Determines the maximum number of common most-significant + bits in the mantissa of one or numbers. + Can be used to compute the double-precision number which + is represented by the common bits. + If there are no common bits, the number computed is 0.0. + + + + + Computes the bit pattern for the sign and exponent of a + double-precision number. + + + The bit pattern for the sign and exponent. + + + + This computes the number of common most-significant bits in the mantissas + of two double-precision numbers. + It does not count the hidden bit, which is always 1. + It does not determine whether the numbers have the same exponent - if they do + not, the value computed by this function is meaningless. + + + /// + The number of common most-significant mantissa bits. + + + + Zeroes the lower n bits of a bitstring. + + The bitstring to alter. + the number of bits to zero. + The zeroed bitstring. + + + + Extracts the i'th bit of a bitstring. + + The bitstring to extract from. + The bit to extract. + The value of the extracted bit. + + + + + + + + + + A representation of the Double bits formatted for easy readability + + + + + + + + + + + + Provides versions of Geometry spatial functions which use + common bit removal to reduce the likelihood of robustness problems. + In the current implementation no rounding is performed on the + reshifted result point, which means that it is possible + that the returned Geometry is invalid. + Client classes should check the validity of the returned result themselves. + + + + + Creates a new instance of class, which reshifts result Geometrys. + + + + + Creates a new instance of class, specifying whether + the result Geometrys should be reshifted. + + + + + + Computes the set-theoretic intersection of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic intersection of the input Geometries. + + + + Computes the set-theoretic union of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic union of the input Geometries. + + + + Computes the set-theoretic difference of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry, to be subtracted from the first. + The Geometry representing the set-theoretic difference of the input Geometries. + + + Computes the set-theoretic symmetric difference of two geometries, + using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic symmetric difference of the input Geometries. + + + + Computes the buffer a point, using enhanced precision. + + The Geometry to buffer. + The buffer distance. + The Geometry representing the buffer of the input Geometry. + + + + If required, returning the result to the orginal precision if required. + In this current implementation, no rounding is performed on the + reshifted result point, which means that it is possible + that the returned Geometry is invalid. + + The result Geometry to modify. + The result Geometry with the required precision. + + + + Computes a copy of the input Geometry with the calculated common bits + removed from each coordinate. + + The Geometry to remove common bits from. + A copy of the input Geometry with common bits removed. + + + + Computes a copy of each input Geometrys with the calculated common bits + removed from each coordinate. + + An IGeometry to remove common bits from. + An second IGeometry to remove common bits from. + + An array containing copies + of the input Geometry's with common bits removed. + + + + + Allow computing and removing common mantissa bits from one or more Geometries. + + + + + Add a point to the set of geometries whose common bits are + being computed. After this method has executed the + common coordinate reflects the common bits of all added + geometries. + + A Geometry to test for common bits. + + + + Removes the common coordinate bits from a Geometry. + The coordinates of the Geometry are changed. + + The Geometry from which to remove the common coordinate bits. + The shifted Geometry. + + + + Adds the common coordinate bits back into a Geometry. + The coordinates of the Geometry are changed. + + The Geometry to which to add the common coordinate bits. + + + + The common bits of the Coordinates in the supplied Geometries. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides versions of Geometry spatial functions which use + enhanced precision techniques to reduce the likelihood of robustness problems. + + + + + Only static methods! + + + + + Computes the set-theoretic intersection of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic intersection of the input Geometries. + + + + Computes the set-theoretic union of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic union of the input Geometries. + + + + Computes the set-theoretic difference of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic difference of the input Geometries. + + + + Computes the set-theoretic symmetric difference of two Geometrys, using enhanced precision. + + The first Geometry. + The second Geometry. + The Geometry representing the set-theoretic symmetric difference of the input Geometries. + + + + Computes the buffer of a Geometry, using enhanced precision. + This method should no longer be necessary, since the buffer algorithm + now is highly robust. + + The first Geometry. + The buffer distance. + The Geometry representing the buffer of the input Geometry. + + + + Reduces the precision of a Geometry + according to the supplied {PrecisionModel}, without + attempting to preserve valid topology. + The topology of the resulting point may be invalid if + topological collapse occurs due to coordinates being shifted. + It is up to the client to check this and handle it if necessary. + Collapses may not matter for some uses. An example + is simplifying the input to the buffer algorithm. + The buffer algorithm does not depend on the validity of the input point. + + + + + + + + + + + + + + + + + + Sets whether the reduction will result in collapsed components + being removed completely, or simply being collapsed to an (invalid) + Geometry of the same type. + + + + + Gets/Sets whether the PrecisionModel of the new reduced Geometry + will be changed to be the PrecisionModel supplied to + specify the reduction. + The default is to not change the precision model. + + + + + + + + + + + + + + + + + + + + + + + + A ShouldNeverReachHereException Class + + + + + Creates a new instance of ShouldNeverReachHereException + + + + + Simplifies a line (sequence of points) using + the standard Douglas-Peucker algorithm. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Simplifies a Geometry using the standard Douglas-Peucker algorithm. + Ensures that any polygonal geometries returned are valid. + Simple lines are not guaranteed to remain simple after simplification. + Notice that in general D-P does not preserve topology - + e.g. polygons can be split, collapse to lines or disappear + holes can be created or disappear, + and lines can cross. + To simplify point while preserving topology use TopologySafeSimplifier. + (However, using D-P is significantly faster). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a valid area point from one that possibly has + bad topology (i.e. self-intersections). + Since buffer can handle invalid topology, but always returns + valid point, constructing a 0-width buffer "corrects" the + topology. + Notice this only works for area geometries, since buffer always returns + areas. This also may return empty geometries, if the input + has no actual area. + + An area point possibly containing self-intersections. + A valid area point. + + + + An index of LineSegments. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ItemVisitor subclass to reduce volume of query results. + + + + + + + + + + + + + + + + + + + + + + A LineSegment which is tagged with its location in a Geometry. + Used to index the segments in a point and recover the segment locations + from the index. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Simplifies a collection of TaggedLineStrings, preserving topology + (in the sense that no new intersections are introduced). + + + + + Simplify a collection of TaggedLineStrings. + + The collection of lines to simplify. + + + + Gets/Sets the distance tolerance for the simplification. + Points closer than this tolerance to a simplified segment may + be removed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Simplifies a TaggedLineString, preserving topology + (in the sense that no new intersections are introduced). + Uses the recursive D-P algorithm. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests whether a segment is in a section of a TaggedLineString- + + + + + + + + + + + + + + + + + Remove the segs in the section of the line. + + + + + + + + + + + + + Simplifies a point, ensuring that + the result is a valid point having the + same dimension and number of components as the input. + The simplification uses a maximum distance difference algorithm + similar to the one used in the Douglas-Peucker algorithm. + In particular, if the input is an areal point + ( Polygon or MultiPolygon ) + The result has the same number of shells and holes (rings) as the input, + in the same order + The result rings touch at no more than the number of touching point in the input + (although they may touch at fewer points). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A utility for making programming assertions. + + + + + Only static methods! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Executes a transformation function on each element of a collection + and returns the results in a new List. + + + + + Executes a function on each item in a + and returns the results in a new . + + + + + + + + Executes a function on each item in a + but does not accumulate the result. + + + + + + + Executes a function on each item in a + and collects all the entries for which the result + of the function is equal to true. + + + + + + + + The FunctionDelegate defines a structure taking a strong type in and passing a member of the same type back out. + + The type for the method. + The object parameter for the method. + An object of type T. + + + + + + + + + + + + + + + + + + + + Only static methods! + + + + + Convert the given numeric value (passed as string) of the base specified by baseIn + to the value specified by baseOut. + + Numeric value to be converted, as string. + Base of input value. + Base to use for conversion. + Converted value, as string. + + + + A CoordinateFilter that builds a set of Coordinates. + The set of coordinates contains no duplicate points. + + + + + + + + + + + Returns the gathered Coordinates. + + + + + Contains static methods and parameters that organize the major elements of + applying the Fortune linesweep methods + + + + + The default definition of a coordinate that uses double.NaN to clarify + that no value has yet been assigned to this vector. + + + + + Represents an infinite vector location + + + + + Boolean, true if the cleanup method should be called. This is unnecessary, for + the mapwindow implementation and will in fact cause the implementation to break + because infinities and other bad values start showing up. + + + + + Calculates the voronoi graph, but specifies a tolerance below which values should be considered equal. + + The original points to use during the calculation + A double value that controls the test for equality + This for Ben's code and should be passed as true if cleanup should be done. + A VoronoiGraph structure containing the output geometries + + + + Calculates a list of edges and junction vertices by using the specified points. + This defaults to not using any tolerance for determining if points are equal, + and will not use the cleanup algorithm, which breaks the HandleBoundaries + method in the Voronoi class. + + The original points to use during the calculation + A VoronoiGraph structure containing the output geometries + + + + Applies an optional cleanup method needed by Benjamine Ditter for + laser data calculations. This is not used by the MapWindow calculations + + The output voronoi graph created in the Compute Voronoi Graph section + A minimum left to right distance + The Voronoi Graph after it has been filtered. + + + + The HashSet is a dictionary that provides the optimized + + + + + Adds the specified object to the hash set collection + + The object to add + + + + Gets the enumerator of the items in the set + + + + + + Copies the members of this hash set to the specified array, starting at the specified index + + + + + + + Clears the entire set + + + + + Gets a boolean indicating if the specified item is in the set + + + + + + + Removes the specified item + + + + + + + Gets the integer count of members in this set + + + + + These sets can be modified + + + + + Contains several helpful tools that allow the voronoi polygon creation to work + + + + + Calculates the euclidean distance + + + + + + + + + + + + + + + + + + + + + + + A vector class, implementing all interesting features of vectors + + + + + This double controls the test for equality so that values that + are smaller than this value will be considered equal. + + + + + The x coordinate + + + + + The y coordinate + + + + + Creates a vector by reading a long array of vertices and assigning the vector based on that + + + + + + + Build a new vector + + The elements of the vector + + + + Transforms the vector into a coordinate with an x and y value + + + + + + True if any of the double values is not a number + + + + + Convert the vector into a reconstructable string representation + + A string from which the vector can be rebuilt + + + + Compares this vector with another one + + + + + + + Calculates the euclidean distance from this cell to another + + Vector2 stuff + + + + Retrieves a hashcode that is dependent on the elements + + The hashcode + + + + Get the scalar product of two vectors + + + + + Overrides equality to use the tolerant equality + + + + + + + + Overrides equality to use the tolerant equality test + + + + + + + + Calculates the vector sum of these two vectors + + One vector to add + The second vector to add + The vector sum of the specified vectors + + + + Calculates the vector sum of these two vectors + + One vector to add + The second vector to add + The vector sum of the specified vectors + + + + Multiplies the vector by a scalar + + The vector to modify + The double scale to multiply + A new Vector2 + + + + Multiplies the vector by a scalar. + + The double scale to multiply. + The vector to modify. + A new Vector2. + + + + Gets the dot product of this vector with itself + + + + + Will return the new root (unchanged except in start-up) + + + + + The Voronoi Edge represents a bisector between two of the original datapoints. The + LeftData and RightData represent those original points. VVertexA and VVertexB represent + the endpoints of the segment created using those original points. + + + + + An internal boolean for tracking some cleanup operations + + + + + The other original point in the dataset + + + + + One of the original points in the dataset + + + + + One of the endpoints for the segment that defines this edge + + + + + THe other endpoint for the segment that defines this edge + + + + + Adds VertexA and VertexB sequentially, so that if VertexA is defined, + then VertexB will become the specified vertex. + + + + + + + Boolean, true if both the VertexA and VertexB are infinite vectors + + + + + Indicates that one of the voronoi vertices for this edge is known, but no + intersection is found to bound the other edge, and it should extend to the + bounding box. + + + + + In the case where the line is infinite, this will return the + center between the left and right data points. + + + + + Calculates a vector direction that indicates the direction of this + knwon + + + + + Calculates the length of this edge + + + + + Voronoi Graph + + + + + The collection of VoronoiEdges. The Left and Right points are from the + original set of points that are bisected by the edge. The A and B + Vectors are the endpoints of the edge itself. + + + + + The vertices that join the voronoi polygon edges (not the original points) + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_FITS.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/DotSpatial.Plugins.Contourer.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/BruTile.Desktop.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/de-DE/DotSpatial.Plugins.ShapeEditor.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Mono.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.About/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.About/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.About/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Plugin which shows "About..." window. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/seed_2d.dgn =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/el/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Product.wxs =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Product.wxs (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Product.wxs (revision 2866) @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/TomControls.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/DotSpatial.Plugins.WFSClient.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_aml.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_aml.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_aml.csv (revision 2866) @@ -0,0 +1,305 @@ +"Code","ObjectClass","Acronym","Attribute_A","Attribute_B","Attribute_C","Class","Primitives" +1,Administration area (Named),ADMARE,JRSDTN;NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +2,Airport / airfield,AIRARE,CATAIR;CONDTN;CONVIS;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +3,Anchor berth,ACHBRT,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RADIUS;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +4,Anchorage area,ACHARE,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +5,"Beacon, cardinal",BCNCAR,BCNSHP;CATCAM;COLOUR;COLPAT;CONDTN;CONVIS;CONRAD;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +6,"Beacon, isolated danger",BCNISD,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +7,"Beacon, lateral",BCNLAT,BCNSHP;CATLAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +8,"Beacon, safe water",BCNSAW,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +9,"Beacon, special purpose/general",BCNSPP,BCNSHP;CATSPM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +10,Berth,BERTHS,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;SOUACC;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +11,Bridge,BRIDGE,CATBRG;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;VERACC;VERCCL;VERCLR;VERCOP;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +12,"Building, single",BUISGL,BUISHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +13,Built-up area,BUAARE,CATBUA;CONDTN;CONRAD;CONVIS;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +14,"Buoy, cardinal",BOYCAR,BOYSHP;CATCAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +15,"Buoy, installation",BOYINB,BOYSHP;CATINB;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;PRODCT;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +16,"Buoy, isolated danger",BOYISD,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +17,"Buoy, lateral",BOYLAT,BOYSHP;CATLAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +18,"Buoy, safe water",BOYSAW,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +19,"Buoy, special purpose/general",BOYSPP,BOYSHP;CATSPM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +20,Cable area,CBLARE,CATCBL;DATEND;DATSTA;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +21,"Cable, overhead",CBLOHD,CATCBL;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ICEFAC;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;VERCSA;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +22,"Cable, submarine",CBLSUB,BURDEP;CATCBL;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +23,Canal,CANALS,CATCAN;CONDTN;DATEND;DATSTA;HORACC;HORCLR;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +24,Canal bank,CANBNK,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +25,Cargo transshipment area,CTSARE,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +26,Causeway,CAUSWY,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +27,Caution area,CTNARE,DATEND;DATSTA;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +28,Checkpoint,CHKPNT,CATCHP;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +29,Coastguard station,CGUSTA,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +30,Coastline,COALNE,CATCOA;COLOUR;CONRAD;CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +31,Contiguous zone,CONZNE,DATEND;DATSTA;NATION;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +32,Continental shelf area,COSARE,NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +33,Control point,CTRPNT,CATCTR;DATEND;DATSTA;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +34,Conveyor,CONVYR,CATCON;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;LIFCAP;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +35,Crane,CRANES,CATCRN;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;HEIGHT;LIFCAP;NOBJNM;OBJNAM;ORIENT;RADIUS;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +36,Current - non - gravitational,CURENT,CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +37,Custom zone,CUSZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +38,Dam,DAMCON,CATDAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +39,Daymark,DAYMAR,CATSPM;COLOUR;COLPAT;DATEND;DATSTA;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +40,Deep water route centerline,DWRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +41,Deep water route part,DWRTPT,DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +42,Depth area,DEPARE,DRVAL1;DRVAL2;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +43,Depth contour,DEPCNT,VALDCO;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;hypcat;,G,Line; +44,Distance mark,DISMAR,CATDIS;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +45,Dock area,DOCARE,CATDOC;CONDTN;DATEND;DATSTA;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +46,Dredged area,DRGARE,DRVAL1;DRVAL2;NOBJNM;OBJNAM;QUASOU;RESTRN;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +47,Dry dock,DRYDOC,CONDTN;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;DRVAL1;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +48,Dumping ground,DMPGRD,CATDPG;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +49,Dyke,DYKCON,CONDTN;CONRAD;DATEND;DATSTA;HEIGHT;NATCON;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +50,Exclusive Economic Zone,EXEZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +51,Fairway,FAIRWY,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;ORIENT;QUASOU;RESTRN;SOUACC;STATUS;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +52,Fence/wall,FNCLNE,CATFNC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +53,Ferry route,FERYRT,CATFRY;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +54,Fishery zone,FSHZNE,NATION;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +55,Fishing facility,FSHFAC,CATFIF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +56,Fishing ground,FSHGRD,NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +57,Floating dock,FLODOC,COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;DRVAL1;HORACC;HORCLR;HORLEN;HORWID;LIFCAP;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +58,Fog signal,FOGSIG,CATFOG;DATEND;DATSTA;NOBJNM;OBJNAM;SIGFRQ;SIGGEN;SIGGRP;SIGPER;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +59,Fortified structure,FORSTC,CATFOR;CONDTN;CONRAD;CONVIS;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +60,Free port area,FRPARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +61,Gate,GATCON,CATGAT;CONDTN;DRVAL1;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +62,Gridiron,GRIDRN,HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +63,Harbour area (administrative),HRBARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +64,Harbour facility,HRBFAC,CATHAF;CONDTN;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +65,Hulk,HULKES,CATHLK;COLOUR;COLPAT;CONRAD;CONVIS;HORACC;HORLEN;HORWID;NOBJNM;OBJNAM;VERACC;VERLEN;CONDTN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +66,Ice area,ICEARE,CATICE;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +67,Incineration area,ICNARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +68,Inshore traffic zone,ISTZNE,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +69,Lake,LAKARE,ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +70,Lake shore,LAKSHR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +71,Land area,LNDARE,CONDTN;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +72,Land elevation,LNDELV,CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +73,Land region,LNDRGN,CATLND;NATQUA;NATSUR;NOBJNM;OBJNAM;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +74,Landmark,LNDMRK,CATLMK;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +75,Light,LIGHTS,CATLIT;COLOUR;DATEND;DATSTA;EXCLIT;HEIGHT;LITCHR;LITVIS;MARSYS;MLTYLT;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SECTR1;SECTR2;SIGGRP;SIGPER;SIGSEQ;STATUS;VERACC;VALNMR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +76,Light float,LITFLT,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +77,Light vessel,LITVES,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +78,Local magnetic anomaly,LOCMAG,NOBJNM;OBJNAM;VALLMA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +79,Lock basin,LOKBSN,DATEND;DATSTA;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +80,Log pond,LOGPON,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +81,Magnetic variation,MAGVAR,DATEND;DATSTA;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +82,Marine farm/culture,MARCUL,CATMFA;DATEND;DATSTA;EXPSOU;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;RESTRN;SOUACC;STATUS;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +83,Military practice area,MIPARE,CATMPA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +84,Mooring/warping facility,MORFAC,BOYSHP;CATMOR;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +85,Navigation line,NAVLNE,CATNAV;DATEND;DATSTA;ORIENT;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +86,Obstruction,OBSTRN,CATOBS;CONDTN;EXPSOU;HEIGHT;NATCON;NATQUA;NOBJNM;OBJNAM;PRODCT;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;NATSUR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +87,Offshore platform,OFSPLF,CATOFP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +88,Offshore production area,OSPARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +89,Oil barrier,OILBAR,CATOLB;CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +90,Pile,PILPNT,CATPLE;COLOUR;COLPAT;CONDTN;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +91,Pilot boarding place,PILBOP,CATPIL;COMCHA;DATEND;DATSTA;NOBJNM;NPLDST;OBJNAM;PEREND;PERSTA;PILDST;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +92,Pipeline area,PIPARE,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;CATPIP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +93,"Pipeline, overhead",PIPOHD,CATPIP;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +94,"Pipeline, submarine/on land",PIPSOL,BURDEP;CATPIP;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +95,Pontoon,PONTON,CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +96,Precautionary area,PRCARE,DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +97,Production / storage area,PRDARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +98,Pylon/bridge support,PYLONS,CATPYL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +99,Radar line,RADLNE,NOBJNM;OBJNAM;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +100,Radar range,RADRNG,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +101,Radar reflector,RADRFL,HEIGHT;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +102,Radar station,RADSTA,CATRAS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;VALMXR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +103,Radar transponder beacon,RTPBCN,CATRTB;DATEND;DATSTA;NOBJNM;OBJNAM;RADWAL;SECTR1;SECTR2;SIGGRP;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +104,Radio calling-in point,RDOCAL,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;STATUS;TRAFIC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +105,Radio station,RDOSTA,CALSGN;CATROS;COMCHA;DATEND;DATSTA;ESTRNG;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SIGFRQ;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +106,Railway,RAILWY,CONDTN;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +107,Rapids,RAPIDS,NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +108,Recommended route centerline,RCRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +109,Recommended track,RECTRC,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +110,Recommended Traffic Lane Part,RCTLPT,DATEND;DATSTA;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +111,Rescue station,RSCSTA,CATRSC;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +112,Restricted area,RESARE,CATREA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +113,Retro-reflector,RETRFL,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +114,River,RIVERS,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +115,River bank,RIVBNK,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +116,Road,ROADWY,CATROD;CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +117,Runway,RUNWAY,CATRUN;CONDTN;CONVIS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +118,Sand waves,SNDWAV,VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +119,Sea area / named water area,SEAARE,CATSEA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +120,Sea-plane landing area,SPLARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;VALDCO;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +121,Seabed area,SBDARE,COLOUR;NATQUA;NATSUR;WATLEV;OBJNAM;NOBJNM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +122,Shoreline Construction,SLCONS,CATSLC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;HORACC;HORCLR;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +123,"Signal station, traffic",SISTAT,CATSIT;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +124,"Signal station, warning",SISTAW,CATSIW;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +125,Silo / tank,SILTNK,BUISHP;CATSIL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +126,Slope topline,SLOTOP,CATSLO;COLOUR;CONRAD;CONVIS;ELEVAT;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +127,Sloping ground,SLOGRD,CATSLO;COLOUR;CONRAD;CONVIS;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +128,Small craft facility,SMCFAC,CATSCF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +129,Sounding,SOUNDG,EXPSOU;NOBJNM;OBJNAM;QUASOU;SOUACC;TECSOU;VERDAT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +130,Spring,SPRING,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +131,Square,SQUARE,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +132,Straight territorial sea baseline,STSLNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +133,Submarine transit lane,SUBTLN,NOBJNM;OBJNAM;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +134,Swept Area,SWPARE,DRVAL1;QUASOU;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +135,Territorial sea area,TESARE,NATION;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +136,Tidal stream - harmonic prediction,TS_PRH,NOBJNM;OBJNAM;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +137,Tidal stream - non-harmonic prediction,TS_PNH,NOBJNM;OBJNAM;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +138,Tidal stream panel data,TS_PAD,NOBJNM;OBJNAM;TS_TSP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +139,Tidal stream - time series,TS_TIS,NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;T_TINT;TS_TSV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +140,Tide - harmonic prediction,T_HMON,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +141,Tide - non-harmonic prediction,T_NHMN,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +142,Tidal stream - time series,T_TIMS,NOBJNM;OBJNAM;T_HWLW;T_TINT;T_TSVL;TIMEND;TIMSTA;STATUS;T_ACWL;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +143,Tideway,TIDEWY,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +144,Top mark,TOPMAR,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +145,Traffic Separation Line,TSELNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +146,Traffic Separation Scheme Boundary,TSSBND,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +147,Traffic Separation Scheme Crossing,TSSCRS,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +148,Traffic Separation Scheme Lane part,TSSLPT,CATTSS;DATEND;DATSTA;ORIENT;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +149,Traffic Separation Scheme Roundabout,TSSRON,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +150,Traffic Separation Zone,TSEZNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +151,Tunnel,TUNNEL,BURDEP;CONDTN;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +152,Two-way route part,TWRTPT,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +153,Underwater rock / awash rock,UWTROC,EXPSOU;NATSUR;NATQUA;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERDAT;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +154,Unsurveyed area,UNSARE,,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +155,Vegetation,VEGATN,CATVEG;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +156,Water turbulence,WATTUR,CATWAT;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +157,Waterfall,WATFAL,CONVIS;NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +158,Weed/Kelp,WEDKLP,CATWED;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +159,Wreck,WRECKS,CATWRK;CONRAD;CONVIS;EXPSOU;HEIGHT;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +160,Tidal stream - flood/ebb,TS_FEB,CAT_TS;CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +300,Accuracy of data,M_ACCY,HORACC;POSACC;SOUACC;VERACC;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +301,Compilation scale of data,M_CSCL,CSCALE;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +302,Coverage,M_COVR,CATCOV;,INFORM;NINFOM;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +303,Horizontal datum of data,M_HDAT,HORDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +304,Horizontal datum shift parameters,M_HOPA,HORDAT;SHIPAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +305,Nautical publication information,M_NPUB,,INFORM;NINFOM;NTXTDS;PICREP;PUBREF;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +306,Navigational system of marks,M_NSYS,MARSYS;ORIENT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +307,Production information,M_PROD,AGENCY;CPDATE;NATION;NMDATE;PRCTRY;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +308,Quality of data,M_QUAL,CATQUA;CATZOC;DRVAL1;DRVAL2;POSACC;SOUACC;SUREND;SURSTA;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +309,Sounding datum,M_SDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +310,Survey reliability,M_SREL,QUAPOS;QUASOU;SCVAL1;SCVAL2;SDISMN;SDISMX;SURATH;SUREND;SURSTA;SURTYP;TECSOU;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +311,Units of measurement of data,M_UNIT,DUNITS;HUNITS;PUNITS;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +312,Vertical datum of data,M_VDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +400,Aggregation,C_AGGR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +401,Association,C_ASSO,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +402,Stacked on/stacked under,C_STAC,,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +500,Cartographic area,$AREAS,COLOUR;ORIENT;$SCODE;$TINTS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +501,Cartographic line,$LINES,$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +502,Cartographic symbol,$CSYMB,ORIENT;$SCALE;$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +503,Compass,$COMPS,$CSIZE;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +504,Text,$TEXTS,$CHARS;COLOUR;$JUSTH;$JUSTV;$NTXST;$SPACE;$TXSTR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +20484,"ATS Route Centreline","atsctl","authty;linech;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20485,"Airspace Restriction","airres + catasr","authty;catasr;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20486,"Area of Imagery Coverage","imgare","bearng;catimg;ELEVAT;HUNITS;orgntr;SUREND;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20487,"Beach Exit","bchext","ccmidx;exitus;gradnt;HORCLR;HORLEN;HORWID;HUNITS;VERCSA;wbrcap","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L" +20488,"Beach Profile","bchprf","bearng;gradnt;SUREND","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20489,"Beach Survey","bchare","accres;brktyp;ccmidx;dgmrlf;HORLEN;HORWID;HUNITS;quabch;orgntr;srfhgt;srfzne;stbacv;SUREND;SURSTA;swlhgt;tdlrng;tdltyp","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P A " +20490,"Bedrock area","bedare","N/A","N/A",,"G","A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20491,"Bottom Feature","botmft + catbot","catbot;DUNITS;gradnt;HORLEN;HORWID;HUNITS;migspd;migdir;NOBJNM;OBJNAM;ORIENT;soudat;stfotn;VALSOU;VERLEN;WATLEV;wavlen","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20492,"Centre Line","centre","N/A","N/A",,"G","L" +20494,"Contact History","histob","orgntr;surdat;SUREND","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20495,"Controlled airspace","ctlasp + catcas","authty;catcas;caircd;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20496,"Diving Location","divloc","depact;divact;DUNITS;OBJNAM;NOBJNM;timeyr;watclr","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20497,"Drinking Water Location","watloc","N/A","N/A",,"G","P" +20498,"Drop Zone","drpzne","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20499,"Environmentally Sensitive Area","envare","authty;legsta;OBJNAM;NOBJNM;PEREND;PERSTA","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A;P" +20500,"Fishing Activity Area","fshare","catfsh;STATUS;timeyr","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20501,"Impact Scour","iscour","datfir;datlst;depwat;DUNITS;gendep;HORLEN;HORWID;HUNITS;NATQUA;NATSUR;NOBJNM;OBJNAM;orcard;ORIENT;QUASOU;senfir;senlst;sonsig;sorfir;sorlst;SOUACC;soudat;STATUS;TECSOU;VALSOU;VERLEN;WATLEV","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20502,"Landing Area","lngare","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20503,"Landing Place","lndplc","gradnt;STATUS;wbrcap","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20504,"Landing Point","lndpnt","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20505,"Landing Site","lndste","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20506,"Landing Strip","lndstp","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20507,"Landing Zone","lndzne","apprch;extdes;lndcon;OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20508,"Marine management area","marman + catmma","actper;authty;catmma;identy;linech;NOBJNM;OBJNAM;NATION;spcies;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20508,"Marine management area","marman + catmma","actper;authty;catmma;identy;linech;NOBJNM;OBJNAM;NATION;spcies;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20508,"Marine management area","marman + catmma","actper;authty;catmma;identy;linech;NOBJNM;OBJNAM;NATION;spcies;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20508,"Marine management area","marman + catmma","actper;authty;catmma;identy;linech;NOBJNM;OBJNAM;NATION;spcies;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20508,"Marine management area","marman + catmma","actper;authty;catmma;identy;linech;NOBJNM;OBJNAM;NATION;spcies;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20509,"Maritime Safety Information area","msiare","catmsi;condet;NATION;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20510,"MCM Area","mcmare","mhclas;milden;nomden","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20511,"Military exercise airspace","mexasp + catmea","actper;authty;catmea;linech;maxalt;maxftl;minalt;minftl;NOBJNM;OBJNAM;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20513,"Patrol area","patare + catpat","authty;catpat;identy;linech;NOBJNM;OBJNAM;NATION;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20513,"Patrol area","patare + catpat","authty;catpat;identy;linech;NOBJNM;OBJNAM;NATION;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20514,"Q-Route Leg","qroute","actper;dnbear;lftwid;NATION;NOBJNM;OBJNAM;rclass;rgtwid;STATUS;TRAFIC;HUNITS;upbear","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20515,"Radio broadcast area","rdoare","NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20516,"Regulated airspace","regasp","N/A","N/A",,"G","A" +20517,"Geological Layer","sedlay","attutn;bulkdn;COLOUR;deplyr;dttdep;dttnum;DUNITS;gascon;grnsiz;hfbmls;laynum;lfbmls;mgstyp;reflco;migspd;migdir;msstrg;natsed;NATQUA;porsty;revebn;revfqy;revgan;samret;sndvel;snrflc;soudat;WATLEV;wbrcap","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20518,"Seismic Activity Area","seiare","bearng;ricsca","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20519,"Sensor Anomaly","senanm","datfir;datlst;DUNITS;gendep;HUNITS;madsig;magany;magint;NOBJNM;OBJNAM;orcard;ORIENT;QUASOU;scrdim;senfir;senlst;sonsig;sorfir;sorlst;soudat;SOUACC;STATUS;TECSOU;VALSOU;WATLEV","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20520,"Shelter Location","shlloc","OBJNAM;NOBJNM;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20521,"Superficial Sediment Deposits","seddep","N/A","N/A",,"G","A" +20522,"Trafficability Area","trfare","cattrf","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20523,"Trawl Scours","twlscr","HUNITS;HORWID;ORIENT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20524,"Turning point","turnpt","NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20525,"Viewpoint","viewpt","bearng;discon;DUNITS;shpspd;snrfrq;snrrsc;twdbdp","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20525,"Viewpoint","viewpt","bearng;catimg;ELEVAT;HUNITS;VERDAT","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20526,"Bottom Tactical Data Area","btdare","mntden;undmnr;umnrwb;umrwob","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20527,"Burial Probability Area","bprare","brmchm;brperd;brprob;tgrfwt","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20528,"Leisure Activity Area","lsrare","lsract;timeyr","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20529,"Performance Data Area","pfdare","clperc;clprob;csprob;cswidt;dsprob;dtprob","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20530,"Resource Location","resloc","typres;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20531,"Risk Data Area","rkdare","conlev;numrmn;prbrmn;rmnlmn;sminth;znecol","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20532,"Navigation system (NAVAID)","navaid + CATROS","actper;CALSGN;CATROS;COMCHA;NOBJNM;OBJNAM;SIGFRQ","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +20533,"Internal Waters Area ","intwtr","linech;NATION;RESTRN;STATUS","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20534,"Sea Ice","seaice","iceact;icecvt;icesod;icemax;icemin;icerdv;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20535,"Ice Advisory Area","iceadv","iceadc;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20536,"Iceberg Area","brgare","icebnm;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20537,"Land Ice","lndice","icelnd;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20538,"Ice Line","icelin","icelnc;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20539,"Ice Route","icerte","NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20540,"Ice Polynya","icepol","icepst;icepty;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","A" +20541,"Ice Lead","icelea","icelty;icelst;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L;A" +20542,"Iceberg","icebrg","icebsz;icebsh;icebdr;icebsp;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20543,"Ice Movement","icemov","icebsp;icebdr;NOBJNM;OBJNAM","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;A" +20544,"Traffic route","tfcrte","linech;NOBJNM;OBJNAM;PEREND;PERSTA;traden;TRAFIC;typshp","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","L" +20717,"User Defined","u_defd","txtdes","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P;L;A" +20718,"Small Bottom Object","smalbo","blndzn;brmchm;brpctg;COLOUR;comsys;datfir;datlst;depwat;DUNITS;gendep;HORLEN;HORWID;HUNITS;incltn;layptm;layrfn;laytim;madsig;magany;magint;minern;miscls;miscom;misdat;misnme;mnhsys;mnimnc;mnimnt;mnssys;mulcon;mwdcrn;NATCON;navsys;notfnd;nmprob;objtrn;objshp onsonr;orbobn;orgdat;orgntr;ORIENT;QUASOU;scrdim;senfir;senlst;snrflc;soudat;stacon;surdat;SUREND;tarstg;TECSOU;unwrfm;VERLEN","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"G","P" +21484,"Completeness for the product specification","m_conf + catcnf","catcnf","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"M","A" +21485,"Security Classification Information","m_clas","","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"M","A" +21486,"Vertical Datum Shift Area","m_vers","vershf","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"M","P;A" +21487,"Defined Straight Lines","m_line","linech","AGENCY;CSCALE;elvacc;errell;HORACC;INFORM;NINFOM;NTXTDS;PICREP;POSACC;PRCTRY;PUBREF;RECDAT;QUAPOS;seccvt;secido;secown;secpmk;SORDAT;SORIND;TXTDSC;VERACC",,"M","N/A" Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/Renci.Data.Interop.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/source.zip =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57expectedinput.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57expectedinput.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57expectedinput.csv (revision 2866) @@ -0,0 +1,1008 @@ +"Code","ID","Meaning" +2,1,"stake, pole, perch, post" +2,2,whity +2,3,beacon tower +2,4,lattice beacon +2,5,pile beacon +2,6,cairn +2,7,buoyant beacon +3,5,high-rise building +3,6,pyramid +3,7,cylindrical +3,8,spherical +3,9,cubic +4,1,"conical (nun, ogival)" +4,2,can (cylindrical) +4,3,spherical +4,4,pillar +4,5,spar (spindle) +4,6,barrel (tun) +4,7,super-buoy +4,8,ice buoy +7,1,military aeroplane airport +7,2,civil aeroplane airport +7,3,military heliport +7,4,civil heliport +7,5,glider airfield +7,6,small planes airfield +7,8,emergency airfield +8,1,unrestricted anchorage +8,2,deep water anchorage +8,3,tanker anchorage +8,4,explosives anchorage +8,5,quarantine anchorage +8,6,sea-plane anchorage +8,7,small craft anchorage +8,8,small craft mooring area +8,9,anchorage for periods up to 24 hours +9,1,fixed bridge +9,2,opening bridge +9,3,swing bridge +9,4,lifting bridge +9,5,bascule bridge +9,6,pontoon bridge +9,7,draw bridge +9,8,transporter bridge +9,9,footbridge +9,10,viaduct +9,11,aqueduct +9,12,suspension bridge +10,1,urban area +10,2,settlement +10,3,village +10,4,town +10,5,city +10,6,holiday village +11,1,power line +11,3,transmission line +11,4,telephone +11,5,telegraph +11,6,mooring cable/chain +12,1,transportation +12,2,drainage +12,3,irrigation +13,1,north cardinal mark +13,2,east cardinal mark +13,3,south cardinal mark +13,4,west cardinal mark +14,1,custom +15,1,steep coast +15,2,flat coast +15,3,sandy shore +15,4,stony shore +15,5,shingly shore +15,6,glacier (seaward end) +15,7,mangrove +15,8,marshy shore +15,9,coral reef +15,10,ice coast +16,1,triangulation point +16,2,observation spot +16,3,fixed point +16,4,bench-mark +16,5,boundary mark +16,6,"horizontal control, main station" +16,7,"horizontal control, secondary station" +17,1,aerial cableway (telepheric) +17,2,belt conveyor +18,1,coverage available +18,2,no coverage available +19,2,container crane/gantry +19,3,sheerlegs +19,4,travelling crane +19,5,A-frame +20,1,weir +20,2,dam +20,3,flood barrage +21,1,distance mark not physically installed +21,2,"visible mark, pole" +21,3,"visible mark, board" +21,4,"visible mark, unknown shape" +22,1,tidal +22,2,non-tidal (wet dock) +23,2,chemical waste dumping ground +23,3,nuclear waste dumping ground +23,4,explosives dumping ground +23,5,spoil ground +23,6,vessel dumping ground +24,1,fence +24,3,hedge +24,4,wall +25,1,'free-moving' ferry +25,2,cable ferry +25,3,ice ferry +26,1,fishing stake +26,2,fish trap +26,3,fish weir +26,4,tunny net +27,1,explosive +27,2,diaphone +27,3,siren +27,4,nautophone +27,5,reed +27,6,tyfon +27,7,bell +27,8,whistle +27,9,gong +27,10,horn +28,1,castle +28,2,fort +28,3,battery +28,4,blockhouse +28,5,Martello tower +29,2,flood barrage gate +29,3,caisson +29,4,lock gate +29,5,dyke gate +30,1,RoRo-terminal +30,3,ferry terminal +30,4,fishing harbour +30,5,yacht harbour/marina +30,6,naval base +30,7,tanker terminal +30,8,passenger terminal +30,9,shipyard +30,10,container terminal +30,11,bulk terminal +31,1,floating restaurant +31,2,historic ship +31,3,museum +31,4,accomodation +31,5,floating breakwater +32,1,fast ice +32,5,glacier +32,8,polar ice +33,1,catenary anchor leg mooring (CALM) +33,2,single buoy mooring (SBM or SPM) +34,1,fen +34,2,marsh +34,3,moor/bog +34,4,heathland +34,5,mountain range +34,6,lowlands +34,7,canyon lands +34,8,paddy field +34,9,agricultural land +34,10,savanna/grassland +34,11,parkland +34,12,swamp +34,13,landslide +34,14,lava flow +34,15,salt pan +34,16,moraine +34,17,crater +34,18,cave +34,19,rock column or pinnacle +35,1,cairn +35,2,cemetery +35,3,chimney +35,4,dish aerial +35,5,flagstaff (flagpole) +35,6,flare stack +35,7,mast +35,8,windsock +35,9,monument +35,10,column (pillar) +35,11,memorial plaque +35,12,obelisk +35,13,statue +35,14,cross +35,15,dome +35,16,radar scanner +35,17,tower +35,18,windmill +35,19,windmotor +35,20,spire/minaret +36,1,port-hand lateral mark +36,2,starboard-hand lateral mark +36,3,preferred channel to starboard lateral mark +36,4,preferred channel to port lateral mark +37,1,directional function +37,4,leading light +37,5,aero light +37,6,air obstruction light +37,7,fog detector light +37,8,flood light +37,9,strip light +37,10,subsidiary light +37,11,spotlight +37,12,front +37,13,rear +37,14,lower +37,15,upper +37,16,moir� effect +37,17,emergency +37,18,bearing light +37,19,horizontally disposed +37,20,vertically disposed +38,1,crustaceans +38,2,oyster/mussels +38,3,fish +38,4,seaweed +39,2,torpedo exercise area +39,3,submarine exercise area +39,4,firing danger area +39,5,mine-laying practice area +39,6,small arms firing range +40,1,dolphin +40,2,deviation dolphin +40,3,bollard +40,4,tie-up wall +40,5,post or pile +40,6,chain/wire/cable +40,7,mooring buoy +41,1,clearing line +41,2,transit line +41,3,leading line bearing a recommended track +42,1,snag / stump +42,2,wellhead +42,3,diffuser +42,4,crib +42,5,fish haven +42,6,foul area +42,7,foul ground +42,8,ice boom +42,9,ground tackle +43,1,oil derrick / rig +43,2,production platform +43,3,observation / research platform +43,4,articulated loading platform (ALP) +43,5,single anchor leg mooring (SALM) +43,6,mooring tower +43,7,artificial island +43,8,"floating production, storage and off-loading vessel (FPSO)" +43,9,accomodation platform +43,10,"navigation, communication and control buoy (NCCB)" +44,1,oil retention (high pressure pipe) +44,2,floating oil barrier +45,1,stake +45,3,post +45,4,tripodal +46,1,boarding by pilot-cruising vessel +46,2,boarding by helicopter +46,3,pilot comes out from shore +47,2,outfall pipe +47,3,intake pipe +47,4,sewer +47,5,bubbler system +47,6,supply pipe +48,1,quarry +48,2,mine +48,3,stockpile +48,4,power station area +48,5,refinery area +48,6,timber yard +48,7,factory area +48,8,tank farm +48,9,wind farm +49,1,power transmission pylon/pole +49,2,telephone/telegraph pylon/pole +49,3,aerial cableway/sky pylon +49,4,bridge pylon/tower +49,5,bridge pier +50,1,data quality A +50,2,data quality B +50,3,data quality C +50,4,data quality D +50,5,data quality E +50,6,quality not evaluated +51,1,radar surveillance station +51,2,coast radar station +52,1,"ramark, radar beacon transmitting continuously" +52,2,"racon, radar transponder beacon" +52,3,leading racon/radar transponder beacon +53,1,circular (non-directional) marine or aero-marine radiobeacon +53,2,directional radiobeacon +53,3,rotating-pattern radiobeacon +53,4,Consol beacon +53,5,radio direction-finding station +53,6,coast radio station providing QTG service +53,7,aeronautical radiobeacon +53,8,Decca +53,9,Loran C +53,10,Differential GPS +53,11,Toran +53,12,Omega +53,13,Syledis +53,14,Chaika (Chayka) +54,1,based on a system of fixed marks +54,2,not based on a system of fixed marks +55,1,rescue station with lifeboat +55,2,rescue station with rocket +55,4,refuge for shipwrecked mariners +55,5,refuge for intertidal area walkers +55,6,lifeboat lying at a mooring +56,1,offshore safety zone +56,4,nature reserve +56,5,bird sanctuary +56,6,game preserve +56,7,seal sanctuary +56,8,degaussing range +56,9,military area +56,10,historic wreck area +56,12,navigational aid safety zone +56,14,minefield +56,18,swimming area +56,19,waiting area +56,20,research area +56,21,dredging area +56,22,fish sanctuary +56,23,ecological reserve +56,24,no wake area +56,25,swinging area +57,1,motorway +57,2,major road +57,3,minor road +57,4,track / path +57,5,major street +57,6,minor street +57,7,crossing +58,1,aeroplane +58,2,helicopter landing pad +59,2,gat +59,3,bank +59,4,deep +59,5,bay +59,6,trench +59,7,basin +59,8,mud flats +59,9,reef +59,10,ledge +59,11,canyon +59,12,narrows +59,13,shoal +59,14,knoll +59,15,ridge +59,16,seamount +59,17,pinnacle +59,18,abyssal plain +59,19,plateau +59,20,spur +59,21,shelf +59,22,trough +59,23,saddle +59,24,abyssal hills +59,25,apron +59,26,archipelagic apron +59,27,borderland +59,28,continental margin +59,29,continental rise +59,30,escarpment +59,31,fan +59,32,fracture zone +59,33,gap +59,34,guyot +59,35,hill +59,36,hole +59,37,levee +59,38,median valley +59,39,moat +59,40,mountains +59,41,peak +59,42,province +59,43,rise +59,44,seachannel +59,45,seamount chain +59,46,shelf edge +59,47,sill +59,48,slope +59,49,terrace +59,50,valley +59,51,canal +59,52,lake +59,53,river +60,1,breakwater +60,2,groyne (groin) +60,3,mole +60,4,pier ( jetty) +60,5,promenadepier +60,6,wharf (quay) +60,7,training wall +60,8,rip rap +60,9,revetment +60,10,sea wall +60,11,landing steps +60,12,ramp +60,13,slipway +60,14,fender +60,15,solid face wharf +60,16,open face wharf +61,1,port control +61,2,port entry and departure +61,3,International Port Traffic +61,4,berthing +61,5,dock +61,6,lock +61,7,flood barrage +61,8,bridge passage +61,9,dredging +62,1,danger +62,2,maritime obstruction +62,3,cable +62,4,military practice +62,5,distress +62,6,weather +62,7,storm +62,8,ice +62,9,time +62,10,tide +62,11,tidal stream +62,12,tide gauge +62,13,tide scale +62,14,diving +63,1,silo in general +63,2,tank in general +63,3,grain elevator +63,4,water tower +64,1,cutting +64,2,embankment +64,3,dune +64,4,hill +64,5,pingo +64,6,cliff +64,7,scree +65,1,visitor`s berth +65,2,nautical club +65,3,boat hoist +65,4,sailmaker +65,5,boatyard +65,6,public inn +65,7,restaurant +65,8,chandler +65,9,provisions +65,10,doctor +65,11,pharmacy +65,12,water tap +65,13,fuel station +65,14,electricity +65,15,bottle gas +65,16,showers +65,17,launderette +65,18,public toilets +65,19,post box +65,20,public telephone +65,21,refuse bin +65,22,car park +65,23,parking for boats and trailers +65,24,caravan site +65,25,camping site +65,26,sewerage pump-out station +65,27,emergency telephone +65,28,landing / launching place for boats +65,29,visitors mooring +65,30,scrubbing berth +65,31,picnic area +66,1,firing danger area mark +66,2,target mark +66,3,marker ship mark +66,4,degaussing range mark +66,5,barge mark +66,6,cable mark +66,7,spoil ground mark +66,8,outfall mark +66,9,ODAS (Ocean-Data-Acquisition-System) +66,10,recording mark +66,11,seaplane anchorage mark +66,12,recreation zone mark +66,13,private mark +66,14,mooring mark +66,15,LANBY (Large Automatic Navigational Buoy) +66,16,leading mark +66,17,measured distance mark +66,18,notice mark +66,19,TSS mark (Traffic Separation Scheme) +66,20,anchoring prohibited mark +66,21,berthing prohibited mark +66,22,overtaking prohibited mark +66,23,two-way traffic prohibited mark +66,24,'reduced wake' mark +66,25,speed limit mark +66,26,stop mark +66,27,general warning mark +66,28,'sound ship's siren' mark +66,29,restricted vertical clearence mark +66,30,maximum vessel's draught mark +66,31,restricted horizontal clearance mark +66,32,strong current warning mark +66,33,berthing permitted mark +66,34,overhead power cable mark +66,35,'channel edge gradient' mark +66,36,telephone mark +66,37,ferry crossing mark +66,39,pipline mark +66,40,anchorage mark +66,41,clearing mark +66,42,control mark +66,43,diving mark +66,44,refuge beacon +66,45,foul ground mark +66,46,yachting mark +66,47,heliport mark +66,48,GPS mark +66,49,seaplane landing mark +66,50,entry prohibited mark +66,51,work in progress mark +66,52,mark with unknown purpose +67,1,IMO - adopted +67,2,not IMO - adopted +68,1,grassland +68,3,bush +68,4,deciduous wood +68,5,coniferous wood +68,6,wood in general (inc mixed wood) +68,7,mangroves +68,10,mixed crops +68,11,reed +68,12,moos +68,13,tree in general +68,14,evergreen tree +68,15,coniferous tree +68,16,palm tree +68,17,nipa palm tree +68,18,casuarina tree +68,19,eucalypt tree +68,20,deciduous tree +68,21,mangrove tree +68,22,filao tree +69,1,breakers +69,2,eddies +69,3,overfalls +69,4,tide rips +69,5,bombora +70,1,kelp +70,2,sea weed +70,3,sea grass +70,4,saragasso +71,1,non-dangerous wreck +71,2,dangerous wreck +71,3,distributed remains of wreck +71,4,wreck showing mast/masts +71,5,wreck showing any portion of hull or superstructure +72,1,zone of confidence A1 +72,2,zone of confidence A2 +72,3,zone of confidence B +72,4,zone of confidence C +72,5,zone of confidence D +72,6,zone of confidence U (data not assessed) +73,1,expanded/condensed +73,2,standard +75,1,white +75,2,black +75,3,red +75,4,green +75,5,blue +75,6,yellow +75,7,grey +75,8,brown +75,9,amber +75,10,violet +75,11,orange +75,12,magenta +75,13,pink +76,1,horizontal stripes +76,2,vertical stripes +76,3,diagonal stripes +76,4,squared +76,5,stripes (direction unknown) +76,6,border stripes +81,1,under construction +81,2,ruined +81,3,under reclamation +81,4,wingless +81,5,planned construction +82,1,radar conspicuous +82,2,not radar conspicuous +82,3,radar conspicuous (has radar reflector) +83,1,visual conspicuous +83,2,not visual conspicuous +89,1,metres +89,2,fathoms and feet +89,3,feet +89,4,fathoms and fractions +92,1,light shown without change of character +92,2,daytime light +92,3,fog light +92,4,night light +93,1,within the range of depth of the surrounding depth area +93,2,shoaler than range of depth of the surrounding depth area +93,3,deeper than range of depth of the surrounding depth area +94,2,harbour-master's office +94,3,custom office +94,4,health office +94,5,hospital +94,6,post office +94,7,hotel +94,8,railway station +94,9,police station +94,10,water-police station +94,11,pilot office +94,12,pilot lookout +94,13,bank office +94,14,headquarters for district control +94,15,transit shed/warehouse +94,16,factory +94,17,power station +94,18,administrative +94,19,educational facility +94,20,church +94,21,chapel +94,22,temple +94,23,pagoda +94,24,shinto shrine +94,25,buddhist temple +94,26,mosque +94,27,marabout +94,28,lookout +94,29,communication +94,30,television +94,31,radio +94,32,radar +94,33,light support +94,34,microwave +94,35,cooling +94,36,observation +94,37,timeball +94,38,clock +94,39,control +94,40,airship mooring +94,41,stadium +94,42,bus station +96,1,metres +96,2,feet +103,1,international +103,2,national +103,3,national sub-division +104,1,centre justified +104,2,right justified +104,3,left justified +105,1,bottom justified +105,2,centre justified +105,3,top justified +107,1,fixed +107,2,flashing +107,3,long-flashing +107,4,quick-flashing +107,5,very quick-flashing +107,6,ultra quick-flashing +107,7,isophased +107,8,occulting +107,9,interrupted quick-flashing +107,10,interrupted very quick-flashing +107,11,interrupted ultra quick-flashing +107,12,morse +107,13,fixed / flash +107,14,flash / long-flash +107,15,occulting / flash +107,16,fixed / long-flash +107,17,occulting alternating +107,18,long-flash alternating +107,19,flash alternating +107,20,group alternating +107,25,quick-flash plus long-flash +107,26,very quick-flash plus long-flash +107,27,ultra quick-flash plus long-flash +107,28,alternating +107,29,fixed and alternating flashing +108,1,high intensity +108,2,low intensity +108,3,faint +108,4,intensified +108,5,unintensified +108,6,visibility deliberately restricted +108,7,obscured +108,8,partially obscured +109,1,IALA A +109,2,IALA B +109,9,no system +109,10,other sytem +112,1,masonry +112,2,concreted +112,3,loose boulders +112,4,hard surfaced +112,5,unsurfaced +112,6,wooden +112,7,metal +112,8,glass reinforced plastic (GRP) +112,9,painted +113,1,mud +113,2,clay +113,3,silt +113,4,sand +113,5,stone +113,6,gravel +113,7,pebbles +113,8,cobbles +113,9,rock +113,11,lava +113,14,coral +113,17,shells +113,18,boulder +114,1,fine +114,2,medium +114,3,coarse +114,4,broken +114,5,sticky +114,6,soft +114,7,stiff +114,8,volcanic +114,9,calcareous +114,10,hard +123,1,oil +123,2,gas +123,3,water +123,4,stone +123,5,coal +123,6,ore +123,7,chemicals +123,8,drinking water +123,9,milk +123,10,bauxite +123,11,coke +123,12,iron ingots +123,13,salt +123,14,sand +123,15,timber +123,16,sawdust / wood chips +123,17,scrap metal +123,18,liquified natural gas (LNG) +123,19,liquified petroleum gas (LPG) +123,20,wine +123,21,cement +123,22,grain +125,1,depth known +125,2,depth unknown +125,3,doubtful sounding +125,4,unreliable sounding +125,5,no bottom found at value shown +125,6,least depth known +125,7,"least depth unknown, safe clearance at value shown" +125,8,value reported (not surveyed) +125,9,value reported (not confirmed) +125,10,maintained depth +125,11,not reguraly maintained +131,1,anchoring prohibited +131,2,anchoring restricted +131,3,fishing prohibited +131,4,fishing restricted +131,5,trawling prohibited +131,6,trawling restricted +131,7,entry prohibited +131,8,entry restricted +131,9,dredging prohibited +131,10,dredging restricted +131,11,diving prohibited +131,12,diving restricted +131,13,no wake +131,14,area to be avoided +131,15,construction prohibited +140,1,automatically +140,2,by wave action +140,3,by hand +140,4,by wind +149,1,permanent +149,2,occasional +149,3,recommended +149,4,disused +149,5,periodically/intermittent +149,6,reserved +149,7,temporary +149,8,private +149,9,mandatory +149,11,extinguished +149,12,illuminated +149,13,historic +149,14,public +149,15,synchronized +149,16,watched +149,17,un-watched +149,18,existence doubtful +153,1,reconnaissance/sketch survey +153,2,controlled survey +153,4,examintion survey +153,5,passage survey +153,6,remotely sensed +156,1,found by echo-sounder +156,2,found by side scan sonar +156,3,found by multi-beam +156,4,found by diver +156,5,found by lead-line +156,6,swept by wire-drag +156,7,found by laser +156,8,swept by vertical acoustic system +156,9,found by electromagnetic sensor +156,10,photogrammetry +156,11,satelite imagery +156,12,found by levelling +156,13,swept by side-scan sonar +156,14,computer generated +161,1,better than 0.1m and 10 minutes +161,2,worse than 0.1m or 10 minutes +163,1,simplified harmonic method of tidal prediction +163,2,full harmonic method of tidal prediction +163,3,height and time difference non-harmonic method +170,1,darkest blue +170,2,medium blue +170,3,lightest blue +171,1,"cone, point up" +171,2,"cone, point down" +171,3,sphere +171,4,2 sphere +171,5,cylinder (can) +171,6,board +171,7,x-shape (St. Andrew's cross) +171,8,upright cross (St. George cross) +171,9,"cube, point up" +171,10,"2 cones, point to point" +171,11,"2 cones, base to base" +171,12,rhombus (diamond) +171,13,2 cones (points upward) +171,14,2 cones (points downward) +171,15,"besom, point up (broom or perch)" +171,16,"besom, point down (broom or perch)" +171,17,flag +171,18,sphere over rhombus +171,19,square +171,20,"rectangle, horizontal" +171,21,"rectangle, vertical" +171,22,"trapezium, up" +171,23,"trapezium, down" +171,24,"triangle, point up" +171,25,"triangle, point down" +171,26,circle +171,27,two upright crosses (one over the other) +171,28,T-shape +171,29,triangle pointing up over a circle +171,30,upright cross over a circle +171,31,rhombus over a circle +171,32,circle over a triangle pointing up +171,33,other shape (see INFORM) +172,1,inbound +172,2,outbound +172,3,one-way +172,4,two-way +185,1,Mean low water springs +185,2,Mean lower low water springs +185,3,Mean sea level +185,4,Lowest low water +185,5,Mean low water +185,6,Lowest low water springs +185,7,Approximate mean low water springs +185,8,Indian spring low water +185,9,Low water springs +185,10,Approximate lowest astronomical tide +185,11,Nearly lowest low water +185,12,Mean lower low water +185,13,Low water +185,14,Approximate mean low water +185,15,Approximate mean lower low water +185,16,Mean high water +185,17,Mean high water springs +185,18,High water +185,19,Approximate mean sea level +185,20,High water springs +185,21,Mean higher high water +185,22,Equinoctial spring low water +185,23,Lowest astronomical tide +185,24,Local datum +185,25,International Great Lakes Datum 1985 +185,26,Mean water level +185,27,Lower low water large tide +185,28,Higher high water lage tide +185,29,Nearly highest high water +187,1,partly submerged at high water +187,2,always dry +187,3,always under water/submerged +187,4,covers and uncovers +187,5,awash +187,6,subject to inundation or flooding +400,1,WGS 72 +400,2,WGS 84 +400,3,European 1950 +400,4,Potsdam Datum +400,5,Adindan +400,6,Afgooye +400,7,Ain el Abd 1970 +400,8,Anna 1 Astro 1965 +400,9,Antigua Island Astro 1943 +400,10,Arc 1950 +400,11,Arc 1960 +400,12,Ascension Island 1958 +400,13,"Astro beacon \"E\" 1945" +400,14,Astro DOS 71/4 +400,15,Astro Tern Island (FRIG) 1961 +400,16,Astronimical Station 1952 +400,17,Australian Geodetic 1966 +400,18,Australian Geodetic 1984 +400,19,Ayabelle Lighthouse +400,20,Bellevue (IGN) +400,21,Bermuda 1957 +400,22,Bissau +400,23,Bogota Observatory +400,24,Bukit Rimpah +400,25,Camp Area Astro +400,26,Campo Inchauspe 1969 +400,27,Canton Astro 1966 +400,28,Cape +400,29,Cape Canaveral +400,30,Carthage +400,31,Chatam Island Astro 1971 +400,32,Chua Astro +400,33,Corrego Alegre +400,34,Dabola +400,35,Djakarta (Batavia) +400,36,DOS 1968 +400,37,Easter Island 1967 +400,38,European 1979 +400,39,Fort Thomas 1955 +400,40,Gan 1970 +400,41,Geodetic Datum 1949 +400,42,Graciosa Base SW 1948 +400,43,Guam 1963 +400,44,Ganung Segara +400,45,GUX 1 Astro +400,46,Herat North +400,47,Hjorsey 1955 +400,48,Hong Kong 1963 +400,49,Hu-Tzu-Shan +400,50,Indian +400,51,Indian 1954 +400,52,Indian 1975 +400,53,Ireland 1965 +400,54,ISTS 061 Astro 1968 +400,55,ISTS 073 Astro 1969 +400,56,Johnston Island 1961 +400,57,Kandawala +400,58,Kerguelen Island 1949 +400,59,Kertau 1948 +400,60,Kusaie Astro 1951 +400,61, +400,62, +400,63, +400,64, +400,65, +400,66, +400,67, +400,68, +400,69, +400,70, +400,71, +400,72, +400,73, +400,74, +400,75, +400,76, +400,77, +400,78, +400,79, +400,80, +400,81, +400,82, +400,83, +400,84, +400,85, +400,86, +400,87, +400,88, +400,89, +400,90, +400,91, +400,92, +400,93, +400,94, +400,95, +400,96, +400,97, +400,98, +400,99,South Asia +400,100,Tananarive Observatory 1925 +402,1,surveyed +402,2,unsurveyed +402,3,inadequately surveyed +402,4,approximated +402,5,position doubtful +402,6,unreliable +402,7,reported (not surveyed) +402,8,reported (not confirmed) +402,9,estimated +402,10,precisely known +402,11,calculated Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Mono.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_extra.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_extra.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/esri_extra.wkt (revision 2866) @@ -0,0 +1,465 @@ +# +# This file derived from a subset of definitions from the "epsg" directory +# distributed with ArcGIS. This file only contains definitions that aren't +# real EPSG definitions. The definitions were "morphed" into OGR WKT format, +# and the authority clause added during processing. +# +# NOTE: I'm not too clear on what version of ArcGIS these definitions were +# derived from. +# +31491,PROJCS["Germany_Zone_1",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",3.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG","31491"]] +31492,PROJCS["Germany_Zone_2",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",6.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG","31492"]] +31493,PROJCS["Germany_Zone_3",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",3500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",9.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG","31493"]] +31494,PROJCS["Germany_Zone_4",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",4500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",12.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG","31494"]] +31495,PROJCS["Germany_Zone_5",GEOGCS["GCS_Deutsches_Hauptdreiecksnetz",DATUM["D_Deutsches_Hauptdreiecksnetz",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",5500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",1.0],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0],AUTHORITY["EPSG","31495"]] +37001,GEOGCS["GCS_WGS_1966",DATUM["WGS_1966",SPHEROID["WGS_1966",6378145,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37001"]] +37002,GEOGCS["GCS_Fischer_1960",DATUM["Fischer_1960",SPHEROID["Fischer_1960",6378166,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37002"]] +37003,GEOGCS["GCS_Fischer_1968",DATUM["Fischer_1968",SPHEROID["Fischer_1968",6378150,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37003"]] +37004,GEOGCS["GCS_Fischer_Modified",DATUM["Fischer_Modified",SPHEROID["Fischer_Modified",6378155,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37004"]] +37005,GEOGCS["GCS_Hough_1960",DATUM["Hough_1960",SPHEROID["Hough_1960",6378270,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37005"]] +37006,GEOGCS["GCS_Everest_Modified_1969",DATUM["Everest_Modified_1969",SPHEROID["Everest_Modified_1969",6377295.664,300.8017]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37006"]] +37007,GEOGCS["GCS_Walbeck",DATUM["Walbeck",SPHEROID["Walbeck",6376896,302.78]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37007"]] +37008,GEOGCS["GCS_Sphere_ARC_INFO",DATUM["Sphere_ARC_INFO",SPHEROID["Sphere_ARC_INFO",6370997,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37008"]] +37201,GEOGCS["GCS_European_1979",DATUM["European_1979",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37201"]] +37202,GEOGCS["GCS_Everest_Bangladesh",DATUM["Everest_Bangladesh",SPHEROID["Everest_Adjustment_1937",6377276.345,300.8017]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37202"]] +37203,GEOGCS["GCS_Everest_India_Nepal",DATUM["Everest_India_Nepal",SPHEROID["Everest_Definition_1962",6377301.243,300.8017255]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37203"]] +37204,GEOGCS["GCS_Hjorsey_1955",DATUM["Hjorsey_1955",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37204"]] +37205,GEOGCS["GCS_Hong_Kong_1963",DATUM["Hong_Kong_1963",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37205"]] +37206,GEOGCS["GCS_Oman",DATUM["Oman",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37206"]] +37207,GEOGCS["GCS_South_Asia_Singapore",DATUM["South_Asia_Singapore",SPHEROID["Fischer_Modified",6378155,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37207"]] +37208,GEOGCS["GCS_Ayabelle",DATUM["Ayabelle",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37208"]] +37211,GEOGCS["GCS_Point_58",DATUM["Point_58",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37211"]] +37212,GEOGCS["GCS_Beacon_E_1945",DATUM["Beacon_E_1945",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37212"]] +37213,GEOGCS["GCS_Tern_Island_1961",DATUM["Tern_Island_1961",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37213"]] +37214,GEOGCS["GCS_Astro_1952",DATUM["Astro_1952",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37214"]] +37215,GEOGCS["GCS_Bellevue_IGN",DATUM["Bellevue_IGN",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37215"]] +37216,GEOGCS["GCS_Canton_1966",DATUM["Canton_1966",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37216"]] +37217,GEOGCS["GCS_Chatham_Island_1971",DATUM["Chatham_Island_1971",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37217"]] +37218,GEOGCS["GCS_DOS_1968",DATUM["DOS_1968",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37218"]] +37219,GEOGCS["GCS_Easter_Island_1967",DATUM["Easter_Island_1967",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37219"]] +37220,GEOGCS["GCS_Guam_1963",DATUM["Guam_1963",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37220"]] +37221,GEOGCS["GCS_GUX_1",DATUM["GUX_1",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37221"]] +37222,GEOGCS["GCS_Johnston_Island_1961",DATUM["Johnston_Island_1961",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37222"]] +37223,GEOGCS["GCS_Carthage_Degree",DATUM["Carthage",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37223"]] +37224,GEOGCS["GCS_Midway_1961",DATUM["Midway_1961",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37224"]] +37226,GEOGCS["GCS_Pitcairn_1967",DATUM["Pitcairn_1967",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37226"]] +37227,GEOGCS["GCS_Santo_DOS_1965",DATUM["Santo_DOS_1965",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37227"]] +37228,GEOGCS["GCS_Viti_Levu_1916",DATUM["Viti_Levu_1916",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37228"]] +37229,GEOGCS["GCS_Wake_Eniwetok_1960",DATUM["Wake_Eniwetok_1960",SPHEROID["Hough_1960",6378270,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37229"]] +37230,GEOGCS["GCS_Wake_Island_1952",DATUM["Wake_Island_1952",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37230"]] +37231,GEOGCS["GCS_Anna_1_1965",DATUM["Anna_1_1965",SPHEROID["Australian",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37231"]] +37232,GEOGCS["GCS_Gan_1970",DATUM["Gan_1970",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37232"]] +37233,GEOGCS["GCS_ISTS_073_1969",DATUM["ISTS_073_1969",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37233"]] +37234,GEOGCS["GCS_Kerguelen_Island_1949",DATUM["Kerguelen_Island_1949",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37234"]] +37235,GEOGCS["GCS_Reunion",DATUM["Reunion",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37235"]] +37237,GEOGCS["GCS_Ascension_Island_1958",DATUM["Ascension_Island_1958",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37237"]] +37238,GEOGCS["GCS_DOS_71_4",DATUM["DOS_71_4",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37238"]] +37239,GEOGCS["GCS_Cape_Canaveral",DATUM["Cape_Canaveral",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37239"]] +37240,GEOGCS["GCS_Fort_Thomas_1955",DATUM["Fort_Thomas_1955",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37240"]] +37241,GEOGCS["GCS_Graciosa_Base_SW_1948",DATUM["Graciosa_Base_SW_1948",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37241"]] +37242,GEOGCS["GCS_ISTS_061_1968",DATUM["ISTS_061_1968",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37242"]] +37243,GEOGCS["GCS_LC5_1961",DATUM["LC5_1961",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37243"]] +37245,GEOGCS["GCS_Observ_Meteorologico_1939",DATUM["Observ_Meteorologico_1939",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37245"]] +37246,GEOGCS["GCS_Pico_de_Las_Nieves",DATUM["Pico_de_Las_Nieves",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37246"]] +37247,GEOGCS["GCS_Porto_Santo_1936",DATUM["Porto_Santo_1936",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37247"]] +37249,GEOGCS["GCS_Sao_Braz",DATUM["Sao_Braz",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37249"]] +37250,GEOGCS["GCS_Selvagem_Grande_1938",DATUM["Selvagem_Grande_1938",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37250"]] +37251,GEOGCS["GCS_Tristan_1968",DATUM["Tristan_1968",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37251"]] +37252,GEOGCS["GCS_Samoa_1962",DATUM["Samoa_1962",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37252"]] +37253,GEOGCS["GCS_Camp_Area",DATUM["Camp_Area",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37253"]] +37254,GEOGCS["GCS_Deception_Island",DATUM["Deception_Island",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37254"]] +37255,GEOGCS["GCS_Gunung_Segara",DATUM["Gunung_Segara",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37255"]] +37257,GEOGCS["GCS_S42_Hungary",DATUM["S42_Hungary",SPHEROID["Krasovsky_1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37257"]] +37259,GEOGCS["GCS_Kusaie_1951",DATUM["Kusaie_1951",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37259"]] +37260,GEOGCS["GCS_Alaskan_Islands",DATUM["Alaskan_Islands",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","37260"]] +53001,PROJCS["Sphere_Plate_Carree",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Plate_Carree"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53001"]] +53002,PROJCS["Sphere_Equidistant_Cylindrical",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equirectangular"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",60],UNIT["Meter",1],AUTHORITY["EPSG","53002"]] +53003,PROJCS["Sphere_Miller_Cylindrical",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Miller_Cylindrical"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53003"]] +53004,PROJCS["Sphere_Mercator",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator_1SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",0],UNIT["Meter",1],AUTHORITY["EPSG","53004"]] +53008,PROJCS["Sphere_Sinusoidal",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Sinusoidal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53008"]] +53009,PROJCS["Sphere_Mollweide",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mollweide"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53009"]] +53010,PROJCS["Sphere_Eckert_VI",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_VI"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53010"]] +53011,PROJCS["Sphere_Eckert_V",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_V"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53011"]] +53012,PROJCS["Sphere_Eckert_IV",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_IV"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53012"]] +53013,PROJCS["Sphere_Eckert_III",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_III"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53013"]] +53014,PROJCS["Sphere_Eckert_II",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_II"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53014"]] +53015,PROJCS["Sphere_Eckert_I",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_I"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53015"]] +53016,PROJCS["Sphere_Gall_Stereographic",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Gall_Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53016"]] +53017,PROJCS["Sphere_Behrmann",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Behrmann"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53017"]] +53018,PROJCS["Sphere_Winkel_I",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Winkel_I"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",50.45977625218981],UNIT["Meter",1],AUTHORITY["EPSG","53018"]] +53019,PROJCS["Sphere_Winkel_II",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Winkel_II"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",50.45977625218981],UNIT["Meter",1],AUTHORITY["EPSG","53019"]] +53021,PROJCS["Sphere_Polyconic",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","53021"]] +53022,PROJCS["Sphere_Quartic_Authalic",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Quartic_Authalic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53022"]] +53023,PROJCS["Sphere_Loximuthal",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Loximuthal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Central_Parallel",40],UNIT["Meter",1],AUTHORITY["EPSG","53023"]] +53024,PROJCS["Sphere_Bonne",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Bonne"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",60],UNIT["Meter",1],AUTHORITY["EPSG","53024"]] +53025,PROJCS["Sphere_Hotine",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator_Two_Point_Natural_Origin"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Latitude_Of_1st_Point",0],PARAMETER["Latitude_Of_2nd_Point",60],PARAMETER["Scale_Factor",1],PARAMETER["Longitude_Of_1st_Point",0],PARAMETER["Longitude_Of_2nd_Point",60],PARAMETER["Latitude_Of_Center",40],UNIT["Meter",1],AUTHORITY["EPSG","53025"]] +53026,PROJCS["Sphere_Stereographic",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","53026"]] +53027,PROJCS["Sphere_Equidistant_Conic",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",0],PARAMETER["Standard_Parallel_1",60],PARAMETER["Standard_Parallel_2",60],PARAMETER["Latitude_Of_Center",0],UNIT["Meter",1],AUTHORITY["EPSG","53027"]] +53028,PROJCS["Sphere_Cassini",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Cassini_Soldner"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","53028"]] +53029,PROJCS["Sphere_Van_der_Grinten_I",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["VanDerGrinten"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53029"]] +53030,PROJCS["Sphere_Robinson",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Robinson"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53030"]] +53031,PROJCS["Sphere_Two_Point_Equidistant",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Two_Point_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Latitude_Of_1st_Point",0],PARAMETER["Latitude_Of_2nd_Point",60],PARAMETER["Longitude_Of_1st_Point",0],PARAMETER["Longitude_Of_2nd_Point",60],UNIT["Meter",1],AUTHORITY["EPSG","53031"]] +53032,PROJCS["Sphere_Azimuthal_Equidistant",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","53032"]] +54001,PROJCS["World_Plate_Carree",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Plate_Carree"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54001"]] +54002,PROJCS["World_Equidistant_Cylindrical",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equirectangular"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",60],UNIT["Meter",1],AUTHORITY["EPSG","54002"]] +54003,PROJCS["World_Miller_Cylindrical",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Miller_Cylindrical"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54003"]] +54004,PROJCS["World_Mercator",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator_1SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",0],UNIT["Meter",1],AUTHORITY["EPSG","54004"]] +54008,PROJCS["World_Sinusoidal",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Sinusoidal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54008"]] +54009,PROJCS["World_Mollweide",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mollweide"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54009"]] +54010,PROJCS["World_Eckert_VI",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_VI"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54010"]] +54011,PROJCS["World_Eckert_V",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_V"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54011"]] +54012,PROJCS["World_Eckert_IV",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_IV"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54012"]] +54013,PROJCS["World_Eckert_III",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_III"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54013"]] +54014,PROJCS["World_Eckert_II",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_II"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54014"]] +54015,PROJCS["World_Eckert_I",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Eckert_I"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54015"]] +54016,PROJCS["World_Gall_Stereographic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Gall_Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54016"]] +54017,PROJCS["World_Behrmann",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Behrmann"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54017"]] +54018,PROJCS["World_Winkel_I",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Winkel_I"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",50.45977625218981],UNIT["Meter",1],AUTHORITY["EPSG","54018"]] +54019,PROJCS["World_Winkel_II",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Winkel_II"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",50.45977625218981],UNIT["Meter",1],AUTHORITY["EPSG","54019"]] +54021,PROJCS["World_Polyconic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","54021"]] +54022,PROJCS["World_Quartic_Authalic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Quartic_Authalic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54022"]] +54023,PROJCS["World_Loximuthal",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Loximuthal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Central_Parallel",40],UNIT["Meter",1],AUTHORITY["EPSG","54023"]] +54024,PROJCS["World_Bonne",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Bonne"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Standard_Parallel_1",60],UNIT["Meter",1],AUTHORITY["EPSG","54024"]] +54025,PROJCS["World_Hotine",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator_Two_Point_Natural_Origin"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Latitude_Of_1st_Point",0],PARAMETER["Latitude_Of_2nd_Point",60],PARAMETER["Scale_Factor",1],PARAMETER["Longitude_Of_1st_Point",0],PARAMETER["Longitude_Of_2nd_Point",60],PARAMETER["Latitude_Of_Center",40],UNIT["Meter",1],AUTHORITY["EPSG","54025"]] +54026,PROJCS["World_Stereographic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","54026"]] +54027,PROJCS["World_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",0],PARAMETER["Standard_Parallel_1",60],PARAMETER["Standard_Parallel_2",60],PARAMETER["Latitude_Of_Center",0],UNIT["Meter",1],AUTHORITY["EPSG","54027"]] +54028,PROJCS["World_Cassini",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Cassini_Soldner"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","54028"]] +54029,PROJCS["World_Van_der_Grinten_I",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["VanDerGrinten"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54029"]] +54030,PROJCS["World_Robinson",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Robinson"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54030"]] +54031,PROJCS["World_Two_Point_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Two_Point_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Latitude_Of_1st_Point",0],PARAMETER["Latitude_Of_2nd_Point",60],PARAMETER["Longitude_Of_1st_Point",0],PARAMETER["Longitude_Of_2nd_Point",60],UNIT["Meter",1],AUTHORITY["EPSG","54031"]] +54032,PROJCS["World_Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","54032"]] +65061,PROJCS["NAD_1927_StatePlane_Guam_FIPS_5400",GEOGCS["GCS_North_American_1927",DATUM["North_American_Datum_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["False_Easting",164041.6666666667],PARAMETER["False_Northing",164041.6666666667],PARAMETER["Central_Meridian",-144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","65061"]] +65161,PROJCS["NAD_1983_StatePlane_Guam_FIPS_5400",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["False_Easting",50000],PARAMETER["False_Northing",50000],PARAMETER["Central_Meridian",-144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Meter",1],AUTHORITY["EPSG","65161"]] +102001,PROJCS["Canada_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-96],PARAMETER["Standard_Parallel_1",50],PARAMETER["Standard_Parallel_2",70],PARAMETER["latitude_of_center",40],UNIT["Meter",1],AUTHORITY["EPSG","102001"]] +102002,PROJCS["Canada_Lambert_Conformal_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-96],PARAMETER["Standard_Parallel_1",50],PARAMETER["Standard_Parallel_2",70],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1],AUTHORITY["EPSG","102002"]] +102003,PROJCS["USA_Contiguous_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-96],PARAMETER["Standard_Parallel_1",29.5],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["latitude_of_center",37.5],UNIT["Meter",1],AUTHORITY["EPSG","102003"]] +102004,PROJCS["USA_Contiguous_Lambert_Conformal_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-96],PARAMETER["Standard_Parallel_1",33],PARAMETER["Standard_Parallel_2",45],PARAMETER["Latitude_Of_Origin",39],UNIT["Meter",1],AUTHORITY["EPSG","102004"]] +102005,PROJCS["USA_Contiguous_Equidistant_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",-96],PARAMETER["Standard_Parallel_1",33],PARAMETER["Standard_Parallel_2",45],PARAMETER["Latitude_Of_Center",39],UNIT["Meter",1],AUTHORITY["EPSG","102005"]] +102006,PROJCS["Alaska_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-154],PARAMETER["Standard_Parallel_1",55],PARAMETER["Standard_Parallel_2",65],PARAMETER["latitude_of_center",50],UNIT["Meter",1],AUTHORITY["EPSG","102006"]] +102007,PROJCS["Hawaii_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-157],PARAMETER["Standard_Parallel_1",8],PARAMETER["Standard_Parallel_2",18],PARAMETER["latitude_of_center",13],UNIT["Meter",1],AUTHORITY["EPSG","102007"]] +102008,PROJCS["North_America_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-96],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",60],PARAMETER["latitude_of_center",40],UNIT["Meter",1],AUTHORITY["EPSG","102008"]] +102009,PROJCS["North_America_Lambert_Conformal_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-96],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",60],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1],AUTHORITY["EPSG","102009"]] +102010,PROJCS["North_America_Equidistant_Conic",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",-96],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",60],PARAMETER["Latitude_Of_Center",40],UNIT["Meter",1],AUTHORITY["EPSG","102010"]] +102011,PROJCS["Africa_Sinusoidal",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Sinusoidal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",15],UNIT["Meter",1],AUTHORITY["EPSG","102011"]] +102012,PROJCS["Asia_Lambert_Conformal_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",105],PARAMETER["Standard_Parallel_1",30],PARAMETER["Standard_Parallel_2",62],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102012"]] +102013,PROJCS["Europe_Albers_Equal_Area_Conic",GEOGCS["GCS_European_1950",DATUM["European_Datum_1950",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",10],PARAMETER["Standard_Parallel_1",43],PARAMETER["Standard_Parallel_2",62],PARAMETER["latitude_of_center",30],UNIT["Meter",1],AUTHORITY["EPSG","102013"]] +102014,PROJCS["Europe_Lambert_Conformal_Conic",GEOGCS["GCS_European_1950",DATUM["European_Datum_1950",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",10],PARAMETER["Standard_Parallel_1",43],PARAMETER["Standard_Parallel_2",62],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102014"]] +102015,PROJCS["South_America_Lambert_Conformal_Conic",GEOGCS["GCS_South_American_1969",DATUM["South_American_Datum_1969",SPHEROID["GRS_1967_Truncated",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-60],PARAMETER["Standard_Parallel_1",-5],PARAMETER["Standard_Parallel_2",-42],PARAMETER["Latitude_Of_Origin",-32],UNIT["Meter",1],AUTHORITY["EPSG","102015"]] +102016,PROJCS["North_Pole_Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",90],UNIT["Meter",1],AUTHORITY["EPSG","102016"]] +102017,PROJCS["North_Pole_Lambert_Azimuthal_Equal_Area",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",90],UNIT["Meter",1],AUTHORITY["EPSG","102017"]] +102018,PROJCS["North_Pole_Stereographic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",90],UNIT["Meter",1],AUTHORITY["EPSG","102018"]] +102019,PROJCS["South_Pole_Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",-90],UNIT["Meter",1],AUTHORITY["EPSG","102019"]] +102020,PROJCS["South_Pole_Lambert_Azimuthal_Equal_Area",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",-90],UNIT["Meter",1],AUTHORITY["EPSG","102020"]] +102021,PROJCS["South_Pole_Stereographic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",-90],UNIT["Meter",1],AUTHORITY["EPSG","102021"]] +102022,PROJCS["Africa_Albers_Equal_Area_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",25],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",-23],PARAMETER["latitude_of_center",0],UNIT["Meter",1],AUTHORITY["EPSG","102022"]] +102023,PROJCS["Africa_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",25],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",-23],PARAMETER["Latitude_Of_Center",0],UNIT["Meter",1],AUTHORITY["EPSG","102023"]] +102024,PROJCS["Africa_Lambert_Conformal_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",25],PARAMETER["Standard_Parallel_1",20],PARAMETER["Standard_Parallel_2",-23],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102024"]] +102025,PROJCS["Asia_North_Albers_Equal_Area_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",95],PARAMETER["Standard_Parallel_1",15],PARAMETER["Standard_Parallel_2",65],PARAMETER["latitude_of_center",30],UNIT["Meter",1],AUTHORITY["EPSG","102025"]] +102026,PROJCS["Asia_North_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",95],PARAMETER["Standard_Parallel_1",15],PARAMETER["Standard_Parallel_2",65],PARAMETER["Latitude_Of_Center",30],UNIT["Meter",1],AUTHORITY["EPSG","102026"]] +102027,PROJCS["Asia_North_Lambert_Conformal_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",95],PARAMETER["Standard_Parallel_1",15],PARAMETER["Standard_Parallel_2",65],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102027"]] +102028,PROJCS["Asia_South_Albers_Equal_Area_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",125],PARAMETER["Standard_Parallel_1",7],PARAMETER["Standard_Parallel_2",-32],PARAMETER["latitude_of_center",-15],UNIT["Meter",1],AUTHORITY["EPSG","102028"]] +102029,PROJCS["Asia_South_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",125],PARAMETER["Standard_Parallel_1",7],PARAMETER["Standard_Parallel_2",-32],PARAMETER["Latitude_Of_Center",-15],UNIT["Meter",1],AUTHORITY["EPSG","102029"]] +102030,PROJCS["Asia_South_Lambert_Conformal_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",125],PARAMETER["Standard_Parallel_1",7],PARAMETER["Standard_Parallel_2",-32],PARAMETER["Latitude_Of_Origin",-15],UNIT["Meter",1],AUTHORITY["EPSG","102030"]] +102031,PROJCS["Europe_Equidistant_Conic",GEOGCS["GCS_European_1950",DATUM["European_Datum_1950",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",10],PARAMETER["Standard_Parallel_1",43],PARAMETER["Standard_Parallel_2",62],PARAMETER["Latitude_Of_Center",30],UNIT["Meter",1],AUTHORITY["EPSG","102031"]] +102032,PROJCS["South_America_Equidistant_Conic",GEOGCS["GCS_South_American_1969",DATUM["South_American_Datum_1969",SPHEROID["GRS_1967_Truncated",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Longitude_Of_Center",-60],PARAMETER["Standard_Parallel_1",-5],PARAMETER["Standard_Parallel_2",-42],PARAMETER["Latitude_Of_Center",-32],UNIT["Meter",1],AUTHORITY["EPSG","102032"]] +102033,PROJCS["South_America_Albers_Equal_Area_Conic",GEOGCS["GCS_South_American_1969",DATUM["South_American_Datum_1969",SPHEROID["GRS_1967_Truncated",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["longitude_of_center",-60],PARAMETER["Standard_Parallel_1",-5],PARAMETER["Standard_Parallel_2",-42],PARAMETER["latitude_of_center",-32],UNIT["Meter",1],AUTHORITY["EPSG","102033"]] +102065,PROJCS["S-JTSK_Krovak",GEOGCS["GCS_S_JTSK",DATUM["Jednotne_Trigonometricke_Site_Katastralni",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Krovak"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Pseudo_Standard_Parallel_1",78.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",30.28813975277778],PARAMETER["Longitude_Of_Center",24.83333333333333],PARAMETER["Latitude_Of_Center",49.5],PARAMETER["X_Scale",1],PARAMETER["Y_Scale",1],PARAMETER["XY_Plane_Rotation",0],UNIT["Meter",1],AUTHORITY["EPSG","102065"]] +102066,PROJCS["S-JTSK_Ferro_Krovak_East_North",GEOGCS["GCS_S_JTSK_Ferro",DATUM["Jednotne_Trigonometricke_Site_Katastralni",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Ferro",-17.66666666666667],UNIT["Degree",0.017453292519943295]],PROJECTION["Krovak"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Pseudo_Standard_Parallel_1",78.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",30.28813975277778],PARAMETER["Longitude_Of_Center",42.5],PARAMETER["Latitude_Of_Center",49.5],PARAMETER["X_Scale",-1],PARAMETER["Y_Scale",1],PARAMETER["XY_Plane_Rotation",90],UNIT["Meter",1],AUTHORITY["EPSG","102066"]] +102067,PROJCS["S-JTSK_Krovak_East_North",GEOGCS["GCS_S_JTSK",DATUM["Jednotne_Trigonometricke_Site_Katastralni",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Krovak"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Pseudo_Standard_Parallel_1",78.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",30.28813975277778],PARAMETER["Longitude_Of_Center",24.83333333333333],PARAMETER["Latitude_Of_Center",49.5],PARAMETER["X_Scale",-1],PARAMETER["Y_Scale",1],PARAMETER["XY_Plane_Rotation",90],UNIT["Meter",1],AUTHORITY["EPSG","102067"]] +102091,PROJCS["Monte_Mario_Italy_1",GEOGCS["GCS_Monte_Mario",DATUM["Monte_Mario",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",9],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102091"]] +102092,PROJCS["Monte_Mario_Italy_2",GEOGCS["GCS_Monte_Mario",DATUM["Monte_Mario",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2520000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",15],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102092"]] +102101,PROJCS["NGO_1948_Norway_Zone_1",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",6.05625],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102101"]] +102102,PROJCS["NGO_1948_Norway_Zone_2",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",8.389583333333333],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102102"]] +102103,PROJCS["NGO_1948_Norway_Zone_3",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",10.72291666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102103"]] +102104,PROJCS["NGO_1948_Norway_Zone_4",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",13.22291666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102104"]] +102105,PROJCS["NGO_1948_Norway_Zone_5",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",16.88958333333333],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102105"]] +102106,PROJCS["NGO_1948_Norway_Zone_6",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",20.88958333333333],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102106"]] +102107,PROJCS["NGO_1948_Norway_Zone_7",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",24.88958333333333],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102107"]] +102108,PROJCS["NGO_1948_Norway_Zone_8",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",29.05625],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",58],UNIT["Meter",1],AUTHORITY["EPSG","102108"]] +102110,PROJCS["RGF_1993_Lambert_93",GEOGCS["GCS_RGF_1993",DATUM["RGF_1993",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",6600000],PARAMETER["Central_Meridian",3],PARAMETER["Standard_Parallel_1",44],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Meter",1],AUTHORITY["EPSG","102110"]] +102114,PROJCS["Old_Hawaiian_UTM_Zone_4N",GEOGCS["GCS_Old_Hawaiian",DATUM["Old_Hawaiian",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102114"]] +102115,PROJCS["Old_Hawaiian_UTM_Zone_5N",GEOGCS["GCS_Old_Hawaiian",DATUM["Old_Hawaiian",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-153],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102115"]] +102120,PROJCS["NAD_1927_Michigan_GeoRef_Feet_US",GEOGCS["GCS_North_American_1927",DATUM["North_American_Datum_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator"],PARAMETER["False_Easting",8355401.583],PARAMETER["False_Northing",-14284780.538],PARAMETER["Scale_Factor",0.9996],PARAMETER["Azimuth",337.255555555556],PARAMETER["Longitude_Of_Center",-86],PARAMETER["Latitude_Of_Center",45.30916666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102120"]] +102121,PROJCS["NAD_1983_Michigan_GeoRef_Feet_US",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator"],PARAMETER["False_Easting",8355401.583],PARAMETER["False_Northing",-14284780.538],PARAMETER["Scale_Factor",0.9996],PARAMETER["Azimuth",337.255555555556],PARAMETER["Longitude_Of_Center",-86],PARAMETER["Latitude_Of_Center",45.30916666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102121"]] +102122,PROJCS["NAD_1927_Michigan_GeoRef_Meters",GEOGCS["GCS_North_American_1927",DATUM["North_American_Datum_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator"],PARAMETER["False_Easting",2546731.496],PARAMETER["False_Northing",-4354009.816],PARAMETER["Scale_Factor",0.9996],PARAMETER["Azimuth",337.255555555556],PARAMETER["Longitude_Of_Center",-86],PARAMETER["Latitude_Of_Center",45.30916666666666],UNIT["Meter",1],AUTHORITY["EPSG","102122"]] +102123,PROJCS["NAD_1983_Michigan_GeoRef_Meters",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator"],PARAMETER["False_Easting",2546731.496],PARAMETER["False_Northing",-4354009.816],PARAMETER["Scale_Factor",0.9996],PARAMETER["Azimuth",337.255555555556],PARAMETER["Longitude_Of_Center",-86],PARAMETER["Latitude_Of_Center",45.30916666666666],UNIT["Meter",1],AUTHORITY["EPSG","102123"]] +102132,PROJCS["NGO_1948_UTM_Zone_32N",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",9],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102132"]] +102133,PROJCS["NGO_1948_UTM_Zone_33N",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",15],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102133"]] +102134,PROJCS["NGO_1948_UTM_Zone_34N",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",21],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102134"]] +102135,PROJCS["NGO_1948_UTM_Zone_35N",GEOGCS["GCS_NGO_1948",DATUM["NGO_1948",SPHEROID["Bessel_Modified",6377492.018,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",27],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102135"]] +102140,PROJCS["Hong_Kong_1980_Grid",GEOGCS["GCS_Hong_Kong_1980",DATUM["Hong_Kong_1980",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",836694.0500000001],PARAMETER["False_Northing",819069.8000000001],PARAMETER["Central_Meridian",114.1785555555556],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",22.31213333333334],UNIT["Meter",1],AUTHORITY["EPSG","102140"]] +102141,PROJCS["Hong_Kong_1980_UTM_Zone_49N",GEOGCS["GCS_Hong_Kong_1980",DATUM["Hong_Kong_1980",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",111],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102141"]] +102142,PROJCS["Hong_Kong_1980_UTM_Zone_50N",GEOGCS["GCS_Hong_Kong_1980",DATUM["Hong_Kong_1980",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",117],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102142"]] +102151,PROJCS["Tokyo_UTM_Zone_51N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",123],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102151"]] +102152,PROJCS["Tokyo_UTM_Zone_52N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",129],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102152"]] +102153,PROJCS["Tokyo_UTM_Zone_53N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",135],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102153"]] +102154,PROJCS["Tokyo_UTM_Zone_54N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",141],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102154"]] +102155,PROJCS["Tokyo_UTM_Zone_55N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",147],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102155"]] +102156,PROJCS["Tokyo_UTM_Zone_56N",GEOGCS["GCS_Tokyo",DATUM["Tokyo",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",153],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102156"]] +102160,PROJCS["Datum_73_Hayford_Gauss_IGeoE",GEOGCS["GCS_Datum_73",DATUM["Datum_73",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200180.598],PARAMETER["False_Northing",299913.01],PARAMETER["Central_Meridian",-8.131906111111112],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102160"]] +102161,PROJCS["Datum_73_Hayford_Gauss_IPCC",GEOGCS["GCS_Datum_73",DATUM["Datum_73",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",180.598],PARAMETER["False_Northing",-86.99],PARAMETER["Central_Meridian",-8.131906111111112],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102161"]] +102162,PROJCS["Graciosa_Base_SW_1948_UTM_Zone_26N",GEOGCS["GCS_Graciosa_Base_SW_1948",DATUM["Graciosa_Base_SW_1948",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-27],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102162"]] +102163,PROJCS["Lisboa_Bessel_Bonne",GEOGCS["GCS_Datum_Lisboa_Bessel",DATUM["Datum_Lisboa_Bessel",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Bonne"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-8.131906111111112],PARAMETER["Standard_Parallel_1",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102163"]] +102164,PROJCS["Lisboa_Hayford_Gauss_IGeoE",GEOGCS["GCS_Datum_Lisboa_Hayford",DATUM["Datum_Lisboa_Hayford",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",300000],PARAMETER["Central_Meridian",-8.131906111111112],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102164"]] +102165,PROJCS["Lisboa_Hayford_Gauss_IPCC",GEOGCS["GCS_Datum_Lisboa_Hayford",DATUM["Datum_Lisboa_Hayford",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-8.131906111111112],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102165"]] +102166,PROJCS["Observ_Meteorologico_1939_UTM_Zone_25N",GEOGCS["GCS_Observ_Meteorologico_1939",DATUM["Observ_Meteorologico_1939",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-33],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102166"]] +102167,PROJCS["Porto_Santo_1936_UTM_Zone_28N",GEOGCS["GCS_Porto_Santo_1936",DATUM["Porto_Santo_1936",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-15],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102167"]] +102168,PROJCS["Sao_Braz_UTM_Zone_26N",GEOGCS["GCS_Sao_Braz",DATUM["Sao_Braz",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-27],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102168"]] +102169,PROJCS["Selvagem_Grande_1938_UTM_Zone_28N",GEOGCS["GCS_Selvagem_Grande_1938",DATUM["Selvagem_Grande_1938",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-15],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1],AUTHORITY["EPSG","102169"]] +102191,PROJCS["Nord_Maroc_Degree",GEOGCS["GCS_Merchich_Degree",DATUM["Merchich",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",300000],PARAMETER["Central_Meridian",-5.4],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Scale_Factor",0.999625769],PARAMETER["Latitude_Of_Origin",33.3],UNIT["Meter",1],AUTHORITY["EPSG","102191"]] +102192,PROJCS["Sud_Maroc_Degree",GEOGCS["GCS_Merchich_Degree",DATUM["Merchich",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",300000],PARAMETER["Central_Meridian",-5.4],PARAMETER["Standard_Parallel_1",29.7],PARAMETER["Scale_Factor",0.9996155960000001],PARAMETER["Latitude_Of_Origin",29.7],UNIT["Meter",1],AUTHORITY["EPSG","102192"]] +102193,PROJCS["Sahara_Degree",GEOGCS["GCS_Merchich_Degree",DATUM["Merchich",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",1200000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-5.4],PARAMETER["Standard_Parallel_1",26.1],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",26.1],UNIT["Meter",1],AUTHORITY["EPSG","102193"]] +102229,PROJCS["NAD_1983_HARN_StatePlane_Alabama_East_FIPS_0101",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1],AUTHORITY["EPSG","102229"]] +102230,PROJCS["NAD_1983_HARN_StatePlane_Alabama_West_FIPS_0102",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102230"]] +102241,PROJCS["NAD_1983_HARN_StatePlane_California_I_FIPS_0401",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102241"]] +102242,PROJCS["NAD_1983_HARN_StatePlane_California_II_FIPS_0402",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102242"]] +102243,PROJCS["NAD_1983_HARN_StatePlane_California_III_FIPS_0403",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Meter",1],AUTHORITY["EPSG","102243"]] +102244,PROJCS["NAD_1983_HARN_StatePlane_California_IV_FIPS_0404",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102244"]] +102245,PROJCS["NAD_1983_HARN_StatePlane_California_V_FIPS_0405",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Meter",1],AUTHORITY["EPSG","102245"]] +102246,PROJCS["NAD_1983_HARN_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102246"]] +102248,PROJCS["NAD_1983_HARN_StatePlane_Arizona_East_FIPS_0201",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102248"]] +102249,PROJCS["NAD_1983_HARN_StatePlane_Arizona_Central_FIPS_0202",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102249"]] +102250,PROJCS["NAD_1983_HARN_StatePlane_Arizona_West_FIPS_0203",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",213360],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102250"]] +102251,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_North_FIPS_0301",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102251"]] +102252,PROJCS["NAD_1983_HARN_StatePlane_Arkansas_South_FIPS_0302",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102252"]] +102253,PROJCS["NAD_1983_HARN_StatePlane_Colorado_North_FIPS_0501",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102253"]] +102254,PROJCS["NAD_1983_HARN_StatePlane_Colorado_Central_FIPS_0502",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102254"]] +102255,PROJCS["NAD_1983_HARN_StatePlane_Colorado_South_FIPS_0503",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",914401.8289],PARAMETER["False_Northing",304800.6096],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102255"]] +102256,PROJCS["NAD_1983_HARN_StatePlane_Connecticut_FIPS_0600",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",304800.6096],PARAMETER["False_Northing",152400.3048],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102256"]] +102257,PROJCS["NAD_1983_HARN_StatePlane_Delaware_FIPS_0700",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1],AUTHORITY["EPSG","102257"]] +102258,PROJCS["NAD_1983_HARN_StatePlane_Florida_East_FIPS_0901",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102258"]] +102259,PROJCS["NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102259"]] +102260,PROJCS["NAD_1983_HARN_StatePlane_Florida_North_FIPS_0903",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Meter",1],AUTHORITY["EPSG","102260"]] +102261,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_1_FIPS_5101",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102261"]] +102262,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_2_FIPS_5102",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102262"]] +102263,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_3_FIPS_5103",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999900000000001],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102263"]] +102264,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_4_FIPS_5104",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.9999900000000001],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102264"]] +102265,PROJCS["NAD_1983_HARN_StatePlane_Hawaii_5_FIPS_5105",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102265"]] +102266,PROJCS["NAD_1983_HARN_StatePlane_Georgia_East_FIPS_1001",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102266"]] +102267,PROJCS["NAD_1983_HARN_StatePlane_Georgia_West_FIPS_1002",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102267"]] +102268,PROJCS["NAD_1983_HARN_StatePlane_Idaho_East_FIPS_1101",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102268"]] +102269,PROJCS["NAD_1983_HARN_StatePlane_Idaho_Central_FIPS_1102",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102269"]] +102270,PROJCS["NAD_1983_HARN_StatePlane_Idaho_West_FIPS_1103",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102270"]] +102271,PROJCS["NAD_1983_HARN_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.999975],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102271"]] +102272,PROJCS["NAD_1983_HARN_StatePlane_Illinois_West_FIPS_1202",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102272"]] +102273,PROJCS["NAD_1983_HARN_StatePlane_Indiana_East_FIPS_1301",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1],AUTHORITY["EPSG","102273"]] +102274,PROJCS["NAD_1983_HARN_StatePlane_Indiana_West_FIPS_1302",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",250000],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1],AUTHORITY["EPSG","102274"]] +102277,PROJCS["NAD_1983_HARN_StatePlane_Kansas_North_FIPS_1501",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102277"]] +102278,PROJCS["NAD_1983_HARN_StatePlane_Kansas_South_FIPS_1502",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",400000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102278"]] +102279,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_North_FIPS_1601",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Meter",1],AUTHORITY["EPSG","102279"]] +102280,PROJCS["NAD_1983_HARN_StatePlane_Kentucky_South_FIPS_1602",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",500000],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102280"]] +102281,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_North_FIPS_1701",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Meter",1],AUTHORITY["EPSG","102281"]] +102282,PROJCS["NAD_1983_HARN_StatePlane_Louisiana_South_FIPS_1702",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Meter",1],AUTHORITY["EPSG","102282"]] +102283,PROJCS["NAD_1983_HARN_StatePlane_Maine_East_FIPS_1801",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102283"]] +102284,PROJCS["NAD_1983_HARN_StatePlane_Maine_West_FIPS_1802",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",900000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102284"]] +102285,PROJCS["NAD_1983_HARN_StatePlane_Maryland_FIPS_1900",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102285"]] +102286,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Mainland_FIPS_2001",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",750000],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1],AUTHORITY["EPSG","102286"]] +102287,PROJCS["NAD_1983_HARN_StatePlane_Massachusetts_Island_FIPS_2002",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Meter",1],AUTHORITY["EPSG","102287"]] +102288,PROJCS["NAD_1983_HARN_StatePlane_Michigan_North_FIPS_2111",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",8000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102288"]] +102289,PROJCS["NAD_1983_HARN_StatePlane_Michigan_Central_FIPS_2112",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102289"]] +102290,PROJCS["NAD_1983_HARN_StatePlane_Michigan_South_FIPS_2113",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",4000000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Meter",1],AUTHORITY["EPSG","102290"]] +102291,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_North_FIPS_2201",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-93.09999999999999],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Meter",1],AUTHORITY["EPSG","102291"]] +102292,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_Central_FIPS_2202",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45],UNIT["Meter",1],AUTHORITY["EPSG","102292"]] +102293,PROJCS["NAD_1983_HARN_StatePlane_Minnesota_South_FIPS_2203",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-94],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43],UNIT["Meter",1],AUTHORITY["EPSG","102293"]] +102294,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_East_FIPS_2301",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1],AUTHORITY["EPSG","102294"]] +102295,PROJCS["NAD_1983_HARN_StatePlane_Mississippi_West_FIPS_2302",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Meter",1],AUTHORITY["EPSG","102295"]] +102296,PROJCS["NAD_1983_HARN_StatePlane_Missouri_East_FIPS_2401",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102296"]] +102297,PROJCS["NAD_1983_HARN_StatePlane_Missouri_Central_FIPS_2402",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102297"]] +102298,PROJCS["NAD_1983_HARN_StatePlane_Missouri_West_FIPS_2403",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",850000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102298"]] +102300,PROJCS["NAD_1983_HARN_StatePlane_Montana_FIPS_2500",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Meter",1],AUTHORITY["EPSG","102300"]] +102304,PROJCS["NAD_1983_HARN_StatePlane_Nebraska_FIPS_2600",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",43],PARAMETER["Latitude_Of_Origin",39.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102304"]] +102307,PROJCS["NAD_1983_HARN_StatePlane_Nevada_East_FIPS_2701",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",8000000],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1],AUTHORITY["EPSG","102307"]] +102308,PROJCS["NAD_1983_HARN_StatePlane_Nevada_Central_FIPS_2702",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",6000000],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1],AUTHORITY["EPSG","102308"]] +102309,PROJCS["NAD_1983_HARN_StatePlane_Nevada_West_FIPS_2703",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Meter",1],AUTHORITY["EPSG","102309"]] +102310,PROJCS["NAD_1983_HARN_StatePlane_New_Hampshire_FIPS_2800",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1],AUTHORITY["EPSG","102310"]] +102311,PROJCS["NAD_1983_HARN_StatePlane_New_Jersey_FIPS_2900",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102311"]] +102312,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_East_FIPS_3001",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",165000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102312"]] +102313,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_Central_FIPS_3002",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102313"]] +102314,PROJCS["NAD_1983_HARN_StatePlane_New_Mexico_West_FIPS_3003",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",830000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Meter",1],AUTHORITY["EPSG","102314"]] +102315,PROJCS["NAD_1983_HARN_StatePlane_New_York_East_FIPS_3101",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",150000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102315"]] +102316,PROJCS["NAD_1983_HARN_StatePlane_New_York_Central_FIPS_3102",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",250000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1],AUTHORITY["EPSG","102316"]] +102317,PROJCS["NAD_1983_HARN_StatePlane_New_York_West_FIPS_3103",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",350000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Meter",1],AUTHORITY["EPSG","102317"]] +102318,PROJCS["NAD_1983_HARN_StatePlane_New_York_Long_Island_FIPS_3104",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102318"]] +102320,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_North_FIPS_3301",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1],AUTHORITY["EPSG","102320"]] +102321,PROJCS["NAD_1983_HARN_StatePlane_North_Dakota_South_FIPS_3302",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102321"]] +102322,PROJCS["NAD_1983_HARN_StatePlane_Ohio_North_FIPS_3401",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102322"]] +102323,PROJCS["NAD_1983_HARN_StatePlane_Ohio_South_FIPS_3402",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Meter",1],AUTHORITY["EPSG","102323"]] +102324,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_North_FIPS_3501",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Meter",1],AUTHORITY["EPSG","102324"]] +102325,PROJCS["NAD_1983_HARN_StatePlane_Oklahoma_South_FIPS_3502",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102325"]] +102326,PROJCS["NAD_1983_HARN_StatePlane_Oregon_North_FIPS_3601",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102326"]] +102327,PROJCS["NAD_1983_HARN_StatePlane_Oregon_South_FIPS_3602",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102327"]] +102330,PROJCS["NAD_1983_HARN_StatePlane_Rhode_Island_FIPS_3800",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102330"]] +102334,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_North_FIPS_4001",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102334"]] +102335,PROJCS["NAD_1983_HARN_StatePlane_South_Dakota_South_FIPS_4002",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102335"]] +102336,PROJCS["NAD_1983_HARN_StatePlane_Tennessee_FIPS_4100",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102336"]] +102337,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_FIPS_4201",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Meter",1],AUTHORITY["EPSG","102337"]] +102338,PROJCS["NAD_1983_HARN_StatePlane_Texas_North_Central_FIPS_4202",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102338"]] +102339,PROJCS["NAD_1983_HARN_StatePlane_Texas_Central_FIPS_4203",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",700000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102339"]] +102340,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_Central_FIPS_4204",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",4000000],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333334],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102340"]] +102341,PROJCS["NAD_1983_HARN_StatePlane_Texas_South_FIPS_4205",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",300000],PARAMETER["False_Northing",5000000],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Meter",1],AUTHORITY["EPSG","102341"]] +102342,PROJCS["NAD_1983_HARN_StatePlane_Utah_North_FIPS_4301",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102342"]] +102343,PROJCS["NAD_1983_HARN_StatePlane_Utah_Central_FIPS_4302",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102343"]] +102344,PROJCS["NAD_1983_HARN_StatePlane_Utah_South_FIPS_4303",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",3000000],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102344"]] +102345,PROJCS["NAD_1983_HARN_StatePlane_Vermont_FIPS_4400",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142858],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Meter",1],AUTHORITY["EPSG","102345"]] +102346,PROJCS["NAD_1983_HARN_StatePlane_Virginia_North_FIPS_4501",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",2000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102346"]] +102347,PROJCS["NAD_1983_HARN_StatePlane_Virginia_South_FIPS_4502",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3500000],PARAMETER["False_Northing",1000000],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102347"]] +102348,PROJCS["NAD_1983_HARN_StatePlane_Washington_North_FIPS_4601",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Meter",1],AUTHORITY["EPSG","102348"]] +102349,PROJCS["NAD_1983_HARN_StatePlane_Washington_South_FIPS_4602",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102349"]] +102350,PROJCS["NAD_1983_HARN_StatePlane_West_Virginia_North_FIPS_4701",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Meter",1],AUTHORITY["EPSG","102350"]] +102351,PROJCS["NAD_1983_HARN_StatePlane_West_Virginia_South_FIPS_4702",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Meter",1],AUTHORITY["EPSG","102351"]] +102352,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_North_FIPS_4801",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Meter",1],AUTHORITY["EPSG","102352"]] +102353,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_Central_FIPS_4802",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Meter",1],AUTHORITY["EPSG","102353"]] +102354,PROJCS["NAD_1983_HARN_StatePlane_Wisconsin_South_FIPS_4803",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Meter",1],AUTHORITY["EPSG","102354"]] +102355,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_FIPS_4901",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1],AUTHORITY["EPSG","102355"]] +102356,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_East_Central_FIPS_4902",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1],AUTHORITY["EPSG","102356"]] +102357,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_Central_FIPS_4903",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1],AUTHORITY["EPSG","102357"]] +102358,PROJCS["NAD_1983_HARN_StatePlane_Wyoming_West_FIPS_4904",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",800000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Meter",1],AUTHORITY["EPSG","102358"]] +102361,PROJCS["NAD_1983_HARN_StatePlane_Puerto_Rico_Virgin_Islands_FIPS_5200",GEOGCS["GCS_North_American_1983_HARN",DATUM["NAD83_High_Accuracy_Regional_Network",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",200000],PARAMETER["False_Northing",200000],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333334],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Meter",1],AUTHORITY["EPSG","102361"]] +102491,PROJCS["Nord_Algerie_Ancienne_Degree",GEOGCS["GCS_Voirol_1875_Degree",DATUM["Voirol_1875",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",300000],PARAMETER["Central_Meridian",2.7],PARAMETER["Standard_Parallel_1",36],PARAMETER["Scale_Factor",0.999625544],PARAMETER["Latitude_Of_Origin",36],UNIT["Meter",1],AUTHORITY["EPSG","102491"]] +102492,PROJCS["Sud_Algerie_Ancienne_Degree",GEOGCS["GCS_Voirol_1875_Degree",DATUM["Voirol_1875",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500000],PARAMETER["False_Northing",300000],PARAMETER["Central_Meridian",2.7],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Scale_Factor",0.999625769],PARAMETER["Latitude_Of_Origin",33.3],UNIT["Meter",1],AUTHORITY["EPSG","102492"]] +102581,PROJCS["NTF_France_I_degrees",GEOGCS["GCS_NTF",DATUM["Nouvelle_Triangulation_Francaise",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",1200000],PARAMETER["Central_Meridian",2.337229166666667],PARAMETER["Standard_Parallel_1",49.5],PARAMETER["Scale_Factor",0.999877341],PARAMETER["Latitude_Of_Origin",49.5],UNIT["Meter",1],AUTHORITY["EPSG","102581"]] +102582,PROJCS["NTF_France_II_degrees",GEOGCS["GCS_NTF",DATUM["Nouvelle_Triangulation_Francaise",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",2200000],PARAMETER["Central_Meridian",2.337229166666667],PARAMETER["Standard_Parallel_1",46.8],PARAMETER["Scale_Factor",0.99987742],PARAMETER["Latitude_Of_Origin",46.8],UNIT["Meter",1],AUTHORITY["EPSG","102582"]] +102583,PROJCS["NTF_France_III_degrees",GEOGCS["GCS_NTF",DATUM["Nouvelle_Triangulation_Francaise",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",600000],PARAMETER["False_Northing",3200000],PARAMETER["Central_Meridian",2.337229166666667],PARAMETER["Standard_Parallel_1",44.1],PARAMETER["Scale_Factor",0.999877499],PARAMETER["Latitude_Of_Origin",44.1],UNIT["Meter",1],AUTHORITY["EPSG","102583"]] +102584,PROJCS["NTF_France_IV_degrees",GEOGCS["GCS_NTF",DATUM["Nouvelle_Triangulation_Francaise",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",234.358],PARAMETER["False_Northing",4185861.369],PARAMETER["Central_Meridian",2.337229166666667],PARAMETER["Standard_Parallel_1",42.165],PARAMETER["Scale_Factor",0.99994471],PARAMETER["Latitude_Of_Origin",42.165],UNIT["Meter",1],AUTHORITY["EPSG","102584"]] +102591,PROJCS["Nord_Algerie_Degree",GEOGCS["GCS_Voirol_Unifie_1960_Degree",DATUM["Voirol_Unifie_1960",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500135],PARAMETER["False_Northing",300090],PARAMETER["Central_Meridian",2.7],PARAMETER["Standard_Parallel_1",36],PARAMETER["Scale_Factor",0.999625544],PARAMETER["Latitude_Of_Origin",36],UNIT["Meter",1],AUTHORITY["EPSG","102591"]] +102592,PROJCS["Sud_Algerie_Degree",GEOGCS["GCS_Voirol_Unifie_1960_Degree",DATUM["Voirol_Unifie_1960",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["False_Easting",500135],PARAMETER["False_Northing",300090],PARAMETER["Central_Meridian",2.7],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Scale_Factor",0.999625769],PARAMETER["Latitude_Of_Origin",33.3],UNIT["Meter",1],AUTHORITY["EPSG","102592"]] +102629,PROJCS["NAD_1983_StatePlane_Alabama_East_FIPS_0101_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-85.83333333333333],PARAMETER["Scale_Factor",0.99996],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102629"]] +102630,PROJCS["NAD_1983_StatePlane_Alabama_West_FIPS_0102_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102630"]] +102631,PROJCS["NAD_1983_StatePlane_Alaska_1_FIPS_5001_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator"],PARAMETER["False_Easting",16404166.66666666],PARAMETER["False_Northing",-16404166.66666666],PARAMETER["Scale_Factor",0.9999],PARAMETER["Azimuth",-36.86989764583333],PARAMETER["Longitude_Of_Center",-133.6666666666667],PARAMETER["Latitude_Of_Center",57],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102631"]] +102632,PROJCS["NAD_1983_StatePlane_Alaska_2_FIPS_5002_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-142],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102632"]] +102633,PROJCS["NAD_1983_StatePlane_Alaska_3_FIPS_5003_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-146],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102633"]] +102634,PROJCS["NAD_1983_StatePlane_Alaska_4_FIPS_5004_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-150],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102634"]] +102635,PROJCS["NAD_1983_StatePlane_Alaska_5_FIPS_5005_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-154],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102635"]] +102636,PROJCS["NAD_1983_StatePlane_Alaska_6_FIPS_5006_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102636"]] +102637,PROJCS["NAD_1983_StatePlane_Alaska_7_FIPS_5007_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-162],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102637"]] +102638,PROJCS["NAD_1983_StatePlane_Alaska_8_FIPS_5008_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-166],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102638"]] +102639,PROJCS["NAD_1983_StatePlane_Alaska_9_FIPS_5009_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-170],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",54],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102639"]] +102640,PROJCS["NAD_1983_StatePlane_Alaska_10_FIPS_5010_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-176],PARAMETER["Standard_Parallel_1",51.83333333333334],PARAMETER["Standard_Parallel_2",53.83333333333334],PARAMETER["Latitude_Of_Origin",51],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102640"]] +102641,PROJCS["NAD_1983_StatePlane_California_I_FIPS_0401_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",41.66666666666666],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102641"]] +102642,PROJCS["NAD_1983_StatePlane_California_II_FIPS_0402_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-122],PARAMETER["Standard_Parallel_1",38.33333333333334],PARAMETER["Standard_Parallel_2",39.83333333333334],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102642"]] +102643,PROJCS["NAD_1983_StatePlane_California_III_FIPS_0403_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",37.06666666666667],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102643"]] +102644,PROJCS["NAD_1983_StatePlane_California_IV_FIPS_0404_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-119],PARAMETER["Standard_Parallel_1",36],PARAMETER["Standard_Parallel_2",37.25],PARAMETER["Latitude_Of_Origin",35.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102644"]] +102645,PROJCS["NAD_1983_StatePlane_California_V_FIPS_0405_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-118],PARAMETER["Standard_Parallel_1",34.03333333333333],PARAMETER["Standard_Parallel_2",35.46666666666667],PARAMETER["Latitude_Of_Origin",33.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102645"]] +102646,PROJCS["NAD_1983_StatePlane_California_VI_FIPS_0406_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",6561666.666666666],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-116.25],PARAMETER["Standard_Parallel_1",32.78333333333333],PARAMETER["Standard_Parallel_2",33.88333333333333],PARAMETER["Latitude_Of_Origin",32.16666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102646"]] +102648,PROJCS["NAD_1983_StatePlane_Arizona_East_FIPS_0201_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-110.1666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102648"]] +102649,PROJCS["NAD_1983_StatePlane_Arizona_Central_FIPS_0202_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-111.9166666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102649"]] +102650,PROJCS["NAD_1983_StatePlane_Arizona_West_FIPS_0203_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",699998.5999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-113.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102650"]] +102651,PROJCS["NAD_1983_StatePlane_Arkansas_North_FIPS_0301_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",34.93333333333333],PARAMETER["Standard_Parallel_2",36.23333333333333],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102651"]] +102652,PROJCS["NAD_1983_StatePlane_Arkansas_South_FIPS_0302_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-92],PARAMETER["Standard_Parallel_1",33.3],PARAMETER["Standard_Parallel_2",34.76666666666667],PARAMETER["Latitude_Of_Origin",32.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102652"]] +102653,PROJCS["NAD_1983_StatePlane_Colorado_North_FIPS_0501_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",39.71666666666667],PARAMETER["Standard_Parallel_2",40.78333333333333],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102653"]] +102654,PROJCS["NAD_1983_StatePlane_Colorado_Central_FIPS_0502_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",38.45],PARAMETER["Standard_Parallel_2",39.75],PARAMETER["Latitude_Of_Origin",37.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102654"]] +102655,PROJCS["NAD_1983_StatePlane_Colorado_South_FIPS_0503_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3000000.000316083],PARAMETER["False_Northing",999999.999996],PARAMETER["Central_Meridian",-105.5],PARAMETER["Standard_Parallel_1",37.23333333333333],PARAMETER["Standard_Parallel_2",38.43333333333333],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102655"]] +102656,PROJCS["NAD_1983_StatePlane_Connecticut_FIPS_0600_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",999999.999996],PARAMETER["False_Northing",499999.999998],PARAMETER["Central_Meridian",-72.75],PARAMETER["Standard_Parallel_1",41.2],PARAMETER["Standard_Parallel_2",41.86666666666667],PARAMETER["Latitude_Of_Origin",40.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102656"]] +102657,PROJCS["NAD_1983_StatePlane_Delaware_FIPS_0700_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-75.41666666666667],PARAMETER["Scale_Factor",0.999995],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102657"]] +102658,PROJCS["NAD_1983_StatePlane_Florida_East_FIPS_0901_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102658"]] +102659,PROJCS["NAD_1983_StatePlane_Florida_West_FIPS_0902_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102659"]] +102660,PROJCS["NAD_1983_StatePlane_Florida_North_FIPS_0903_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.5],PARAMETER["Standard_Parallel_1",29.58333333333333],PARAMETER["Standard_Parallel_2",30.75],PARAMETER["Latitude_Of_Origin",29],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102660"]] +102661,PROJCS["NAD_1983_StatePlane_Hawaii_1_FIPS_5101_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-155.5],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",18.83333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102661"]] +102662,PROJCS["NAD_1983_StatePlane_Hawaii_2_FIPS_5102_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-156.6666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",20.33333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102662"]] +102663,PROJCS["NAD_1983_StatePlane_Hawaii_3_FIPS_5103_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-158],PARAMETER["Scale_Factor",0.9999900000000001],PARAMETER["Latitude_Of_Origin",21.16666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102663"]] +102664,PROJCS["NAD_1983_StatePlane_Hawaii_4_FIPS_5104_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-159.5],PARAMETER["Scale_Factor",0.9999900000000001],PARAMETER["Latitude_Of_Origin",21.83333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102664"]] +102665,PROJCS["NAD_1983_StatePlane_Hawaii_5_FIPS_5105_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-160.1666666666667],PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",21.66666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102665"]] +102666,PROJCS["NAD_1983_StatePlane_Georgia_East_FIPS_1001_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102666"]] +102667,PROJCS["NAD_1983_StatePlane_Georgia_West_FIPS_1002_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.16666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",30],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102667"]] +102668,PROJCS["NAD_1983_StatePlane_Idaho_East_FIPS_1101_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-112.1666666666667],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102668"]] +102669,PROJCS["NAD_1983_StatePlane_Idaho_Central_FIPS_1102_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-114],PARAMETER["Scale_Factor",0.9999473684210526],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102669"]] +102670,PROJCS["NAD_1983_StatePlane_Idaho_West_FIPS_1103_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-115.75],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102670"]] +102671,PROJCS["NAD_1983_StatePlane_Illinois_East_FIPS_1201_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.999975],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102671"]] +102672,PROJCS["NAD_1983_StatePlane_Illinois_West_FIPS_1202_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.16666666666667],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102672"]] +102673,PROJCS["NAD_1983_StatePlane_Indiana_East_FIPS_1301_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-85.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102673"]] +102674,PROJCS["NAD_1983_StatePlane_Indiana_West_FIPS_1302_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2952750],PARAMETER["False_Northing",820208.3333333333],PARAMETER["Central_Meridian",-87.08333333333333],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102674"]] +102675,PROJCS["NAD_1983_StatePlane_Iowa_North_FIPS_1401_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",4921249.999999999],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",42.06666666666667],PARAMETER["Standard_Parallel_2",43.26666666666667],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102675"]] +102676,PROJCS["NAD_1983_StatePlane_Iowa_South_FIPS_1402_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-93.5],PARAMETER["Standard_Parallel_1",40.61666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102676"]] +102677,PROJCS["NAD_1983_StatePlane_Kansas_North_FIPS_1501_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",38.71666666666667],PARAMETER["Standard_Parallel_2",39.78333333333333],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102677"]] +102678,PROJCS["NAD_1983_StatePlane_Kansas_South_FIPS_1502_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",1312333.333333333],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",37.26666666666667],PARAMETER["Standard_Parallel_2",38.56666666666667],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102678"]] +102679,PROJCS["NAD_1983_StatePlane_Kentucky_North_FIPS_1601_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.25],PARAMETER["Standard_Parallel_1",37.96666666666667],PARAMETER["Standard_Parallel_2",38.96666666666667],PARAMETER["Latitude_Of_Origin",37.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102679"]] +102680,PROJCS["NAD_1983_StatePlane_Kentucky_South_FIPS_1602_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",1640416.666666667],PARAMETER["Central_Meridian",-85.75],PARAMETER["Standard_Parallel_1",36.73333333333333],PARAMETER["Standard_Parallel_2",37.93333333333333],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102680"]] +102681,PROJCS["NAD_1983_StatePlane_Louisiana_North_FIPS_1701_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Standard_Parallel_1",31.16666666666667],PARAMETER["Standard_Parallel_2",32.66666666666666],PARAMETER["Latitude_Of_Origin",30.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102681"]] +102682,PROJCS["NAD_1983_StatePlane_Louisiana_South_FIPS_1702_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",3280833.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-91.33333333333333],PARAMETER["Standard_Parallel_1",29.3],PARAMETER["Standard_Parallel_2",30.7],PARAMETER["Latitude_Of_Origin",28.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102682"]] +102683,PROJCS["NAD_1983_StatePlane_Maine_East_FIPS_1801_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-68.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102683"]] +102684,PROJCS["NAD_1983_StatePlane_Maine_West_FIPS_1802_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2952750],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.16666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102684"]] +102685,PROJCS["NAD_1983_StatePlane_Maryland_FIPS_1900_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77],PARAMETER["Standard_Parallel_1",38.3],PARAMETER["Standard_Parallel_2",39.45],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102685"]] +102686,PROJCS["NAD_1983_StatePlane_Massachusetts_Mainland_FIPS_2001_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",2460625],PARAMETER["Central_Meridian",-71.5],PARAMETER["Standard_Parallel_1",41.71666666666667],PARAMETER["Standard_Parallel_2",42.68333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102686"]] +102687,PROJCS["NAD_1983_StatePlane_Massachusetts_Island_FIPS_2002_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-70.5],PARAMETER["Standard_Parallel_1",41.28333333333333],PARAMETER["Standard_Parallel_2",41.48333333333333],PARAMETER["Latitude_Of_Origin",41],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102687"]] +102688,PROJCS["NAD_1983_StatePlane_Michigan_North_FIPS_2111_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",26246666.66666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-87],PARAMETER["Standard_Parallel_1",45.48333333333333],PARAMETER["Standard_Parallel_2",47.08333333333334],PARAMETER["Latitude_Of_Origin",44.78333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102688"]] +102689,PROJCS["NAD_1983_StatePlane_Michigan_Central_FIPS_2112_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",19685000],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",44.18333333333333],PARAMETER["Standard_Parallel_2",45.7],PARAMETER["Latitude_Of_Origin",43.31666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102689"]] +102690,PROJCS["NAD_1983_StatePlane_Michigan_South_FIPS_2113_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",13123333.33333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-84.36666666666666],PARAMETER["Standard_Parallel_1",42.1],PARAMETER["Standard_Parallel_2",43.66666666666666],PARAMETER["Latitude_Of_Origin",41.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102690"]] +102691,PROJCS["NAD_1983_StatePlane_Minnesota_North_FIPS_2201_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-93.09999999999999],PARAMETER["Standard_Parallel_1",47.03333333333333],PARAMETER["Standard_Parallel_2",48.63333333333333],PARAMETER["Latitude_Of_Origin",46.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102691"]] +102692,PROJCS["NAD_1983_StatePlane_Minnesota_Central_FIPS_2202_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94.25],PARAMETER["Standard_Parallel_1",45.61666666666667],PARAMETER["Standard_Parallel_2",47.05],PARAMETER["Latitude_Of_Origin",45],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102692"]] +102693,PROJCS["NAD_1983_StatePlane_Minnesota_South_FIPS_2203_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-94],PARAMETER["Standard_Parallel_1",43.78333333333333],PARAMETER["Standard_Parallel_2",45.21666666666667],PARAMETER["Latitude_Of_Origin",43],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102693"]] +102694,PROJCS["NAD_1983_StatePlane_Mississippi_East_FIPS_2301_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-88.83333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102694"]] +102695,PROJCS["NAD_1983_StatePlane_Mississippi_West_FIPS_2302_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.33333333333333],PARAMETER["Scale_Factor",0.99995],PARAMETER["Latitude_Of_Origin",29.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102695"]] +102696,PROJCS["NAD_1983_StatePlane_Missouri_East_FIPS_2401_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",820208.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102696"]] +102697,PROJCS["NAD_1983_StatePlane_Missouri_Central_FIPS_2402_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-92.5],PARAMETER["Scale_Factor",0.9999333333333333],PARAMETER["Latitude_Of_Origin",35.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102697"]] +102698,PROJCS["NAD_1983_StatePlane_Missouri_West_FIPS_2403_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2788708.333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-94.5],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",36.16666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102698"]] +102700,PROJCS["NAD_1983_StatePlane_Montana_FIPS_2500_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-109.5],PARAMETER["Standard_Parallel_1",45],PARAMETER["Standard_Parallel_2",49],PARAMETER["Latitude_Of_Origin",44.25],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102700"]] +102704,PROJCS["NAD_1983_StatePlane_Nebraska_FIPS_2600_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",40],PARAMETER["Standard_Parallel_2",43],PARAMETER["Latitude_Of_Origin",39.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102704"]] +102707,PROJCS["NAD_1983_StatePlane_Nevada_East_FIPS_2701_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",26246666.66666666],PARAMETER["Central_Meridian",-115.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102707"]] +102708,PROJCS["NAD_1983_StatePlane_Nevada_Central_FIPS_2702_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",19685000],PARAMETER["Central_Meridian",-116.6666666666667],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102708"]] +102709,PROJCS["NAD_1983_StatePlane_Nevada_West_FIPS_2703_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-118.5833333333333],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",34.75],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102709"]] +102710,PROJCS["NAD_1983_StatePlane_New_Hampshire_FIPS_2800_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.66666666666667],PARAMETER["Scale_Factor",0.9999666666666667],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102710"]] +102711,PROJCS["NAD_1983_StatePlane_New_Jersey_FIPS_2900_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492124.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102711"]] +102712,PROJCS["NAD_1983_StatePlane_New_Mexico_East_FIPS_3001_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",541337.4999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-104.3333333333333],PARAMETER["Scale_Factor",0.9999090909090909],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102712"]] +102713,PROJCS["NAD_1983_StatePlane_New_Mexico_Central_FIPS_3002_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-106.25],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102713"]] +102714,PROJCS["NAD_1983_StatePlane_New_Mexico_West_FIPS_3003_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2723091.666666666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-107.8333333333333],PARAMETER["Scale_Factor",0.9999166666666667],PARAMETER["Latitude_Of_Origin",31],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102714"]] +102715,PROJCS["NAD_1983_StatePlane_New_York_East_FIPS_3101_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492124.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102715"]] +102716,PROJCS["NAD_1983_StatePlane_New_York_Central_FIPS_3102_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",820208.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-76.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102716"]] +102717,PROJCS["NAD_1983_StatePlane_New_York_West_FIPS_3103_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1148291.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-78.58333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102717"]] +102718,PROJCS["NAD_1983_StatePlane_New_York_Long_Island_FIPS_3104_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-74],PARAMETER["Standard_Parallel_1",40.66666666666666],PARAMETER["Standard_Parallel_2",41.03333333333333],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102718"]] +102719,PROJCS["NAD_1983_StatePlane_North_Carolina_FIPS_3200_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2000000.002616666],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79],PARAMETER["Standard_Parallel_1",34.33333333333334],PARAMETER["Standard_Parallel_2",36.16666666666666],PARAMETER["Latitude_Of_Origin",33.75],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102719"]] +102720,PROJCS["NAD_1983_StatePlane_North_Dakota_North_FIPS_3301_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",47.43333333333333],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102720"]] +102721,PROJCS["NAD_1983_StatePlane_North_Dakota_South_FIPS_3302_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.5],PARAMETER["Standard_Parallel_1",46.18333333333333],PARAMETER["Standard_Parallel_2",47.48333333333333],PARAMETER["Latitude_Of_Origin",45.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102721"]] +102722,PROJCS["NAD_1983_StatePlane_Ohio_North_FIPS_3401_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",40.43333333333333],PARAMETER["Standard_Parallel_2",41.7],PARAMETER["Latitude_Of_Origin",39.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102722"]] +102723,PROJCS["NAD_1983_StatePlane_Ohio_South_FIPS_3402_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-82.5],PARAMETER["Standard_Parallel_1",38.73333333333333],PARAMETER["Standard_Parallel_2",40.03333333333333],PARAMETER["Latitude_Of_Origin",38],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102723"]] +102724,PROJCS["NAD_1983_StatePlane_Oklahoma_North_FIPS_3501_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",35.56666666666667],PARAMETER["Standard_Parallel_2",36.76666666666667],PARAMETER["Latitude_Of_Origin",35],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102724"]] +102725,PROJCS["NAD_1983_StatePlane_Oklahoma_South_FIPS_3502_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-98],PARAMETER["Standard_Parallel_1",33.93333333333333],PARAMETER["Standard_Parallel_2",35.23333333333333],PARAMETER["Latitude_Of_Origin",33.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102725"]] +102726,PROJCS["NAD_1983_StatePlane_Oregon_North_FIPS_3601_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",8202083.333333332],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",44.33333333333334],PARAMETER["Standard_Parallel_2",46],PARAMETER["Latitude_Of_Origin",43.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102726"]] +102727,PROJCS["NAD_1983_StatePlane_Oregon_South_FIPS_3602_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",4921249.999999999],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",42.33333333333334],PARAMETER["Standard_Parallel_2",44],PARAMETER["Latitude_Of_Origin",41.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102727"]] +102728,PROJCS["NAD_1983_StatePlane_Pennsylvania_North_FIPS_3701_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",40.88333333333333],PARAMETER["Standard_Parallel_2",41.95],PARAMETER["Latitude_Of_Origin",40.16666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102728"]] +102729,PROJCS["NAD_1983_StatePlane_Pennsylvania_South_FIPS_3702_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-77.75],PARAMETER["Standard_Parallel_1",39.93333333333333],PARAMETER["Standard_Parallel_2",40.96666666666667],PARAMETER["Latitude_Of_Origin",39.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102729"]] +102730,PROJCS["NAD_1983_StatePlane_Rhode_Island_FIPS_3800_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",328083.3333333333],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-71.5],PARAMETER["Scale_Factor",0.99999375],PARAMETER["Latitude_Of_Origin",41.08333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102730"]] +102733,PROJCS["NAD_1983_StatePlane_South_Carolina_FIPS_3900_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1999996],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",32.5],PARAMETER["Standard_Parallel_2",34.83333333333334],PARAMETER["Latitude_Of_Origin",31.83333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102733"]] +102734,PROJCS["NAD_1983_StatePlane_South_Dakota_North_FIPS_4001_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100],PARAMETER["Standard_Parallel_1",44.41666666666666],PARAMETER["Standard_Parallel_2",45.68333333333333],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102734"]] +102735,PROJCS["NAD_1983_StatePlane_South_Dakota_South_FIPS_4002_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",42.83333333333334],PARAMETER["Standard_Parallel_2",44.4],PARAMETER["Latitude_Of_Origin",42.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102735"]] +102736,PROJCS["NAD_1983_StatePlane_Tennessee_FIPS_4100_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-86],PARAMETER["Standard_Parallel_1",35.25],PARAMETER["Standard_Parallel_2",36.41666666666666],PARAMETER["Latitude_Of_Origin",34.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102736"]] +102737,PROJCS["NAD_1983_StatePlane_Texas_North_FIPS_4201_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-101.5],PARAMETER["Standard_Parallel_1",34.65],PARAMETER["Standard_Parallel_2",36.18333333333333],PARAMETER["Latitude_Of_Origin",34],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102737"]] +102738,PROJCS["NAD_1983_StatePlane_Texas_North_Central_FIPS_4202_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",32.13333333333333],PARAMETER["Standard_Parallel_2",33.96666666666667],PARAMETER["Latitude_Of_Origin",31.66666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102738"]] +102739,PROJCS["NAD_1983_StatePlane_Texas_Central_FIPS_4203_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",2296583.333333333],PARAMETER["False_Northing",9842499.999999998],PARAMETER["Central_Meridian",-100.3333333333333],PARAMETER["Standard_Parallel_1",30.11666666666667],PARAMETER["Standard_Parallel_2",31.88333333333333],PARAMETER["Latitude_Of_Origin",29.66666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102739"]] +102740,PROJCS["NAD_1983_StatePlane_Texas_South_Central_FIPS_4204_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",13123333.33333333],PARAMETER["Central_Meridian",-99],PARAMETER["Standard_Parallel_1",28.38333333333333],PARAMETER["Standard_Parallel_2",30.28333333333334],PARAMETER["Latitude_Of_Origin",27.83333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102740"]] +102741,PROJCS["NAD_1983_StatePlane_Texas_South_FIPS_4205_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",984249.9999999999],PARAMETER["False_Northing",16404166.66666666],PARAMETER["Central_Meridian",-98.5],PARAMETER["Standard_Parallel_1",26.16666666666667],PARAMETER["Standard_Parallel_2",27.83333333333333],PARAMETER["Latitude_Of_Origin",25.66666666666667],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102741"]] +102742,PROJCS["NAD_1983_StatePlane_Utah_North_FIPS_4301_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",40.71666666666667],PARAMETER["Standard_Parallel_2",41.78333333333333],PARAMETER["Latitude_Of_Origin",40.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102742"]] +102743,PROJCS["NAD_1983_StatePlane_Utah_Central_FIPS_4302_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",39.01666666666667],PARAMETER["Standard_Parallel_2",40.65],PARAMETER["Latitude_Of_Origin",38.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102743"]] +102744,PROJCS["NAD_1983_StatePlane_Utah_South_FIPS_4303_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",9842499.999999998],PARAMETER["Central_Meridian",-111.5],PARAMETER["Standard_Parallel_1",37.21666666666667],PARAMETER["Standard_Parallel_2",38.35],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102744"]] +102745,PROJCS["NAD_1983_StatePlane_Vermont_FIPS_4400_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-72.5],PARAMETER["Scale_Factor",0.9999642857142858],PARAMETER["Latitude_Of_Origin",42.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102745"]] +102746,PROJCS["NAD_1983_StatePlane_Virginia_North_FIPS_4501_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",6561666.666666666],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",38.03333333333333],PARAMETER["Standard_Parallel_2",39.2],PARAMETER["Latitude_Of_Origin",37.66666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102746"]] +102747,PROJCS["NAD_1983_StatePlane_Virginia_South_FIPS_4502_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",11482916.66666666],PARAMETER["False_Northing",3280833.333333333],PARAMETER["Central_Meridian",-78.5],PARAMETER["Standard_Parallel_1",36.76666666666667],PARAMETER["Standard_Parallel_2",37.96666666666667],PARAMETER["Latitude_Of_Origin",36.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102747"]] +102748,PROJCS["NAD_1983_StatePlane_Washington_North_FIPS_4601_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.8333333333333],PARAMETER["Standard_Parallel_1",47.5],PARAMETER["Standard_Parallel_2",48.73333333333333],PARAMETER["Latitude_Of_Origin",47],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102748"]] +102749,PROJCS["NAD_1983_StatePlane_Washington_South_FIPS_4602_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102749"]] +102750,PROJCS["NAD_1983_StatePlane_West_Virginia_North_FIPS_4701_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-79.5],PARAMETER["Standard_Parallel_1",39],PARAMETER["Standard_Parallel_2",40.25],PARAMETER["Latitude_Of_Origin",38.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102750"]] +102751,PROJCS["NAD_1983_StatePlane_West_Virginia_South_FIPS_4702_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-81],PARAMETER["Standard_Parallel_1",37.48333333333333],PARAMETER["Standard_Parallel_2",38.88333333333333],PARAMETER["Latitude_Of_Origin",37],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102751"]] +102752,PROJCS["NAD_1983_StatePlane_Wisconsin_North_FIPS_4801_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",45.56666666666667],PARAMETER["Standard_Parallel_2",46.76666666666667],PARAMETER["Latitude_Of_Origin",45.16666666666666],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102752"]] +102753,PROJCS["NAD_1983_StatePlane_Wisconsin_Central_FIPS_4802_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",44.25],PARAMETER["Standard_Parallel_2",45.5],PARAMETER["Latitude_Of_Origin",43.83333333333334],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102753"]] +102754,PROJCS["NAD_1983_StatePlane_Wisconsin_South_FIPS_4803_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-90],PARAMETER["Standard_Parallel_1",42.73333333333333],PARAMETER["Standard_Parallel_2",44.06666666666667],PARAMETER["Latitude_Of_Origin",42],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102754"]] +102755,PROJCS["NAD_1983_StatePlane_Wyoming_East_FIPS_4901_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-105.1666666666667],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102755"]] +102756,PROJCS["NAD_1983_StatePlane_Wyoming_East_Central_FIPS_4902_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1312333.333333333],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-107.3333333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102756"]] +102757,PROJCS["NAD_1983_StatePlane_Wyoming_West_Central_FIPS_4903_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",1968500],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",-108.75],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102757"]] +102758,PROJCS["NAD_1983_StatePlane_Wyoming_West_FIPS_4904_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",2624666.666666666],PARAMETER["False_Northing",328083.3333333333],PARAMETER["Central_Meridian",-110.0833333333333],PARAMETER["Scale_Factor",0.9999375],PARAMETER["Latitude_Of_Origin",40.5],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102758"]] +102761,PROJCS["NAD_1983_StatePlane_Puerto_Rico_Virgin_Islands_FIPS_5200_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",656166.6666666665],PARAMETER["Central_Meridian",-66.43333333333334],PARAMETER["Standard_Parallel_1",18.03333333333334],PARAMETER["Standard_Parallel_2",18.43333333333333],PARAMETER["Latitude_Of_Origin",17.83333333333333],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102761"]] +102766,PROJCS["NAD_1983_StatePlane_Guam_FIPS_5400_Feet",GEOGCS["GCS_North_American_1983",DATUM["North_American_Datum_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["False_Easting",164041.6666666666],PARAMETER["False_Northing",164041.6666666666],PARAMETER["Central_Meridian",-144.7487507055556],PARAMETER["Latitude_Of_Origin",13.47246635277778],UNIT["Foot_US",0.30480060960121924],AUTHORITY["EPSG","102766"]] +103300,PROJCS["Belge_Lambert_1972",GEOGCS["GCS_Belge_1972",DATUM["Reseau_National_Belge_1972",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["False_Easting",150000.01256],PARAMETER["False_Northing",5400088.4378],PARAMETER["Central_Meridian",4.367486666666666],PARAMETER["Standard_Parallel_1",49.8333339],PARAMETER["Standard_Parallel_2",51.16666733333333],PARAMETER["Latitude_Of_Origin",90],PARAMETER["Azimuth",0.008138472222222222],UNIT["Meter",1],AUTHORITY["EPSG","103300"]] +104000,GEOGCS["GCS_Assumed_Geographic_1",DATUM["North_American_Datum_1927",SPHEROID["Clarke_1866",6378206.4,294.9786982]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104000"]] +104101,GEOGCS["GCS_Estonia_1937",DATUM["Estonia_1937",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104101"]] +104102,GEOGCS["GCS_Hermannskogel",DATUM["Hermannskogel",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104102"]] +104103,GEOGCS["GCS_Sierra_Leone_1960",DATUM["Sierra_Leone_1960",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104103"]] +104104,GEOGCS["GCS_Hong_Kong_1980",DATUM["Hong_Kong_1980",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104104"]] +104105,GEOGCS["GCS_Datum_Lisboa_Bessel",DATUM["Datum_Lisboa_Bessel",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104105"]] +104106,GEOGCS["GCS_Datum_Lisboa_Hayford",DATUM["Datum_Lisboa_Hayford",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104106"]] +104107,GEOGCS["GCS_RGF_1993",DATUM["RGF_1993",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104107"]] +104108,GEOGCS["GCS_NZGD_2000",DATUM["NZGD_2000",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104108"]] +104261,GEOGCS["GCS_Merchich_Degree",DATUM["Merchich",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104261"]] +104304,GEOGCS["GCS_Voirol_1875_Degree",DATUM["Voirol_1875",SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104304"]] +104305,GEOGCS["GCS_Voirol_Unifie_1960_Degree",DATUM["Voirol_Unifie_1960",SPHEROID["Clarke_1880_RGS",6378249.145,293.465]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295],AUTHORITY["EPSG","104305"]] + +# 102113 is defined in http://www.spatialreference.org/ref/sr-org/45/ as equivalent to EPSG:3857 +# and is used by the http://137.227.242.85/ArcGIS/services/FWS_Wetlands_WMS/mapserver/wmsserver? WMS server +102113,PROJCS["WGS_1984_Web_Mercator",GEOGCS["GCS_WGS_1984_Major_Auxiliary_Sphere",DATUM["WGS_1984_Major_Auxiliary_Sphere",SPHEROID["WGS_1984_Major_Auxiliary_Sphere",6378137.0,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_1SP"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["latitude_of_origin",0.0],UNIT["Meter",1.0],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","102113"]] Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Updater.exe.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Updater.exe.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/Updater.exe.config (revision 2866) @@ -0,0 +1,6 @@ + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/DotSpatial.Plugins.WFSClient.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.dll.config =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.dll.config (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.dll.config (revision 2866) @@ -0,0 +1,3 @@ + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/TomControls.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/geos_c.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/xerces-c_2_8.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ClickOnceUpdater/DotSpatial.Plugins.ClickOnceUpdater.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleMap/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleMap/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleMap/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Plugin which adds basic map control to the DockManager. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_FITS.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.FindFeature/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.FindFeature/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.FindFeature/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Allows a user to select polygons that match a query. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/Authorization/x86/Deltares.Authorization.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/header.dxf =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/header.dxf (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/header.dxf (revision 2866) @@ -0,0 +1,1544 @@ + 0 +SECTION + 2 +HEADER + 9 +$ACADVER + 1 +AC1018 + 9 +$ACADMAINTVER + 70 + 0 + 9 +$DWGCODEPAGE + 3 +ANSI_1252 + 9 +$INSBASE + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$EXTMIN + 10 +30.0 + 20 +49.75 + 30 +0.0 + 9 +$EXTMAX + 10 +130.5 + 20 +163.1318914119703 + 30 +0.0 + 9 +$LIMMIN + 10 +0.0 + 20 +0.0 + 9 +$LIMMAX + 10 +12.0 + 20 +9.0 + 9 +$ORTHOMODE + 70 + 0 + 9 +$REGENMODE + 70 + 1 + 9 +$FILLMODE + 70 + 1 + 9 +$QTEXTMODE + 70 + 0 + 9 +$MIRRTEXT + 70 + 1 + 9 +$LTSCALE + 40 +1.0 + 9 +$ATTMODE + 70 + 1 + 9 +$TEXTSIZE + 40 +0.2 + 9 +$TRACEWID + 40 +0.05 + 9 +$TEXTSTYLE + 7 +Standard + 9 +$CLAYER + 8 +0 + 9 +$CELTYPE + 6 +ByLayer + 9 +$CECOLOR + 62 + 256 + 9 +$CELTSCALE + 40 +1.0 + 9 +$DISPSILH + 70 + 0 + 9 +$DIMSCALE + 40 +1.0 + 9 +$DIMASZ + 40 +0.18 + 9 +$DIMEXO + 40 +0.0625 + 9 +$DIMDLI + 40 +0.38 + 9 +$DIMRND + 40 +0.0 + 9 +$DIMDLE + 40 +0.0 + 9 +$DIMEXE + 40 +0.18 + 9 +$DIMTP + 40 +0.0 + 9 +$DIMTM + 40 +0.0 + 9 +$DIMTXT + 40 +0.18 + 9 +$DIMCEN + 40 +0.09 + 9 +$DIMTSZ + 40 +0.0 + 9 +$DIMTOL + 70 + 0 + 9 +$DIMLIM + 70 + 0 + 9 +$DIMTIH + 70 + 1 + 9 +$DIMTOH + 70 + 1 + 9 +$DIMSE1 + 70 + 0 + 9 +$DIMSE2 + 70 + 0 + 9 +$DIMTAD + 70 + 0 + 9 +$DIMZIN + 70 + 0 + 9 +$DIMBLK + 1 + + 9 +$DIMASO + 70 + 1 + 9 +$DIMSHO + 70 + 1 + 9 +$DIMPOST + 1 + + 9 +$DIMAPOST + 1 + + 9 +$DIMALT + 70 + 0 + 9 +$DIMALTD + 70 + 2 + 9 +$DIMALTF + 40 +25.4 + 9 +$DIMLFAC + 40 +1.0 + 9 +$DIMTOFL + 70 + 0 + 9 +$DIMTVP + 40 +0.0 + 9 +$DIMTIX + 70 + 0 + 9 +$DIMSOXD + 70 + 0 + 9 +$DIMSAH + 70 + 0 + 9 +$DIMBLK1 + 1 + + 9 +$DIMBLK2 + 1 + + 9 +$DIMSTYLE + 2 +Standard + 9 +$DIMCLRD + 70 + 0 + 9 +$DIMCLRE + 70 + 0 + 9 +$DIMCLRT + 70 + 0 + 9 +$DIMTFAC + 40 +1.0 + 9 +$DIMGAP + 40 +0.09 + 9 +$DIMJUST + 70 + 0 + 9 +$DIMSD1 + 70 + 0 + 9 +$DIMSD2 + 70 + 0 + 9 +$DIMTOLJ + 70 + 1 + 9 +$DIMTZIN + 70 + 0 + 9 +$DIMALTZ + 70 + 0 + 9 +$DIMALTTZ + 70 + 0 + 9 +$DIMUPT + 70 + 0 + 9 +$DIMDEC + 70 + 4 + 9 +$DIMTDEC + 70 + 4 + 9 +$DIMALTU + 70 + 2 + 9 +$DIMALTTD + 70 + 2 + 9 +$DIMTXSTY + 7 +Standard + 9 +$DIMAUNIT + 70 + 0 + 9 +$DIMADEC + 70 + 0 + 9 +$DIMALTRND + 40 +0.0 + 9 +$DIMAZIN + 70 + 0 + 9 +$DIMDSEP + 70 + 46 + 9 +$DIMATFIT + 70 + 3 + 9 +$DIMFRAC + 70 + 0 + 9 +$DIMLDRBLK + 1 + + 9 +$DIMLUNIT + 70 + 2 + 9 +$DIMLWD + 70 + -2 + 9 +$DIMLWE + 70 + -2 + 9 +$DIMTMOVE + 70 + 0 + 9 +$LUNITS + 70 + 2 + 9 +$LUPREC + 70 + 4 + 9 +$SKETCHINC + 40 +0.1 + 9 +$FILLETRAD + 40 +0.5 + 9 +$AUNITS + 70 + 0 + 9 +$AUPREC + 70 + 0 + 9 +$MENU + 1 +. + 9 +$ELEVATION + 40 +0.0 + 9 +$PELEVATION + 40 +0.0 + 9 +$THICKNESS + 40 +0.0 + 9 +$LIMCHECK + 70 + 0 + 9 +$CHAMFERA + 40 +0.5 + 9 +$CHAMFERB + 40 +0.5 + 9 +$CHAMFERC + 40 +1.0 + 9 +$CHAMFERD + 40 +0.0 + 9 +$SKPOLY + 70 + 0 + 9 +$TDCREATE + 40 +2455343.56230316 + 9 +$TDUCREATE + 40 +2455343.728969826 + 9 +$TDUPDATE + 40 +2455343.562303171 + 9 +$TDUUPDATE + 40 +2455343.728969838 + 9 +$TDINDWG + 40 +0.0000000116 + 9 +$TDUSRTIMER + 40 +0.0000000116 + 9 +$USRTIMER + 70 + 1 + 9 +$ANGBASE + 50 +0.0 + 9 +$ANGDIR + 70 + 0 + 9 +$PDMODE + 70 + 0 + 9 +$PDSIZE + 40 +0.0 + 9 +$PLINEWID + 40 +0.0 + 9 +$SPLFRAME + 70 + 0 + 9 +$SPLINETYPE + 70 + 6 + 9 +$SPLINESEGS + 70 + 8 + 9 +$HANDSEED + 5 +44 + 9 +$SURFTAB1 + 70 + 6 + 9 +$SURFTAB2 + 70 + 6 + 9 +$SURFTYPE + 70 + 6 + 9 +$SURFU + 70 + 6 + 9 +$SURFV + 70 + 6 + 9 +$UCSBASE + 2 + + 9 +$UCSNAME + 2 + + 9 +$UCSORG + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSXDIR + 10 +1.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSYDIR + 10 +0.0 + 20 +1.0 + 30 +0.0 + 9 +$UCSORTHOREF + 2 + + 9 +$UCSORTHOVIEW + 70 + 0 + 9 +$UCSORGTOP + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSORGBOTTOM + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSORGLEFT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSORGRIGHT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSORGFRONT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$UCSORGBACK + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSBASE + 2 + + 9 +$PUCSNAME + 2 + + 9 +$PUCSORG + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSXDIR + 10 +1.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSYDIR + 10 +0.0 + 20 +1.0 + 30 +0.0 + 9 +$PUCSORTHOREF + 2 + + 9 +$PUCSORTHOVIEW + 70 + 0 + 9 +$PUCSORGTOP + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSORGBOTTOM + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSORGLEFT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSORGRIGHT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSORGFRONT + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PUCSORGBACK + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$USERI1 + 70 + 0 + 9 +$USERI2 + 70 + 0 + 9 +$USERI3 + 70 + 0 + 9 +$USERI4 + 70 + 0 + 9 +$USERI5 + 70 + 0 + 9 +$USERR1 + 40 +0.0 + 9 +$USERR2 + 40 +0.0 + 9 +$USERR3 + 40 +0.0 + 9 +$USERR4 + 40 +0.0 + 9 +$USERR5 + 40 +0.0 + 9 +$WORLDVIEW + 70 + 1 + 9 +$SHADEDGE + 70 + 3 + 9 +$SHADEDIF + 70 + 70 + 9 +$TILEMODE + 70 + 1 + 9 +$MAXACTVP + 70 + 64 + 9 +$PINSBASE + 10 +0.0 + 20 +0.0 + 30 +0.0 + 9 +$PLIMCHECK + 70 + 0 + 9 +$PEXTMIN + 10 +1.000000000000000E+20 + 20 +1.000000000000000E+20 + 30 +1.000000000000000E+20 + 9 +$PEXTMAX + 10 +-1.000000000000000E+20 + 20 +-1.000000000000000E+20 + 30 +-1.000000000000000E+20 + 9 +$PLIMMIN + 10 +0.0 + 20 +0.0 + 9 +$PLIMMAX + 10 +12.0 + 20 +9.0 + 9 +$UNITMODE + 70 + 0 + 9 +$VISRETAIN + 70 + 1 + 9 +$PLINEGEN + 70 + 0 + 9 +$PSLTSCALE + 70 + 1 + 9 +$TREEDEPTH + 70 + 3020 + 9 +$CMLSTYLE + 2 +Standard + 9 +$CMLJUST + 70 + 0 + 9 +$CMLSCALE + 40 +1.0 + 9 +$PROXYGRAPHICS + 70 + 1 + 9 +$MEASUREMENT + 70 + 0 + 9 +$CELWEIGHT +370 + -1 + 9 +$ENDCAPS +280 + 0 + 9 +$JOINSTYLE +280 + 0 + 9 +$LWDISPLAY +290 + 0 + 9 +$INSUNITS + 70 + 1 + 9 +$HYPERLINKBASE + 1 + + 9 +$STYLESHEET + 1 + + 9 +$XEDIT +290 + 1 + 9 +$CEPSNTYPE +380 + 0 + 9 +$PSTYLEMODE +290 + 1 + 9 +$FINGERPRINTGUID + 2 +{E7F7769E-AACA-40AB-9EF3-61BBAFBCBA26} + 9 +$VERSIONGUID + 2 +{FAEB1C32-E019-11D5-929B-00C0DF256EC4} + 9 +$EXTNAMES +290 + 1 + 9 +$PSVPSCALE + 40 +0.0 + 9 +$OLESTARTUP +290 + 0 + 9 +$SORTENTS +280 + 127 + 9 +$INDEXCTL +280 + 0 + 9 +$HIDETEXT +280 + 1 + 9 +$XCLIPFRAME +290 + 0 + 9 +$HALOGAP +280 + 0 + 9 +$OBSCOLOR + 70 + 257 + 9 +$OBSLTYPE +280 + 0 + 9 +$INTERSECTIONDISPLAY +280 + 0 + 9 +$INTERSECTIONCOLOR + 70 + 257 + 9 +$DIMASSOC +280 + 2 + 9 +$PROJECTNAME + 1 + + 0 +ENDSEC + 0 +SECTION + 2 +CLASSES + 0 +CLASS + 1 +ACDBDICTIONARYWDFLT + 2 +AcDbDictionaryWithDefault + 3 +ObjectDBX Classes + 90 + 0 + 91 + 4 +280 + 0 +281 + 0 + 0 +CLASS + 1 +VISUALSTYLE + 2 +AcDbVisualStyle + 3 +ObjectDBX Classes + 90 + 4095 + 91 + 4 +280 + 0 +281 + 0 + 0 +ENDSEC + 0 +SECTION + 2 +TABLES + 0 +TABLE + 2 +VPORT + 5 +8 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +VPORT + 5 +29 +330 +8 +100 +AcDbSymbolTableRecord +100 +AcDbViewportTableRecord + 2 +*Active + 70 + 0 + 10 +0.0 + 20 +0.0 + 11 +1.0 + 21 +1.0 + 12 +80.25 + 22 +106.4409457059851 + 13 +0.0 + 23 +0.0 + 14 +0.5 + 24 +0.5 + 15 +0.5 + 25 +0.5 + 16 +0.0 + 26 +0.0 + 36 +1.0 + 17 +0.0 + 27 +0.0 + 37 +0.0 + 40 +113.3818914119703 + 41 +0.8863849310366128 + 42 +50.0 + 43 +0.0 + 44 +0.0 + 50 +0.0 + 51 +0.0 + 71 + 0 + 72 + 1000 + 73 + 1 + 74 + 3 + 75 + 0 + 76 + 0 + 77 + 0 + 78 + 0 +281 + 0 + 65 + 1 +110 +0.0 +120 +0.0 +130 +0.0 +111 +1.0 +121 +0.0 +131 +0.0 +112 +0.0 +122 +1.0 +132 +0.0 + 79 + 0 +146 +0.0 + 0 +ENDTAB + 0 +TABLE + 2 +LTYPE + 5 +5 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +LTYPE + 5 +14 +330 +5 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +ByBlock + 70 + 0 + 3 + + 72 + 65 + 73 + 0 + 40 +0.0 + 0 +LTYPE + 5 +15 +330 +5 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +ByLayer + 70 + 0 + 3 + + 72 + 65 + 73 + 0 + 40 +0.0 + 0 +LTYPE + 5 +16 +330 +5 +100 +AcDbSymbolTableRecord +100 +AcDbLinetypeTableRecord + 2 +Continuous + 70 + 0 + 3 +Solid line + 72 + 65 + 73 + 0 + 40 +0.0 + 0 +ENDTAB + 0 +TABLE + 2 +LAYER + 5 +2 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +LAYER + 5 +10 +330 +2 +100 +AcDbSymbolTableRecord +100 +AcDbLayerTableRecord + 2 +0 + 70 + 0 + 62 + 7 + 6 +Continuous +370 + -3 +390 +F + 0 +ENDTAB + 0 +TABLE + 2 +STYLE + 5 +3 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +STYLE + 5 +11 +330 +3 +100 +AcDbSymbolTableRecord +100 +AcDbTextStyleTableRecord + 2 +Standard + 70 + 0 + 40 +0.0 + 41 +1.0 + 50 +0.0 + 71 + 0 + 42 +0.2 + 3 +txt + 4 + + 0 +ENDTAB + 0 +TABLE + 2 +VIEW + 5 +6 +330 +0 +100 +AcDbSymbolTable + 70 + 0 + 0 +ENDTAB + 0 +TABLE + 2 +UCS + 5 +7 +330 +0 +100 +AcDbSymbolTable + 70 + 0 + 0 +ENDTAB + 0 +TABLE + 2 +APPID + 5 +9 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +APPID + 5 +12 +330 +9 +100 +AcDbSymbolTableRecord +100 +AcDbRegAppTableRecord + 2 +ACAD + 70 + 0 + 0 +ENDTAB + 0 +TABLE + 2 +DIMSTYLE + 5 +A +330 +0 +100 +AcDbSymbolTable + 70 + 1 +100 +AcDbDimStyleTable + 0 +DIMSTYLE +105 +27 +330 +A +100 +AcDbSymbolTableRecord +100 +AcDbDimStyleTableRecord + 2 +Standard + 70 + 0 +340 +11 + 0 +ENDTAB + 0 +TABLE + 2 +BLOCK_RECORD + 5 +1 +330 +0 +100 +AcDbSymbolTable + 70 + 1 + 0 +BLOCK_RECORD + 5 +1F +330 +1 +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Model_Space +340 +22 + 0 +BLOCK_RECORD + 5 +1B +330 +1 +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Paper_Space +340 +1E + 0 +BLOCK_RECORD + 5 +23 +330 +1 +100 +AcDbSymbolTableRecord +100 +AcDbBlockTableRecord + 2 +*Paper_Space0 +340 +26 + 0 +ENDTAB + 0 +ENDSEC + 0 +SECTION + 2 +BLOCKS + 0 +BLOCK + 5 +20 +330 +1F +100 +AcDbEntity + 8 +0 +100 +AcDbBlockBegin + 2 +*Model_Space + 70 + 0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Model_Space + 1 + + 0 +ENDBLK + 5 +21 +330 +1F +100 +AcDbEntity + 8 +0 +100 +AcDbBlockEnd + 0 +BLOCK + 5 +1C +330 +1B +100 +AcDbEntity + 67 + 1 + 8 +0 +100 +AcDbBlockBegin + 2 +*Paper_Space + 70 + 0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Paper_Space + 1 + + 0 +ENDBLK + 5 +1D +330 +1B +100 +AcDbEntity + 67 + 1 + 8 +0 +100 +AcDbBlockEnd + 0 +BLOCK + 5 +24 +330 +23 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockBegin + 2 +*Paper_Space0 + 70 + 0 + 10 +0.0 + 20 +0.0 + 30 +0.0 + 3 +*Paper_Space0 + 1 + + 0 +ENDBLK + 5 +25 +330 +23 +100 +AcDbEntity + 8 +0 +100 +AcDbBlockEnd + 0 +ENDSEC + 0 +SECTION + 2 +ENTITIES Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoGS.svg =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoGS.svg (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/GDALLogoGS.svg (revision 2866) @@ -0,0 +1,128 @@ + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleLegend/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleLegend/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleLegend/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Plugin which adds basic legend control to the DockManager. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.Forms.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal_csharp.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/libexpat.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gdal_datum.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gdal_datum.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/gdal_datum.csv (revision 2866) @@ -0,0 +1,623 @@ +"DATUM_CODE","DATUM_NAME","DATUM_TYPE","ORIGIN_DESCRIPTION","REALIZATION_EPOCH","ELLIPSOID_CODE","PRIME_MERIDIAN_CODE","AREA_OF_USE_CODE","DATUM_SCOPE","REMARKS","INFORMATION_SOURCE","DATA_SOURCE","REVISION_DATE","CHANGE_ID","DEPRECATED","ESRI_DATUM_NAME" +1024,Hungarian Datum 1909,geodetic,"Fundamental point not given in information source, but presumably Szolohegy which is origin of later HD72.",1909,7004,8901,1119,Topographic mapping.,"Replaced earlier HD1863 adjustment also on Bessel ellipsoid. Both HD1863 and HD1909 were originally on Ferro Prime Meridian but subsequently converted to Greenwich. Replaced by HD72 (datum code 6237).","Timár, Molnár and Márta in Geodezia es Kartografia 55(3) pp16-21. www.fomi.hu/internet/magyar/szaklap/geodkart.htm",OGP,"2008/08/02",,0, +1025,Taiwan Datum 1967,geodetic,"Fundamental point: Hu Tzu Shan. Latitude: 23°58'32.34""N, longitude: 120°58'25.975""E (of Greenwich).",1967,7050,8901,3315,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Adopted in 1980. TWD67 uses the GRS 1967 ellipsoid but with 1/f to exactly 2 decimal places.","National Land Surveying and Mapping Center (NLSC), http://www.nlsc.gov.tw",OGP,"2008/08/11",,0, +1026,Taiwan Datum 1997,geodetic,ITRF94 at epoch 1997.0,1997,7019,8901,1228,"Geodetic survey, GIS, topographic mapping, engineering survey.",Adopted in 1998.,"National Land Surveying and Mapping Center (NLSC), http://www.nlsc.gov.tw",OGP,"2008/08/11",,0, +1027,EGM2008 geoid,vertical,WGS 84 ellipsoid.,2008,,,1262,Geodesy.,,"http://earth-info.nga.mil/GandG/wgs84/gravitymod/egm2008/egm08_wgs84.html",OGP,"2009/01/30",2008.097,0, +1028,Fao 1979,vertical,"Average sea level at Fao during two-year period in mid/late 1970s.",1979,,,3625,"Topographic mapping, geodetic survey.","Levelling network established by Polservice consortium. Replaces Fao (datum code 5149) in Iraq.","Survey Division, Ministry of Water Resources (MoWR).",OGP,"2010/03/01",2009.003 2010.014,0, +1029,Iraqi Geospatial Reference System,geodetic,ITRF2000 at epoch 1997.0,2000,7019,8901,1124,Geodetic survey.,,"Survey Division, Ministry of Water Resources (MoWR).",OGP,"2009/02/03",2009.003,0, +1030,N2000,vertical,"Height at Metsaahovi (latitude 60.21762°N, longitude 24.39517°E) of 54.4233m related to EVRF2000 origin through Baltic Levelling Ring adjustment at epoch 2000.0.",2000,,,3333,"Topographic mapping, geodetic survey.","Realised through the third precise levelling network. Uses normal heights. Replaces N60 (datum code 5116). To account for isostatic land uplift use NKG2005 model.","National Land Survey of Finland; +http://www.maanmittauslaitos.fi",OGP,"2009/02/21",2008.112,0, +1031,MGI 1901,geodetic,"Fundamental point: Hermannskogel. Latitude: 48°16'15.29""N, longitude: 16°17'55.04""E (of Greenwich).",1901,7004,8901,2370,Geodetic survey.,"The longitude of the datum origin equates to the Albrecht 1902 value for the Ferro meridian of 17°39'46.02"" west of Greenwich. Densified in 1948.","The Ferro prime meridian, Gabor Timar (2007), Geodezia es Kartografia vol 59 issue 12 pages 3-7.",OGP,"2009/05/10",2009.015,0, +1032,MOLDREF99,geodetic,Densification of ETRS89.,1999,7019,8901,1162,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"State Agency for Land Relations & Cadastre.",OGP,"2009/05/11",2009.026,0,"D_MOLDREF99" +1033,Reseau Geodesique de la RDC 2005,geodetic,ITRF2000 at epoch 2005.4.,2005,7019,8901,3613,Geodetic survey.,,"""Revision du Tiers Meridional du Reseau Geodesique de la RDC"", COPIREP Reclus project report, 2005.",OGP,"2009/04/16",2009.011,0, +1034,Serbian Reference Network 1998,geodetic,"Densification of ETRS89 in Serbia at epoch 1998.7 based on coordinates of 6 stations in Serbia of Yugoslav Reference Frame (YUREF) 1998 campaign.",1998,7019,8901,3534,Geodesy.,Observed 1998-2003.,"Delcev et al, FIG Working Week May 2009; http://www.gig.net/pub",OGP,"2009/05/11",2009.015,0, +1035,Red Geodesica de Canarias 1995,geodetic,ITRF93 at epoch 1994.9 at VLBI station Maspalomas on Grand Canary.,1995,7019,8901,3199,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Pico de las Nieves 1984 (PN84).","IGN Madrid. http://www.fomento.es.",OGP,"2009/05/15",2009.033,0, +1036,Reseau Geodesique de Mayotte 2004,geodetic,ITRF2000 at epoch 2004.0,2004,7019,8901,1159,"Geodetic survey, topographic mapping, engineering survey.","Replaces Combani 1950 (datum code 6632) except for cadastral purposes. (Cadastre 1997 (datum code 1037) used for cadastral purposes).",IGN Paris.,OGP,"2009/10/02",2009.072,0, +1037,Cadastre 1997,geodetic,Coordinates of 1 station of Combani 1950 adjustment held fixed.,1997,7022,8901,3340,Cadastral survey.,Derived by adjustment of GPS-observed network which was constrained to Combani 1950 coordinates of one station.,CERTU.,OGP,"2009/10/02",2009.072,0, +1038,Reseau Geodesique de Saint Pierre et Miquelon 2006,geodetic,ITRF2000 at epoch 2006.0,2006,7019,8901,1220,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Saint Pierre et Miquelon 1950 (datum code 6638).",IGN Paris.,OGP,"2009/10/02",2009.072,0, +1039,New Zealand Vertical Datum 2009,vertical,New Zealand Quasigeoid 2009 which is defined by the application of the NZ geoid 2009 grid to NZGD2000 ellipsoidal heights. See transformation code 4459.,2009,,,3285,"Geodetic survey, topographic mapping, engineering survey.",,"Land Information New Zealand (LINZ) standard S25004.",OGP,"2011/01/25",2009.081 2011.004,0, +1040,Dunedin-Bluff 1960,vertical,Common adjustment of Dunedin 1958 and Bluff 1955 networks.,1960,,,3806,"Geodetic survey, topographic mapping, engineering survey.",,"Land Information New Zealand (LINZ) standard S25004.",OGP,"2011/01/25",2009.081 2011.005,0, +1041,Autonomous Regions of Portugal 2008,geodetic,"ITRF93 as derived from the 1994 TransAtlantic Network for Geodynamics and Oceanography (TANGO) project.",1994,7019,8901,3670,Geodetic survey.,Replaces older classical datums for Azores and Madeira archipelagos.,"Instituto Geografico Portugues; http://www.igeo.pt",OGP,"2010/03/30",2010.006,0, +1042,Mexican Datum of 1993,geodetic,ITRF1992 at epoch 1988.00.,1993,7019,8901,1160,Geodetic survey.,"Realised by a frame of 15 active GPS stations observed and adjusted in the ITRF1992. Includes ties to tide gauges. Replaces NAD27 (code 6267).","National Densifications per http://www.sirgas.org. See also www.fig.net/pub/cairo/papers/ts_13/ts13_03_hansen.pdf.",OGP,"2010/11/02",2009.087 2010.090,0, +1043,China 2000,geodetic,ITRF97 at epoch 2000.0,2000,1024,8901,3228,"Geodetic survey, topographic and engineering survey.",Combined adjustment of astro-geodetic observations as used for Xian 1980 and GPS control network observed 2000-2003. Adopted July 2008.,Chinese Academy of Surveying and Mapping.,OGP,"2009/11/12",2009.084,0, +1044,Sao Tome,geodetic,"Fundamental point: Fortaleza. Latitude: 0°20'49.02""N, longitude: 6°44'41.85""E (of Greenwich).",,7022,8901,3645,"Topographic mapping, geodetic survey.",,"US Department of State Bureau of Intelligence and Research ""Limits in the Sea"" series #98.",OGP,"2009/11/24",2009.098,0, +1045,New Beijing,geodetic,Derived by conformal transformation of Xian 1980 adjustment onto Krassowsky ellipsoid.,1982,7024,8901,3228,Topographic mapping.,From 1982 replaces Beijing 1954.,"Chinese Science Bulletin, 2009, 54:2714-2721.",OGP,"2010/03/01",2009.092 2010.014,0, +1046,Principe,geodetic,"Fundamental point: Morro do Papagaio. Latitude: 1°36'46.87""N, longitude: 7°23'39.65""E (of Greenwich).",,7022,8901,3646,"Topographic mapping, geodetic survey.",,"US Department of State Bureau of Intelligence and Research ""Limits in the Sea"" series #98.",OGP,"2009/11/24",2009.098,0, +1047,Reseau de Reference des Antilles Francaises 1991,geodetic,WGS 84 coordinates of a single station determined during the 1988 Tango mission.,1991,7019,8901,2824,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Fort Marigot and Sainte Anne (datum codes 6621-22) in Guadeloupe and Fort Desaix (datum code 6625) in Martinique. Replaced by Reseau Geodesique des Antilles Francaises 2009 (datum code 1073).",IGN Paris.,OGP,"2011/05/09",2009.073 2011.030,0, +1048,Tokyo 1892,geodetic,"Fundamental point: Nikon-Keido-Genten. Latitude: 35°39'17.5148""N, longitude: 139°44'30.0970""E (of Greenwich). Longitude derived in 1892.",1892,7004,8901,1364,"Cadastre, topographic mapping, engineering survey.","Extended from Japan to Korea in 1898. In Japan replaced by Tokyo 1918 (datum code 6301). In South Korea replaced by Tokyo 1918 (code 6301) only for geodetic purposes; for all other purposes replaced by Korean 1985 (code 6162).",Korean Association of Surveying and Mapping.,OGP,"2010/06/30",2010.050,0, +1049,Incheon,vertical,MSL 1913-1916 at Incheon Bay.,1963,,,3739,"Topographic mapping, geodetic survey.",,"National Geographic Information Institute (NGII).",OGP,"2010/06/30",2010.050,0, +1050,Trieste,vertical,"Reference point HM1(BV1)-Trieste defined relative to mean sea level at Trieste in 1875.",1875,,,2370,"Geodetic survey, topographic mapping, engineering survey.","Normal-orthometric heights. In Croatia replaced by HVRS71 (datum code 5207).","Eurogeographics, http://www.crs-geo.eu",OGP,"2010/07/12",2010.064,0, +1051,Genoa,vertical,,1942,,,3736,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Eurogeographics, http://www.crs-geo.eu",OGP,"2010/07/12",2010.064,0, +1052,"System Jednotne Trigonometricke Site Katastralni/05",geodetic,Constrained to S-JTSK but realised through readjustment in projected CRS domain. Related to ETRS89 R05 realisation through transformation code 5226.,2009,7004,8901,1079,"Geodetic survey, cadastre, topographic mapping, engineering survey.","S-JTSK = System of the Unified Trigonometrical Cadastral Network.","Land Survey Office (ZU), Prague. www.cuzk.cz/zu",OGP,"2010/10/29",2010.071,0, +1053,Sri Lanka Datum 1999,geodetic,"Fundamental point: ISM Diyatalawa. Latitude: 6°49'02.687""N, longitude: 80°57'40.880""E.",1999,7015,8901,3310,Topographic mapping.,Introduced in 2000.,"Abeyratne, Featherstone and Tantrigoda in Survey Review vol. 42 no. 317 (July 2010).",OGP,"2010/08/07",2010.080,0, +1054,Sri Lanka Vertical Datum,vertical,MSL at Colombo 1884-1889.,1932,,,3310,"Geodetic survey, topographic mapping, engineering survey.","Normal-orthometric heights, but often referred to as ""orthometric"".","Abeyratne, Featherstone and Tantrigoda in Survey Review vol. 42 no. 317 (July 2010).",OGP,"2010/08/07",2010.080,0, +1055,"System Jednotne Trigonometricke Site Katastralni/05 (Ferro)",geodetic,Constrained to S-JTSK but realised through readjustment in projected CRS domain.,2009,7004,8909,1079,"Geodetic survey, cadastre, topographic mapping, engineering survey.","S-JTSK = System of the Unified Trigonometrical Cadastral Network.","Land Survey Office (ZU), Prague. www.cuzk.cz/zu",OGP,"2010/10/29",2010.071,0, +1056,Geocentric Datum Brunei Darussalam 2009,geodetic,ITRF2005 at epoch 2009.45,2009,7019,8901,1055,Geodetic survey.,Replaces use of Timbalai from July 2009.,"Survey Department, Brunei.",OGP,"2010/09/22",2010.057,0, +1057,Turkish National Reference Frame,geodetic,ITRF96 at epoch 2005.0,2005,7019,8901,1237,Geodetic survey.,,"General Command of Mapping via EuroGeographics; http://www.crs-geo.eu/",OGP,"2010/09/06",2010.085,0, +1058,Bhutan National Geodetic Datum,geodetic,ITRF2000 at epoch 2003.87,2000,7019,8901,1048,Geodetic survey.,,"Department of Survey and Land Records (DSLR), National Land Commission of Bhutan (NLC) via Lantmäteriet Sweden.",OGP,"2010/09/06",2010.086,0, +1059,Faroe Islands Vertical Reference 2009,vertical,,2009,,,3248,Topographic mapping and engineering survey,Mean Tidal Height System.,"Kort & Matrikelstyrelsen (KMS), Copenhagen.",OGP,"2010/10/27",2010.092,0, +1060,Islands Net 2004,geodetic,ITRF2000 at epoch 2004.6.,2004,7019,8901,1120,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces ISN93 (datum code 6659).","Landmaelingar Islands (National Land Survey of Iceland). http://www.lmi.is",OGP,"2010/11/12",2010.101,0, +1061,International Terrestrial Reference Frame 2008,geodetic,Origin at geocentre. The ITRF2008 origin is defined in such a way that there are null translation parameters at epoch 2005.0 and null translation rates between the ITRF2008 and the ILRS SLR time series.,2008,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 2008.0. Replaces ITRF2005 (code 6896).","IGN Paris http://itrf.ensg.ign.fr/itrs_itrf.php",OGP,"2011/01/13",2011.002,0, +1062,Posiciones Geodesicas Argentinas 2007,geodetic,"A geodetic network of 211 high accuracy surveyed points (178 passive and 33 continuous operating) based on ITRF2005, Epoch 2006.6, that define the National Geodetic System (Sistema Geodésico Nacional) effective 15 May 2009.",2009,7019,8901,1033,"Topographic mapping, geodetic survey.","POSGAR 07 has been adopted by order of the Director of the National Geographic Institute on May 15, 2009, as the new National Geodetic Reference Frame and replaces the pre-existing POSGAR 94.","Instituto Geográfico Militar de la República Argentina, http://www.ign.gob.ar/proyectos/posgar2007/introduccion",OGP,"2011/03/24",2009.028,0, +1063,Marco Geodesico Nacional,geodetic,"ITRF94 at epoch 1995.4. Densification of SIRGAS95 network in Bolivia, consisting of 125 passive geodetic stations and 8 continuous recording GPS stations.",2007,7019,8901,1049,Geodetic survey.,"Densification of SIRGAS 1995 within Bolivia. Replaces PSAD56 (datum code 6248) in Bolivia.","Sistema de Referencia Geocentrico para las Americas (SIRGAS) Boletin Informativo No 12, Aug 2007 and www.sirgas.org/fileadmin/docs/Boletines/Bol12/09_Actividades_SIRGAS_en_Bolivia_Herbas.pdf by Instituto Geográfico Militar de Bolivia, June 2007.",OGP,"2011/03/20",2011.018,0, +1064,SIRGAS-Chile,geodetic,"ITRF2000 at epoch 2002.0. Densification of SIRGAS 2000 network in Chile, consisting of 650 monumented stations.",2007,7019,8901,1066,Geodetic survey.,"Densification of SIRGAS 2000 within Chile. Replaces PSAD56 (datum code 6248) in Chile, replaces HITO XVIII (datum code 6254) in Chilean Tierra del Fuego and replaces Easter Island 1967 (datum code 6719) in Easter Island.","IGM Chile Report: 31_Parra_Baez_Chilean_part_of_SIRGAS.pdf on sirgas.org website (www.sirgas.org website national networks list shows 269 passive and 13 continuous stations in this network whereas IGM Chile source document cites 650 stations).",OGP,"2011/03/20",2011.018,0, +1065,Costa Rica 2005,geodetic,"ITRF2000 at epoch 2005.8. Network of 34 GPS stations throughout the country, five of which were connected to four Caribbean area ITRF stations.",2005,7030,8901,1074,Geodetic survey.,"Replaces Ocotepeque (datum code 1070) in Costa Rica from March 2007.","Instituto Geografico Nacional Costa Rica report: El Sistema de Referencia CR05 y la Proyeccion Transversal de Mercator para Costa Rica CRTM05. (Report available through www.sirgas.org website in national networks list).",OGP,"2011/03/20",2011.018,0, +1066,Sistema Geodesico Nacional de Panama MACARIO SOLIS,geodetic,"ITRF2000 at epoch 2000.0. Densification of SIRGAS 2000 network in Panama, consisting of 20 GPS stations throughout the country.",,7019,8901,1186,Geodetic survey.,,Details taken from summary on national networks list on www.sirgas.org website.,OGP,"2011/03/20",2011.018,0, +1067,Peru96,geodetic,"ITRF94 at epoch 1995.4. Densification of SIRGAS95 network in Peru, consisting of 47 passive geodetic stations and 3 continuous recording GPS stations.",1996,7019,8901,1189,Geodetic survey.,"Densification of SIRGAS 1995 within Peru. Replaces PSAD56 (datum code 6248) in Peru.","Details taken from national realizations page of WWW.SIRGAS.ORG, confirmed by reports from IGN Peru.",OGP,"2011/03/20",2011.018,0, +1068,SIRGAS-ROU98,geodetic,"ITRF94 at epoch 1995.4. Densification of SIRGAS95 network in Uruguay, consisting of 17 passive geodetic stations and 3 continuous recording GPS stations.",1998,7030,8901,1247,Geodetic survey.,"Densification of SIRGAS 1995 within Uruguay. Replaces Yacare (datum code 6309) in Uruguay. Uruguay documentation clearly states use of WGS 84 reference ellipsoid.","Sistema de Referencia Geocentrico para las Americas: SIRGAS, Boletin Informativo No 12, Aug 2007; www.sirgas.org.national network densification summary and NuevoMarco Uruguay_param.pdf by Servicio Geográfico Militar of Uruguay, May 2004.",OGP,"2011/03/20",2011.018,0, +1069,"SIRGAS_ES2007.8",geodetic,"ITRF2005 at epoch 2007.8. Densification of SIRGAS-CON network in El Salvador, consisting of 38 monumented stations.",2007,7019,8901,1087,Geodetic survey.,SIRGAS-ES2007.8 is the national SIRGAS densification.,"Integration of the reference frame of El Salvador into SIRGAS (SIRGAS-ES2007.8) report by GG-IGCN (El Salvador) & DGFI (Germany) available from www.sirgas.org. (Information also summarised on www.sirgas.org website national networks list).",OGP,"2011/07/20",2011.018 2011.061,0, +1070,Ocotepeque 1935,geodetic,"Fundamental point: Base Norte. Latitude: 14°26'20.168""N, longitude: 89°11'33.964""W.",1935,7008,8901,3876,Topographic mapping and engineering survey.,"Replaced in Costa Rica by Costa Rica 2005 (CR05) from March 2007 and replaced in El Salvador by SIRGAS_ES2007 from August 2007.","Clifford Mugnier's PE&RS articles on Belize, Costa Rica, El Salvador, Guatemala, Honduras, Nicaragua, Panama (www.asprs.org/resources/grids/) also substantiated in IGN Costa Rica report on CR05 / CRTM05 (Report available from WWW.SIRGAS.ORG website).",OGP,"2011/03/26",2011.026,0, +1071,Sibun Gorge 1922,geodetic,"Latitude: 17º03'40.471""N, longitude: 88º37'54.687""W.",1922,7007,8901,3219,Topographic mapping and engineering survey.,,"Clifford Mugnier's March 2009 PE&RS ""Grids and Datums"" article on Belize (www.asprs.org/resources/grids/).",OGP,"2011/03/26",2011.026,0, +1072,Panama-Colon 1911,geodetic,"Fundamental point: Balboa Hill. Latitude: 09°04'57.637""N, longtitude: 79°43'50.313""W.",1911,7008,8901,3290,Topographic mapping and engineering survey.,"Reports of the existence of an Ancon datum are probably erroneous, considering that the origin of the Panamá-Colón Datum of 1911 is at Balboa Hill and the access road up the hill is from the town of Ancon, Canal Zone.","Clifford Mugnier's PE&RS July 1999 Grids and Datums article on The Republic of Panama, (www.asprs.org/resources/grids/).",OGP,"2011/03/26",2011.026,0, +1073,Reseau Geodesique des Antilles Francaises 2009,geodetic,ITRF2005 at epoch 2009.0,2009,7019,8901,2824,"Geodetic survey, cadastre, topographic mapping, engineering survey.",Replaces RRAF91 in Martinique and Guadeloupe.,IGN Paris.,OGP,"2011/03/23",2011.030,0, +1074,Corrego Alegre 1961,geodetic,"Fundamental point: Corrego Alegre. Latitude: 19°50'14.91""S, longitude: 48°57'41.98""W (of Greenwich).",1961,7022,8901,3874,"Topographic mapping, geodetic survey.","Replaced by Corrego Alegre 1970-72 (datum code 6225). NIMA gives coordinates of origin as latitude: 19°50'15.14""S, longitude: 48°57'42.75""W.",IBGE,OGP,"2011/07/10",2011.053,0, +1075,"South American Datum 1969(96)",geodetic,"Fundamental point: Chua. Geodetic latitude: 19°45'41.6527""S; geodetic longitude: 48°06'04.0639""W (of Greenwich). (Astronomic coordinates: Latitude 19°45'41.34""S +/- 0.05"", longitude 48°06'07.80""W +/- 0.08"").",1996,7050,8901,3845,Topographic mapping.,"SAD69 uses GRS 1967 ellipsoid but with 1/f to exactly 2 decimal places. Replaces original 1969 adjustment (datum code 6618) in Brazil.",IBGE.,OGP,"2011/07/10",2011.053,0, +1076,Papua New Guinea Geodetic Datum 1994,geodetic,ITRF92 at epoch 1994.0.,1994,7019,8901,1187,"Topographic mapping, geodetic, engineering and cadastral survey.",Adopted 1996. Coincident with WGS 84 in 1994 but rapidly divergent due to significant tectonic motion in PNG.,"Quickclose Geomatics and http://www.aspng.org/techinfopng94.htm",OGP,"2011/07/15",2011.059,0, +5100,Mean Sea Level,vertical,,,,,1262,Hydrography.,"msl has geographic and temporal components. Users are advised to not use this generic vertical datum but to define specific instances of msl based on knowledge of these components; for instance ""msl at xxx during 19yy"".",,OGP,"1996/04/12",,0,"D_Mean_Sea_Level" +5101,Ordnance Datum Newlyn,vertical,Mean Sea Level at Newlyn between 1915 and 1921.,,,,2792,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2004/06/16",2004.100,0,"D_Ordnance_Datum_Newlyn" +5102,National Geodetic Vertical Datum 1929,vertical,26 tide gauges in the US and Canada.,1929,,,1323,"Topographic mapping, geodetic survey.",Normal orthometric heights.,,OGP,"1996/09/12",,0, +5103,North American Vertical Datum 1988,vertical,"Father's Point, Rimouski, Quebec.",1988,,,3664,"Topographic mapping, geodetic survey.",Helmert orthometric heights.,,OGP,"2010/03/30",2005.880 2009.108,0, +5104,Yellow Sea 1956,vertical,2 years tide readings at Qingdao.,1956,,,3228,"Topographic mapping, geodetic survey.",Replaced by Yellow Sea 1985 datum.,,OGP,"2002/06/22",2002.160,0, +5105,Baltic Sea,vertical,"Datum: average water level at Kronstadt 1833. Network adjusted in 1977.",1977,,,1284,"Topographic mapping, geodetic survey.",Uses Normal heights.,,OGP,"2005/05/27",2004.100 2005.180,0, +5106,Caspian Sea,vertical,Defined as -28.0m Baltic datum,,,,1291,Hydrography.,,,OGP,"1996/09/12",,0, +5107,Nivellement general de la France,vertical,Mean sea level at Marseille,,,,1326,"Topographic mapping, geodetic survey.",The CNIG states that NGF is a general term applying to all vertical network readjustments of France and recommends more specific terminology. See codes 5118-5120.,"Conseil National de l'Information Geographique groupe de travail ""Reseaux de Nivellement"" recommendations v5.1 April 1994.",OGP,"1996/09/12",,1, +5109,Normaal Amsterdams Peil,vertical,Mean high tide at Amsterdams Peil in 1684.,,,,1275,"Topographic mapping, geodetic survey, hydrography.",Orthometric heights.,"Nederlandse Commissie voor Geodesie publication 30; 1993",OGP,"2006/01/16",2004.100 2005.880,0, +5110,Oostende,vertical,Mean low water during 1958,1958,,,1347,"Topographic mapping, geodetic survey.",,"Nederlandse Commissie voor Geodesie publication 30; 1993",OGP,"2006/01/16",2005.880,0, +5111,Australian Height Datum,vertical,MSL 1966-68 at 30 gauges around coast.,1968,,,1281,"Topographic mapping, geodetic survey.",,Australian Land Information Group www.auslig.gov.au,OGP,"2005/09/06",2005.460,0, +5112,"Australian Height Datum (Tasmania)",vertical,MSL 1972 at Hobart and Burnie.,1972,,,1282,"Topographic mapping, geodetic survey.",,,OGP,"1996/09/12",,0, +5113,Sea Level,vertical,,,,,1262,Hydrography.,An unspecified local vertical datum not recommended for use.,,OGP,"1996/09/12",,0, +5114,Canadian Geodetic Vertical Datum of 1928,vertical,Based on the mean sea level determined from several tidal gauges located in strategic areas of the country,1928,,,1289,"Topographic mapping, geodetic survey.",,"Geodetic Survey Division, Natural Resources Canada. http://maps.nrcan.gc.ca/asdb/asdb_datum.html and http://www.geod.nrcan.gc.ca/index_e/help_e/acron_e.html",OGP,"2004/11/26",2004.723,0, +5115,Piraeus Harbour 1986,vertical,MSL determined during 1986.,1986,,,3254,"Topographic mapping, geodetic survey.",,"Geodesy Department; Public Pertoleum Corporation of Greece",OGP,"1997/06/16",,0, +5116,Helsinki 1960,vertical,MSL at Helsinki during 1960.,1960,,,3333,"Topographic mapping, geodetic survey.","Uses orthometric heights. Replaced by N2000 (datum code 1030).","National Land Survey of Finland; +http://www.maanmittauslaitos.fi",OGP,"2010/05/02",2008.112,0, +5117,Rikets hojdsystem 1970,vertical,"Adjustment is referenced to mean high tide at Amsterdams Peil in 1684. To account for land level movements caused by isostatic rebound, heights are reduced to epoch 1970.0 using uplift values computed from repeated levelling observations.",1970,,,3313,"Topographic mapping, geodetic survey.",Realised through the second precise levelling network of 1951-1967. Uses Normal heights. Replaces RH00. Replaced in 2005 by RH2000.,National Land Survey of Sweden,OGP,"2008/03/14",2002.480 2004.100 2008.013,0, +5118,Nivellement General de la France - Lallemand,vertical,"Rivet number M.ac O-VIII on the Marseille tide gauge site, with the height fixed in 1897 at 1.661 metre above mean sea level between February 2nd 1885 and January 1st 1897.",,,,1326,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Conseil National de l'Information Geographique groupe de travail ""Reseaux de Nivellement"" recommendations v5.1 April 1994.",OGP,"1997/11/13",2001.470 2004.060,0, +5119,Nivellement General de la France - IGN69,vertical,"Rivet number M.ac O-VIII on the Marseille tide gauge site, with the height fixed in 1897 at 1.661 metre above mean sea level between February 2nd 1885 and January 1st 1897.",1969,,,1326,"Geodetic survey, topographic mapping, engineering survey.",Uses Normal heights.,"Conseil National de l'Information Geographique groupe de travail ""Reseaux de Nivellement"" recommendations v5.1 April 1994.",OGP,"1997/11/13",2001.470,0, +5120,IGN78 Corsica,vertical,Marker MM3 situated on the tide gauge site of Ajaccio. Height is 3.640 metre above mean sea level.,1978,,,1327,"Geodetic survey, topographic mapping, engineering survey.","Uses Normal heights. Replaces NGC (datum code 5189).","Conseil National de l'Information Geographique groupe de travail ""Reseaux de Nivellement"" recommendations v5.1 April 1994.",OGP,"2004/10/14",2001.470 2004.060 2004.564,0, +5121,Maputo,vertical,Mean sea level at Maputo.,,,,3281,Topographic mapping.,,"Direcção Nacional de Geografia e Cadastral (DINAGECA).",OGP,"1998/04/16",,0, +5122,Japanese Standard Levelling Datum 1949,vertical,24.4140 metres above mean sea level Tokyo Bay.,1949,,,3263,"Topographic mapping, geodetic survey.",,"Ministry of Construction; Japan. http://vldb.gsi.go.jp/sokuchi/datum/tokyodatum.html",OGP,"2004/05/09",2002.080 2004.380,0, +5123,PDO Height Datum 1993,vertical,,1993,,,3288,Oil industry mapping.,"Misclosure between Muscat and Salalah less than .5 meters with differences from of up to 5 meters from old Fahud Datum. The PHD93 adjustment was initially known as the Spine. Replaces Fahud Vertical Datum (code 5124) from 1993.",Petroleum Development Oman,OGP,"1999/04/22",,0, +5124,Fahud Height Datum,vertical,Single MSL determination at Mina Al Fahal.,,,,3288,Oil industry mapping.,"Based on reciprocal trigonometric heighting. Replaced by PHD93 Datum (code 5123) in 1993.",Petroleum Development Oman,OGP,"2004/04/07",2004.212,0, +5125,Ha Tien 1960,vertical,,1960,,,1302,"Topographic mapping, geodetic survey.",In Vietnam replaced by Hon Dau in 1992.,,OGP,"1999/10/20",,0, +5126,Hon Dau 1992,vertical,,1992,,,3328,"Topographic mapping, geodetic survey.",Replaces Ha Tien in Vietnam.,,OGP,"1999/10/20",,0, +5127,Landesnivellement 1902,vertical,"Origin at Repere Pierre du Niton (RPN) defined as 373.6 metres above msl. This value derived from msl at Marseille in 1897 through the French Lallemand network.",1902,,,1286,"Topographic mapping, cadastral survey.","Levelling observations not corrected for gravity field. For scientific purposes, replaced by LHHN95.","Bundesamt für Landestopographie",OGP,"2004/06/16",2004.100,0, +5128,Landeshohennetz 1995,vertical,"Origin at Repere Pierre du Niton (RPN) defined as 373.6 metres above msl. This value derived from msl at Marseille in 1897 through the French Lallemand network.",1995,,,1286,Geodetic survey and scientific studies.,"Orthometric heights. For scientific purposes only, replaces LN02.","Bundesamt für Landestopographie",OGP,"2004/06/16",2004.100,0, +5129,European Vertical Reference Frame 2000,vertical,"Height at Normaal Amsterdams Peil (NAP) is zero, defined through height at UELN bench mark 13600 (52°22'53""N 4°54'34""E) of 0.71599m. Datum at NAP is mean high tide in 1684.",2000,,,1299,Geodesy.,"Realised by geopotential numbers and Normal heights of the United European Levelling Network. Replaced by EVRF2007 (datum code 5215).","European veritical data centre at Bundesamt für Kartographie und Geodäsie (BKG), Leipzig branch. http://crs.bkg.bund.de/evrs/",OGP,"2008/06/24",2008.045 2008.101,0, +5130,Malin Head,vertical,Mean sea level between January 1960 and December 1969.,1970,,,1305,Topographic mapping,Orthometric heights.,Ordnance Survey of Ireland,OGP,"2001/11/06",,0, +5131,Belfast Lough,vertical,"Mean sea level between 1951 and 1956 at Clarendon Dock, Belfast.",1957,,,2530,"Large scale (1:1,250, 1:2,500 and 1:10,000) topographic mapping.","Orthometric heights. Malin Head (datum code 5130) used for 1:50,000 and smaller mapping.",Ordnance Survey of Northern Ireland,OGP,"2002/09/19",2002.620,0, +5132,Dansk Normal Nul,vertical,Mean Sea Level at 10 gauges.,,,,3237,Topographic mapping and engineering survey,Orthometric heights.,"Kort & Matrikelstyrelsen",OGP,"2001/11/06",,0, +5133,AIOC 1995,vertical,Average level of Caspian Sea at the Oil Rocks tide gauge June-September 1995.,1995,,,2592,Oil industry mapping.,AIOC 1995 datum is 1.7m above Caspian datum and 26.3m below Baltic datum.,BP,OGP,"2002/02/12",,0, +5134,Black Sea,vertical,,,,,3251,Nearshore hydrographic surveying and since break-up of Former Soviet Union also topographic mapping.,Black Sea datum is 0.4m below Baltic datum.,BP,OGP,"2011/07/20",2011.061,0, +5135,Hong Kong Principal Datum,vertical,"1.23m below the mean of 19 years (1965-83) observations of tide levels at North Point, Victoria Harbour.",1980,,,3334,"Geodetic survey, engineering survey, cadastre.",,"Survey and Mapping Office, Lands Department. Http://www.info.gov.hk/landsd/mapping/tindex.htm",OGP,"2002/06/22",,0, +5136,Hong Kong Chart Datum,vertical,"Approximates to Lowest Astronomic Tide level (LAT).",,,,3335,Hydrographic survey and charting.,"Chart datum is 0.15 metres below Hong Kong Principal Datum (code 5135) and 1.38m below MSL at Quarry Bay.","Survey and Mapping Office, Lands Department. Http://www.info.gov.hk/landsd/mapping/tindex.htm",OGP,"2009/06/02",2009.022,0, +5137,Yellow Sea 1985,vertical,20 years tide readings at Qingdao.,1985,,,3228,"Topographic mapping, geodetic survey.",Replaces Yellow Sea 1956 datum.,Guangdong Province Land Resource Information Centre,OGP,"2002/06/22",,0, +5138,"Ordnance Datum Newlyn (Orkney Isles)",vertical,Connected to Newlyn datum by triangulation from the British mainland.,,,,2793,"Topographic mapping, geodetic survey.",Considered as separate from Newlyn because the accuracy of the trigonometric connection across the Pentland Firth does not meet geodetic levelling specifications. Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2004/06/16",2004.100,0, +5139,Fair Isle,vertical,,,,,2794,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5140,Lerwick,vertical,,,,,2795,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5141,Foula,vertical,,,,,2796,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5142,Sule Skerry,vertical,,,,,2797,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5143,North Rona,vertical,,,,,2798,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5144,Stornoway,vertical,,,,,2799,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5145,St Kilda,vertical,,,,,2800,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5146,Flannan Isles,vertical,,,,,2801,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2006/01/16",2005.880,0, +5147,St Marys,vertical,,,,,2802,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5148,Douglas,vertical,,,,,2803,"Topographic mapping, geodetic survey.",Orthometric heights.,Ordnance Survey of Great Britain,OGP,"2002/09/19",,0, +5149,Fao,vertical,,,,,3390,"Topographic mapping, geodetic survey.","Established by Hunting Surveys for IPC. In Iran replaced by Bandar Abbas (code 5150). At time of record creation NIOC data in Ahwaz area still usually referenced to Fao. In Iraq replaced by Fao 1979 (code 1028).","National Iranian Oil Company (NIOC).",OGP,"2009/06/02",2009.003,0, +5150,Bandar Abbas,vertical,Average sea level at Bandar Abbas 1995-2001.,2001,,,3336,"Topographic mapping, geodetic survey.","Replaces Fao (datum code 5149) in Iran.",National Cartographic Centre of Iran,OGP,"2010/03/01",2010.014,0, +5151,Nivellement General de Nouvelle Caledonie,vertical,"Rivet AB01 established by SHOM (Service Hydrographique de la Marine) in 1937 on the Quai des Volontaires in Noumea. Height i: 1.885 metre above mean sea level.",1969,,,2822,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,Service Topographique de la Nouvelle Caledonie.,OGP,"2004/03/15",2004.060,0, +5152,Poolbeg,vertical,"Low water mark of the spring tide on the 8 April 1837 at Poolbeg Lighthouse, Dublin.",1837,,,1305,Topographic mapping before 1956 in Northern Ireland and 1970 in the Republic of Ireland.,"Replaced by Belfast Lough and Malin Head (datum codes 5130-31).","""The Irish Grid - A Description of the Co-ordinate Reference System"" published by Ordnance Survey of Ireland, Dublin and Ordnance Survey of Northern Ireland, Belfast.",OGP,"2003/06/27",,0, +5153,Nivellement General Guyanais 1977,vertical,"Mean sea level 1936 at Cayenne. Origin = marker BM35 on stone on St Francois battery, Cayenne, with defined elevation of 1.64m above msl. NGG1977 height 0.00m is 1.96m above sounding datum defined at Cayenne in 1936 by SHM.",1977,,,3146,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",2008.087,0, +5154,Martinique 1987,vertical,"Mean sea level 1939 at Fort de France. Origin = marker Nbc2 on rebuilt quay wall with defined elevation of 1.38m above msl. Martinique 1987 height 0.00m is 0.56m above SHOM sounding datum.",1987,,,3276,"Geodetic survey, topographic mapping, engineering survey.","Orthometric heights. Replaces Martinique 1955 (datum code 5192).",IGN Paris,OGP,"2008/09/19",2004.561 2008.087,0, +5155,Guadeloupe 1988,vertical,"Mean sea level July 1947 to June 1948 at Pointe-Fouillole (Pointe-à-Pitre harbour). Origin = marker GO-7 (formerly AO'-5) with defined height of 2.67m above msl adopted from 1951 value. Guadeloupe 1988 height 0.00m is 0.46m above 1984 sounding datum.",1988,,,2892,"Geodetic survey, topographic mapping, engineering survey.","Orthometric heights. Replaces Guadeloupe 1951 (datum code 5193).",IGN Paris,OGP,"2008/09/17",2004.561 2008.087,0, +5156,Reunion 1989,vertical,"Mean sea level during part of November 1949 at port of Saint-Pierre. Origin = marker AB-100 with defined elevation of 13.808m above msl.",1989,,,3337,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights. Replaces Reunion IGN58. Value of marker AB-100 retains height from 1958 adjustment.,IGN Paris,OGP,"2008/09/17",2004.561 2008.087,0, +5157,Auckland 1946,vertical,MSL at Auckland harbour 1909-1923.,1946,,,3764,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5158,Bluff 1955,vertical,MSL at Invercargill harbour over 8 years between 1918 and 1934.,1955,,,3801,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5159,Dunedin 1958,vertical,MSL at Dunedin harbour 1918-1937.,1958,,,3803,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5160,Gisborne 1926,vertical,MSL at Gisborne harbour 1926.,1926,,,3771,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5161,Lyttelton 1937,vertical,MSL at Lyttelton harbour over 9 years between 1918 and 1933.,1937,,,3804,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5162,Moturiki 1953,vertical,MSL at Moturiki Island February 1949 to December 1952.,1953,,,3768,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5163,Napier 1962,vertical,MSL at Napier harbour. Period of derivation unknown.,1962,,,3772,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5164,Nelson 1955,vertical,MSL at Nelson harbour 1939-1942.,1955,,,3802,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5165,One Tree Point 1964,vertical,MSL at Whangarei harbour 1960-1963.,1964,,,3762,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5166,Tararu 1952,vertical,MSL at Tararu Point 1922-1923.,1952,,,3818,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5167,Taranaki 1970,vertical,MSL at Taranaki harbour 1918-1921.,1970,,,3769,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5168,Wellington 1953,vertical,MSL at Wellington harbour 1909-1946.,1953,,,3773,"Geodetic survey, topographic mapping, engineering survey.",,"OSG Technical Report #10, February 2001.",OGP,"2011/01/25",2008.023 2011.005,0, +5169,"Waitangi (Chatham Island) 1959",vertical,MSL at Waitangi harbour collected in 1959.,1959,,,3894,"Geodetic survey, topographic mapping, engineering survey.",,"Interim Report GEO/T1/19/51 for LINZ by John Hannah, ""An Assessment of New Zealand's Height Systems and Options for a Future Height System"", January 2001.",OGP,"2011/06/20",2008.023 2011.048,0, +5170,Stewart Island 1977,vertical,MSL at 3-5 high and low tides at two different locations.,1977,,,3338,"Geodetic survey, topographic mapping, engineering survey.",,"Interim Report GEO/T1/19/51 for LINZ by John Hannah, ""An Assessment of New Zealand's Height Systems and Options for a Future Height System"", January 2001.",OGP,"2008/04/04",2008.023,0, +5171,EGM96 geoid,vertical,WGS 84 ellipsoid.,1996,,,1262,Geodesy.,,"NASA http://cddis.gsfc.nasa.gov/926/egm96/egm96.html",OGP,"2004/04/27",,0, +5172,Nivellement General du Luxembourg,vertical,"Reference point Wemperhardt defined as 528.030m above Normaal Amsterdams Peil (NAP). Datum at NAP is mean high tide in 1684. Network adjusted in 1995.",1995,,,1146,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Administration du Cadastre et de la Topographie. http://www.etat.lu/ACT",OGP,"2004/03/09",,0, +5173,Antalya,vertical,Mean sea Level at Antalya 1936-71.,,,,3322,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/11/26",2004.722,0, +5174,Norway Normal Nul 1954,vertical,MSL defined by regression at 7 gauges with between 17 and 67 years observations.,1974,,,1352,"Geodetic survey, topographic mapping, engineering survey.",Includes initial NN1954 system and NNN1957 system. Former name retained. Normal-orthometric heights.,Statoil,OGP,"2004/03/09",,0, +5175,Durres,vertical,Mean Sea Level at Durres.,,,,3212,"Geodetic survey, topographic mapping, engineering survey.",Normal-orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5176,Gebrauchshohen ADRIA,vertical,Reference point Hutbiegl defined relative to mean sea level at Trieste in 1875.,,,,1037,"Geodetic survey, topographic mapping, engineering survey.",Normal-orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5177,National Vertical Network 1999,vertical,Reference point Ruse defined relative to mean sea level at Trieste in 1875.,1999,,,3307,"Geodetic survey, topographic mapping, engineering survey.",Normal-orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5178,Cascais,vertical,Mean Sea Level at Cascais 1938.,1938,,,1294,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5179,Constanta,vertical,Mean Sea Level at Constanta.,,,,3295,"Geodetic survey, topographic mapping, engineering survey.",Normal-orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/evrs/Relations.html",OGP,"2004/03/09",,0, +5180,Alicante,vertical,Mean Sea Level at Alicante between 1870 and 1882.,,,,2366,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5181,Deutsches Haupthoehennetz 1992,vertical,"Network adjusted in 1992. Geopotential number at reference point Wallenhorst defined as value from the UELN-73/86 adjustment. Datum at Normaal Amsterdams Peil (NAP) is mean high tide in 1684.",1992,,,3339,"Geodetic survey, topographic mapping, engineering survey.",Replaces DHHN85 in West Germany and SNN76 in East Germany. Uses Normal heights.,"Bundesamt für Kartographie und Geodäsie (BKG), http://crs.bkg.bund.de/crs-eu/",OGP,"2011/08/03",2011.071,0, +5182,Deutsches Haupthoehennetz 1985,vertical,"Network adjusted in 1985. Height of reference point Wallenhorst defined as value from 1928 adjustment. Datum at Normaal Amsterdams Peil (NAP) is mean high tide in 1684.",1985,,,2326,"Geodetic survey, topographic mapping, engineering survey.",Replaced by DHHN92. Uses Normal-orthometric heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2011/08/03",2011.071,0, +5183,SNN76,vertical,Network adjusted in 1976. Height at reference point Hoppegarten defined as 1957 value from the UPLN adjustment. Datum at Kronstadt is mean sea level of Baltic in 1833.,1976,,,1343,"Geodetic survey, topographic mapping, engineering survey.",Uses Normal heights. Replaced by DHHN92.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5184,Baltic 1982,vertical,Network adjusted in 1982. Height at reference point Varna defined as 1958 value from the UPLN adjustment. Datum at Kronstadt is mean sea level of Baltic in 1833.,1982,,,3224,"Geodetic survey, topographic mapping, engineering survey.",Uses Normal heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5185,Baltic 1980,vertical,,,,,1119,"Geodetic survey, topographic mapping, engineering survey.",Uses Normal heights.,"Eurogeographics, http://crs.bkg.bund.de/crs-eu/",OGP,"2004/03/09",,0, +5186,Kuwait PWD,vertical,"Mean Low Low Water (MLLW) at Kuwait City.",,,,3267,Municipality and military purposes.,Approximately 1.03m below MSL.,Kuwait Oil Company.,OGP,"2004/06/16",,0, +5187,KOC Well Datum,vertical,,1937,,,3267,KOC exploration and field development subsurface work.,Approximately 3.22m above MSL.,Kuwait Oil Company.,OGP,"2004/06/16",,0, +5188,KOC Construction Datum,vertical,,1952,,,3267,KOC survey control and facilities engineering.,Approximately 1.52m below MSL. Created for the construction of the Mina al Ahmadi refinery.,Kuwait Oil Company.,OGP,"2004/06/16",,0, +5189,Nivellement General de la Corse 1948,vertical,Mean sea level at Ajaccio between 1912 and 1937.,1948,,,1327,"Geodetic survey, topographic mapping, engineering survey.","Replaced by IGN78 Corsica (datum 5120).",IGN Paris,OGP,"2004/10/14",,0, +5190,Danger 1950,vertical,Marker near tide gauge at port of Saint Pierre. Height is 1.26 metres above zero of tide gauge.,1950,,,3299,"Geodetic survey, topographic mapping, engineering survey.",,IGN Paris,OGP,"2004/10/14",,0, +5191,Mayotte 1950,vertical,Marker on Issoufali jetty at Dzaoudzi. Height is 2.18m above zero of tide gauge.,1950,,,3340,"Geodetic survey, topographic mapping, engineering survey.",,IGN Paris,OGP,"2004/10/14",,0, +5192,Martinique 1955,vertical,Mean sea level at Fort de France 1939. Marker DO-4-II on quay wall with elevation of 1.38m above msl.,1955,,,3276,"Geodetic survey, topographic mapping, engineering survey.","Orthometric heights. Replaced by Martinique 1987 (datum code 5154).",IGN Paris,OGP,"2008/09/17",2008.087,0, +5193,Guadeloupe 1951,vertical,"Mean sea level July 1947 to June 1948 at Pointe-Fouillole (Pointe-à-Pitre harbour). Origin = marker AO'-12 with height of 1.917m above msl.",1955,,,2892,"Geodetic survey, topographic mapping, engineering survey.","Orthometric heights. Replaced by Guadeloupe 1988 (datum code 5155). Guadeloupe 1951 height 0.00m is 0.629m above 1947-48 sounding datum.",IGN Paris,OGP,"2008/09/17",2008.087,0, +5194,Lagos 1955,vertical,"Mean sea level at Lagos, 1912-1928.",1955,,,3287,"Geodetic survey, topographic mapping, engineering survey.",,"Ebong et al, AVN International, 1991.",OGP,"2004/10/14",,0, +5195,Nivellement General de Polynesie Francaise,vertical,,,,,3134,"Geodetic survey, topographic mapping, engineering survey.",The collection of heterogeneous levelling networks throughout the Society Islands of French Polynesia.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5196,IGN 1966,vertical,"Fundamental benchmark: RN501",1966,,,3124,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5197,Moorea SAU 1981,vertical,"Fundamental benchmark: RN225",1981,,,3125,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5198,Raiatea SAU 2001,vertical,"Fundamental benchmark: RN1",2001,,,3136,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5199,Maupiti SAU 2001,vertical,"Fundamental benchmark: RN11",2001,,,3126,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5200,Huahine SAU 2001,vertical,"Fundamental benchmark: SHOM B3",2001,,,3135,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5201,Tahaa SAU 2001,vertical,"Fundamental benchmark: RN16",2001,,,3138,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5202,Bora Bora SAU 2001,vertical,"Fundamental benchmark: Vaitape quay SHOM benchmark B.",2001,,,3137,"Geodetic survey, topographic mapping, engineering survey.",Included as part of NGPF - see datum code 5195.,"Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0, +5203,EGM84 geoid,vertical,WGS 84 ellipsoid.,1984,,,1262,Geodesy.,,"US National Geospatial-Intelligence Agency (NGA); http://earth-info.nga.mil/GandG/",OGP,"2005/09/30",,0, +5204,International Great Lakes Datum 1955,vertical,"Pointe-au-Père (Father's Point), Quebec",1955,,,3468,Hydrology.,Dynamic heights. Adopted in 1962. Replaced by IGLD 1985 in January 1992.,Coordinating Committee on Great Lakes Basic Hydraulic and Hydrologic Data,OGP,"2006/11/11",,0, +5205,International Great Lakes Datum 1985,vertical,"Rimouski, Quebec.",1985,,,3468,Hydrology.,Dynamic heights. Replaces IGLD 1955 from January 1992.,Coordinating Committee on Great Lakes Basic Hydraulic and Hydrologic Data,OGP,"2006/11/11",,0, +5206,Dansk Vertikal Reference 1990,vertical,"Benchmark at Århus cathedral referenced to mean sea level determined during 1990 at 10 tide gauges: Esbjerg, Fredericia, Frederikshavn, Gedser, Hirtshals, Hornbæk, Korsør, København, Slipshavn and Århus.",,,,3237,Topographic mapping and engineering survey,Normal Orthometric heights.,"Kort & Matrikelstyrelsen",OGP,"2006/12/01",,0, +5207,Croatian Vertical Reference System 1971,vertical,"Mean sea level at five tide gauges in Dubrovnik, Split, Bakar, Rovinj and Kopar at epoch 1971.5",1971,,,3234,Geodesy.,"Replaces Trieste (datum code 1050).",State Geodetic Administration of the Republic of Croatia.,OGP,"2010/07/13",2008.043 2010.064,0, +5208,Rikets hojdsystem 2000,vertical,"Adjustment is referenced to mean high tide at Amsterdams Peil in 1684. To account for land level movements caused by isostatic rebound, heights are reduced to epoch 2000.0 using values computed from the RH 2000 LU (=NKG2005LU) uplift model.",2000,,,3313,"Topographic mapping, geodetic survey.","Realised through the third precise levelling network of 1979-2003. Adopted in 2005, replacing RH70. Uses Normal heights.",National Land Survey of Sweden,OGP,"2008/03/14",,0, +5209,Rikets hojdsystem 1900,vertical,"Adjustment is referenced to mean sea level at Slussen, Stockholm.",1900,,,3313,"Topographic mapping, engineering survey.",Realised through the first precise levelling network of 1886-1905. Replaced by RH70.,National Land Survey of Sweden,OGP,"2008/03/14",,0, +5210,IGN 1988 LS,vertical,"Mean sea level 1984 at Terre de Haut. Origin = marker O de -5 with defined height of 1.441m above msl. IGN 1988 LS height 0.00m is 0.46m above 1987 sounding datum; this approximately corresponds with msl at Pointe-à-Pitre (see datum code 5155, CRS 5757).",1988,,,2895,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",,0, +5211,IGN 1988 MG,vertical,"Mean sea level 1987 at Grand-Bourg. Origin = marker M0-I with defined height of 0.832m above msl. IGN 1988 MG height 0.00m is 0.46m above 1987 sounding datum; this approximately corresponds with msl at Pointe-à-Pitre (see datum code 5155, CRS code 5757).",1988,,,2894,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",,0, +5212,IGN 1992 LD,vertical,"Mean sea level at Pointe-à-Pitre. Origin = marker A with defined height of 0.792m above msl. IGN 1992 LD height 0.00m is 0.629m above sounding datum at Pointe-à-Pitre.",1992,,,2893,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",,0, +5213,IGN 1988 SB,vertical,"Mean sea level 1988 at port of Gustavia. Origin = marker A.ef-2 with defined height of 0.621m above msl. IGN 1988 SB height 0.00m deduced to be 0.201m above mean sea level at Pointe-à-Pitre.",1988,,,2891,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",,0, +5214,IGN 1988 SM,vertical,"Mean sea level 1949-1950 deduced at Fort Marigot. Origin = marker AS-13 with defined height of 6.990m above msl. IGN 1988 SM height 0.00m deduced to be 0.41m above sounding datum.",1988,,,2890,"Geodetic survey, topographic mapping, engineering survey.",Orthometric heights.,IGN Paris,OGP,"2008/09/17",,0, +5215,European Vertical Reference Frame 2007,vertical,"13 stations (to be completed)",2007,,,3594,Geodesy.,"Realised by geopotential numbers and Normal heights of the United European Levelling Network. Replaces EVRF2000 (datum code 5129).","European veritical data centre at Bundesamt für Kartographie und Geodäsie (BKG), Leipzig branch. http://crs.bkg.bund.de/evrs/",OGP,"2008/11/21",,0, +6001,"Not specified (based on Airy 1830 ellipsoid)",geodetic,,,7001,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Airy_1830" +6002,"Not specified (based on Airy Modified 1849 ellipsoid)",geodetic,,,7002,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Airy_Modified" +6003,"Not specified (based on Australian National Spheroid)",geodetic,,,7003,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Australian" +6004,"Not specified (based on Bessel 1841 ellipsoid)",geodetic,,,7004,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Bessel_1841" +6005,"Not specified (based on Bessel Modified ellipsoid)",geodetic,,,7005,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Bessel_Modified" +6006,"Not specified (based on Bessel Namibia ellipsoid)",geodetic,,,7046,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2001/01/21",1996.080 2000.420 2001.150,0,"D_Bessel_Namibia" +6007,"Not specified (based on Clarke 1858 ellipsoid)",geodetic,,,7007,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1858" +6008,"Not specified (based on Clarke 1866 ellipsoid)",geodetic,,,7008,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1866" +6009,"Not specified (based on Clarke 1866 Michigan ellipsoid)",geodetic,,,7009,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1866_Michigan" +6010,"Not specified (based on Clarke 1880 (Benoit) ellipsoid)",geodetic,,,7010,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880_Benoit" +6011,"Not specified (based on Clarke 1880 (IGN) ellipsoid)",geodetic,,,7011,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880_IGN" +6012,"Not specified (based on Clarke 1880 (RGS) ellipsoid)",geodetic,,,7012,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880_RGS" +6013,"Not specified (based on Clarke 1880 (Arc) ellipsoid)",geodetic,,,7013,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880_Arc" +6014,"Not specified (based on Clarke 1880 (SGA 1922) ellipsoid)",geodetic,,,7014,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880_SGA" +6015,"Not specified (based on Everest 1830 (1937 Adjustment) ellipsoid)",geodetic,,,7015,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0, +6016,"Not specified (based on Everest 1830 (1967 Definition) ellipsoid)",geodetic,,,7016,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Everest_Def_1967" +6018,"Not specified (based on Everest 1830 Modified ellipsoid)",geodetic,,,7018,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Everest_Modified" +6019,"Not specified (based on GRS 1980 ellipsoid)",geodetic,,,7019,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_GRS_1980" +6020,"Not specified (based on Helmert 1906 ellipsoid)",geodetic,,,7020,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Helmert_1906" +6021,"Not specified (based on Indonesian National Spheroid)",geodetic,,,7021,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Indonesian" +6022,"Not specified (based on International 1924 ellipsoid)",geodetic,,,7022,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_International_1924" +6024,"Not specified (based on Krassowsky 1940 ellipsoid)",geodetic,,,7024,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Krasovsky_1940" +6025,"Not specified (based on NWL 9D ellipsoid)",geodetic,,,7025,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_NWL_9D" +6027,"Not specified (based on Plessis 1817 ellipsoid)",geodetic,,,7027,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Plessis_1817" +6028,"Not specified (based on Struve 1860 ellipsoid)",geodetic,,,7028,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Struve_1860" +6029,"Not specified (based on War Office ellipsoid)",geodetic,,,7029,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_War_Office" +6030,"Not specified (based on WGS 84 ellipsoid)",geodetic,,,7030,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0, +6031,"Not specified (based on GEM 10C ellipsoid)",geodetic,,,7031,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_GEM_10C" +6032,"Not specified (based on OSU86F ellipsoid)",geodetic,,,7032,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_OSU_86F" +6033,"Not specified (based on OSU91A ellipsoid)",geodetic,,,7033,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_OSU_91A" +6034,"Not specified (based on Clarke 1880 ellipsoid)",geodetic,,,7034,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",1996.080 2000.420,0,"D_Clarke_1880" +6035,"Not specified (based on Authalic Sphere)",geodetic,,,7035,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown. Deprecated and replaced by 6047.,OGP,OGP,"2001/06/05",1996.080 2000.420,1,"D_Sphere" +6036,"Not specified (based on GRS 1967 ellipsoid)",geodetic,,,7036,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0,"D_GRS_1967" +6041,"Not specified (based on Average Terrestrial System 1977 ellipsoid)",geodetic,,,7041,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0, +6042,"Not specified (based on Everest (1830 Definition) ellipsoid)",geodetic,,,7042,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0,"D_Everest_1830" +6043,"Not specified (based on WGS 72 ellipsoid)",geodetic,,,7043,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0, +6044,"Not specified (based on Everest 1830 (1962 Definition) ellipsoid)",geodetic,,,7044,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0,"D_Everest_Def_1962" +6045,"Not specified (based on Everest 1830 (1975 Definition) ellipsoid)",geodetic,,,7045,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2000/05/03",2000.420,0,"D_Everest_Def_1975" +6047,"Not specified (based on GRS 1980 Authalic Sphere)",geodetic,,,7048,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2004/04/27",2001.190 2003.330,0, +6052,"Not specified (based on Clarke 1866 Authalic Sphere)",geodetic,,,7052,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2004/04/27",,0,"D_Sphere_Clarke_1866_Authalic" +6053,"Not specified (based on International 1924 Authalic Sphere)",geodetic,,,7057,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2006/09/22",,0, +6054,"Not specified (based on Hughes 1980 ellipsoid)",geodetic,,,7058,8901,1263,Not a valid datum.,Included for coordinate reference systems where datum is unknown.,OGP,OGP,"2006/09/22",,0, +6055,Popular Visualisation Datum,geodetic,Not specified in the classical sense of defining a geodetic datum.,,7059,8901,1262,Used by certain popular Web mapping and visualisation applications.,Not recognised by geodetic authorities.,Microsoft.,OGP,"2008/03/13",2008.114,1, +6120,Greek,geodetic,"Fundamental point: Athens Observatory. Latitude 37°58'20.132""N, longitude 23°42'58.815""E (of Greenwich)",,7004,8901,3254,Topographic mapping.,"See geodetic datum alias 6404. Used as basis of topographic mapping based on Hatt projection. Replaced by GGRS87 (code 6121).","Topography Department; National Technical University of Athens",OGP,"2011/07/20",2004.183 2008.045 2011.062,0,"D_Greek" +6121,Greek Geodetic Reference System 1987,geodetic,"Fundamental point: Dionysos. Latitude 38°04'33.8""N, longitude 23°55'51.0""E of Greenwich; geoid height 7.0 m.",1987,7019,8901,3254,Topographic mapping.,"Replaced (old) Greek datum. Oil industry work based on ED50.","L. Portokalakis; Public Petroleum Corporation of Greece",OGP,"2011/07/20",2008.045 2011.062,0,"D_GGRS_1987" +6122,Average Terrestrial System 1977,geodetic,,1977,7041,8901,1283,Topographic mapping.,"In use from 1979. To be phased out in late 1990's.",New Brunswick Geographic Information Corporation land and water information standards manual.,OGP,"1997/07/02",,0,"D_ATS_1977" +6123,"Kartastokoordinaattijarjestelma (1966)",geodetic,Adjustment with fundamental point SF31 based on ED50 transformed to best fit the older VVJ adjustment.,1966,7022,8901,3333,"Geodetic survey, cadastre, topographic mapping, engineering survey.",Adopted in 1970.,"National Land Survey of Finland; +http://www.maanmittauslaitos.fi",OGP,"2011/06/30",2006.270 2011.055,0,"D_KKJ" +6124,Rikets koordinatsystem 1990,geodetic,,1982,7004,8901,1225,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces RT38 adjustment (datum code 6308)",National Land Survey of Sweden,OGP,"1997/11/13",,0,"D_RT_1990" +6125,Samboja,geodetic,Original origin station P2 Exc now destroyed. Extensions recomputed using Toran station T9 as origin.,,7004,8901,1328,Topographic mapping.,,Total Indonesia.,OGP,"1997/11/13",,1,"D_Samboja" +6126,"Lithuania 1994 (ETRS89)",geodetic,Constrained to 4 ETRS89 points in Lithuania from the EUREF Baltic 1992 campaign..,1994,7019,8901,1145,"Topographic mapping, geodetic survey.",Densification of ETRS89 during the 1992 Baltic campaign.,HNIT-Baltic GeoInfoServisas,OGP,"1998/03/12",,0,"D_Lithuania_1994" +6127,Tete,geodetic,"Fundamental point: Tete.",,7008,8901,3281,Topographic mapping.,,"Mozambique Direcção Nacional de Geografia e Cadastral (DINAGECA).",OGP,"1998/04/16",,0,"D_Tete" +6128,Madzansua,geodetic,"Fundamental point: Madzansua.",,7008,8901,1315,Topographic mapping.,"Replaced by transformation to Tete datum (datum code 6127).","Mozambique Direcção Nacional de Geografia e Cadastral (DINAGECA).",OGP,"1998/04/16",,0,"D_Madzansua" +6129,Observatario,geodetic,"Fundamental point: Maputo observatory.",,7008,8901,1329,Topographic mapping.,"Replaced by transformation to Tete datum (datum code 6127).","Mozambique Direcção Nacional de Geografia e Cadastral (DINAGECA).",OGP,"1998/04/16",,0,"D_Observatario" +6130,"Moznet (ITRF94)",geodetic,ITRF94 at epoch 1996.9,,7030,8901,1167,Topographic mapping.,,"Mozambique Direcção Nacional de Geografia e Cadastral (DINAGECA).",OGP,"2006/08/18",2006.770,0,"D_Moznet" +6131,Indian 1960,geodetic,DMA extension over IndoChina of the Indian 1954 network adjusted to better fit local geoid.,,7015,8901,1302,Topographic mapping.,"Also known as Indian (DMA Reduced).",,OGP,"2003/12/31",2003.361,0,"D_Indian_1960" +6132,Final Datum 1958,geodetic,"Fundamental point: Maniyur. Latitude: 31°23'59.19""N, longitude: 48°32'31.38""E (of Greenwich).",,7012,8901,1300,Oil industry mapping.,Network included in Nahrwan 1967 adjustment.,IOEPC records,OGP,"2008/06/24",2008.045,0,"D_FD_1958" +6133,Estonia 1992,geodetic,Densification from 4 ETRS89 points.,1992,7019,8901,3246,"Topographic mapping, Geodetic survey.","Based on ETRS89 as established during the 1992 Baltic campaign. Replaced by Estonia 1997 adjustment (code 6180).","http://www.geo.ut.ee",OGP,"2011/06/30",2005.460 2011.055,0,"D_Estonia_1992" +6134,PDO Survey Datum 1993,geodetic,Adjustment best fitted to Fahud network.,1993,7012,8901,3288,Oil industry mapping.,"Replaces Fahud datum (code 6232). Maximum differences to Fahud adjustment are 20 metres.",Petroleum Development Oman,OGP,"1999/04/22",,0,"D_PDO_1993" +6135,Old Hawaiian,geodetic,"Fundamental point: Oahu West Base Astro. Latitude: 21°18'13.89""N, longitude 157°50'55.79""W (of Greenwich)",,7008,8901,1334,Topographic mapping.,"Hawaiian Islands were never on NAD27 but rather on Old Hawaiian Datum. NADCON conversion program provides transformation from Old Hawaiian Datum to NAD83 (original 1986 realization) but making the transformation appear to user as if from NAD27.","http://www.ngs.noaa.gov/ (NADCON readme file).",OGP,"2008/06/24",2005.460 2008.045,0,"D_Old_Hawaiian" +6136,St. Lawrence Island,geodetic,,,7008,8901,1332,Topographic mapping.,"Many Alaskan islands were never on NAD27 but rather on independent datums. NADCON conversion program provides transformation from St. Lawrence Island Datum to NAD83 (original 1986 realization) - making the transformation appear to user as if from NAD27.","http://www.ngs.noaa.gov/ (NADCON readme file)",OGP,"1999/05/24",,0,"D_St_Lawrence_Island" +6137,St. Paul Island,geodetic,"Fundamental point latitude: 57°07'16.86""N, longitude: 170°16'24.00""W (of Greenwich).",,7008,8901,1333,Topographic mapping.,"Many Alaskan islands were never on NAD27 but rather on independent datums. NADCON conversion program provides transformation from St. Paul Island Datum to NAD83 (original 1986 realization) - making the transformation appear to user as if from NAD27.","http://www.ngs.noaa.gov/ (NADCON readme file)",OGP,"2008/06/24",2008.045,0,"D_St_Paul_Island" +6138,St. George Island,geodetic,"Fundamental point latitude: 56°36'11.31""N, longitude: 169°32'36.00""W (of Greenwich).",,7008,8901,1331,Topographic mapping.,"Many Alaskan islands were never on NAD27 but rather on independent datums. NADCON conversion program provides transformation from St. George Island Datum to NAD83 (original 1986 realization) - making the transformation appear to user as if from NAD27.","http://www.ngs.noaa.gov/ (NADCON readme file)",OGP,"2008/06/24",2003.362 2008.045,0,"D_St_George_Island" +6139,Puerto Rico,geodetic,"Fundamental point: Cardona Island Lighthouse. Latitude:17°57'31.40""N, longitude: 66°38'07.53""W (of Greenwich).",1901,7008,8901,1335,Topographic mapping.,"NADCON conversion program provides transformation from Puerto Rico Datum to NAD83 (original 1986 realization) but making the transformation appear to user as if from NAD27.","Ordnance Survey of Great Britain and http://www.ngs.noaa.gov/ (NADCON readme file).",OGP,"2008/06/24",2003.362 2008.045,0,"D_Puerto_Rico" +6140,NAD83 Canadian Spatial Reference System,geodetic,,1998,7019,8901,1061,Geodetic survey.,,"Natural Resources of Canada, CSRS website. http://www.geod.nrcan.gc.ca",OGP,"2007/09/25",2005.880 2006.461 2007.026 2007.092,0,"D_North_American_1983_CSRS98" +6141,Israel,geodetic,"Fundamental point: Latitude: 31°44'03.817""N, longitude: 35°12'16.261""E (of Greenwich).",,7019,8901,2603,Topographic mapping.,,Survey of Israel.,OGP,"2008/06/24",2002.340 2004.150 2008.045,0,"D_Israel" +6142,Locodjo 1965,geodetic,"Fundamental point: T5 Banco. Latitude: 5°18'50.5""N, longitude: 4°02'05.1""W (of Greenwich).",1965,7012,8901,1075,Topographic mapping.,,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Locodjo_1965" +6143,Abidjan 1987,geodetic,"Fundamental point: Abidjan I. Latitude: 5°18'51.01""N, longitude: 4°02'06.04""W (of Greenwich).",1987,7012,8901,1075,Topographic mapping.,,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Abidjan_1987" +6144,Kalianpur 1937,geodetic,"Fundamental point: Kalianpur. Latitude: 24° 07'11.260""N, longitude: 77°39'17.570""E (of Greenwich).",1937,7015,8901,1308,Topographic mapping.,Replaces 1880 adjustment except for topographic mapping. Replaced in Bangladesh and Pakistan by 1962 metrication conversion and in India by 1975 metrication conversion.,"G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,"2008/06/24",2008.045,0,"D_Kalianpur_1937" +6145,Kalianpur 1962,geodetic,"Fundamental point: Kalianpur. Latitude: 24° 07'11.260""N, longitude: 77°39'17.570""E (of Greenwich).",1962,7044,8901,3289,Topographic mapping.,"1937 adjustment rescaled by ratio metric conversions of Indian foot (1937) to Indian foot (1962).",,OGP,"2008/06/24",2008.045,0,"D_Kalianpur_1962" +6146,Kalianpur 1975,geodetic,"Fundamental point: Kalianpur. Latitude: 24° 07'11.260""N, longitude: 77°39'17.570""E (of Greenwich).",1975,7045,8901,3341,Topographic mapping.,"1937 adjustment rescaled by ratio metric conversions of Indian foot (1937) to Indian foot (1975).",,OGP,"2008/06/24",2008.045,0,"D_Kalianpur_1975" +6147,Hanoi 1972,geodetic,,1972,7024,8901,3328,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,PetroVietnam,OGP,"1999/10/20",,0,"D_Hanoi_1972" +6148,Hartebeesthoek94,geodetic,Coincident with ITRF91 at epoch 1994.0 at Hartebeesthoek astronomical observatory near Pretoria.,1994,7030,8901,1215,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Cape datum (code 6222).","Directorate of Surveys and Mapping; http://w3sli.wcape.gov.za/surveys/mapping/wgs84.htm",OGP,"2006/08/18",1999.960 2006.770,0,"D_Hartebeesthoek_1994" +6149,CH1903,geodetic,"Fundamental point: Old Bern observatory. Latitude: 46°57'08.660""N, longitude: 7°26'22.500""E (of Greenwich).",1903,7004,8901,1286,Topographic mapping.,,"Bundesamt für Landestopographie",OGP,"2008/06/24",2008.045,0,"D_CH1903" +6150,"CH1903+",geodetic,"Fundamental point: Zimmerwald observatory.",,7004,8901,1286,"Geodetic survey, topographic mapping.",,"Bundesamt für Landestopographie. Aufbau der Landesvermessung der Schweiz 'LV95' Teil 3: Terrestrische Bezugssysteme und Bezugsrahmen. L+T 1999.",OGP,"2001/11/06",2001.520,0,"D_CH1903+" +6151,Swiss Terrestrial Reference Frame 1995,geodetic,ETRF89 at epoch 1993.0,1995,7019,8901,1286,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Bundesamt für Landestopographie. Aufbau der Landesvermessung der Schweiz 'LV95' Teil 3: Terrestrische Bezugssysteme und Bezugsrahmen. L+T 1999.",OGP,"2006/08/18",2006.770,0,"D_Swiss_TRF_1995" +6152,"NAD83 (High Accuracy Reference Network)",geodetic,,,7019,8901,1337,Geodetic survey.,,National Geodetic Survey,OGP,"2011/02/04",2009.044 2010.061 2011.009,0,"D_North_American_1983_HARN" +6153,Rassadiran,geodetic,"Fundamental point: Total1. Latitude: 27°31'07.784""N, longitude: 52°36'12.741""E (of Greenwich).",1998,7022,8901,1338,Oil industry mapping.,,Total-Fina,OGP,"2008/06/24",2008.045,0,"D_Rassadiran" +6154,"European Datum 1950(1977)",geodetic,Extension of ED50 over Iran.,1977,7022,8901,1123,Topographic mapping.,Sometimes referred to as ED50-ED77.,National Cartographic Centre of Iran,OGP,"1999/11/20",,0,"D_European_1950_ED77" +6155,Dabola 1981,geodetic,,1981,7011,8901,3257,Topographic mapping.,,IGN Paris,OGP,"1999/12/09",,0,"D_Dabola_1981" +6156,System Jednotne Trigonometricke Site Katastralni,geodetic,"Modification of Austrian MGI datum, code 6312.",,7004,8901,1306,"Geodetic survey, cadastre, topographic mapping, engineering survey.","S-JTSK = System of the Unified Trigonometrical Cadastral Network.","Research Institute for Geodesy Topography and Cartography (VUGTK); Prague.",OGP,"2010/11/02",2001.260 2001.510 2010.071,0,"D_S_JTSK" +6157,Mount Dillon,geodetic,"Fundamental point: Mount Dillon triangulation station. Latitude: 11°15'07.843""N, longitude: 60°41'09.632""W (of Greenwich).",,7007,8901,1322,Topographic mapping.,,University of the West Indies Geodetic Services.,OGP,"2008/06/24",2003.361 2008.045,0,"D_Mount_Dillon" +6158,Naparima 1955,geodetic,"Fundamental point: Naparima. Latitude: 10°16'44.860""N, longitude: 61°27'34.620""W (of Greenwich).",1955,7022,8901,3143,Topographic mapping.,Naparima 1972 is an extension of the Naparima 1955 network of Trinidad to include Tobago.,Ordnance Survey International.,OGP,"2008/06/24",2008.045,0,"D_Naparima_1955" +6159,European Libyan Datum 1979,geodetic,Extension of ED50 over Libya.,1979,7022,8901,1143,Topographic mapping.,,Brown and Root,OGP,"2003/12/31",2003.362,0,"D_European_Libyan_1979" +6160,Chos Malal 1914,geodetic,Chos Malal police station.,1914,7022,8901,1292,Oil industry mapping.,"Also known as Quini-Huao. Replaced by Campo Inchauspe (code 6221).",Various oil company records.,OGP,"2000/03/07",,0,"D_Chos_Malal_1914" +6161,Pampa del Castillo,geodetic,,,7022,8901,1265,Oil industry mapping.,"Used in Comodoro Rivadavia area. Replaced by Campo Inchauspe (code 6221).",Various oil company records.,OGP,"2000/03/07",,0,"D_Pampa_del_Castillo" +6162,Korean Datum 1985,geodetic,"Fundamental point: Suwon. Latitude 37°16'31.9034""N, longitude 127°03'05.1451""E of Greenwich. This is consistent with the Tokyo 1918 datum latitude and longitude.",1985,7004,8901,3266,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Tokyo 1918 (datum code 6301). Replaced by Korea 2000 (datum code 6737).","Clifford J. Mugnier; in Photogrammetric Engineering & Remote Sensing November 1999. http://www.asprs.org/",OGP,"2010/06/30",2001.280 2005.460 2008.045 2010.050,0,"D_Korean_Datum_1985" +6163,Yemen National Geodetic Network 1996,geodetic,"Sana'a IGN reference marker.",1996,7030,8901,1257,Topographic mapping.,,IGN Paris,OGP,"2000/03/07",,0,"D_Yemen_NGN_1996" +6164,South Yemen,geodetic,,,7024,8901,1340,Topographic mapping.,,IGN Paris,OGP,"2000/03/07",,0,"D_South_Yemen" +6165,Bissau,geodetic,,,7022,8901,3258,Topographic mapping.,,"NIMA TR8350.2 ftp://164.214.2.65/pub/gig/tr8350.2/changes.pdf",OGP,"2005/09/05",2005.460,0,"D_Bissau" +6166,Korean Datum 1995,geodetic,,1995,7030,8901,3266,Topographic mapping.,,"NIMA TR8350.2 ftp://164.214.2.65/pub/gig/tr8350.2/changes.pdf",OGP,"2005/09/05",2005.460,0,"D_Korean_Datum_1995" +6167,New Zealand Geodetic Datum 2000,geodetic,Based on ITRF96 at epoch 2000.0,2000,7019,8901,1175,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces New Zealand Geodetic Datum 1949 (code 6272) and Chatham Islands Datum 1979 (code 6673) from March 2000.","Land Information New Zealand. http://www.linz.govt.nz/rcs/linz/pub/web/root/core/SurveySystem/GeodeticInfo/GeodeticDatums/nzgd2000factsheet/index.jsp",OGP,"2007/09/29",2004.110 2007.090,0,"D_NZGD_2000" +6168,Accra,geodetic,"Fundamental point: GCS Station 547. Latitude: 5°23'43.3""N, longitude: 0°11'52.3""W (of Greenwich).",,7029,8901,1104,Topographic mapping.,"Replaced in 1978 by Leigon datum (code 6250).",Ordnance Survey International,OGP,"2008/06/24",2008.045,0,"D_Accra" +6169,American Samoa 1962,geodetic,"Fundamental point: Betty 13 eccentric. Latitude: 14°20'08.34""S, longitude: 170°42'52.25""W (of Greenwich).",1962,7008,8901,3109,Topographic mapping.,,NIMA TR8350.2 revision of January 2000. Oil industry sources for origin description details.,OGP,"2008/06/24",2003.362 2005.230 2008.045,0,"D_American_Samoa_1962" +6170,Sistema de Referencia Geocentrico para America del Sur 1995,geodetic,ITRF94 at epoch 1995.42.,1995,7019,8901,3448,Geodetic survey.,Realised by a frame of 58 stations observed in 1995 and adjusted in the ITRF94. Replaced by SIRGAS 2000.,"NIMA TR8350.2 revision of January 2000. Also http://www1.ibge.gov.br/",OGP,"2006/08/18",2004.250 2005.460 2006.465 2006.770,0,"D_SIRGAS" +6171,Reseau Geodesique Francais 1993,geodetic,Coincident with ETRS89 at epoch 1993.0,1993,7019,8901,1096,Geodetic survey.,,"http://www.ign.fr/ via TotalFinaElf",OGP,"2005/09/05",2001.510 2005.460,0,"D_RGF_1993" +6172,Posiciones Geodesicas Argentinas,geodetic,,1994,7019,8901,1033,"Topographic mapping, geodetic survey.","Una red geodésica de 127 puntos materializados +en el terreno que definen el Sistema Geodésico Nacional. [A geodetic network of 127 points defining the National Geodetic System.] Replaced by POSGAR98 (code 6190).","http://www.igm.gov.ar/posgar.html",OGP,"2000/10/19",,1,"D_POSGAR" +6173,IRENET95,geodetic,ETRS89 stations in Ireland,1995,7019,8901,3744,Geodetic survey.,Densification of ETRS89,Ordnance Survey of Ireland,OGP,"2011/01/25",2004.220 2011.004,0,"D_IRENET95" +6174,Sierra Leone Colony 1924,geodetic,"Fundamental point: Kortright. Latitude: 8°28'44.4""N, longitude: 13°13'03.81""W (of Greenwich).",1924,7029,8901,1342,"Topographic mapping, engineering survey.",,Ordnance Survey International.,OGP,"2008/06/24",2008.045,0,"D_Sierra_Leone_1924" +6175,Sierra Leone 1968,geodetic,"Fundamental point: SLX2 Astro. Latitude: 8°27'17.567""N, longitude: 12°49'40.186""W (of Greenwich).",1968,7012,8901,3306,"Topographic mapping, engineering survey.",Extension and readjustment with additional observations of 1960 network. Coordinates of 1960 stations change by less than 3 metres.,Ordnance Survey International.,OGP,"2008/06/24",2008.045,0,"D_Sierra_Leone_1968" +6176,Australian Antarctic Datum 1998,geodetic,,1998,7019,8901,1278,Topographic mapping.,,Standards Australia,OGP,"2006/01/30",2006.080,0,"D_Australian_Antarctic_1998" +6178,"Pulkovo 1942(83)",geodetic,"Fundamental point: Pulkovo observatory. Latitude: 59°46'18.550""N, longitude: 30°19'42.090""E (of Greenwich).",1983,7024,8901,3574,"Geodetic survey, cadastre, topographic mapping, engineering survey.",1983 international adjustment of Uniform Astro-Geodetic Network of countries of central and eastern Europe.,"Bundesamt für Kartographie und Geodäsie via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2008/09/24",2008.045 2008.011,0,"D_Pulkovo_1942_Adj_1983" +6179,"Pulkovo 1942(58)",geodetic,"Fundamental point: Pulkovo observatory. Latitude: 59°46'18.550""N, longitude: 30°19'42.090""E (of Greenwich).",1956,7024,8901,3574,"Geodetic survey, cadastre, topographic mapping, engineering survey.",1956 international adjustment of Uniform Astro-Geodetic Network of countries of central and eastern Europe. Locally densified during 1957 and 1958.,"Glowny Urzad Geodezji i Kartografii via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2008/09/24",2008.011 2008.045,0,"D_Pulkovo_1942_Adj_1958" +6180,Estonia 1997,geodetic,Densification of ETRS89 during EUREF-ESTONIA97 campaign through transformation from ITRF96 at epoch 1997.56.,1997,7019,8901,1090,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Estonia 1992 adjustment (code 6133).","Estonian National Land Board via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2006/08/18",2006.770,0,"D_Estonia_1997" +6181,Luxembourg 1930,geodetic,"Fundamental point: northern station of Habay-la-Neuve baseline in Belgium. Latitude: 49°43'24.408""N, longitude: 5°38'22.470""E (of Greenwich).",1930,7022,8901,1146,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Administration du Cadastre et de la Topographie via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2008/06/24",2008.045,0,"D_Luxembourg_1930" +6182,Azores Occidental Islands 1939,geodetic,"Fundamental point: Observatario Meteorologico Flores.",1939,7022,8901,1344,Topographic mapping.,,"Instituto Geografico e Cadastral Lisbon via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2005/12/30",2005.850,0,"D_Azores_Occidental_Islands_1939" +6183,Azores Central Islands 1948,geodetic,"Fundamental point: Graciosa south west base. Latitude: 39°03'54.934""N, longitude: 28°02'23.882""W (of Greenwich).",1948,7022,8901,1301,Topographic mapping.,"Replaced by 1995 adjustment (datum code 6665).","Instituto Geografico e Cadastral Lisbon via EuroGeographics; http://crs.bkg.bund.de/crs-eu/ Oil industry sources for origin description details.",OGP,"2008/06/24",2002.250 2003.231 2003.362 2008.045,0,"D_Azores_Central_Islands_1948" +6184,Azores Oriental Islands 1940,geodetic,"Fundamental point: Forte de São Bras.",1940,7022,8901,1345,Topographic mapping.,"Replaced by 1995 adjustment (datum code 6664).","Instituto Geografico e Cadastral Lisbon via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2003/08/14",2003.231,0,"D_Azores_Oriental_Islands_1940" +6185,Madeira 1936,geodetic,"Fundamental point: Madeira SE Base.",1936,7022,8901,1314,Topographic mapping.,,"Instituto Geografico e Cadastral Lisbon via EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2001/06/05",,1,"D_Madeira_1936" +6188,OSNI 1952,geodetic,Position fixed to the coordinates from the 19th century Principle Triangulation of station Divis. Scale and orientation controlled by position of Principle Triangulation stations Knocklayd and Trostan.,1952,7001,8901,2530,Geodetic survey and topographic mapping.,"Replaced by Geodetic Datum of 1965 alias 1975 Mapping Adjustment or TM75 (datum code 6300).",Ordnance Survey of Northern Ireland.,OGP,"2001/11/06",,0,"D_OSNI_1952" +6189,Red Geodesica Venezolana,geodetic,Realised by a frame of 67 stations observed in 1995 as a densification of the SIRGAS campaign and adjusted in the ITRF94.,2000,7019,8901,1251,Geodetic survey.,,Servicio Autonomo de Geografia y Cartografia Nacional.,OGP,"2001/06/11",,0,"D_REGVEN" +6190,Posiciones Geodesicas Argentinas 1998,geodetic,"A geodetic network of 136 high accuracy surveyed points. Densification of SIRGAS 1995; ITRF94 at epoch 1995.42.",1998,7019,8901,1033,Geodetic survey.,"Technically, but not legally, this datum replaced the 1994 POSGAR adjustment (code 6694) until adoption of the 2007 POSGAR adjustment (code 1062) in May 2009.","Instituto Geográfico Militar de la República Argentina, http://www.igm.gov.ar",OGP,"2011/03/28",2003.361 2005.460 2005.480 2006.770 2009.028,0,"D_POSGAR_1998" +6191,Albanian 1987,geodetic,,1987,7024,8901,3212,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2011/07/20",2011.062,0,"D_Albanian_1987" +6192,Douala 1948,geodetic,"South pillar of Douala base; 4°00'40.64""N, 9°42'30.41""E (of Greenwich).",1948,7022,8901,2555,Topographic mapping.,"Replaced by Manoca 1962 datum (code 6193).",TotalFinaElf,OGP,"2008/06/24",2005.830 2008.045,0,"D_Douala_1948" +6193,Manoca 1962,geodetic,"Reservoir centre at the Manoca tower (""tube Suel""), 3°51'49.896""N, 9°36'49.347""E (of Greenwich).",1962,7011,8901,2555,Topographic mapping.,"The intent of the Bukavu 1953 conference was to adopt the Clarke 1880 (RGS) ellipsoid (code 7012) but in practice this datum has used the IGN version. Replaces Douala 1948 (code 6192).",TotalFinaElf,OGP,"2008/06/24",2008.045,0,"D_Manoca_1962" +6194,Qornoq 1927,geodetic,"Fundamental point: Station 7008. Latitude: 64°31'06.27""N, longitude: 51°12'24.86""W (of Greenwich).",1927,7022,8901,3362,Topographic mapping.,,"Kort & Matrikelstyrelsen, Copenhagen. Origin coordinates from NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.362 2005.460 2006.220 2008.045,0,"D_Qornoq_1927" +6195,Scoresbysund 1952,geodetic,,1952,7022,8901,2570,Topographic mapping.,,"Kort & Matrikelstyrelsen, Copenhagen.",OGP,"2002/01/18",,0,"D_Scoresbysund_1952" +6196,Ammassalik 1958,geodetic,,1958,7022,8901,2571,Topographic mapping.,,"Kort & Matrikelstyrelsen, Copenhagen.",OGP,"2002/01/18",,0,"D_Ammassalik_1958" +6197,Garoua,geodetic,"Fundamental point: IGN astronomical station and benchmark no. 16 at Tongo. Latitude 8°55'08.74""N, longitude 13°30'43.19""E (of Greenwich).",,7012,8901,2590,Topographic mapping.,,TotalFinaElf,OGP,"2008/06/24",2008.045,0,"D_Garoua" +6198,Kousseri,geodetic,"IGN astronomical station Dabanga; 11°55'05.9""N 14°38'40.8""E (of Greenwich).",,7012,8901,2591,Topographic mapping.,,TotalFinaElf,OGP,"2008/06/24",2008.045,0,"D_Kousseri" +6199,Egypt 1930,geodetic,"Fundamental point: Station F1 (Venus). Latitude: 30°01'42.86""N, longitude: 31°16'37.05""E (of Greenwich).",1930,7022,8901,3242,Used for scientific purposes only.,"Note that Egypt 1930 uses the International 1924 ellipsoid, unlike the Egypt 1907 datum (code 6229) which uses the Helmert ellipsoid. Oil industry references to the Egypt 1930 datum name and the Helmert ellipsoid probably mean Egypt 1907 datum.",,OGP,"2008/06/24",2008.045,0,"D_Egypt_1930" +6200,Pulkovo 1995,geodetic,"Fundamental point: Pulkovo observatory. Latitude: 59°46'15.359""N, longitude: 30°19'28.318""E (of Greenwich).",1995,7024,8901,1198,Scientific adjustment.,,"""Main Terms of Reference for the State Geodetic Network""; Federal Geodetic Service of Russia; 1994",OGP,"2008/06/24",2008.045,0,"D_Pulkovo_1995" +6201,Adindan,geodetic,"Fundamental point: Station 15; Adindan. Latitude: 22°10'07.110""N, longitude: 31°29'21.608""E (of Greenwich).",,7012,8901,1271,Topographic mapping.,"The 12th parallel traverse of 1966-70 (Point 58 datum, code 6620) is connected to the Adindan network in western Sudan. This has given rise to misconceptions that the Adindan network is used in west Africa.",,OGP,"2008/06/24",2002.431 2003.361 2008.045,0,"D_Adindan" +6202,Australian Geodetic Datum 1966,geodetic,"Fundamental point: Johnson Memorial Cairn. Latitude: 25°56'54.5515""S, longitude: 133°12'30.0771""E (of Greenwich).",1966,7003,8901,1279,Topographic mapping.,,"Australian Map Grid Technical Manual. National Mapping Council of Australia Technical Publication 7; 1972.",OGP,"2008/06/24",2003.361 2008.045,0,"D_Australian_1966" +6203,Australian Geodetic Datum 1984,geodetic,"Fundamental point: Johnson Memorial Cairn. Latitude: 25°56'54.5515""S, longitude: 133°12'30.0771""E (of Greenwich).",1984,7003,8901,2576,Topographic mapping.,"Uses all data from 1966 adjustment with additional observations, improved software and a geoid model.","""GDA technical manual v2_2"", Intergovernmental Committee on Surveying and Mapping. www.anzlic.org.au/icsm/gdtm/",OGP,"2008/06/24",2003.290 2003.361 2008.045,0,"D_Australian_1984" +6204,Ain el Abd 1970,geodetic,"Fundamental point: Ain El Abd. Latitude: 28°14'06.171""N, longitude: 48°16'20.906""E (of Greenwich).",1970,7022,8901,1272,Topographic mapping.,,,OGP,"2008/06/24",2003.361 2008.045,0,"D_Ain_el_Abd_1970" +6205,Afgooye,geodetic,,,7024,8901,1214,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Afgooye" +6206,Agadez,geodetic,,,7011,8901,1177,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Agadez" +6207,Lisbon 1937,geodetic,"Fundamental point: Castelo Sao Jorge, Lisbon. Latitude: 38°42'43.631""N, longitude: 9°07'54.862""W (of Greenwich).",1937,7022,8901,1294,Topographic mapping.,"Replaces Lisbon 1890 adjustment (which used Bessel 1841 ellipsoid).","Instituto Geografico e Cadastral; Lisbon",OGP,"2008/06/24",2001.551 2008.045,0,"D_Lisbon" +6208,Aratu,geodetic,,,7022,8901,1274,Oil industry geodetic purposes.,,,OGP,"1995/06/02",,0,"D_Aratu" +6209,Arc 1950,geodetic,"Fundamental point: Buffelsfontein. Latitude: 33°59'32.000""S, longitude: 25°30'44.622""E (of Greenwich).",1950,7013,8901,1276,"Topographic mapping, geodetic survey.",,,OGP,"2008/06/24",2008.045,0,"D_Arc_1950" +6210,Arc 1960,geodetic,"Fundamental point: Buffelsfontein. Latitude: 33°59'32.000""S, longitude: 25°30'44.622""E (of Greenwich).",1960,7012,8901,1277,"Topographic mapping, geodetic survey.",,,OGP,"2008/06/24",2008.045,0,"D_Arc_1960" +6211,Batavia,geodetic,"Fundamental point: Longitude at Batavia Astro. Station. Latitude: 6°07'39.522""S, longitude: 106°48'27.790""E (of Greenwich). Latitude and azimuth at Genuk.",,7004,8901,3666,Topographic mapping.,,,OGP,"2010/03/30",2003.361 2008.045 2009.106,0,"D_Batavia" +6212,Barbados 1938,geodetic,"Fundamental point: HMS Challenger astro station M1, St. Anne's Tower. Latitude 13°04'32.53""N, longitude 59°36'29.34""W (of Greenwich).",1938,7012,8901,3218,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"2011/06/30",1999.170 2006.030 2008.045 2011.051,0,"D_Barbados_1938" +6213,Beduaram,geodetic,,,7011,8901,2771,Topographic mapping.,,,OGP,"2004/09/01",2004.490,0,"D_Beduaram" +6214,Beijing 1954,geodetic,"Pulkovo, transferred through Russian triangulation.",1954,7024,8901,3228,Topographic mapping.,Scale determined through three baselines in northeast China. Discontinuities at boundaries of adjustment blocks. From 1982 replaced by Xian 1980 and New Beijing.,"Chinese Science Bulletin, 2009, 54:2714-2721",OGP,"2009/11/24",2009.084,0,"D_Beijing_1954" +6215,Reseau National Belge 1950,geodetic,"Fundamental point: Lommel (tower). Latitude: 51°13'47.334""N, longitude: 5°18'49.483""E (of Greenwich).",1950,7022,8901,1347,Topographic mapping.,,,OGP,"2008/06/24",2003.361 2008.045,0,"D_Belge_1950" +6216,Bermuda 1957,geodetic,"Fundamental point: Fort George base. Latitude 32°22'44.36""N, longitude 64°40'58.11""W (of Greenwich).",1957,7008,8901,3221,Topographic mapping.,,Various oil industry sources.,OGP,"2011/01/25",2003.362 2008.045 2011.004,0,"D_Bermuda_1957" +6218,Bogota 1975,geodetic,"Fundamental point: Bogota observatory. Latitude: 4°35'56.570""N, longitude: 74°04'51.300""W (of Greenwich).",1975,7022,8901,3686,Topographic mapping.,"Replaces 1951 adjustment. Replaced by MAGNA-SIRGAS (datum code 6685).","Instituto Geografico Agustin Codazzi (IGAC) special publication no. 1, 4th edition (1975) ""Geodesia: Resultados Definitvos de Parte de las Redes Geodesicas Establecidas en el Pais"".",OGP,"2010/03/30",2000.200 2005.060 2007.060 2008.045 2009.106,0,"D_Bogota" +6219,Bukit Rimpah,geodetic,"2°00'40.16""S, 105°51'39.76""E (of Greenwich).",,7004,8901,1287,Topographic mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Bukit_Rimpah" +6220,Camacupa,geodetic,"Fundamental point: Campo de Aviaçao. Latitude: 12°01'09.070""S, Longitude = 17°27'19.800""E (of Greenwich)",1948,7012,8901,1288,Coastal hydrography.,,"Portuguese Hydrographic Institute and Clifford J. Mugnier, PE&RS journal, March 2001.",OGP,"2008/06/24",2003.361 2006.973 2008.045,0,"D_Camacupa" +6221,Campo Inchauspe,geodetic,"Fundamental point: Campo Inchauspe. Latitude: 35°58'16.56""S, longitude: 62°10'12.03""W (of Greenwich).",,7022,8901,3843,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2011/03/28",2003.361 2005.460 2008.045 2011.021,0,"D_Campo_Inchauspe" +6222,Cape,geodetic,"Fundamental point: Buffelsfontein. Latitude: 33°59'32.000""S, longitude: 25°30'44.622""E (of Greenwich).",,7013,8901,1290,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Private Communication, Directorate of Surveys and Land Information, Cape Town.",OGP,"2008/06/24",1996.250 1999.690 2008.045,0,"D_Cape" +6223,Carthage,geodetic,"Fundamental point: Carthage. Latitude: 40.9464506g = 36°51'06.50""N, longitude: 8.8724368g E of Paris = 10°19'20.72""E (of Greenwich).",1925,7011,8901,1236,Topographic mapping.,Fundamental point astronomic coordinates determined in 1878.,,OGP,"2008/06/24",2003.362 2003.050 2008.045,0,"D_Carthage" +6224,Chua,geodetic,"Fundamental point: Chua. Latitude: 19°45'41.160""S, longitude: 48°06'07.560""W (of Greenwich).",,7022,8901,3356,Geodetic survey.,The Chua origin and associated network is in Brazil with a connecting traverse through northern Paraguay. It was used in Brazil only as input into the Corrego Allegre adjustment and for government work in Distrito Federal.,"NIMA http://earth-info.nima.mil/",OGP,"2009/06/02",2003.361 2005.460 2005.840 2006.490 2008.045 2009.021,0,"D_Chua" +6225,Corrego Alegre 1970-72,geodetic,"Fundamental point: Corrego Alegre. Latitude: 19°50'14.91""S, longitude: 48°57'41.98""W (of Greenwich).",1972,7022,8901,1293,"Topographic mapping, geodetic survey. Superseded by SAD69.","Replaces 1961 adjustment (datum code 1074). NIMA gives coordinates of origin as latitude: 19°50'15.14""S, longitude: 48°57'42.75""W; these may refer to 1961 adjustment.",IBGE.,OGP,"2011/07/27",2005.841 2008.045 2011.053,0,"D_Corrego_Alegre" +6226,"Cote d'Ivoire",geodetic,,,7011,8901,1075,Topographic mapping.,,,OGP,"1995/06/02",2001.110,1,"D_Cote_d_Ivoire" +6227,Deir ez Zor,geodetic,"Fundamental point: Trig. 254 Deir. Latitude: 35°21'49.975""N, longitude: 40°05'46.770""E (of Greenwich).",,7011,8901,1623,Topographic mapping.,,,OGP,"2008/06/24",2003.361 2008.045,0,"D_Deir_ez_Zor" +6228,Douala,geodetic,,,7011,8901,1060,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Douala" +6229,Egypt 1907,geodetic,"Fundamental point: Station F1 (Venus). Latitude: 30°01'42.86""N, longitude: 31°16'33.60""E (of Greenwich).",1907,7020,8901,1086,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,,OGP,"2008/06/24",2008.045,0,"D_Egypt_1907" +6230,European Datum 1950,geodetic,"Fundamental point: Potsdam (Helmert Tower). Latitude: 52°22'51.4456""N, longitude: 13°03'58.9283""E (of Greenwich).",1950,7022,8901,1296,"Topographic mapping, geodetic survey.",,"EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2008/06/24",2003.361 2008.045,0,"D_European_1950" +6231,European Datum 1987,geodetic,"Fundamental point: Potsdam (Helmert Tower). Latitude: 52°22'51.4456""N, longitude: 13°03'58.9283""E (of Greenwich).",1987,7022,8901,1297,Scientific network.,,,OGP,"2008/06/24",2003.362 2008.045,0,"D_European_1987" +6232,Fahud,geodetic,"Fundamental point: Station NO68-024 Fahud. Latitude: 22°17'31.182""N, longitude: 56°29'18.820""E (of Greenwich).",,7012,8901,3288,Oil industry mapping.,"Replaced by PSD93 (code 6134).",Petroleum Development Oman.,OGP,"2008/06/24",2008.045,0,"D_Fahud" +6233,Gandajika 1970,geodetic,,1970,7022,8901,1152,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Gandajika_1970" +6234,Garoua,geodetic,,,7011,8901,1060,Topographic mapping.,"The intent of the Bukavu 1953 conference was to adopt the Clarke 1880 (RGS) ellipsoid (code 7012) but in practice this datum has used the IGN version.",,OGP,"1995/06/02",,1,"D_Garoua" +6235,Guyane Francaise,geodetic,,,7022,8901,1097,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Guyane_Francaise" +6236,Hu Tzu Shan 1950,geodetic,"Fundamental point: Hu Tzu Shan. Latitude: 23°58'32.34""N, longitude: 120°58'25.975""E (of Greenwich).",1950,7022,8901,3315,Topographic mapping.,,"NIMA +US NGA, http://earth-info.nga.mil/GandG/index.html",OGP,"2008/08/12",2003.362 2005.460 2005.830 2008.017 2008.045,0,"D_Hu_Tzu_Shan" +6237,Hungarian Datum 1972,geodetic,"Fundamental point: Szolohegy. Latitude: 47°17'32,6156""N, longitude 19°36'09.9865""E (of Greenwich); geoid height 6.56m.",1972,7036,8901,1119,Topographic mapping.,"Replaced Hungarian Datum 1909 (EPSG datum code 1024).","http://lazarus.elte.hu/gb/geodez/geod3.htm",OGP,"2008/08/02",1996.090 2008.045 2008.047,0,"D_Hungarian_1972" +6238,Indonesian Datum 1974,geodetic,"Fundamental point: Padang. Latitude: 0°56'38.414""S, longitude: 100°22' 8.804""E (of Greenwich). Ellipsoidal height 3.190m, gravity-related height 14.0m above mean sea level.",1974,7021,8901,1122,Topographic mapping.,Replaced by DGN95.,Bakosurtanal 1979 paper by Jacob Rais.,OGP,"2008/06/24",2002.151 2006.810 2008.045,0,"D_Indonesian_1974" +6239,Indian 1954,geodetic,Extension of Kalianpur 1937 over Myanmar and Thailand.,1954,7015,8901,1304,Topographic mapping.,,,OGP,"2003/12/31",2003.361,0,"D_Indian_1954" +6240,Indian 1975,geodetic,"Fundamental point: Khau Sakaerang.",1975,7015,8901,3741,Topographic mapping.,,,OGP,"2011/01/25",2011.004,0,"D_Indian_1975" +6241,Jamaica 1875,geodetic,"Fundamental point: Fort Charles Flagstaff. Latitude: 17°55'55.800""N, longitude: 76°56'37.260""W (of Greenwich).",1875,7034,8901,3342,Topographic mapping.,,"Survey Department, Government of Jamaica, 1983.",OGP,"2008/06/24",2004.510 2008.045,0,"D_Jamaica_1875" +6242,Jamaica 1969,geodetic,"Fundamental point: Fort Charles Flagstaff. Latitude: 17°55'55.800""N, longitude: 76°56'37.260""W (of Greenwich).",1969,7008,8901,3342,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Survey Department, Government of Jamaica, 1983.",OGP,"2008/06/24",2004.510 2008.045,0,"D_Jamaica_1969" +6243,Kalianpur 1880,geodetic,"Fundamental point: Kalianpur. Latitude: 24°07'11.260""N, longitude: 77°39'17.570""E (of Greenwich).",1880,7042,8901,1307,Topographic mapping.,"Includes 1916 extension into Burma (Myanmar). Replaced by 1937 adjustment.","G. Bomford; ""The Re-adjustment of the Indian Triangulation""; Survey of India Professional Paper 28; 1939.",OGP,"2008/06/24",1997.231 2004.290 2008.045,0,"D_Kalianpur_1880" +6244,Kandawala,geodetic,"Fundamental point: Kandawala. Latitude: 7°14'06.838""N, longitude: 79°52'36.670""E.",1930,7015,8901,3310,Topographic mapping.,,"Abeyratne, Featherstone and Tantrigoda in Survey Review vol. 42 no. 317 (July 2010).",OGP,"2010/09/24",2010.080,0,"D_Kandawala" +6245,Kertau 1968,geodetic,"Fundamental point: Kertau. Latitude: 3°27'50.710""N, longitude: 102°37'24.550""E (of Greenwich).",1968,7018,8901,1309,"Geodetic survey, cadastre.","Replaces MRT48 and earlier adjustments. Adopts metric conversion of 39.370113 inches per metre. Not used for 1969 metrication of RSO grid - see Kertau (RSO) (code 6751).",Defence Geographic Centre.,OGP,"2008/06/24",2006.251 2008.045,0,"D_Kertau" +6246,Kuwait Oil Company,geodetic,"Fundamental point: K28. Latitude: 29°03'42.348""N, longitude: 48°08'42.558""E (of Greenwich).",1952,7012,8901,3267,Oil industry mapping.,,,OGP,"2008/06/24",2004.410 2008.045,0,"D_Kuwait_Oil_Company" +6247,La Canoa,geodetic,"Fundamental point: La Canoa. Latitude: 8°34'17.170""N, longitude: 63°51'34.880""W (of Greenwich).",,7022,8901,3327,"Geodetic survey, topographic mapping, engineering survey.","Origin and network incorporated within PSAD56 (datum code 6248).",,OGP,"2011/01/25",2008.045 2011.001,0,"D_La_Canoa" +6248,Provisional South American Datum 1956,geodetic,"Fundamental point: La Canoa. Latitude: 8°34'17.170""N, longitude: 63°51'34.880""W (of Greenwich).",1956,7022,8901,1348,Topographic mapping.,Same origin as La Canoa datum.,,OGP,"2008/06/24",2008.045,0,"D_Provisional_S_American_1956" +6249,Lake,geodetic,"Fundamental point: Maracaibo Cathedral. Latitude: 10°38'34.678""N, longitude: 71°36'20.224""W (of Greenwich).",,7022,8901,1312,Oil industry mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Lake" +6250,Leigon,geodetic,"Fundamental point: GCS Station 121, Leigon. Latitude: 5°38'52.27""N, longitude: 0°11'46.08""W (of Greenwich).",,7012,8901,1104,Topographic mapping.,"Replaced Accra datum (code 6168) from 1978. Coordinates at Leigon fundamental point defined as Accra datum values for that point.",Ordnance Survey International,OGP,"2008/06/24",2008.045,0,"D_Leigon" +6251,Liberia 1964,geodetic,"Fundamental point: Robertsfield. Latitude: 6°13'53.02""N, longitude: 10°21'35.44""W (of Greenwich).",1964,7012,8901,3270,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.362 2005.460 2008.045,0,"D_Liberia_1964" +6252,Lome,geodetic,,,7011,8901,1232,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Lome" +6253,Luzon 1911,geodetic,"Fundamental point: Balacan. Latitude: 13°33'41.000""N, longitude: 121°52'03.000""E (of Greenwich).",1911,7008,8901,1190,Topographic mapping.,"Replaced by Philippine Reference system of 1992 (datum code 6683).",Coast and Geodetic Survey,OGP,"2008/06/24",2004.730 2008.045,0,"D_Luzon_1911" +6254,Hito XVIII 1963,geodetic,Chile-Argentina boundary survey.,1963,7022,8901,1303,Geodetic survey.,Used in Tierra del Fuego.,Various oil company records.,OGP,"1995/06/02",,0,"D_Hito_XVIII_1963" +6255,Herat North,geodetic,"Fundamental point: Herat North. Latitude: 34°23'09.08""N, longitude: 64°10'58.94""E (of Greenwich).",,7022,8901,1024,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.362 2005.460 2008.045,0,"D_Herat_North" +6256,Mahe 1971,geodetic,"Fundamental point: Mahe.",1971,7012,8901,1208,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Mahe_1971" +6257,Makassar,geodetic,"Fundamental point: station P1, Moncongloe. Latitude: 5°08'41.42""S, long 119°24'14.94""E (of Greenwich).",,7004,8901,1316,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.361 2005.460 2008.045,0,"D_Makassar" +6258,European Terrestrial Reference System 1989,geodetic,Fixed to the stable part of the Eurasian continental plate and consistent with ITRS at the epoch 1989.0.,1989,7019,8901,1298,Geodetic survey.,"The distinction in usage between ETRF89 and ETRS89 is confused: although in principle conceptually different in practice both are used for the realisation.",,OGP,"2003/08/14",1997.110 1997.550 1999.111 2000.720 2003.260,0,"D_ETRS_1989" +6259,Malongo 1987,geodetic,"Fundamental point: Station Y at Malongo base camp. Latitude: 5°23'30.810""S, longitude: 12°12'01.590""E (of Greenwich).",1987,7022,8901,3180,Oil industry offshore exploration and production from 1987.,"Replaced Mhast (offshore) (code 6705) in 1987. Origin coordinates constrained to those of Mhast (offshore) but other station coordinates differ. References to ""Mhast"" since 1987 often should have stated ""Malongo 1987"".",Chevron Petroleum Technology.,OGP,"2008/06/24",2005.751 2008.045,0,"D_Malongo_1987" +6260,Manoca,geodetic,,,7012,8901,1060,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Manoca" +6261,Merchich,geodetic,"Fundamental point: Merchich. Latitude: 33°26'59.672""N, longitude: 7°33'27.295""W (of Greenwich).",1922,7011,8901,3280,Topographic mapping.,,,OGP,"2008/06/24",2003.361 2008.045,0,"D_Merchich" +6262,Massawa,geodetic,,,7004,8901,1089,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Massawa" +6263,Minna,geodetic,"Fundamental point: Minna base station L40. Latitude: 9°38'08.87""N, longitude: 6°30'58.76""E (of Greenwich).",,7012,8901,1178,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.361 2005.460 2008.045,0,"D_Minna" +6264,Mhast,geodetic,,,7022,8901,1318,Coastal hydrography.,,,OGP,"1995/06/02",,1,"D_Mhast" +6265,Monte Mario,geodetic,"Fundamental point: Monte Mario. Latitude: 41°55'25.51""N, longitude: 12°27'08.4""E (of Greenwich).",1940,7022,8901,3343,Topographic mapping.,"Replaced Genova datum, Bessel 1841 ellipsoid, from 1940.",,OGP,"2008/06/24",2003.360 2008.045,0,"D_Monte_Mario" +6266,"M'poraloko",geodetic,,,7011,8901,1100,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Mporaloko" +6267,North American Datum 1927,geodetic,"Fundamental point: Meade's Ranch. Latitude: 39°13'26.686""N, longitude: 98°32'30.506""W (of Greenwich).",1927,7008,8901,1349,Topographic mapping.,"In United States (USA) and Canada, replaced by North American Datum 1983 (NAD83) (code 6269) ; in Mexico, replaced by Mexican Datum of 1993 (code 1042).",,OGP,"2009/11/24",2008.024 2008.045 2009.087,0,"D_North_American_1927" +6268,NAD27 Michigan,geodetic,"Fundamental point: Meade's Ranch. Latitude: 39°13'26.686""N, longitude: 98°32'30.506""W (of Greenwich).",,7009,8901,1391,Topographic mapping.,Ellipsoid taken to be 800ft above the NAD27 reference ellipsoid.,"USGS Professional Paper #1395.",OGP,"2011/02/25",2008.045 2011.013,0,"D_North_American_Michigan" +6269,North American Datum 1983,geodetic,Origin at geocentre.,1986,7019,8901,1350,Topographic mapping.,"Although the 1986 adjustment included connections to Greenland and Mexico, it has not been adopted there. In Canada and US, replaced NAD27.",,OGP,"2008/04/11",2006.464 2008.024,0,"D_North_American_1983" +6270,Nahrwan 1967,geodetic,"Fundamental point: Nahrwan south base. Latitude: 33°19'10.87""N, longitude: 44°43'25.54""E (of Greenwich).",1967,7012,8901,1351,Topographic mapping.,"In Iraq, replaces Nahrwan 1934.",,OGP,"2008/06/24",2006.340 2008.045,0,"D_Nahrwan_1967" +6271,Naparima 1972,geodetic,"Fundamental point: Naparima. Latitude: 10°16'44.860""N, longitude: 61°27'34.620""W (of Greenwich).",1972,7022,8901,1322,Topographic mapping.,Naparima 1972 is an extension of the Naparima 1955 network of Trinidad to include Tobago.,Ordnance Survey International.,OGP,"2008/06/24",2008.045,0,"D_Naparima_1972" +6272,New Zealand Geodetic Datum 1949,geodetic,"Fundamental point: Papatahi. Latitude: 41°19' 8.900""S, longitude: 175°02'51.000""E (of Greenwich).",1949,7022,8901,3285,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by New Zealand Geodetic Datum 2000 (code 6167) from March 2000.","Land Information New Zealand. http://www.linz.govt.nz/rcs/linz/pub/web/root/core/SurveySystem/GeodeticInfo/GeodeticDatums/nzgd2000factsheet/index.jsp",OGP,"2008/06/24",2000.702 2004.110 2008.045,0,"D_New_Zealand_1949" +6273,NGO 1948,geodetic,"Fundamental point: Oslo observatory. Latitude: 59°54'43.7""N, longitude: 10°43'22.5""E (of Greenwich).",1948,7005,8901,1352,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"EuroGeographics; http://crs.bkg.bund.de/crs-eu/",OGP,"2008/06/24",2003.362 2008.045,0,"D_NGO_1948" +6274,Datum 73,geodetic,"Fundamental point: TF4, Melrica. Latitude: 39°41'37.30""N, longitude: 8°07'53.31""W (of Greenwich).",1964,7022,8901,1294,Topographic mapping.,,"Instituto Geografico e Cadastral; Lisbon",OGP,"2008/06/24",2008.045,0,"D_Datum_73" +6275,Nouvelle Triangulation Francaise,geodetic,"Fundamental point: Pantheon. Latitude: 48°50'46.522""N, longitude: 2°20'48.667""E (of Greenwich).",1895,7011,8901,3694,Topographic mapping.,,,OGP,"2010/03/30",2003.361 2008.045 2009.106,0,"D_NTF" +6276,NSWC 9Z-2,geodetic,,,7025,8901,1262,Satellite navigation.,Transit precise ephemeris before 1991.,,OGP,"1995/06/02",,0,"D_NSWC_9Z_2" +6277,OSGB 1936,geodetic,"From April 2002 the datum is defined through the application of the OSTN02 transformation (tfm code 1039) to ETRS89. Prior to 2002, fundamental point: Herstmonceux, Latitude: 50°51'55.271""N, longitude: 0°20'45.882""E (of Greenwich).",1936,7001,8901,1264,Topographic mapping.,"The average accuracy of OSTN02 compared to the old triangulation network (down to 3rd order) is 0.1m.",Ordnance Survey of Great Britain,OGP,"2011/03/14",2002.620 2008.045 2009.055 2010.106,0,"D_OSGB_1936" +6278,"OSGB 1970 (SN)",geodetic,"Fundamental point: Herstmonceux. Latitude: 50°51'55.271""N, longitude: 0°20'45.882""E (of Greenwich).",1970,7001,8901,1264,Scientific network.,,,OGP,"2008/06/24",2005.880 2008.045,0,"D_OSGB_1970_SN" +6279,"OS (SN) 1980",geodetic,"Fundamental point: Herstmonceux. Latitude: 50°51'55.271""N, longitude: 0°20'45.882""E (of Greenwich).",1980,7001,8901,1354,Scientific network.,,,OGP,"2008/06/24",2008.045,0,"D_OS_SN_1980" +6280,Padang 1884,geodetic,"Fundamental point: Padang.",1884,7004,8901,1355,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Padang_1884" +6281,Palestine 1923,geodetic,"Fundamental point: Point 82'M Jerusalem. Latitude: 31°44' 2.749""N, longitude: 35°12'43.490""E (of Greenwich).",1923,7010,8901,1356,Topographic mapping.,,,OGP,"2008/06/24",2004.150 2008.045,0,"D_Palestine_1923" +6282,Congo 1960 Pointe Noire,geodetic,"Fundamental point: Point Noire Astro. Latitude: 4°47'00.10""S, longitude: 11°51'01.55""E (of Greenwich).",1960,7011,8901,1072,Topographic mapping.,,Elf,OGP,"2008/06/24",2002.050 2003.361 2008.045,0,"D_Pointe_Noire" +6283,Geocentric Datum of Australia 1994,geodetic,ITRF92 at epoch 1994.0.,1994,7019,8901,1036,"Topographic mapping, geodetic survey.",Coincident with WGS84 to within 1 metre.,"Australian Surveying and Land Information Group Internet WWW page. http://www.auslig.gov.au/geodesy/datums/gda.htm#specs",OGP,"2011/01/25",2011.004,0,"D_GDA_1994" +6284,Pulkovo 1942,geodetic,"Fundamental point: Pulkovo observatory. Latitude: 59°46'18.550""N, longitude: 30°19'42.090""E (of Greenwich).",1942,7024,8901,2423,Topographic mapping.,,,OGP,"2008/09/24",2008.011 2008.045,0,"D_Pulkovo_1942" +6285,Qatar 1974,geodetic,"Fundamental point: Station G3.",1974,7022,8901,1346,Topographic mapping.,,,OGP,"2001/08/28",2001.270,0,"D_Qatar" +6286,Qatar 1948,geodetic,"Fundamental point: Sokey 0 M. Latitude: 25°22'56.500""N, longitude: 50°45'41.000""E (of Greenwich).",1948,7020,8901,1346,Topographic mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Qatar_1948" +6287,Qornoq,geodetic,,1927,7022,8901,1107,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Qornoq" +6288,Loma Quintana,geodetic,"Fundamental point: Loma Quintana.",,7022,8901,1313,Topographic mapping.,"Replaced by La Canoa (code 6247).",,OGP,"1995/06/02",,0,"D_Loma_Quintana" +6289,Amersfoort,geodetic,"Fundamental point: Amersfoort. Latitude: 52°09'22.178""N, longitude: 5°23'15.478""E (of Greenwich).",,7004,8901,1275,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"http://www.rdnap.nl/",OGP,"2008/06/24",2000.560 2003.361 2005.460 2008.045,0,"D_Amersfoort" +6291,South American Datum 1969,geodetic,,1969,7036,8901,1358,Topographic mapping.,"SAD69 uses GRS67 ellipsoid with 1/f to exactly 2 decimal places. Precision of ellipsoid entry increased from 2 to 5 dp with change id 97.252. Error introduced if not using the truncated precision is 0 to 31mm.",,OGP,"1996/10/18",1996.090 1997.252,1,"D_South_American_1969" +6292,Sapper Hill 1943,geodetic,,1943,7022,8901,3247,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Sapper_Hill_1943" +6293,Schwarzeck,geodetic,"Fundamental point: Schwarzeck. Latitude: 22°45'35.820""S, longitude: 18°40'34.549""E (of Greenwich). Fixed during German South West Africa-British Bechuanaland boundary survey of 1898-1903.",,7046,8901,1169,Topographic mapping.,,"Private Communication, Directorate of Surveys and Land Information, Cape Town.",OGP,"2008/06/24",2001.150 2003.362 2008.045,0,"D_Schwarzeck" +6294,Segora,geodetic,,,7004,8901,1359,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Segora" +6295,Serindung,geodetic,"Fundamental point: Ep A. Latitude: 1°06'10.60""N, longitude: 105°00'59.82""E (of Greenwich).",,7004,8901,1360,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2008/06/24",2003.362 2005.460 2008.045,0,"D_Serindung" +6296,Sudan,geodetic,,,7011,8901,1361,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Sudan" +6297,Tananarive 1925,geodetic,"Fundamental point: Tananarive observatory. Latitude: 18°55'02.10""S, longitude: 47°33'06.75""E (of Greenwich).",2025,7022,8901,1149,Topographic mapping.,,IGN Paris,OGP,"2010/03/30",2003.361 2008.045 2009.106,0,"D_Tananarive_1925" +6298,Timbalai 1948,geodetic,"Fundamental point: Station P85 at Timbalai. Latitude: 5°17' 3.548""N, longitude: 115°10'56.409""E (of Greenwich).",1948,7016,8901,1362,Topographic mapping.,"In 1968, the original adjustment was densified in Sarawak and extended to Sabah.",Defence Geographic Centre.,OGP,"2008/06/24",2006.252 2008.045,0,"D_Timbalai_1948" +6299,TM65,geodetic,Adjusted to best mean fit 12 stations of the OSNI 1952 primary adjustment.,1965,7002,8901,1305,Topographic mapping.,"Differences between OSNI 1952 and TM65 at these stations are RMS 0.25m east, 0.23m north, maximum vector 0.57m. TM65 replaced by and not to be confused with Geodetic Datum of 1965 alias 1975 Mapping Adjustment or TM75 (datum code 6300).","""The Irish Grid - A Description of the Co-ordinate Reference System"" published by Ordnance Survey of Ireland, Dublin and Ordnance Survey of Northern Ireland, Belfast.",OGP,"2003/06/27",2002.621,0,"D_TM65" +6300,Geodetic Datum of 1965,geodetic,Adjusted to best mean fit 9 stations of the OSNI 1952 primary adjustment in Northern Ireland plus the 1965 values of 3 stations in the Republic of Ireland.,1975,7002,8901,1305,"Geodetic survey, topographic mapping and engineering survey.","Differences from the 1965 adjustment (datum code 6299) are: average difference in Eastings 0.092m; average difference in Northings 0.108m; maximum vector difference 0.548m.","""The Irish Grid - A Description of the Co-ordinate Reference System"" published by Ordnance Survey of Ireland, Dublin and Ordnance Survey of Northern Ireland, Belfast.",OGP,"2003/06/27",2002.621,0,"D_TM75" +6301,Tokyo,geodetic,"Fundamental point: Nikon-Keido-Genten. Latitude: 35°39'17.5148""N, longitude: 139°44'40.5020""E (of Greenwich). Longitude derived in 1918.",1918,7004,8901,1364,"Geodetic survey, cadastre, topographic mapping, engineering survey.","In Japan, replaces Tokyo 1892 (code 1048) and replaced by Japanese Geodetic Datum 2000 (code 6611). In Korea used only for geodetic applications before being replaced by Korean 1985 (code 6162).","Geographic Survey Institute; Japan; Bulletin 40 (March 1994). Also http://vldb.gsi.go.jp/sokuchi/datum/tokyodatum.html",OGP,"2010/06/30",1998.460 2002.080 2008.045 2010.050,0,"D_Tokyo" +6302,Trinidad 1903,geodetic,"Station 00, Harbour Master's Flagstaff, Port of Spain. +Trinidad 1903 / Trinidad Grid coordinates (Clarke's links): 333604.30 E, 436366.91 N (Latitude: 10°38'39.01""N, Longitude: 61°30'38.00""W of Greenwich)",1903,7007,8901,1339,Topographic mapping.,,"""Land Surveyor's Handbook"", 1935, published under the direction of JW MacGillivray, Surveyor General, Land & Survey's Department, Trinidad & Tobago.",OGP,"2008/06/24",2003.362 2004.130 2008.045,0,"D_Trinidad_1903" +6303,Trucial Coast 1948,geodetic,"Fundamental point: TC1. Latitude: 25°23'50.190""N, longitude: 55°26'43.950""E (of Greenwich).",1948,7020,8901,1363,Oil industry mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Trucial_Coast_1948" +6304,Voirol 1875,geodetic,"Fundamental point: Voirol. Latitude: 36°45'07.927""N, longitude: 3°02'49.435""E of Greenwich. Uses RGS (and old IGN) value of 2°20'13.95""for Greenwich-Paris meridian difference.",1875,7011,8901,1365,Topographic mapping.,"Replaced by Voirol 1879 (code 6671).",IGN Paris,OGP,"2008/06/24",2003.361 2008.045,0,"D_Voirol_1875" +6306,Bern 1938,geodetic,"Fundamental point: Old Bern observatory. Latitude: 46°57'07.890""N, longitude: 7°26'22.335""E (of Greenwich).",1938,7004,8901,1286,Topographic mapping.,"This redetermination of the coordinates of fundamental point is used for scientific purposes and as the graticule overprinted on topographic maps constructed on the CH1903 / LV03 projected CS (code 21781).","""Die Projektionen der schweizerischen Plan- und Kartenwerke""; J. Bolliger 1967",OGP,"2008/06/24",2008.045,0,"D_Bern_1938" +6307,Nord Sahara 1959,geodetic,"Coordinates of primary network readjusted on ED50 datum and then transformed conformally to Clarke 1880 (RGS) ellipsoid.",1959,7012,8901,3213,Topographic mapping.,"Adjustment includes Morocco and Tunisia but use only in Algeria. Within Algeria the adjustment is north of 32°N but use has been extended southwards in many disconnected projects, some based on independent astro stations rather than the geodetic network.","""Le System Geodesique Nord-Sahara""; IGN Paris",OGP,"2010/03/30",1999.620 2003.361 2005.880 2009.106,0,"D_Nord_Sahara_1959" +6308,Stockholm 1938,geodetic,"Fundamental point: Stockholm observatory.",1938,7004,8901,3313,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RT90 adjustment (datum code 6124)",,OGP,"1996/04/12",,0,"D_Stockholm_1938" +6309,Yacare,geodetic,"Fundamental point: Yacare. Latitude: 30°35'53.68""S, longitude: 57°25'01.30""W (of Greenwich).",,7022,8901,3326,Topographic mapping.,,"NIMA http://earth-info.nima.mil/",OGP,"2011/03/28",2003.362 2005.460 2008.045 2011.018 2011.021,0,"D_Yacare" +6310,Yoff,geodetic,"Fundamental point: Yoff. Latitude: 14°44'41.62""N, longitude: 17°29'07.02""W (of Greenwich).",,7011,8901,1207,Topographic mapping.,,,OGP,"2008/06/24",2003.362 2008.045,0,"D_Yoff" +6311,Zanderij,geodetic,,,7022,8901,1222,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Zanderij" +6312,Militar-Geographische Institut,geodetic,"Fundamental point: Hermannskogel. Latitude: 48°16'15.29""N, longitude: 16°17'41.06""E (of Greenwich).",1901,7004,8901,1037,Geodetic survey.,"The longitude of the datum origin equates to a value for the Ferro meridian of 17°40' exactly west of Greenwich.","Bundesamt fur Eich- und Vermessungswesen; Wien",OGP,"2009/06/02",2008.045 2009.015,0,"D_MGI" +6313,Reseau National Belge 1972,geodetic,"Fundamental point: Uccle observatory. Latitude: 50°47'57.704""N, longitude: 4°21'24.983""E (of Greenwich).",1972,7022,8901,1347,Topographic mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Belge_1972" +6314,Deutsches Hauptdreiecksnetz,geodetic,"Fundamental point: Rauenberg. Latitude: 52°27'12.021""N, longitude: 13°22'04.928""E (of Greenwich). This station was destroyed in 1910 and the station at Potsdam substituted as the fundamental point.",,7004,8901,2326,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"BKG via EuroGeographics. http://crs.bkg.bund.de",OGP,"2008/06/24",2001.511 2006.410 2008.045,0,"D_Deutsches_Hauptdreiecksnetz" +6315,Conakry 1905,geodetic,"Fundamental point: Conakry. Latitude: 10.573766g N, longitude: 17.833682g W (of Paris).",1905,7011,8901,3257,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Conakry_1905" +6316,Dealul Piscului 1930,geodetic,"Fundamental point: latitude 44°24'33.9606""N, longitude 26°06'44.8772""E (of Greenwich).",1930,7022,8901,3295,Topographic mapping.,"Replaced by Pulkovo 1942(58) (datum code 6179)",Institute for Geodesy Photogrametry and Land Management,OGP,"2008/09/24",2008.011 2008.045,0,"D_Dealul_Piscului_1933" +6317,Dealul Piscului 1970,geodetic,"Fundamental point: latitude 44°24'23.7709""N, longitude 26°06'44.1265""E (of Greenwich).",1970,7024,8901,1197,Topographic mapping.,"Replaces 1933 adjustment (datum code 6316)",Institute for Geodesy Photogrametry and Land Management,OGP,"2008/06/24",2008.045,1,"D_Dealul_Piscului_1970" +6318,National Geodetic Network,geodetic,,1993,7030,8901,3267,Geodetic survey.,Replaces 1984 adjustment which used the WGS72 ellipsoid.,,OGP,"2004/06/16",2004.410,0,"D_NGN" +6319,Kuwait Utility,geodetic,,,7019,8901,1310,"Cadastre, engineering survey.",,,OGP,"1996/04/12",,0,"D_Kuwait_Utility" +6322,World Geodetic System 1972,geodetic,Developed from a worldwide distribution of terrestrial and geodetic satellite observations and defined through a set of station coordinates.,1972,7043,8901,1262,Satellite navigation.,Used by GPS before 1987. For Transit satellite positioning see also WGS 72BE.,"NIMA http://earth-info.nima.mil/",OGP,"2006/08/24",1999.030 2003.362 2005.460 2006.820,0,"D_WGS_1972" +6324,WGS 72 Transit Broadcast Ephemeris,geodetic,,1972,7043,8901,1262,Satellite navigation.,Alleged datum for use with Transit broadcast ephemeris prior to 1989. Relationship to WGS 72 has changed over time.,,OGP,"2006/08/24",1999.030 2006.820,0,"D_WGS_1972_BE" +6326,World Geodetic System 1984,geodetic,"Defined through a consistent set of station coordinates. These have changed with time: by 0.7m on 29/6/1994 [WGS 84 (G730)], a further 0.2m on 29/1/1997 [WGS 84 (G873)] and a further 0.06m on 20/1/2002 [WGS 84 (G1150)].",1984,7030,8901,1262,Satellite navigation.,"EPSG's WGS 84 datum has been the then current realisation. No distinction is made between the original WGS 84 frame, WGS 84 (G730), WGS 84 (G873) and WGS 84 (G1150). Since 1997, WGS 84 has been maintained within 10cm of the then current ITRF.","NIMA TR8350.2 June 2004 revision. http://earth-info.nga.mil/GandG/publications/tr8350.2/tr8350_2.html and +http://gis-lab.info/docs/nima-tr8350.2-addendum.pdf",OGP,"2006/08/25",2002.151 2002.890 2003.270 2005.460 2005.550 2006.810,0,"D_WGS_1984" +6600,Anguilla 1957,geodetic,"Fundamental point: station A4, Police.",1957,7012,8901,3214,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_Anguilla_1957" +6601,Antigua 1943,geodetic,"Fundamental point: station A14.",1943,7012,8901,1273,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_Antigua_1943" +6602,Dominica 1945,geodetic,"Fundamental point: station M12.",1945,7012,8901,3239,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_Dominica_1945" +6603,Grenada 1953,geodetic,"Fundamental point: station GS8, Sante Marie.",1953,7012,8901,1551,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"2006/02/09",2006.030,0,"D_Grenada_1953" +6604,Montserrat 1958,geodetic,"Fundamental point: station M36.",1958,7012,8901,3279,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_Montserrat_1958" +6605,St. Kitts 1955,geodetic,"Fundamental point: station K12.",1955,7012,8901,3297,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_St_Kitts_1955" +6606,St. Lucia 1955,geodetic,"Fundamental point: station DCS3.",1955,7012,8901,3298,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"1999/04/22",,0,"D_St_Lucia_1955" +6607,St. Vincent 1945,geodetic,"Fundamental point: station V1, Fort Charlotte.",1945,7012,8901,3300,Topographic mapping.,,Ordnance Survey of Great Britain.,OGP,"2006/02/09",2006.030,0,"D_St_Vincent_1945" +6608,"North American Datum 1927 (1976)",geodetic,"Fundamental point: Meade's Ranch. Latitude: 39°13'26.686""N, longitude: 98°32'30.506""W (of Greenwich).",1976,7008,8901,1367,"Geodetic survey, cadastre, topographic mapping, engineering survey.","NAD27(76) used in Ontario for all maps at scale 1/20 000 and larger; elsewhere in Canada for selected purposes.",Geodetic Survey of Canada.,OGP,"2008/06/24",2008.045,0,"D_NAD_1927_Definition_1976" +6609,"North American Datum 1927 (CGQ77)",geodetic,"Fundamental point: Meade's Ranch. Latitude: 39°13'26.686""N, longitude: 98°32'30.506""W (of Greenwich).",1977,7008,8901,1368,"Geodetic survey, cadastre, topographic mapping, engineering survey.","NAD27 (CGQ77) used in Quebec for all maps at scale 1/20 000 and larger; generally for maps issued by the Quebec cartography office whose reference system is CGQ77.","Geodetic Service of Quebec. Contact alain.bernard@mrn.gouv.qc.ca",OGP,"2008/06/24",2008.045,0,"D_NAD_1927_CGQ77" +6610,Xian 1980,geodetic,Xian observatory.,1980,7049,8901,3228,"Geodetic survey, topographic and engineering survey.",,"Chinese Science Bulletin, 2009, 54:2714-2721.",OGP,"2009/11/24",2009.084,0,"D_Xian_1980" +6611,Hong Kong 1980,geodetic,"Fundamental point: Trig ""Zero"", 38.4 feet south along the transit circle of the Kowloon Observatory. Latitude 22°18'12.82"", longitude 114°10'18.75""E (of Greenwich).",1980,7022,8901,1118,"Geodetic survey, topgraphic and engineering survey, cadastre.","Replaces Hong Kong 1963 and Hong Kong 1963(67).","Survey and Mapping Office, Lands Department. http://www.info.gov.hk/landsd/mapping/tindex.htm",OGP,"2008/06/24",2005.260 2008.045,0,"D_Hong_Kong_1980" +6612,Japanese Geodetic Datum 2000,geodetic,ITRF94 at epoch 1997.0,2000,7019,8901,1129,"Geodetic survey, topographic and engineering survey.","Instigated under amendment to the Japanese Surveying Law with effect from April 2002. Replaces Tokyo datum (code 6301).","Japanese Survey Federation and Geographical Survey Institute http://www.gsi.go.jp/ENGLISH/RESEARCH/BULLETIN/vol-45/45abst1.htm",OGP,"2002/06/22",,0,"D_JGD_2000" +6613,Gunung Segara,geodetic,"Station P5 (Gunung Segara). Latitude 0°32'12.83""S, longitude 117°08'48.47""E (of Greenwich).",,7004,8901,1360,Topographic mapping.,,TotalFinaElf.,OGP,"2008/06/24",2008.045,0,"D_Gunung_Segara" +6614,Qatar National Datum 1995,geodetic,Defined by transformation from WGS 84 - see coordinate operation code 1840.,1995,7022,8901,1346,Topographic mapping.,,Qatar Centre for Geographic Information.,OGP,"2002/06/28",,0,"D_QND_1995" +6615,Porto Santo 1936,geodetic,SE Base on Porto Santo island.,1936,7022,8901,1314,Topographic mapping.,"Replaced by 1995 adjustment (datum code 6663). For Selvagens see Selvagem Grande (code 6616).","Instituto Geografico e Cadastral Lisbon http://www.igeo.pt",OGP,"2003/08/14",2003.231 2003.232,0,"D_Porto_Santo_1936" +6616,Selvagem Grande,geodetic,,,7022,8901,2779,Topographic mapping.,,"Instituto Geografico e Cadastral Lisbon http://www.igeo.pt",OGP,"2003/08/14",2003.232,0, +6618,South American Datum 1969,geodetic,"Fundamental point: Chua. Geodetic latitude: 19°45'41.6527""S; geodetic longitude: 48°06'04.0639""W (of Greenwich). (Astronomic coordinates: Latitude 19°45'41.34""S +/- 0.05"", longitude 48°06'07.80""W +/- 0.08"").",1969,7050,8901,1358,Topographic mapping.,"SAD69 uses GRS 1967 ellipsoid but with 1/f to exactly 2 decimal places. In Brazil only, replaced by SAD69(96) (datum code 1075).",DMA 1974.,OGP,"2011/07/27",2003.362 2008.045 2011.053,0,"D_South_American_1969" +6619,SWEREF99,geodetic,Densification of ETRS89.,1999,7019,8901,1225,"Geodetic survey, cadastre, topographic mapping, engineering survey.","The solution was calculated in ITRF 97 epoch 1999.5, and has subsequently been corrected to ETRS 89 in accordance with guidelines given by EUREF.","National Land Survey of Sweden http://www.lantmateriet.se",OGP,"2010/03/01",2009.024,0,"D_SWEREF99" +6620,Point 58,geodetic,"Fundamental point: Point 58. Latitude: 3°58'37.040""N, longitude: 12°52'44.045""E (of Greenwich).",1969,7012,8901,2790,Geodetic survey,Used as the basis for computation of the 12th Parallel traverse conducted 1966-70 from Senegal to Chad and connecting to the Adindan triangulation in Sudan.,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Point_58" +6621,Fort Marigot,geodetic,,,7022,8901,2828,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RRAF 1991 (datum code 1047).",IGN Paris.,OGP,"2009/11/24",2009.073,0,"D_Fort_Marigot" +6622,Guadeloupe 1948,geodetic,,1948,7022,8901,2829,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RRAF 1991 (datum code 1047).",IGN Paris.,OGP,"2009/11/24",2004.561 2009.073,0,"D_Sainte_Anne" +6623,Centre Spatial Guyanais 1967,geodetic,"Fundamental point: Kourou-Diane. Latitude: 5°15'53.699""N, longitude: 52°48'09.149""W (of Greenwich).",1967,7022,8901,3105,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGFG95 (code 6624).",IGN Paris.,OGP,"2008/06/24",2004.562 2008.045,0,"D_CSG_1967" +6624,Reseau Geodesique Francais Guyane 1995,geodetic,ITRF93 at epoch 1995.0,1995,7019,8901,1097,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces CSG67 (datum code 6623).",IGN Paris.,OGP,"2002/11/29",,0,"D_RGFG_1995" +6625,Martinique 1938,geodetic,"Fundamental point: Fort Desaix. Latitude: 14°36'54.090""N, longitude: 61°04'04.030""W (of Greenwich).",1938,7022,8901,3276,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RRAF 1991 (datum code 1047).",IGN Paris.,OGP,"2009/11/24",2004.561 2008.045 2009.073,0,"D_Fort_Desaix" +6626,Reunion 1947,geodetic,"Fundamental point: Piton des Neiges (Borne). Latitude: 21°05'13.119""S, longitude: 55°29'09.193""E (of Greenwich).",1947,7022,8901,3337,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGR92 (datum code 6627).",IGN Paris.,OGP,"2008/06/24",2004.561 2008.045,0,"D_Reunion_1947" +6627,Reseau Geodesique de la Reunion 1992,geodetic,ITRF91 at epoch 1993.0,1992,7019,8901,1196,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Piton des Neiges (code 6626).",IGN Paris.,OGP,"2006/08/18",2006.770,0,"D_RGR_1992" +6628,Tahiti 52,geodetic,"Fundamental point: Tahiti North Base. Latitude: 17°38'10.0""S, longitude: 149°36'57.8""W (of Greenwich).",1952,7022,8901,2811,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by Tahiti 79 (datum code 6690) in Tahiti and Moorea 87 (code 6691) in Moorea.","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2005.380 2008.045,0,"D_Tahiti_1952" +6629,Tahaa 54,geodetic,"Fundamental point: Tahaa East Base. Latitude: 16°33'20.97""S, longitude: 151°29'06.25""W (of Greenwich).",1954,7022,8901,2812,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2005.380 2008.045,0,"D_Tahaa_1954" +6630,IGN72 Nuku Hiva,geodetic,"Fundamental point: Taiohae. Latitude: 8°55'03.97""S, longitude: 140°05'36.24""W (of Greenwich).",1972,7022,8901,3129,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2005.380 2008.045,0,"D_IGN72_Nuku_Hiva" +6631,K0 1949,geodetic,,1949,7022,8901,2816,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,IGN Paris.,OGP,"2002/11/29",,1,"D_K0_1949" +6632,Combani 1950,geodetic,Combani South Base.,1950,7022,8901,3340,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGM04 and Cadastre 1997 (datum codes 1036-37).",IGN Paris.,OGP,"2009/10/29",2009.072,0,"D_Combani_1950" +6633,IGN56 Lifou,geodetic,South end of the Goume base.,1956,7022,8901,2814,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",2006.620,0,"D_IGN56_Lifou" +6634,IGN72 Grande Terre,geodetic,North end of Gomen base.,1972,7022,8901,2822,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",2006.620,0,"D_IGN72_Grande_Terre" +6635,ST87 Ouvea,geodetic,,1987,7022,8901,2813,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,Service Topographique de la Nouvelle Caledonie.,OGP,"2002/11/29",,1,"D_ST87_Ouvea" +6636,Petrels 1972,geodetic,"Fundamental point: Astro station DZ on Ile de Petrels. Latitude: 66°40'00""S, longitude: 140°00'46""E (of Greenwich).",1972,7022,8901,2817,"Geodetic survey, topographic mapping.",,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Petrels_1972" +6637,Pointe Geologie Perroud 1950,geodetic,"Fundamental point: Astro station G.0 on Pointe Geologie. Latitude: 66°39'30""S, longitude: 140°01'00""E (of Greenwich).",1950,7022,8901,2818,"Geodetic survey, topographic mapping.",,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Pointe_Geologie_Perroud_1950" +6638,Saint Pierre et Miquelon 1950,geodetic,,1950,7008,8901,3299,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RGSPM06 (datum code 1038).",IGN Paris.,OGP,"2011/01/25",2006.060 2009.072 2011.004,0,"D_Saint_Pierre_et_Miquelon_1950" +6639,MOP78,geodetic,,1978,7022,8901,2815,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,IGN Paris.,OGP,"2002/11/29",,0,"D_MOP78" +6640,Reseau de Reference des Antilles Francaises 1991,geodetic,WGS 84 coordinates of a single station determined during the 1988 Tango mission.,1991,7030,8901,2824,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Fort Marigot and Sainte Anne (datum codes 6621-22) in Guadeloupe and Fort Desaix (datum code 6625) in Martinique.",IGN Paris.,OGP,"2004/03/26",2004.200 2009.073,1,"D_RRAF_1991" +6641,IGN53 Mare,geodetic,South-east end of the La Roche base.,1953,7022,8901,2819,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",2006.620,0,"D_IGN53_Mare" +6642,ST84 Ile des Pins,geodetic,"Fundamental point: Pic Nga.",1984,7022,8901,2820,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",2006.620,0,"D_ST84_Ile_des_Pins" +6643,ST71 Belep,geodetic,,1971,7022,8901,2821,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,Service Topographique de la Nouvelle Caledonie.,OGP,"2002/11/29",,0,"D_ST71_Belep" +6644,NEA74 Noumea,geodetic,Noumea old signal station.,1974,7022,8901,2823,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",2006.620,0,"D_NEA74_Noumea" +6645,Reseau Geodesique Nouvelle Caledonie 1991,geodetic,ITRF90 at epoch 1989.0,1989,7022,8901,1174,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,Service Topographique de la Nouvelle Caledonie.,OGP,"2002/11/29",,1,"D_RGNC_1991" +6646,Grand Comoros,geodetic,"Fundamental point: M'Tsaoueni. Latitude: 11°28'32.200""S, longitude: 43°15'42.315""E (of Greenwich).",,7022,8901,2807,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,IGN Paris.,OGP,"2008/06/24",2008.045,0,"D_Grand_Comoros" +6647,International Terrestrial Reference Frame 1988,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1988,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1988.0. Replaced by ITRF89 (code 6648).","International Earth Rotation Service (IERS) Annual Report for 1988. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6648,International Terrestrial Reference Frame 1989,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1989,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1989.0. Replaces ITRF88 (code 6647). Replaced by ITRF90 (code 6649).","International Earth Rotation Service (IERS) Technical Note No. 6. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6649,International Terrestrial Reference Frame 1990,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1990,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1990.0. Replaces ITRF89 (code 6648). Replaced by ITRF91 (code 6650).","International Earth Rotation Service (IERS) Technical Note No. 9. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6650,International Terrestrial Reference Frame 1991,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1991,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1991.0. Replaces ITRF90 (code 6649). Replaced by ITRF92 (code 6651).","International Earth Rotation Service (IERS) Technical Note No. 12. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6651,International Terrestrial Reference Frame 1992,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1992,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1992.0. Replaces ITRF91 (code 6650). Replaced by ITRF93 (code 6652).","International Earth Rotation Service (IERS) Technical Note No. 15. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6652,International Terrestrial Reference Frame 1993,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1993,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1993.0. Replaces ITRF92 (code 6651). Replaced by ITRF94 (code 6653).","International Earth Rotation Service (IERS) Technical Note No. 18. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6653,International Terrestrial Reference Frame 1994,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1994,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1994.0. Replaces ITRF93 (code 6652). Replaced by ITRF96 (code 6654).","International Earth Rotation Service (IERS) Technical Note No. 20. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6654,International Terrestrial Reference Frame 1996,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1996,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1996.0. Replaces ITRF94 (code 6653). Replaced by ITRF97 (code 6655).","International Earth Rotation Service (IERS) Technical Note No. 24. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6655,International Terrestrial Reference Frame 1997,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",1997,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 1997.0. Replaces ITRF96 (code 6654). Replaced by ITRF2000 (code 6656).","International Earth Rotation Service (IERS) Technical Note No. 27. Also IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2006/10/13",2006.770 2006.892,0, +6656,International Terrestrial Reference Frame 2000,geodetic,"Origin at geocentre, orientated to the BIH Terrestrial System at epoch 1984.0. Datum defined by a set of 3-dimensional Cartesian station coordinates (SCS).",2000,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 2000.0. Replaces ITRF97 (code 6655). Replaced by ITRF2005 (code 6896).","IGN Paris http://lareg.ensg.ign.fr/ITRF",OGP,"2011/02/25",2006.770 2006.892 2011.002,0, +6657,Reykjavik 1900,geodetic,"Fundamental point: Latitude: 64°08'31.88""N, longitude: 21°55'51.15""W (of Greenwich).",1900,7051,8901,3262,Medium scale topographic mapping.,,"Landmaelingar Islands (National Survey of Iceland).",OGP,"2008/06/24",2008.045,0,"D_Reykjavik_1900" +6658,Hjorsey 1955,geodetic,"Fundamental point: Latitude: 64°31'29.26""N, longitude: 22°22'05.84""W (of Greenwich).",1955,7022,8901,3262,"1/50,000 scale topographic mapping.",,"Landmaelingar Islands (National Survey of Iceland).",OGP,"2008/06/24",2008.045,0,"D_Hjorsey_1955" +6659,Islands Net 1993,geodetic,ITRF93 at epoch 1993.6.,1996,7019,8901,1120,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by ISN2004 (datum code 1060).","Landmaelingar Islands (National Survey of Iceland).",OGP,"2010/11/12",2006.770 2010.101,0,"D_Islands_Network_1993" +6660,Helle 1954,geodetic,,1954,7022,8901,2869,"Geodetic survey, topographic mapping..",,Statens kartverk.,OGP,"2003/06/27",,0,"D_Helle_1954" +6661,Latvia 1992,geodetic,Constrained to 4 ETRS89 points in Latvia from the EUREF Baltic 1992 campaign.,1992,7019,8901,1139,"Topographic mapping, geodetic survey.",Densification of ETRS89 during the 1992 Baltic campaign.,"Latvijas Republikas Valsts zemes dienests (State Land Service of the Republic of Latvia) via EuroGeographics. http://crs.bkg.bund.de/crs-eu/",OGP,"2003/06/27",,0,"D_Latvia_1992" +6663,Porto Santo 1995,geodetic,SE Base on Porto Santo island. Origin and orientation constrained to those of the 1936 adjustment.,1995,7022,8901,1314,Topographic mapping.,"Classical and GPS observations. Replaces 1936 adjustment (datum code 6615). +For Selvagens see Selvagem Grande (datum code 6616).","Instituto Geografico e Cadastral Lisbon; http://www.igeo.pt/",OGP,"2005/09/06",2005.460,0,"D_Porto_Santo_1995" +6664,Azores Oriental Islands 1995,geodetic,"Fundamental point: Forte de São Bras. Origin and orientation constrained to those of the 1940 adjustment.",1940,7022,8901,1345,Topographic mapping.,"Classical and GPS observations. Replaces 1940 adjustment (datum code 6184).","Instituto Geografico e Cadastral Lisbon; http://www.igeo.pt/",OGP,"2005/09/06",2005.460,0,"D_Azores_Oriental_Islands_1995" +6665,Azores Central Islands 1995,geodetic,"Fundamental point: Graciosa south west base. Origin and orientation constrained to those of the 1948 adjustment.",1948,7022,8901,1301,Topographic mapping.,"Classical and GPS observations. Replaces 1948 adjustment (datum code 6183).","Instituto Geografico e Cadastral Lisbon; http://www.igeo.pt/",OGP,"2005/09/06",2005.460,0,"D_Azores_Central_Islands_1995" +6666,Lisbon 1890,geodetic,"Fundamental point: Castelo Sao Jorge, Lisbon. Latitude: 38°42'43.631""N, longitude: 9°07'54.862""W of Greenwich.",1937,7004,8901,1294,Topographic mapping.,"Replaced by Lisbon 1937 adjustment (which uses International 1924 ellipsoid).","Instituto Geografico e Cadastral Lisbon http://www.igeo.pt",OGP,"2008/06/24",2003.361 2008.045,0,"D_Lisbon_1890" +6667,Iraq-Kuwait Boundary Datum 1992,geodetic,Four stations established between September and December 1991 determined by GPS and Doppler observations.,1992,7030,8901,2876,International boundary demarcation,,"United Nations Iraq-Kuwait Boundary Demarcation Commission, Final Report, May 1993.",OGP,"2003/09/01",,0,"D_Iraq_Kuwait_Boundary_1992" +6668,European Datum 1979,geodetic,"Fundamental point: Potsdam (Helmert Tower). Latitude: 52°22'51.4456""N, longitude: 13°03'58.9283""E (of Greenwich).",1979,7022,8901,1297,Scientific network.,Replaced by 1987 adjustment.,,OGP,"2008/06/24",2008.045,0,"D_European_1979" +6670,Istituto Geografico Militaire 1995,geodetic,Network of 1296 points observed 1992-1995 and adjusted in 1996 constrained to 9 ETRS89 points. Densification of ETRS89 in Italy.,1995,7030,8901,3343,Geodetic survey and scientific study.,,ENI,OGP,"2011/01/25",2011.004,0,"D_IGM_1995" +6671,Voirol 1879,geodetic,"Fundamental point: Voirol. Latitude: 36°45'08.199""N, longitude: 3°02'49.435""E (of Greenwich). Uses RGS (and old IGN) value of 2°20'13.95""for Greenwich-Paris meridian difference.",1879,7011,8901,1365,Topographic mapping.,"Replaces Voirol 1875 (code 6304).",IGN Paris,OGP,"2008/06/24",2008.045,0,"D_Voirol_1879" +6672,Chatham Islands Datum 1971,geodetic,,1971,7022,8901,2889,"Geodetic survey, topographic mapping, engineering survey.","Replaced by Chatham Islands Datum 1979 (code 6673).","Office of Surveyor General (OSG) Technical Report 14, June 2001.",OGP,"2004/02/17",,0,"D_Chatham_Island_1971" +6673,Chatham Islands Datum 1979,geodetic,"Fundamental point: station Astro. Latitude: 43°57'23.60""S, longitude: 176°34'28.65""W (of Greenwich).",1979,7022,8901,2889,"Geodetic survey, topographic mapping, engineering survey.","Replaces Chatham Islands Datum 1971 (code 6672). Replaced by New Zealand Geodetic Datum 2000 (code 6167) from March 2000.","Office of Surveyor General (OSG) Technical Report 14, June 2001.",OGP,"2008/06/24",2008.045,0,"D_Chatham_Islands_1979" +6674,Sistema de Referencia Geocentrico para las AmericaS 2000,geodetic,ITRF2000 at epoch 2000.40.,2000,7019,8901,3418,Geodetic survey.,"Realised by a frame of 184 stations observed in 2000 and adjusted in the ITRF2000. Includes ties to tide gauges. Replaces SIRGAS 1995 system for South America; expands SIRGAS to Central America. Name changed in 2001 for use in all of Latin America.","IBGE Brazil, http://www1.ibge.gov.br/",OGP,"2011/07/27",2005.460 2005.830 2006.465 2006.770 2009.087 2010.090 2011.053,0,"D_SIRGAS_2000" +6675,Guam 1963,geodetic,"Fundamental point: Tagcha. Latitude: 13°22'38.49""N, longitude: 144°45'51.56""E (of Greenwich).",1963,7008,8901,3255,Topographic mapping.,"Replaced by NAD83(HARN)","US National Geospatial Intelligence Agency (NGA). http://earth-info.nga.mil/",OGP,"2008/06/24",2005.460 2008.045,0,"D_Guam_1963" +6676,Vientiane 1982,geodetic,"Fundamental point: Vientiane (Nongteng) Astro Pillar. Latitude: 18°01'31.6301""N, longitude: 102°30'56.6999""E (of Greenwich).",1982,7024,8901,1138,Topographic mapping.,Replaced by Lao 1993.,National Geographic Department,OGP,"2008/06/24",2008.045,0,"D_Vientiane_1982" +6677,Lao 1993,geodetic,"Fundamental point: Lao 1982 coordinates of Pakxa pillar. Latitude: 18°23'57.0056""N, longitude: 103°38'41.8020""E (of Greenwich). Orientation parallel with WGS 84.",1993,7024,8901,1138,Topographic mapping.,Replaces Vientiane 1982. Replaced by Lao 1997,National Geographic Department,OGP,"2008/06/24",2008.045,0,"D_Lao_1993" +6678,Lao National Datum 1997,geodetic,"Fundamental point: Vientiane (Nongteng) Astro Pillar. Latitude: 18°01'31.3480""N, longitude: 102°30'57.1376""E (of Greenwich).",1997,7024,8901,1138,"Cadastre, topographic mapping, engineering survey.",Replaces Lao 1993.,National Geographic Department,OGP,"2008/06/24",2008.045,0,"D_Lao_National_Datum_1997" +6679,Jouik 1961,geodetic,,1961,7012,8901,2967,Hydrographic charting.,"Replaced by Mauritania 1999 (datum code 6702).",Woodside,OGP,"2006/06/12",2006.440,0,"D_Jouik_1961" +6680,Nouakchott 1965,geodetic,Nouakchott astronomical point.,1965,7012,8901,2968,Topographic survey.,"Triangulation limited to environs of Nouakchott. Extended in 1982 by satellite translocation from a single station ""Ruines"" to support Syledis chain for offshore operations. Replaced by Mauritania 1999 (datum code 6602).",IGN Paris and various industry sources.,OGP,"2006/06/12",2006.440,0,"D_Nouakchott_1965" +6681,Mauritania 1999,geodetic,,1999,7012,8901,1157,"Minerals management, topographic mapping.","A network of 36 GPS stations tied to ITRF96, 8 of which are IGN astronomic points.",Woodside,OGP,"2004/10/14",,1,"D_Mauritania_1999" +6682,Gulshan 303,geodetic,"Gulshan garden, Dhaka.",1995,7015,8901,1041,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Network of more than 140 control points observed and adjusted in 1995 by Japan International Cooperation Agency (JICA).",Survey of Bangladesh via IGN Paris and Tullow Oil.,OGP,"2006/06/22",2006.470,0,"D_Gulshan_303" +6683,Philippine Reference System 1992,geodetic,"Fundamental point: Balacan. Latitude: 13°33'41.000""N, longitude: 121°52'03.000""E (of Greenwich), geoid-ellipsoid separation 0.34m.",1992,7008,8901,1190,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Luzon 1911 datum (code 6253).","National Mapping and Resource Information Authority, Coast and Geodetic Survey Department.",OGP,"2008/06/24",2008.045,0,"D_Philippine_Reference_System_1992" +6684,Gan 1970,geodetic,,1970,7022,8901,3274,Topographic mapping.,"In some references incorrectly named ""Gandajika 1970"". See datum code 6685.",Various industry sources.,OGP,"2005/04/14",,0,"D_Gan_1970" +6685,Gandajika,geodetic,Gandajika base.,1953,7022,8901,1259,Topographic mapping.,In some references incorrectly attributed to the Maldives. See datum code 6684.,Various industry sources.,OGP,"2005/04/14",,1, +6686,Marco Geocentrico Nacional de Referencia,geodetic,"ITRF94 at epoch 1995.4. Bogota observatory coordinates: Latitude: 4°35'46.3215""N, longitude: 74°04'39.0285""W (of Greenwich).",2004,7019,8901,1070,Geodetic survey.,"Densification of SIRGAS 1995 within Colombia. Replaces Bogota 1975 (datum code 6218).","Instituto Geografico Agustin Codazzi (IGAC) publication ""Aspectos prácticos de la adopción del Marco Geocéntrico Nacional de Referencia MAGNA-SIRGAS como datum oficial de Colombia"". http://www.igac.gov.co/MAGNAWEB/DocumentosMAGNA.htm",OGP,"2011/01/25",2006.770 2007.060 2008.045 2011.004,0,"D_MAGNA" +6687,Reseau Geodesique de la Polynesie Francaise,geodetic,"ITRF92 at epoch 1993.0. Densification by GPS of the Reference Network of French Polynesia, a coordinate set of 13 stations determined through DORIS observations.",1993,7019,8901,1098,Geodetic survey.,"Replaces Tahaa 54 (datum code 6629), IGN 63 Hiva Oa (6689), IGN 72 Nuku Hiva (6630), Maupiti 83 (6692), MHEFO 55 (6688), Moorea 87 (6691) and Tahiti 79 (6690).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie. Also www.shom.fr, technical report 002/199.",OGP,"2006/08/18",2006.770,0,"D_Reseau_Geodesique_de_la_Polynesie_Francaise" +6688,Fatu Iva 72,geodetic,"Fundamental point: Latitude: 9°25'58.00""S, longitude: 138°55'06.25""W (of Greenwich).",1972,7022,8901,3133,Hydrographic and topographic survey.,"Recomputed by IGN in 1972 using origin and observations of 1953-1955 Mission Hydrographique des Establissements Francais d'Oceanie (MHEFO 55). Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2008.045,0,"D_Fatu_Iva_1972" +6689,IGN63 Hiva Oa,geodetic,"Fundamental point: Atuona. Latitude: 9°48'27.20""S, longitude: 139°02'15.45""W (of Greenwich).",1963,7022,8901,3130,Hydrographic and topographic survey.,"Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2008.045,0,"D_IGN63_Hiva_Oa" +6690,Tahiti 79,geodetic,"Fundamental point: Tahiti North Base. Latitude: 17°38'10.0""S, longitude: 149°36'57.8""W (of Greenwich).",1979,7022,8901,3124,Hydrographic and topographic survey.,"Replaces Tahiti 52 (datum code 6628) in Tahiti. Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2008.045,0,"D_Tahiti_1979" +6691,Moorea 87,geodetic,Two stations on Tahiti whose coordinates from the Tahiti 1979 adjustment were held fixed.,1987,7022,8901,3125,Hydrographic and topographic survey.,"Replaces Tahiti 52 (datum code 6628) in Moorea. Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2005/08/12",,0,"D_Moorea_1987" +6692,Maupiti 83,geodetic,"Fundamental point: Pitiahe South Base. Latitude: 16°28'28.942""S, longitude: 152°14'55.059""W (of Greenwich).",1983,7022,8901,3126,Hydrographic and topographic survey.,"Replaced by RGPF (datum code 6687).","Gouvernement de la Polynésie Française, Service de l'Urbanisme, Section topographie.",OGP,"2008/06/24",2008.045,0,"D_Maupiti_1983" +6693,Nakhl-e Ghanem,geodetic,"Coordinates of two stations determined with respect to ITRF 2000 at epoch 2005.2: BMT1 latitude 27°42'09.8417""N, longitude 52°12'11.0362""E (of Greenwich); Total1 latitude 27°31'03.8896""N, longitude 52°36'13.1312""E (of Greenwich).",2005,7030,8901,2362,Engineering survey for onshore facilities for South Pars phase 11 and Pars LNG.,,Total,OGP,"2008/06/24",2006.770 2008.045,0,"D_Nakhl-e_Ghanem" +6694,Posiciones Geodesicas Argentinas 1994,geodetic,"A geodetic network of 127 high accuracy surveyed points based on WGS 84 that define the National Geodetic System (Sistema Geodésico Nacional).",1994,7030,8901,1033,"Topographic mapping, geodetic survey.","Technically, but not legally, replaced by POSGAR 98 (code 6190) until May 2009, when POSGAR 2007 was officially accepted and officially replaced POSGAR 94.","Instituto Geográfico Militar de la República Argentina, http://www.igm.gov.ar",OGP,"2011/03/28",2008.052 2009.028,0,"D_POSGAR_1994" +6695,Katanga 1955,geodetic,"Fundamental point: Tshinsenda A. Latitude: 12°30'31.568""S, longitude: 28°01'02.971""E (of Greenwich).",1955,7008,8901,3147,"Cadastre, topographic mapping, engineering survey.",Replaces earlier adjustments.,"Clifford J. Mugnier, in Photogrammetric Engineering and Remote Sensing, June 2005.",OGP,"2009/06/02",2008.045 2009.011,0,"D_Katanga_1955" +6696,Kasai 1953,geodetic,"Two stations of the Katanga triangulation with ellipsoid change applied: Kabila, latitude 6°58'34.023""S, longitude 23°50'24.028""E (of Greenwich); and Gandajika NW base, latitude 6°45'01.057""S, longitude 23°57'03.038""E (of Greenwich).",1955,7012,8901,3148,"Cadastre, topographic mapping, engineering survey.",Replaced by IGC 1962 Arc of the 6th Parallel South.,Institute Geographique du Congo,OGP,"2008/06/24",2008.045,0,"D_Kasai_1955" +6697,IGC 1962 Arc of the 6th Parallel South,geodetic,"Coordinates of 3 stations determined with respect to Arc 1950: Mulungu 4°47'39.2325""S, 29°59'37.5864""E; Nyakawembe 4°14'57.3618""S, 29°42'52.8032""E; Kavula 4°35'15.8634""S, 29°41'14.2693""E (all longitude w.r.t. Greenwich).",1962,7012,8901,3149,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,Institute Geographique du Congo,OGP,"2008/06/24",2006.721 2008.045,0,"D_IGC_1962_Arc_of_the_6th_Parallel_South" +6698,IGN 1962 Kerguelen,geodetic,K0 1949.,1949,7022,8901,2816,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,IGN Paris.,OGP,"2005/11/23",,0,"D_Kerguelen_Island_1949" +6699,Le Pouce 1934,geodetic,"Fundamental point: Le Pouce. Latitude: 20°11'42.25""S, longitude: 57°31'18.58""E (of Greenwich).",1934,7012,8901,3209,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Cartography Section, Ministry of Housing and Land.",OGP,"2008/06/24",2008.045,0,"D_Le_Pouce_1934" +6700,IGN Astro 1960,geodetic,Realised through a set of independent astronomically-positioned points.,1960,7012,8901,1157,Small scale topographic mapping.,"Observed during 1959-1960. Independent points not connected through a network. Relative accuracy estimated at 50-100m. Replaced by Mauritania 1999 (datum code 6702).","Ministry of Works and Transport, Topography and Cartography Directive.",OGP,"2006/06/12",2006.440,0,"D_IGN_Astro_1960" +6701,Institut Geographique du Congo Belge 1955,geodetic,"Fundamental point: Yella east base. Latitude: 6°00'53.139""S, longitude: 12°58'29.287""E (of Greenwich).",1955,7012,8901,3171,"Cadastre, topographic mapping, engineering survey.","Replaced by IGC 1962 Arc of the 6th Parallel South, except for oil industry activities.",Institut Geographique du Congo Belge.,OGP,"2008/06/24",2008.045,0,"D_Institut_Geographique_du_Congo_Belge_1955" +6702,Mauritania 1999,geodetic,ITRF96 at epoch 1997.0,1999,7019,8901,1157,Geodesy.,"A network of 36 GPS stations tied to ITRF96, 8 of which are IGN 1962 astronomic points.","Ministry of Works and Transport, Topography and Cartography Directive.",OGP,"2006/08/18",2006.770,0,"D_Mauritania_1999" +6703,Missao Hidrografico Angola y Sao Tome 1951,geodetic,Extension of Camacupa datum into Cabinda.,1951,7012,8901,1318,Coastal hydrography.,"A variation of this datum has been adopted by the oil industry but incorrectly using the International 1924 ellipsoid and not tied to the official Portuguese triangulation - see Mhast (onshore) and Mhast (offshore) (codes 6704 and 6705).",Various industry sources.,OGP,"2006/01/03",,0,"D_Mhast_1951" +6704,"Mhast (onshore)",geodetic,Probably adopted a Mhast 1951 coordinate set but associated an incorrect ellipsoid with it.,,7022,8901,3179,"Oil industry exploration and production. From 1979, offshore use superseded by Mhast (offshore) (code 6705).","Adopted by oil industry with intention of being Mhast 1951 (code 6703) but incorrectly (for Mhast 1951) used the International 1924 ellipsoid. This datum differs by about 400 metres from the Portuguese Mhast 1951 and Camacupa datums.",ChevronTexaco.,OGP,"2006/01/03",,0,"D_Mhast_Onshore" +6705,"Mhast (offshore)",geodetic,"Fundamental point: Station Y at Malongo base camp. Latitude: 5°23'30.810""S, longitude: 12°12'01.590""E (of Greenwich).",1979,7022,8901,3180,Oil industry offshore exploration and production between 1979 and 1987.,"Origin coordinates determined by Transit single point position using 32 passes and transformed from WGS72BE using transformation code 15790. Differs from Mhast (onshore) by approximately 10m. Replaced in 1987 by Malongo 1987 (code 6259).",ChevronTexaco.,OGP,"2008/06/24",2008.045,0,"D_Mhast_Offshore" +6706,Egypt Gulf of Suez S-650 TL,geodetic,"Fundamental point: Station S-650 DMX. Adopted coordinates: latitude: 28°19'02.1907""N, longitude: 33°06'36.6344""E (of Greenwich). The proper Egypt 1907 coordinates for S-650 differ from these by about 20m.",1980,7020,8901,2341,Oil industry offshore exploration and production in Gulf of Suez after 1980.,"A coherent set of stations bordering the Gulf of Suez coordinated by Transit translocation (""TL"") between 1980 and 1984. Based on incorrect Egypt 1907 values for origin station S-650. Differs from true Egypt 1907 by approximately 20m.",Various industry sources.,OGP,"2008/06/24",2008.045,0,"D_Egypt_Gulf_of_Suez_S-650_TL" +6707,Tern Island 1961,geodetic,"Fundamental point: station FRIG on tern island, station B4 on Sorol Atoll.",1961,7022,8901,3181,Military and topographic mapping,"Two independent astronomic determinations considered to be consistent through adoption of common transformation to WGS 84 (see tfm code 15795).","DMA / NIMA / NGA TR8350.2 (original 1987 first edition and 3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Tern_Island_1961" +6708,Cocos Islands 1965,geodetic,"Fundamental point: Anna 1.",1965,7003,8901,1069,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6709,Iwo Jima 1945,geodetic,"Fundamental point: Beacon ""E"".",1945,7022,8901,3200,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6710,St. Helena 1971,geodetic,"Fundamental point: DOS 71/4.",1971,7022,8901,3183,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6711,Marcus Island 1952,geodetic,Marcus Island Astronomic Station.,1952,7022,8901,3203,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6712,Ascension Island 1958,geodetic,,1958,7022,8901,3182,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Ascension_Island_1958" +6713,Ayabelle Lighthouse,geodetic,"Fundamental point: Ayabelle Lighthouse.",,7012,8901,1081,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Ayabelle" +6714,Bellevue,geodetic,,1960,7022,8901,3193,Military and topographic mapping,"Datum covers all the major islands of Vanuatu in two different adjustment blocks, but practical usage is as given in the area of use.","DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/07/29",2006.510,0,"D_Bellevue_IGN" +6715,Camp Area Astro,geodetic,,,7022,8901,3205,Geodetic and topographic survey,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Camp_Area" +6716,Phoenix Islands 1966,geodetic,,1966,7022,8901,3196,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6717,Cape Canaveral,geodetic,"Fundamental point: Central 1950. Latitude: 28°29'32.36555""N, longitude 80°34'38.77362""W (of Greenwich)",1963,7008,8901,3206,US space and military operations.,,"US NGS and DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2008/06/24",2006.870 2008.045,0,"D_Cape_Canaveral" +6718,Solomon 1968,geodetic,"Fundamental point: GUX 1.",1968,7022,8901,1213,"Military and topographic mapping, +/- 25 meters in each component",,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Solomon_1968" +6719,Easter Island 1967,geodetic,,1967,7022,8901,3188,"Military and topographic mapping, +/- 25 meters in each component",,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Easter_Island_1967" +6720,Fiji Geodetic Datum 1986,geodetic,NWL 9D coordinates of 6 stations on Vitu Levu and Vanua Levu.,1986,7043,8901,1094,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Viti Levu 1912, Vanua Levu 1915 and Fiji 1956.","Survey Review 30,231 (January 1989).",OGP,"2006/07/19",2006.500,0,"D_Fiji_1986" +6721,Fiji 1956,geodetic,"Latitude origin was obtained astronomically at station Rasusuva = 17°49'03.13""S, longitude origin was obtained astronomically at station Suva = 178°25'35.835""E (of Greenwich).",1956,7022,8901,3398,Military and topographic mapping,For topographic mapping replaces Viti Levu 1912 and Vanua Levu 1915. Replaced by Fiji Geodetic Datum 1986.,"SOPAC, www.sopac.org, and Clifford J. Mugnier in Photogrammetric Engineering and Remote Sensing, October 2000, www.asprs.org.",OGP,"2008/06/24",2006.500 2008.045,0,"D_Fiji_1956" +6722,South Georgia 1968,geodetic,"Fundamental point: ISTS 061.",1968,7022,8901,3187,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6723,Grand Cayman 1959,geodetic,"Fundamental point: GC1. Latitude: 19°17'54.43""N, longitude: 81°22'37.17""W (of Greenwich).",1959,7008,8901,3185,Topographic mapping,,"Clifford J. Mugnier; in Photogrammetric Engineering & Remote Sensing November 1998. http://www.asprs.org/",OGP,"2008/06/24",2008.045,0,"D_Grand_Cayman_1959" +6724,Diego Garcia 1969,geodetic,"Fundamental point: ISTS 073.",1969,7022,8901,3189,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6725,Johnston Island 1961,geodetic,,1961,7022,8901,3201,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Johnston_Island_1961" +6726,Little Cayman 1961,geodetic,"Fundamental point: LC5. Latitude: 19°39'46.324""N, longitude: 81°03'47.910""W (of Greenwich).",1961,7008,8901,3186,Military and topographic mapping.,,"Clifford J. Mugnier; in Photogrammetric Engineering & Remote Sensing November 1998. http://www.asprs.org/",OGP,"2008/06/24",2008.045,0,"D_Little_Cayman_1961" +6727,Midway 1961,geodetic,,1961,7022,8901,3202,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Midway_1961" +6728,Pico de las Nieves 1984,geodetic,,,7022,8901,3873,Military and topographic mapping,"Replaces Pico de las Nieves 1968 (PN68). Replaced by REGCAN95.","DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2011/05/09",2009.033 2011.035,0,"D_Pico_de_Las_Nieves" +6729,Pitcairn 1967,geodetic,"Fundamental point: Pitcairn Astro. Latitude: 25°04'06.87""S, longitude: 130°06'47.83""W (of Greenwich).",1967,7022,8901,3208,Military and topographic mapping,Replaced by Pitcairn 2006.,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2008/06/24",2008.004 2008.045,0,"D_Pitcairn_1967" +6730,Santo 1965,geodetic,,1965,7022,8901,3194,Military and topographic mapping,"Datum covers all the major islands of Vanuatu in two different adjustment blocks, but practical usage is as given in the area of use.","DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/07/29",2006.510,0,"D_Santo_DOS_1965" +6731,Viti Levu 1916,geodetic,,1916,7012,8901,3195,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,1,"D_Viti_Levu_1916" +6732,Marshall Islands 1960,geodetic,,1960,7053,8901,3191,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0, +6733,Wake Island 1952,geodetic,,1952,7022,8901,3190,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Wake_Island_1952" +6734,Tristan 1968,geodetic,,1968,7022,8901,3184,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Tristan_1968" +6735,Kusaie 1951,geodetic,,1951,7022,8901,3192,Military and topographic mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Kusaie_1951" +6736,Deception Island,geodetic,,,7012,8901,3204,Military and scientific mapping,,"DMA / NIMA / NGA TR8350.2 (3rd edition, Amendment 1, 3 January 2000).",OGP,"2006/01/26",,0,"D_Deception_Island" +6737,Geocentric datum of Korea,geodetic,ITRF2000 at epoch 2002.0.,2002,7019,8901,1135,Geodetic survey.,,"Permanent Committee for GIS Infrastructure for Asia and the Pacific (PCGIAP), http://www.gsi.go.jp/PCGIAP",OGP,"2006/08/18",2006.770,0,"D_Korea_2000" +6738,Hong Kong 1963,geodetic,"Fundamental point: Trig ""Zero"", 38.4 feet south along the transit circle of the Kowloon Observatory. Latitude 22°18'12.82""N, longitude 114°10'18.75""E (of Greenwich).",1963,7007,8901,1118,Topographic mapping and hydrographic charting.,"Replaced by Hong Kong 1963(67) for military purposes only in 1967. Replaced by Hong Kong 1980.","Survey and Mapping Office, Lands Department. http://www.info.gov.hk/landsd/",OGP,"2008/06/24",2008.045,0,"D_Hong_Kong_1963" +6739,"Hong Kong 1963(67)",geodetic,"Fundamental point: Trig ""Zero"", 38.4 feet south along the transit circle of the Kowloon Observatory. Latitude 22°18'12.82""N, longitude 114°10'18.75""E (of Greenwich).",1967,7022,8901,1118,Military mapping and charting.,Replaces Hong Kong 1963 for military purposes only in 1967. Replaced by Hong Kong 1980.,UK Hydrographic Office.,OGP,"2008/06/24",2008.045,0,"D_Hong_Kong_1963_67" +6740,Parametrop Zemp 1990,geodetic,Geocentre.,1990,7054,8901,1262,Geodetic survey.,"Derived through satellite tracking techniques. EPSG's PZ-90 datum has been the then current realisation. No distinction is made between the original PZ-90 frame and the PZ-90.02 improvement which was introduced in 2007.","Geodeziya i Katografiya, 1993.",OGP,"2010/03/30",2010.031,0,"D_Parametrop_Zemp_1990" +6741,Faroe Datum 1954,geodetic,Astronomical observations at 3 points.,1954,7022,8901,3248,"Geodetic survey, topographic mapping, engineering and cadastral survey.","Replaced by ED50 in late 1970's for all purposes other than cadastre. Replaced by fk89 for cadastre.","Kort & Matrikelstyrelsen (KMS), Copenhagen.",OGP,"2006/08/04",2005.472,0,"D_Faroe_Datum_1954" +6742,Geodetic Datum of Malaysia 2000,geodetic,"ITRF2000, epoch 2000.0.",2000,7019,8901,1151,"Geodetic survey, topographic mapping, engineering and cadastrral survey.",Replaces all older Malaysian datums.,"GDM2000 Technical Manual; Department of Survey and Mapping Malaysia. www.jupem.gov.my",OGP,"2006/03/16",,0,"D_GDM_2000" +6743,Karbala 1979,geodetic,"Fundamental point: Karbala. Latitude: 32°34'14.4941""N, longitude: 44°00'49.6379""E.",1979,7012,8901,3625,Geodetic survey.,National geodetic network established by Polservice consortium.,Various industry sources.,OGP,"2011/01/25",2009.003 2011.004,0,"D_Karbala_1979_Polservice" +6744,Nahrwan 1934,geodetic,"Fundamental point: Nahrwan south base. Latitude: 33°19'10.87""N, longitude: 44°43'25.54""E (of Greenwich).",1934,7012,8901,3390,Oil exploration and production.,"This adjustment later discovered to have a significant orientation error. In Iran replaced by FD58. In Iraq, replaced by Nahrwan 1967.",Various industry sources.,OGP,"2008/06/24",2008.045,0,"D_Nahrwan_1934" +6745,"Rauenberg Datum/83",geodetic,"Fundamental point: Rauenberg. Latitude: 52°27'12.021""N, longitude: 13°22'04.928""E (of Greenwich). This station was destroyed in 1910 and the station at Potsdam substituted as the fundamental point.",1990,7004,8901,2545,"Geodetic survey, cadastre, topographic mapping, engineering survey.","RD/83 is the realisation of DHDN in Saxony. It is the resultant of applying a transformation derived at 106 points throughout former East Germany to Pulkovo 1942/83 points in Saxony.","BKG via EuroGeographics. http://crs.bkg.bund.de",OGP,"2008/06/24",2008.045,0, +6746,"Potsdam Datum/83",geodetic,"Fundamental point: Rauenberg. Latitude: 52°27'12.021""N, longitude: 13°22'04.928""E (of Greenwich). This station was destroyed in 1910 and the station at Potsdam substituted as the fundamental point.",1990,7004,8901,2544,"Geodetic survey, cadastre, topographic mapping, engineering survey.","PD/83 is the realisation of DHDN in Thuringen. It is the resultant of applying a transformation derived at 13 points on the border between East and West Germany to Pulkovo 1942/83 points in Thuringen.","BKG via EuroGeographics. http://crs.bkg.bund.de",OGP,"2008/06/24",2008.045,0, +6747,Greenland 1996,geodetic,ITRF94 at epoch 1996.62,1996,7019,8901,1107,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaces Ammassalik 1958, Qornoq 1927 and Scoresbysund 1952.","Kort & Matrikelstyrelsen (KMS), Copenhagen.",OGP,"2006/08/18",2006.770,0,"D_Greenland_1996" +6748,Vanua Levu 1915,geodetic,"Latitude origin was obtained astronomically at station Numuiloa = 16°23'38.36""S, longitude origin was obtained astronomically at station Suva = 178°25'35.835""E.",1915,7055,8901,3401,"Geodetic survey, cadastre, topographic mapping, engineering survey.","For topographic mapping, replaced by Fiji 1956. For other purposes, replaced by Fiji 1986.","Clifford J. Mugnier in Photogrammetric Engineering and Remote Sensing, October 2000, www.asprs.org.",OGP,"2008/06/24",2008.045,0,"D_Vanua_Levu_1915" +6749,Reseau Geodesique de Nouvelle Caledonie 91-93,geodetic,ITRF90 at epoch 1989.0.,1989,7019,8901,1174,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/08/18",2006.770,0, +6750,ST87 Ouvea,geodetic,Ouloup.,1987,7030,8901,2813,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,"Service Topographique de la Nouvelle Caledonie, Direction des Infrastructures, de la Topografie et des Transports Terrestres. www.dittt.gouv.nc",OGP,"2006/07/21",,0, +6751,"Kertau (RSO)",geodetic,,1969,7056,8901,1309,Metrication of RSO grid.,Adopts metric conversion of 0.914398 metres per yard exactly. This is a truncation of the Sears 1922 ratio.,Defence Geographic Centre.,OGP,"2006/07/24",,0, +6752,Viti Levu 1912,geodetic,"Latitude origin was obtained astronomically at station Monavatu = 17°53'28.285""S, longitude origin was obtained astronomically at station Suva = 178°25'35.835""E.",1912,7055,8901,3195,"Geodetic survey, cadastre, topographic mapping, engineering survey.","For topographic mapping, replaced by Fiji 1956. For other purposes, replaced by Fiji 1986.","Clifford J. Mugnier in Photogrammetric Engineering and Remote Sensing, October 2000, www.asprs.org.",OGP,"2008/06/24",2008.045,0, +6753,fk89,geodetic,,1989,7022,8901,3248,Cadastre,Replaces FD54 for cadastre.,"Kort & Matrikelstyrelsen (KMS), Copenhagen.",OGP,"2006/08/04",,0,"D_fk89" +6754,Libyan Geodetic Datum 2006,geodetic,5 stations tied to ITRF2000 through 8 days of continuous observations in May 2006.,2006,7022,8901,1143,"Geodetic survey, topographic mapping, engineering survey.",Replaces ELD79.,Survey Department of Libya.,OGP,"2006/08/25",,0,"D_Libyan_Geodetic_Datum_2006" +6755,Datum Geodesi Nasional 1995,geodetic,ITRF91at epoch 1992.0.,1995,7030,8901,1122,"Geodetic survey, topographic mapping, engineering survey.",Replaces ID74 and all older datums.,Bakosurtanal.,OGP,"2006/08/25",,0,"D_Datum_Geodesi_Nasional_1995" +6756,Vietnam 2000,geodetic,"Point N00, located in the premises of the Land Administration Research Institute, Hoang Quoc Viet Street, Hanoi.",2000,7030,8901,3328,"Geodetic survey, topographic mapping, engineering survey.",Replaces Hanoi 1972.,General Director of Land Administration.,OGP,"2011/01/25",2011.004,0,"D_Vietnam_2000" +6757,SVY21,geodetic,"Fundamental point: Base 7 at Pierce Resevoir. Latitude: 1°22'02.9154""N, longitude: 103°49'31.9752""E (of Greenwich).",2004,7030,8901,1210,Cadastre.,Replaces Kertau 1968 for cadastral purposes from August 2004.,Singapore Land Authority,OGP,"2008/06/24",2008.045,0,"D_SVY21" +6758,Jamaica 2001,geodetic,Aligned to WGS 84.,2001,7030,8901,1128,"Geodetic survey, cadastre, topographic mapping, hydrographic charting, engineering survey.",,National Land Agency.,OGP,"2007/01/19",,0,"D_Jamaica_2001" +6759,"NAD83 (National Spatial Reference System 2007)",geodetic,"Coordinates of 486 national continually operating reference system (CORS) and 195 collaborative GPS (CGPS) sites constrained to their CORS96 values, ITRF2000 at epoch 2002.0.",2007,7019,8901,1511,Geodetic survey.,,"U.S. National Geodetic Survey, http://www.ngs.noaa.gov/",OGP,"2007/03/13",,0, +6760,World Geodetic System 1966,geodetic,Developed from a worldwide distribution of terrestrial and geodetic satellite observations and defined through a set of station coordinates.,1966,7025,8901,1262,Geodesy.,"A worldwide 5° × 5° mean free air gravity anomaly field provided the basic data for producing the WGS 66 gravimetric geoid. Replaced by WGS 72.","US DMA/NIMA/NGA",OGP,"2007/03/25",,0, +6761,Croatian Terrestrial Reference System,geodetic,Densification of ETRS89 in Croatia at epoch 1995.55.,1996,7019,8901,1076,Geodesy.,Based on 78 control points with coordinates determined in ETRS89.,State Geodetic Administration of the Republic of Croatia.,OGP,"2007/09/25",,0, +6762,Bermuda 2000,geodetic,ITRF96 at epoch 2000.0.,2000,7030,8901,1047,"Topographic mapping, cadastral and engineering survey.",,Department of Lands Buildings and Surveys,OGP,"2007/12/12",,0, +6763,Pitcairn 2006,geodetic,"Fundamental point: Pitcairn Astro. Latitude: 25°04'06.7894""S, longitude: 130°06'46.6816""W (of Greenwich), derived by single point GPS oberservations.",2006,7030,8901,3208,"Cadastre, topographic mapping and engineering survey",Replaces Pitcairn 1967.,Pitcairn Island Government.,OGP,"2008/06/24",2008.045,0, +6764,Ross Sea Region Geodetic Datum 2000,geodetic,Based on ITRF96 at epoch 2000.0,2000,7019,8901,3558,"Geodetic survey, topographic mapping.",,"Land Information New Zealand: LINZS25001 Standard for Ross Sea Region Geodetic Datum 2000; 16 November 2007.",OGP,"2008/04/04",,0, +6765,Slovenia Geodetic Datum 1996,geodetic,"Densification of ETRS89, based on ITRS89 at epoch 1995.55.",1996,7019,8901,1212,"Geodetic survey, topographic mapping.",,Surveying and Mapping Authority of Slovenia,OGP,"2008/04/04",,0, +6801,"CH1903 (Bern)",geodetic,"Fundamental point: Old Bern observatory. Latitude: 46°57'08.660""N, longitude: 0°E (of Bern).",1903,7004,8907,1286,Topographic mapping.,,"Bundesamt für Landestopographie",OGP,"2008/06/24",2003.361 2008.045,0,"D_Bern_1898" +6802,"Bogota 1975 (Bogota)",geodetic,"Fundamental point: Bogota observatory. Latitude: 4°35'56.570""N, longitude: 0°E (of Bogota).",1975,7022,8904,3229,Topographic mapping.,,,OGP,"2008/06/24",2000.200 2003.361 2008.045,0,"D_Bogota" +6803,"Lisbon 1937 (Lisbon)",geodetic,"Fundamental point: Castelo Sao Jorge, Lisbon. Latitude: 38°42'43.631""N, longitude: 0°E (of Lisbon).",1937,7022,8902,1294,Topographic mapping.,"Replaces Lisbon 1890 adjustment (which used Bessel 1841 ellipsoid).","Instituto Geografico e Cadastral; Lisbon",OGP,"2008/06/24",2001.551 2008.045,0,"D_Lisbon" +6804,"Makassar (Jakarta)",geodetic,"Fundamental point: station P1, Moncongloe. Latitude 5°08'41.42""S, longitude 12°35'47.15""E (of Jakarta).",,7004,8908,1316,Topographic mapping.,,OGP,OGP,"2008/06/24",2003.361 2008.045,0,"D_Makassar" +6805,"Militar-Geographische Institut (Ferro)",geodetic,"Fundamental point: Hermannskogel. Latitude: 48°16'15.29""N, longitude: 33°57'41.06""E (of Ferro).",1901,7004,8909,1321,Geodetic survey.,Replaced by MGI in Austria and MGI 1901 in former Yugoslavia.,"Bundesamt fur Eich- und Vermessungswesen; Wien",OGP,"2009/06/02",2008.045 2009.015,0,"D_MGI" +6806,"Monte Mario (Rome)",geodetic,"Fundamental point: Monte Mario. Latitude: 41°55'25.51""N, longitude: 0°00' 00.00""E (of Rome).",,7022,8906,3343,Topographic mapping.,"Replaced Genova datum, Bessel 1841 ellipsoid, from 1940.",,OGP,"2008/06/24",2003.360 2008.045,0,"D_Monte_Mario" +6807,"Nouvelle Triangulation Francaise (Paris)",geodetic,"Fundamental point: Pantheon. Latitude: 54.273618g N, longitude: 0.0106921g E (of Paris).",1895,7011,8903,3694,Topographic mapping.,,,OGP,"2010/03/30",2003.361 2009.106,0,"D_NTF" +6808,"Padang 1884 (Jakarta)",geodetic,"Fundamental point: Padang",1884,7004,8908,1355,Topographic mapping.,,,OGP,"1995/06/02",,0,"D_Padang_1884" +6809,"Reseau National Belge 1950 (Brussels)",geodetic,"Fundamental point: Lommel (tower). Latitude: 51°13'47.334""N, longitude: 0°56'44.773""E (of Brussels).",1950,7022,8910,1347,Topographic mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Belge_1950" +6810,"Tananarive 1925 (Paris)",geodetic,"Fundamental point: Tananarive observatory. Latitude: 21.0191667g S, longitude: 50.23849537g E (of Paris)",1925,7022,8903,3273,Topographic mapping.,,IGN Paris,OGP,"2003/12/31",2003.361,0,"D_Tananarive_1925" +6811,"Voirol 1875 (Paris)",geodetic,"Fundamental point: Voirol. Latitude: 40.83578 grads N, longitude: 0.78873 grads E (of Paris).",1875,7011,8903,1365,Topographic mapping.,,IGN Paris,OGP,"2004/01/07",2003.361,0,"D_Voirol_1875" +6813,"Batavia (Jakarta)",geodetic,"Fundamental point: Longitude at Batavia astronomical station. Latitude: 6°07'39.522""S, longitude: 0°00'00.0""E (of Jakarta). Latitude and azimuth at Genuk.",,7004,8908,1285,Topographic mapping.,,,OGP,"2008/06/24",2003.361 2008.045,0,"D_Batavia" +6814,"Stockholm 1938 (Stockholm)",geodetic,"Fundamental point: Stockholm observatory",1938,7004,8911,3313,"Geodetic survey, cadastre, topographic mapping, engineering survey.","Replaced by RT90 adjustment (datum code 6124)",,OGP,"1996/04/12",,0,"D_Stockholm_1938" +6815,"Greek (Athens)",geodetic,"Fundamental point: Athens Observatory. Latitude 37°58'20.132""N, longitude 0°E (of Athens).",,7004,8912,3254,Topographic mapping.,See geodetic datum alias 6404. Used as basis of topographic mapping based on Hatt projection.,"Topography Department; National Technical University of Athens",OGP,"2011/07/20",2008.045 2011.062,0,"D_Greek" +6816,"Carthage (Paris)",geodetic,"Fundamental point: Carthage. Latitude: 40.9464506g N, longitude: 8.8724368g E (of Paris).",1925,7011,8903,1618,Topographic mapping.,Fundamental point astronomic coordinates determined in 1878.,,OGP,"2004/01/15",2003.362 2003.050,0,"D_Carthage" +6817,"NGO 1948 (Oslo)",geodetic,"Fundamental point: Oslo observatory. Latitude: 59°54'43.7""N, longitude: 0°00'00.0""E (of Oslo).",1948,7005,8913,1352,"Geodetic survey, cadastre, topographic mapping, engineering survey.",,,OGP,"2008/06/24",2003.362 2008.045,0,"D_NGO_1948" +6818,"System Jednotne Trigonometricke Site Katastralni (Ferro)",geodetic,"Modification of Austrian MGI (Ferro) datum.",1920,7004,8909,1306,"Geodetic survey, cadastre, topographic mapping, engineering survey.","S-JTSK = System of the Unified Trigonometrical Cadastral Network.","Research Institute for Geodesy Topography and Cartography (VUGTK); Prague.",OGP,"2010/11/02",2001.260 2010.071,0,"D_S_JTSK" +6819,"Nord Sahara 1959 (Paris)",geodetic,"Coordinates of primary network readjusted on ED50 datum and then transformed conformally to Clarke 1880 (RGS) ellipsoid.",1959,7012,8903,1366,Topographic mapping.,,"""Le System Geodesique Nord-Sahara""; IGN Paris",OGP,"2000/06/23",,1,"D_Nord_Sahara_1959" +6820,"Gunung Segara (Jakarta)",geodetic,"Station P5 (Gunung Segara) 0°32'12.83""S, 117°08'48.47""E (of Greenwich). Longitude 8°20'20.68""E (of Jakarta).",,7004,8908,1360,Topographic mapping.,,,OGP,"2008/06/24",2008.045,0,"D_Gunung_Segara" +6821,"Voirol 1879 (Paris)",geodetic,"Fundamental point: Voirol. Latitude: 40.835864 grads N, longitude: 0.788735 grads E (of Paris).",1879,7011,8903,1365,Topographic mapping.,"Replaces Voirol 1875 (Paris) (code 6811).",IGN Paris,OGP,"2004/01/07",,0,"D_Voirol_1879" +6896,International Terrestrial Reference Frame 2005,geodetic,"Origin at geocentre, originally orientated to the BIH Terrestrial System at epoch 1984.0 then adjusted to ensure zero net rotation to earth's overall tectonic motion. Defined by time series of Cartesian station coordinates and Earth Rotation parameters.",2005,7019,8901,1262,Geodesy.,"Realisation of the IERS Terrestrial Reference System (ITRS) at epoch 2005.0. Replaces ITRF2000 (code 6656). Replaced by ITRF2008 (datum code 1061).","IGN Paris http://itrf.ensg.ign.fr/itrs_itrf.php",OGP,"2011/02/25",2011.002,0, +6901,"Ancienne Triangulation Francaise (Paris)",geodetic,,,7027,8914,1326,Topographic mapping.,"Uses the RGS value for the Paris meridian. In Alsace, data suspected to be transformation of German network into ATF. Replaced by Nouvelle Triangulation Francaise (Paris) (code 6807) which uses the 1936 IGN value for the Paris meridian.",,OGP,"2007/11/01",2007.083,0,"D_ATF" +6902,"Nord de Guerre (Paris)",geodetic,,,7027,8903,1369,Topographic mapping.,,,OGP,"1995/06/02",,1,"D_Nord_de_Guerre" +6903,"Madrid 1870 (Madrid)",geodetic,"Fundamental point: Madrid observatory.",1870,7028,8905,2366,Topographic mapping.,,"Institut de Geomatica; Barcelona",OGP,"1998/11/11",,0,"D_Madrid_1870" +6904,"Lisbon 1890 (Lisbon)",geodetic,"Fundamental point: Castelo Sao Jorge, Lisbon. Latitude: 38°42'43.631""N, longitude: 0°E (of Lisbon).",1937,7004,8902,1294,Topographic mapping.,"Replaced by Lisbon 1937 adjustment (which uses International 1924 ellipsoid).","Instituto Geografico e Cadastral Lisbon http://www.igeo.pt",OGP,"2008/06/24",2003.232 2008.045,0,"D_Lisbon_1890" +9300,Astra Minas,engineering,"Origin at 45°59'54.79""S, 67°34'38.94""W (of Greenwich).",,,,1265,Oil industry mapping.,,,OGP,"2008/06/24",2008.045,0, +9301,Barcelona,engineering,"Centre of the gateway of San Cristobal chuch; Plaza Boyaca; Barcelona.",,,,1266,Oil industry mapping.,"Coordinates variously given as 10°08'06""N 64°41'17""W and 10°08'06""N 64°41'07.5""W. It is not clear whether there should be two local datums.","Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9302,Maturin,engineering,"Concrete post PR-1 in Plaza Bolivar; Maturin. 9°44'55""N, 63°10'40""W (of Greenwich).",,,,1320,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9303,Maracaibo Cross,engineering,"Cruz Canada Morillo in Maracaibo; 10°38'32.328""N, 71°37'12.12""W Loma Quintana datum.",,,,1319,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9304,La Rosa,engineering,"Monument in La Rosa; 10°22'40.417""N, 71°26'59.488""W Loma Quintana datum.",,,,1311,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9305,Mene Grande,engineering,"Monument in Santa Barbara; Mene Grande. 9°52'25.488""N, 70°54'35.310""W (of Greenwich).",,,,1270,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9306,El Cubo,engineering,"8°44'17.258""N, 72°30'09.01""W (of Greenwich).",,,,1269,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9307,Dabajuro,engineering,"Church tower at Dabajuro; 11°01'19""N, 70°40'40""W (of Greenwich).",,,,1268,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9308,Tucupita,engineering,"Centre of Plaza Bolivar; Tucupita; 9°03'32""N, 62°03'07.6""W (of Greenwich).",,,,1370,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9309,El Mene,engineering,"10°04'49.1""N, 71°02'10""W (of Greenwich).",,,,1270,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9310,Santa Maria de Ipire,engineering,"Concrete post PR-1 in Plaza Bolivar; Santa Maria de Ipire; 8°40'06""N, 65°19'09""W (of Greenwich).",,,,1371,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2008/06/24",2008.045,0, +9311,Barinas west base,engineering,Concrete pillar.,,,,1267,Oil industry mapping.,,"Ministry of Mines standards manual, 1974.",OGP,"2000/06/10",,0, +9312,EPSG example X,engineering,"Bin grid I=J=1 at WGS 84 / UTM zone 31N 456781E 5836723N.",,,,1263,Example only.,"Example only!","Bin grid orientation = 20 degrees grid. Bin width I=25m, J=12.5m. Bin increment I=1, J=1. Scale factor at origin 0.99984. + +Example only!",OGP,"2000/06/23",,1, +9313,EPSG example Platform Y,engineering,Conductor slot A1.,,,,1263,Example only.,Example only,OGP,OGP,"2000/06/23",,0, +9314,Tombak LNG plant,engineering,"Plant grid coordinates of x=20000m, y=10000m at Nakhl-e Ghanem / UTM zone 39 coordinates 618336.784E, 3067774.21N. Plant grid x orientated at UTM grid bearing of 45 deg., plant grid y orientated at UTM grid bearing of 315 deg.",,,,2362,Engineering survey.,,Total,OGP,"2005/08/18",,0, +9315,UKOOA P6 seismic bin grid example,engineering,"Centre of bin grid I=J=1.",,,,1263,Example only.,,"UKOOA Data Exchange Format P6/98 ""Definition of 3D Seismic Binning Grids"".",OGP,"2005/09/08",,0, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Symbology.Forms.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamDefines.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamDefines.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Harvest/DamDefines.wxi (revision 2866) @@ -0,0 +1,6 @@ + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/it-IT/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_netCDF.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/DotSpatial.Plugins.Measure.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_ECW_JP2ECW.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/pt-BR/DotSpatial.Controls.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/stateplane.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/stateplane.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/stateplane.csv (revision 2866) @@ -0,0 +1,259 @@ +"ID","STATE","ZONE","PROJ_METHOD","DATUM","USGS_CODE","EPSG_PCS_CODE" +101,ALABAMA,EAST,1,NAD83,101,26929 +102,ALABAMA,WEST,1,NAD83,102,26930 +201,ARIZONA,EAST,1,NAD83,201,26948 +202,ARIZONA,CENTRAL,1,NAD83,202,26949 +203,ARIZONA,WEST,1,NAD83,203,26950 +301,ARKANSAS,NORTH,2,NAD83,301,26951 +302,ARKANSAS,SOUTH,2,NAD83,302,26952 +401,CALIFORNIA,I,2,NAD83,401,26941 +402,CALIFORNIA,II,2,NAD83,402,26942 +403,CALIFORNIA,III,2,NAD83,403,26943 +404,CALIFORNIA,IV,2,NAD83,404,26944 +405,CALIFORNIA,V,2,NAD83,405,26945 +406,CALIFORNIA,VI,2,NAD83,406,26946 +501,COLORADO,NORTH,2,NAD83,501,26953 +502,COLORADO,CENTRAL,2,NAD83,502,26954 +503,COLORADO,SOUTH,2,NAD83,503,26955 +600,CONNECTICUT,,2,NAD83,600,26956 +700,DELAWARE,,1,NAD83,700,26957 +901,FLORIDA,EAST,1,NAD83,901,26958 +902,FLORIDA,WEST,1,NAD83,902,26959 +903,FLORIDA,NORTH,2,NAD83,903,26960 +1001,GEORGIA,EAST,1,NAD83,1001,26966 +1002,GEORGIA,WEST,1,NAD83,1002,26967 +1101,IDAHO,EAST,1,NAD83,1101,26968 +1102,IDAHO,CENTRAL,1,NAD83,1102,26969 +1103,IDAHO,WEST,1,NAD83,1103,26970 +1201,ILLINOIS,EAST,1,NAD83,1201,26971 +1202,ILLINOIS,WEST,1,NAD83,1202,26972 +1301,INDIANA,EAST,1,NAD83,1301,26973 +1302,INDIANA,WEST,1,NAD83,1302,26974 +1401,IOWA,NORTH,2,NAD83,1401,26975 +1402,IOWA,SOUTH,2,NAD83,1402,26976 +1501,KANSAS,NORTH,2,NAD83,1501,26977 +1502,KANSAS,SOUTH,2,NAD83,1502,26978 +1600,KENTUCKY,SINGLE ZONE,2,NAD83,1600,3088 +1601,KENTUCKY,NORTH,2,NAD83,1601,2205 +1602,KENTUCKY,SOUTH,2,NAD83,1602,26980 +1701,LOUISIANA,NORTH,2,NAD83,1701,26981 +1702,LOUISIANA,SOUTH,2,NAD83,1702,26982 +1703,LOUISIANA,OFFSHORE,2,NAD83,1703, +1801,MAINE,EAST,1,NAD83,1801,26983 +1802,MAINE,WEST,1,NAD83,1802,26984 +1900,MARYLAND,,2,NAD83,1900,26985 +2001,MASSACHUSETTS,MAINLAND,2,NAD83,2001,26986 +2002,MASSACHUSETTS,ISLAND,2,NAD83,2002,26987 +2111,MICHIGAN,NORTH,2,NAD83,2111,26988 +2112,MICHIGAN,CENTRAL,2,NAD83,2112,26989 +2113,MICHIGAN,SOUTH,2,NAD83,2113,26990 +2201,MINNESOTA,NORTH,2,NAD83,2201,26991 +2202,MINNESOTA,CENTRAL,2,NAD83,2202,26992 +2203,MINNESOTA,SOUTH,2,NAD83,2203,26993 +2301,MISSISSIPPI,EAST,1,NAD83,2301,26994 +2302,MISSISSIPPI,WEST,1,NAD83,2302,26995 +2401,MISSOURI,EAST,1,NAD83,2401,26996 +2402,MISSOURI,CENTRAL,1,NAD83,2402,26997 +2403,MISSOURI,WEST,1,NAD83,2403,26998 +2500,MONTANA,,2,NAD83,2500,32100 +2600,NEBRASKA,,2,NAD83,2600,32104 +2701,NEVADA,EAST,1,NAD83,2701,32107 +2702,NEVADA,CENTRAL,1,NAD83,2702,32108 +2703,NEVADA,WEST,1,NAD83,2703,32109 +2800,"NEW HAMPSHIRE",,1,NAD83,2800,32110 +2900,"NEW JERSEY",,1,NAD83,2900,32111 +3001,"NEW MEXICO",EAST,1,NAD83,3001,32112 +3002,"NEW MEXICO",CENTRAL,1,NAD83,3002,32113 +3003,"NEW MEXICO",WEST,1,NAD83,3003,32114 +3101,"NEW YORK",EAST,1,NAD83,3101,32115 +3102,"NEW YORK",CENTRAL,1,NAD83,3102,32116 +3103,"NEW YORK",WEST,1,NAD83,3103,32117 +3104,"NEW YORK","LONG ISLAND",2,NAD83,3104,32118 +3200,"NORTH CAROLINA",,2,NAD83,3200,32119 +3301,"NORTH DAKOTA",NORTH,2,NAD83,3301,32120 +3302,"NORTH DAKOTA",SOUTH,2,NAD83,3302,32121 +3401,OHIO,NORTH,2,NAD83,3401,32122 +3402,OHIO,SOUTH,2,NAD83,3402,32123 +3501,OKLAHOMA,NORTH,2,NAD83,3501,32124 +3502,OKLAHOMA,SOUTH,2,NAD83,3502,32125 +3601,OREGON,NORTH,2,NAD83,3601,32126 +3602,OREGON,SOUTH,2,NAD83,3602,32127 +3701,PENNSYLVANIA,NORTH,2,NAD83,3701,32128 +3702,PENNSYLVANIA,SOUTH,2,NAD83,3702,32129 +3800,"RHODE ISLAND",,1,NAD83,3800,32130 +3900,"SOUTH CAROLINA",,2,NAD83,3900,32133 +4001,"SOUTH DAKOTA",NORTH,2,NAD83,4001,32134 +4002,"SOUTH DAKOTA",SOUTH,2,NAD83,4002,32135 +4100,TENNESSEE,,2,NAD83,4100,32136 +4201,TEXAS,NORTH,2,NAD83,4201,32137 +4202,TEXAS,"NORTH CENTRAL",2,NAD83,4202,32138 +4203,TEXAS,CENTRAL,2,NAD83,4203,32139 +4204,TEXAS,"SOUTH CENTRAL",2,NAD83,4204,32140 +4205,TEXAS,SOUTH,2,NAD83,4205,32141 +4301,UTAH,NORTH,2,NAD83,4301,32142 +4302,UTAH,CENTRAL,2,NAD83,4302,32143 +4303,UTAH,SOUTH,2,NAD83,4303,32144 +4400,VERMONT,,1,NAD83,4400,32145 +4501,VIRGINIA,NORTH,2,NAD83,4501,32146 +4502,VIRGINIA,SOUTH,2,NAD83,4502,32147 +4601,WASHINGTON,NORTH,2,NAD83,4601,32148 +4602,WASHINGTON,SOUTH,2,NAD83,4602,32149 +4701,"WEST VIRGINIA",NORTH,2,NAD83,4701,32150 +4702,"WEST VIRGINIA",SOUTH,2,NAD83,4702,32151 +4801,WISCONSIN,NORTH,2,NAD83,4801,32152 +4802,WISCONSIN,CENTRAL,2,NAD83,4802,32153 +4803,WISCONSIN,SOUTH,2,NAD83,4803,32154 +4901,WYOMING,EAST,1,NAD83,4901,32155 +4902,WYOMING,"EAST CENTRAL",1,NAD83,4902,32156 +4903,WYOMING,"WEST CENTRAL",1,NAD83,4903,32157 +4904,WYOMING,WEST,1,NAD83,4904,32158 +5001,ALASKA,"ZONE NO. 1",4,NAD83,5001,26931 +5002,ALASKA,"ZONE NO. 2",1,NAD83,5002,26932 +5003,ALASKA,"ZONE NO. 3",1,NAD83,5003,26933 +5004,ALASKA,"ZONE NO. 4",1,NAD83,5004,26934 +5005,ALASKA,"ZONE NO. 5",1,NAD83,5005,26935 +5006,ALASKA,"ZONE NO. 6",1,NAD83,5006,26936 +5007,ALASKA,"ZONE NO. 7",1,NAD83,5007,26937 +5008,ALASKA,"ZONE NO. 8",1,NAD83,5008,26938 +5009,ALASKA,"ZONE NO. 9",1,NAD83,5009,26939 +5010,ALASKA,"ZONE NO. 10",2,NAD83,5010,26940 +5101,HAWAII,1,1,NAD83,5101,26961 +5102,HAWAII,2,1,NAD83,5102,26962 +5103,HAWAII,3,1,NAD83,5103,26963 +5104,HAWAII,4,1,NAD83,5104,26964 +5105,HAWAII,5,1,NAD83,5105,26965 +5200,"PUERTO RICO AND","VIRGIN ISLANDS",2,NAD83,5200,32161 +10101,ALABAMA,EAST,1,NAD27,101,26729 +10102,ALABAMA,WEST,1,NAD27,102,26730 +10201,ARIZONA,EAST,1,NAD27,201,26748 +10202,ARIZONA,CENTRAL,1,NAD27,202,26749 +10203,ARIZONA,WEST,1,NAD27,203,26750 +10301,ARKANSAS,NORTH,2,NAD27,301,26751 +10302,ARKANSAS,SOUTH,2,NAD27,302,26752 +10401,CALIFORNIA,I,2,NAD27,401,26741 +10402,CALIFORNIA,II,2,NAD27,402,26742 +10403,CALIFORNIA,III,2,NAD27,403,26743 +10404,CALIFORNIA,IV,2,NAD27,404,26744 +10405,CALIFORNIA,V,2,NAD27,405,26745 +10406,CALIFORNIA,VI,2,NAD27,406,26746 +10407,CALIFORNIA,VII,2,NAD27,407,26799 +10501,COLORADO,NORTH,2,NAD27,501,26753 +10502,COLORADO,CENTRAL,2,NAD27,502,26754 +10503,COLORADO,SOUTH,2,NAD27,503,26755 +10600,CONNECTICUT,,2,NAD27,600,26756 +10700,DELAWARE,,1,NAD27,700,26757 +10901,FLORIDA,EAST,1,NAD27,901,26758 +10902,FLORIDA,WEST,1,NAD27,902,26759 +10903,FLORIDA,NORTH,2,NAD27,903,26760 +11001,GEORGIA,EAST,1,NAD27,1001,26766 +11002,GEORGIA,WEST,1,NAD27,1002,26767 +11101,IDAHO,EAST,1,NAD27,1101,26768 +11102,IDAHO,CENTRAL,1,NAD27,1102,26769 +11103,IDAHO,WEST,1,NAD27,1103,26770 +11201,ILLINOIS,EAST,1,NAD27,1201,26771 +11202,ILLINOIS,WEST,1,NAD27,1202,26772 +11301,INDIANA,EAST,1,NAD27,1301,26773 +11302,INDIANA,WEST,1,NAD27,1302,26774 +11401,IOWA,NORTH,2,NAD27,1401,26775 +11402,IOWA,SOUTH,2,NAD27,1402,26776 +11501,KANSAS,NORTH,2,NAD27,1501,26777 +11502,KANSAS,SOUTH,2,NAD27,1502,26778 +11601,KENTUCKY,NORTH,2,NAD27,1601,26779 +11602,KENTUCKY,SOUTH,2,NAD27,1602,26780 +11701,LOUISIANA,NORTH,2,NAD27,1701,26781 +11702,LOUISIANA,SOUTH,2,NAD27,1702,26782 +11703,LOUISIANA,OFFSHORE,2,NAD27,1703, +11801,MAINE,EAST,1,NAD27,1801,26783 +11802,MAINE,WEST,1,NAD27,1802,26784 +11900,MARYLAND,,2,NAD27,1900,26785 +12001,MASSACHUSETTS,MAINLAND,2,NAD27,2001,26786 +12002,MASSACHUSETTS,ISLAND,2,NAD27,2002,26787 +12101,MICHIGAN,EAST,1,NAD27,2101,26801 +12102,MICHIGAN,"CENTRAL/M",1,NAD27,2102,26802 +12103,MICHIGAN,WEST,1,NAD27,2103,26803 +12111,MICHIGAN,NORTH,2,NAD27,2111,26811 +12112,MICHIGAN,"CENTRAL/L",2,NAD27,2112,26812 +12113,MICHIGAN,SOUTH,2,NAD27,2113,26813 +12201,MINNESOTA,NORTH,2,NAD27,2201,26791 +12202,MINNESOTA,CENTRAL,2,NAD27,2202,26792 +12203,MINNESOTA,SOUTH,2,NAD27,2203,26793 +12301,MISSISSIPPI,EAST,1,NAD27,2301,26794 +12302,MISSISSIPPI,WEST,1,NAD27,2302,26795 +12401,MISSOURI,EAST,1,NAD27,2401,26796 +12402,MISSOURI,CENTRAL,1,NAD27,2402,26797 +12403,MISSOURI,WEST,1,NAD27,2403,26798 +12501,MONTANA,NORTH,2,NAD27,2501,32001 +12502,MONTANA,CENTRAL,2,NAD27,2502,32002 +12503,MONTANA,SOUTH,2,NAD27,2503,32003 +12601,NEBRASKA,NORTH,2,NAD27,2601,32005 +12602,NEBRASKA,SOUTH,2,NAD27,2602,32006 +12701,NEVADA,EAST,1,NAD27,2701,32007 +12702,NEVADA,CENTRAL,1,NAD27,2702,32008 +12703,NEVADA,WEST,1,NAD27,2703,32009 +12800,"NEW HAMPSHIRE",,1,NAD27,2800,32010 +12900,"NEW JERSEY",,1,NAD27,2900,32011 +13001,"NEW MEXICO",EAST,1,NAD27,3001,32012 +13002,"NEW MEXICO",CENTRAL,1,NAD27,3002,32013 +13003,"NEW MEXICO",WEST,1,NAD27,3003,32014 +13101,"NEW YORK",EAST,1,NAD27,3101,32015 +13102,"NEW YORK",CENTRAL,1,NAD27,3102,32016 +13103,"NEW YORK",WEST,1,NAD27,3103,32017 +13104,"NEW YORK","LONG ISLAND",2,NAD27,3104,32018 +13200,"NORTH CAROLINA",,2,NAD27,3200,32019 +13301,"NORTH DAKOTA",NORTH,2,NAD27,3301,32020 +13302,"NORTH DAKOTA",SOUTH,2,NAD27,3302,32021 +13401,OHIO,NORTH,2,NAD27,3401,32022 +13402,OHIO,SOUTH,2,NAD27,3402,32023 +13501,OKLAHOMA,NORTH,2,NAD27,3501,32024 +13502,OKLAHOMA,SOUTH,2,NAD27,3502,32025 +13601,OREGON,NORTH,2,NAD27,3601,32026 +13602,OREGON,SOUTH,2,NAD27,3602,32027 +13701,PENNSYLVANIA,NORTH,2,NAD27,3701,32028 +13702,PENNSYLVANIA,SOUTH,2,NAD27,3702,32029 +13800,"RHODE ISLAND",,1,NAD27,3800,32030 +13901,"SOUTH CAROLINA",NORTH,2,NAD27,3901,32031 +13902,"SOUTH CAROLINA",SOUTH,2,NAD27,3902,32033 +14001,"SOUTH DAKOTA",NORTH,2,NAD27,4001,32034 +14002,"SOUTH DAKOTA",SOUTH,2,NAD27,4002,32035 +14100,TENNESSEE,,2,NAD27,4100,2204 +14201,TEXAS,NORTH,2,NAD27,4201,32037 +14202,TEXAS,"NORTH CENTRAL",2,NAD27,4202,32038 +14203,TEXAS,CENTRAL,2,NAD27,4203,32039 +14204,TEXAS,"SOUTH CENTRAL",2,NAD27,4204,32040 +14205,TEXAS,SOUTH,2,NAD27,4205,32041 +14301,UTAH,NORTH,2,NAD27,4301,32042 +14302,UTAH,CENTRAL,2,NAD27,4302,32043 +14303,UTAH,SOUTH,2,NAD27,4303,32044 +14400,VERMONT,,1,NAD27,4400,32045 +14501,VIRGINIA,NORTH,2,NAD27,4501,32046 +14502,VIRGINIA,SOUTH,2,NAD27,4502,32047 +14601,WASHINGTON,NORTH,2,NAD27,4601,32048 +14602,WASHINGTON,SOUTH,2,NAD27,4602,32049 +14701,"WEST VIRGINIA",NORTH,2,NAD27,4701,32050 +14702,"WEST VIRGINIA",SOUTH,2,NAD27,4702,32051 +14801,WISCONSIN,NORTH,2,NAD27,4801,32052 +14802,WISCONSIN,CENTRAL,2,NAD27,4802,32053 +14803,WISCONSIN,SOUTH,2,NAD27,4803,32054 +14901,WYOMING,EAST,1,NAD27,4901,32055 +14902,WYOMING,"EAST CENTRAL",1,NAD27,4902,32056 +14903,WYOMING,"WEST CENTRAL",1,NAD27,4903,32057 +14904,WYOMING,WEST,1,NAD27,4904,32058 +15001,ALASKA,"ZONE NO. 1",4,NAD27,5001,26731 +15002,ALASKA,"ZONE NO. 2",1,NAD27,5002,26732 +15003,ALASKA,"ZONE NO. 3",1,NAD27,5003,26733 +15004,ALASKA,"ZONE NO. 4",1,NAD27,5004,26734 +15005,ALASKA,"ZONE NO. 5",1,NAD27,5005,26735 +15006,ALASKA,"ZONE NO. 6",1,NAD27,5006,26736 +15007,ALASKA,"ZONE NO. 7",1,NAD27,5007,26737 +15008,ALASKA,"ZONE NO. 8",1,NAD27,5008,26738 +15009,ALASKA,"ZONE NO. 9",1,NAD27,5009,26739 +15010,ALASKA,"ZONE NO. 10",2,NAD27,5010,26740 +15101,HAWAII,1,1,NAD27,5101,3561 +15102,HAWAII,2,1,NAD27,5102,3562 +15103,HAWAII,3,1,NAD27,5103,3563 +15104,HAWAII,4,1,NAD27,5104,3564 +15105,HAWAII,5,1,NAD27,5105,3565 +15201,"PUERTO RICO AND VIRGIN ISLANDS",,2,NAD27,5201,3991 +15202,"VIRGIN ISLANDS","ST. CROIX",2,NAD27,5202,3992 +15300,"AMERICAN SAMOA",,2,NAD27,5300,2155 +15400,"GUAM ISLAND",,3,NAD27,5400, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ClickOnceUpdater/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ClickOnceUpdater/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ClickOnceUpdater/Readme.txt (revision 2866) @@ -0,0 +1 @@ +An updater that works for applications deployed using ClickOnce. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Measure/DotSpatial.Plugins.Measure.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.FindFeature/DotSpatial.Plugins.FindFeature.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/msvcr100.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/esri.extra =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/esri.extra (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/share/esri.extra (revision 2866) @@ -0,0 +1,948 @@ +# Pulkovo 1995 GK Zone 2 +<20002> +proj=tmerc +lat_0=0 +lon_0=9 +k=1.000000 +x_0=2500000 +y_0=0 +ellps=krass +units=m no_defs <> +# Pulkovo 1995 GK Zone 3 +<20003> +proj=tmerc +lat_0=0 +lon_0=15 +k=1.000000 +x_0=3500000 +y_0=0 +ellps=krass +units=m no_defs <> +# Pulkovo 1995 GK Zone 2N +<20062> +proj=tmerc +lat_0=0 +lon_0=9 +k=1.000000 +x_0=500000 +y_0=0 +ellps=krass +units=m no_defs <> +# Pulkovo 1995 GK Zone 3N +<20063> +proj=tmerc +lat_0=0 +lon_0=15 +k=1.000000 +x_0=500000 +y_0=0 +ellps=krass +units=m no_defs <> +# La Canoa UTM Zone 21N +<24721> +proj=utm +zone=21 +ellps=intl +units=m no_defs <> +# NAD 1927 StatePlane Hawaii 1 FIPS 5101 +<26761> +proj=tmerc +lat_0=18.83333333333333 +lon_0=-155.5 +k=0.999967 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Hawaii 2 FIPS 5102 +<26762> +proj=tmerc +lat_0=20.33333333333333 +lon_0=-156.6666666666667 +k=0.999967 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Hawaii 3 FIPS 5103 +<26763> +proj=tmerc +lat_0=21.16666666666667 +lon_0=-158 +k=0.999990 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Hawaii 4 FIPS 5104 +<26764> +proj=tmerc +lat_0=21.83333333333333 +lon_0=-159.5 +k=0.999990 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Hawaii 5 FIPS 5105 +<26765> +proj=tmerc +lat_0=21.66666666666667 +lon_0=-160.1666666666667 +k=1.000000 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Michigan North FIPS 2111 +<26788> +proj=lcc +lat_1=45.48333333333333 +lat_2=47.08333333333334 +lat_0=44.78333333333333 +lon_0=-87 +x_0=609601.2192024385 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Michigan Central FIPS 2112 +<26789> +proj=lcc +lat_1=44.18333333333333 +lat_2=45.7 +lat_0=43.31666666666667 +lon_0=-84.33333333333333 +x_0=609601.2192024385 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Michigan South FIPS 2113 +<26790> +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.33333333333333 +x_0=609601.2192024385 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# Nord Algerie +<30591> +proj=lcc +lat_1=36 +lat_0=36 +lon_0=2.7 +k_0=0.999625544 +x_0=500135 +y_0=300090 +ellps=clrk80 +units=m no_defs <> +# Sud Algerie +<30592> +proj=lcc +lat_1=33.3 +lat_0=33.3 +lon_0=2.7 +k_0=0.999625769 +x_0=500135 +y_0=300090 +ellps=clrk80 +units=m no_defs <> +# Germany Zone 1 +<31491> +proj=tmerc +lat_0=0 +lon_0=3 +k=1.000000 +x_0=1500000 +y_0=0 +ellps=bessel +units=m no_defs <> +# Germany Zone 2 +<31492> +proj=tmerc +lat_0=0 +lon_0=6 +k=1.000000 +x_0=2500000 +y_0=0 +ellps=bessel +units=m no_defs <> +# Germany Zone 3 +<31493> +proj=tmerc +lat_0=0 +lon_0=9 +k=1.000000 +x_0=3500000 +y_0=0 +ellps=bessel +units=m no_defs <> +# Germany Zone 4 +<31494> +proj=tmerc +lat_0=0 +lon_0=12 +k=1.000000 +x_0=4500000 +y_0=0 +ellps=bessel +units=m no_defs <> +# Germany Zone 5 +<31495> +proj=tmerc +lat_0=0 +lon_0=15 +k=1.000000 +x_0=5500000 +y_0=0 +ellps=bessel +units=m no_defs <> +# NAD 1927 StatePlane Puerto Rico FIPS 5201 +<32059> +proj=lcc +lat_1=18.03333333333334 +lat_2=18.43333333333333 +lat_0=17.83333333333333 +lon_0=-66.43333333333334 +x_0=152400.3048006096 +y_0=0 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 StatePlane Virgin Islands St Croix FIPS 5202 +<32060> +proj=lcc +lat_1=18.03333333333334 +lat_2=18.43333333333333 +lat_0=17.83333333333333 +lon_0=-66.43333333333334 +x_0=152400.3048006096 +y_0=30480.06096012193 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# Sphere Plate Carree +<53001> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Equidistant Cylindrical +<53002> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Miller Cylindrical +<53003> +proj=mill +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +R_A +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Mercator +<53004> +proj=merc +lat_ts=0 +lon_0=0 +k=1.000000 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Sinusoidal +<53008> +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Mollweide +<53009> +proj=moll +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert VI +<53010> +proj=eck6 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert V +<53011> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert IV +<53012> +proj=eck4 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert III +<53013> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert II +<53014> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Eckert I +<53015> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Gall Stereographic +<53016> +proj=gall +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Behrmann +<53017> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Winkel I +<53018> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Winkel II +<53019> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Polyconic +<53021> +proj=poly +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Quartic Authalic +<53022> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Loximuthal +<53023> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Bonne +<53024> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Hotine +<53025> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Stereographic +<53026> +proj=stere +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Equidistant Conic +<53027> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=60 +lat_2=60 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Cassini +<53028> +proj=cass +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Van der Grinten I +<53029> +proj=vandg +lon_0=0 +x_0=0 +y_0=0 +R_A +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Robinson +<53030> +proj=robin +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Two Point Equidistant +<53031> +a=6371000 +b=6371000 +units=m no_defs <> +# Sphere Azimuthal Equidistant +<53032> +proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m no_defs <> +# World Plate Carree +<54001> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Equidistant Cylindrical +<54002> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Miller Cylindrical +<54003> +proj=mill +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +R_A +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Mercator +<54004> +proj=merc +lat_ts=0 +lon_0=0 +k=1.000000 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Sinusoidal +<54008> +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Mollweide +<54009> +proj=moll +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert VI +<54010> +proj=eck6 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert V +<54011> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert IV +<54012> +proj=eck4 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert III +<54013> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert II +<54014> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Eckert I +<54015> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Gall Stereographic +<54016> +proj=gall +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Behrmann +<54017> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Winkel I +<54018> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Winkel II +<54019> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Polyconic +<54021> +proj=poly +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Quartic Authalic +<54022> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Loximuthal +<54023> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Bonne +<54024> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Hotine +<54025> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Stereographic +<54026> +proj=stere +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Equidistant Conic +<54027> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=60 +lat_2=60 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Cassini +<54028> +proj=cass +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Van der Grinten I +<54029> +proj=vandg +lon_0=0 +x_0=0 +y_0=0 +R_A +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Robinson +<54030> +proj=robin +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Two Point Equidistant +<54031> +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# World Azimuthal Equidistant +<54032> +proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# NAD 1927 StatePlane Guam FIPS 5400 +<65061> +proj=poly +lat_0=13.47246635277778 +lon_0=-144.7487507055556 +x_0=50000.00000000001 +y_0=50000.00000000001 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Guam FIPS 5400 +<65161> +proj=poly +lat_0=13.47246635277778 +lon_0=-144.7487507055556 +x_0=50000 +y_0=50000 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# Canada Albers Equal Area Conic +<102001> +proj=aea +lat_1=50 +lat_2=70 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# Canada Lambert Conformal Conic +<102002> +proj=lcc +lat_1=50 +lat_2=70 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# USA Contiguous Albers Equal Area Conic +<102003> +proj=aea +lat_1=29.5 +lat_2=45.5 +lat_0=37.5 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# USA Contiguous Lambert Conformal Conic +<102004> +proj=lcc +lat_1=33 +lat_2=45 +lat_0=39 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# USA Contiguous Equidistant Conic +<102005> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=33 +lat_2=45 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# Alaska Albers Equal Area Conic +<102006> +proj=aea +lat_1=55 +lat_2=65 +lat_0=50 +lon_0=-154 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# Hawaii Albers Equal Area Conic +<102007> +proj=aea +lat_1=8 +lat_2=18 +lat_0=13 +lon_0=-157 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# North America Albers Equal Area Conic +<102008> +proj=aea +lat_1=20 +lat_2=60 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# North America Lambert Conformal Conic +<102009> +proj=lcc +lat_1=20 +lat_2=60 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# North America Equidistant Conic +<102010> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=20 +lat_2=60 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# Africa Sinusoidal +<102011> +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia Lambert Conformal Conic +<102012> +proj=lcc +lat_1=30 +lat_2=62 +lat_0=0 +lon_0=105 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Europe Albers Equal Area Conic +<102013> +proj=aea +lat_1=43 +lat_2=62 +lat_0=30 +lon_0=10 +x_0=0 +y_0=0 +ellps=intl +units=m no_defs <> +# Europe Lambert Conformal Conic +<102014> +proj=lcc +lat_1=43 +lat_2=62 +lat_0=30 +lon_0=10 +x_0=0 +y_0=0 +ellps=intl +units=m no_defs <> +# South America Lambert Conformal Conic +<102015> +proj=lcc +lat_1=-5 +lat_2=-42 +lat_0=-32 +lon_0=-60 +x_0=0 +y_0=0 +ellps=aust_SA +units=m no_defs <> +# North Pole Azimuthal Equidistant +<102016> +proj=aeqd +lat_0=90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# North Pole Lambert Azimuthal Equal Area +<102017> +proj=laea +lat_0=90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# North Pole Stereographic +<102018> +proj=stere +lat_0=90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# South Pole Azimuthal Equidistant +<102019> +proj=aeqd +lat_0=-90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# South Pole Lambert Azimuthal Equal Area +<102020> +proj=laea +lat_0=-90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# South Pole Stereographic +<102021> +proj=stere +lat_0=-90 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Africa Albers Equal Area Conic +<102022> +proj=aea +lat_1=20 +lat_2=-23 +lat_0=0 +lon_0=25 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Africa Equidistant Conic +<102023> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=20 +lat_2=-23 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Africa Lambert Conformal Conic +<102024> +proj=lcc +lat_1=20 +lat_2=-23 +lat_0=0 +lon_0=25 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia North Albers Equal Area Conic +<102025> +proj=aea +lat_1=15 +lat_2=65 +lat_0=30 +lon_0=95 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia North Equidistant Conic +<102026> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=15 +lat_2=65 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia North Lambert Conformal Conic +<102027> +proj=lcc +lat_1=15 +lat_2=65 +lat_0=30 +lon_0=95 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia South Albers Equal Area Conic +<102028> +proj=aea +lat_1=7 +lat_2=-32 +lat_0=-15 +lon_0=125 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia South Equidistant Conic +<102029> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=7 +lat_2=-32 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Asia South Lambert Conformal Conic +<102030> +proj=lcc +lat_1=7 +lat_2=-32 +lat_0=-15 +lon_0=125 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m no_defs <> +# Europe Equidistant Conic +<102031> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=43 +lat_2=62 +x_0=0 +y_0=0 +ellps=intl +units=m no_defs <> +# South America Equidistant Conic +<102032> +proj=eqdc +lat_0=0 +lon_0=0 +lat_1=-5 +lat_2=-42 +x_0=0 +y_0=0 +ellps=aust_SA +units=m no_defs <> +# South America Albers Equal Area Conic +<102033> +proj=aea +lat_1=-5 +lat_2=-42 +lat_0=-32 +lon_0=-60 +x_0=0 +y_0=0 +ellps=aust_SA +units=m no_defs <> +# S-JTSK Krovak +<102065> +proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813975277778 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +units=m no_defs <> +# S-JTSK Ferro Krovak East North +<102066> +proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813975277778 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +pm=-17.66666666666667 +units=m no_defs <> +# S-JTSK Krovak East North +<102067> +proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813975277778 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +units=m no_defs <> +# Monte Mario Italy 1 +<102091> +proj=tmerc +lat_0=0 +lon_0=9 +k=0.999600 +x_0=1500000 +y_0=0 +ellps=intl +units=m no_defs <> +# Monte Mario Italy 2 +<102092> +proj=tmerc +lat_0=0 +lon_0=15 +k=0.999600 +x_0=2520000 +y_0=0 +ellps=intl +units=m no_defs <> +# NGO 1948 Norway Zone 1 +<102101> +proj=tmerc +lat_0=58 +lon_0=6.05625 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 2 +<102102> +proj=tmerc +lat_0=58 +lon_0=8.389583333333333 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 3 +<102103> +proj=tmerc +lat_0=58 +lon_0=10.72291666666667 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 4 +<102104> +proj=tmerc +lat_0=58 +lon_0=13.22291666666667 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 5 +<102105> +proj=tmerc +lat_0=58 +lon_0=16.88958333333333 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 6 +<102106> +proj=tmerc +lat_0=58 +lon_0=20.88958333333333 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 7 +<102107> +proj=tmerc +lat_0=58 +lon_0=24.88958333333333 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 Norway Zone 8 +<102108> +proj=tmerc +lat_0=58 +lon_0=29.05625 +k=1.000000 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# RGF 1993 Lambert 93 +<102110> +proj=lcc +lat_1=44 +lat_2=49 +lat_0=46.5 +lon_0=3 +x_0=700000 +y_0=6600000 +ellps=GRS80 +units=m no_defs <> +# Old Hawaiian UTM Zone 4N +<102114> +proj=utm +zone=4 +ellps=clrk66 +units=m no_defs <> +# Old Hawaiian UTM Zone 5N +<102115> +proj=utm +zone=5 +ellps=clrk66 +units=m no_defs <> +# NAD 1927 Michigan GeoRef Feet US +<102120> +proj=omerc +lat_0=45.30916666666666 +lonc=-86 +alpha=337.255555555556 +k=0.9996 +x_0=2546731.495961392 +y_0=-4354009.816002033 +ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 Michigan GeoRef Feet US +<102121> +proj=omerc +lat_0=45.30916666666666 +lonc=-86 +alpha=337.255555555556 +k=0.9996 +x_0=2546731.495961392 +y_0=-4354009.816002033 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1927 Michigan GeoRef Meters +<102122> +proj=omerc +lat_0=45.30916666666666 +lonc=-86 +alpha=337.255555555556 +k=0.9996 +x_0=2546731.496 +y_0=-4354009.816 +ellps=clrk66 +datum=NAD27 +units=m no_defs <> +# NAD 1983 Michigan GeoRef Meters +<102123> +proj=omerc +lat_0=45.30916666666666 +lonc=-86 +alpha=337.255555555556 +k=0.9996 +x_0=2546731.496 +y_0=-4354009.816 +ellps=GRS80 +datum=NAD83 +units=m no_defs <> +# NGO 1948 UTM Zone 32N +<102132> +proj=utm +zone=32 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 UTM Zone 33N +<102133> +proj=utm +zone=33 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 UTM Zone 34N +<102134> +proj=utm +zone=34 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# NGO 1948 UTM Zone 35N +<102135> +proj=utm +zone=35 +a=6377492.018 +b=6356173.508712696 +units=m no_defs <> +# Hong Kong 1980 Grid +<102140> +proj=tmerc +lat_0=22.31213333333334 +lon_0=114.1785555555556 +k=1.000000 +x_0=836694.05 +y_0=819069.8 +ellps=intl +units=m no_defs <> +# Hong Kong 1980 UTM Zone 49N +<102141> +proj=utm +zone=49 +ellps=intl +units=m no_defs <> +# Hong Kong 1980 UTM Zone 50N +<102142> +proj=utm +zone=50 +ellps=intl +units=m no_defs <> +# Tokyo UTM Zone 51N +<102151> +proj=utm +zone=51 +ellps=bessel +units=m no_defs <> +# Tokyo UTM Zone 52N +<102152> +proj=utm +zone=52 +ellps=bessel +units=m no_defs <> +# Tokyo UTM Zone 53N +<102153> +proj=utm +zone=53 +ellps=bessel +units=m no_defs <> +# Tokyo UTM Zone 54N +<102154> +proj=utm +zone=54 +ellps=bessel +units=m no_defs <> +# Tokyo UTM Zone 55N +<102155> +proj=utm +zone=55 +ellps=bessel +units=m no_defs <> +# Tokyo UTM Zone 56N +<102156> +proj=utm +zone=56 +ellps=bessel +units=m no_defs <> +# Datum 73 Hayford Gauss IGeoE +<102160> +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=200180.598 +y_0=299913.01 +ellps=intl +units=m no_defs <> +# Datum 73 Hayford Gauss IPCC +<102161> +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +units=m no_defs <> +# Graciosa Base SW 1948 UTM Zone 26N +<102162> +proj=utm +zone=26 +ellps=intl +units=m no_defs <> +# Lisboa Bessel Bonne +<102163> +ellps=bessel +units=m no_defs <> +# Lisboa Hayford Gauss IGeoE +<102164> +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=200000 +y_0=300000 +ellps=intl +units=m no_defs <> +# Lisboa Hayford Gauss IPCC +<102165> +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=0 +y_0=0 +ellps=intl +units=m no_defs <> +# Observ Meteorologico 1939 UTM Zone 25N +<102166> +proj=utm +zone=25 +ellps=intl +units=m no_defs <> +# Porto Santo 1936 UTM Zone 28N +<102167> +proj=utm +zone=28 +ellps=intl +units=m no_defs <> +# Sao Braz UTM Zone 26N +<102168> +proj=utm +zone=26 +ellps=intl +units=m no_defs <> +# Selvagem Grande 1938 UTM Zone 28N +<102169> +proj=utm +zone=28 +ellps=intl +units=m no_defs <> +# Nord Maroc Degree +<102191> +proj=lcc +lat_1=33.3 +lat_0=33.3 +lon_0=-5.4 +k_0=0.999625769 +x_0=500000 +y_0=300000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# Sud Maroc Degree +<102192> +proj=lcc +lat_1=29.7 +lat_0=29.7 +lon_0=-5.4 +k_0=0.9996155960000001 +x_0=500000 +y_0=300000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# Sahara Degree +<102193> +proj=lcc +lat_1=26.1 +lat_0=26.1 +lon_0=-5.4 +k_0=0.9996 +x_0=1200000 +y_0=400000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# NAD 1983 HARN StatePlane Alabama East FIPS 0101 +<102229> +proj=tmerc +lat_0=30.5 +lon_0=-85.83333333333333 +k=0.999960 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Alabama West FIPS 0102 +<102230> +proj=tmerc +lat_0=30 +lon_0=-87.5 +k=0.999933 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California I FIPS 0401 +<102241> +proj=lcc +lat_1=40 +lat_2=41.66666666666666 +lat_0=39.33333333333334 +lon_0=-122 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California II FIPS 0402 +<102242> +proj=lcc +lat_1=38.33333333333334 +lat_2=39.83333333333334 +lat_0=37.66666666666666 +lon_0=-122 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California III FIPS 0403 +<102243> +proj=lcc +lat_1=37.06666666666667 +lat_2=38.43333333333333 +lat_0=36.5 +lon_0=-120.5 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California IV FIPS 0404 +<102244> +proj=lcc +lat_1=36 +lat_2=37.25 +lat_0=35.33333333333334 +lon_0=-119 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California V FIPS 0405 +<102245> +proj=lcc +lat_1=34.03333333333333 +lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane California VI FIPS 0406 +<102246> +proj=lcc +lat_1=32.78333333333333 +lat_2=33.88333333333333 +lat_0=32.16666666666666 +lon_0=-116.25 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Arizona East FIPS 0201 +<102248> +proj=tmerc +lat_0=31 +lon_0=-110.1666666666667 +k=0.999900 +x_0=213360 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Arizona Central FIPS 0202 +<102249> +proj=tmerc +lat_0=31 +lon_0=-111.9166666666667 +k=0.999900 +x_0=213360 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Arizona West FIPS 0203 +<102250> +proj=tmerc +lat_0=31 +lon_0=-113.75 +k=0.999933 +x_0=213360 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Arkansas North FIPS 0301 +<102251> +proj=lcc +lat_1=34.93333333333333 +lat_2=36.23333333333333 +lat_0=34.33333333333334 +lon_0=-92 +x_0=400000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Arkansas South FIPS 0302 +<102252> +proj=lcc +lat_1=33.3 +lat_2=34.76666666666667 +lat_0=32.66666666666666 +lon_0=-92 +x_0=400000 +y_0=400000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Colorado North FIPS 0501 +<102253> +proj=lcc +lat_1=39.71666666666667 +lat_2=40.78333333333333 +lat_0=39.33333333333334 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Colorado Central FIPS 0502 +<102254> +proj=lcc +lat_1=38.45 +lat_2=39.75 +lat_0=37.83333333333334 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Colorado South FIPS 0503 +<102255> +proj=lcc +lat_1=37.23333333333333 +lat_2=38.43333333333333 +lat_0=36.66666666666666 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Connecticut FIPS 0600 +<102256> +proj=lcc +lat_1=41.2 +lat_2=41.86666666666667 +lat_0=40.83333333333334 +lon_0=-72.75 +x_0=304800.6096 +y_0=152400.3048 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Delaware FIPS 0700 +<102257> +proj=tmerc +lat_0=38 +lon_0=-75.41666666666667 +k=0.999995 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Florida East FIPS 0901 +<102258> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-81 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Florida West FIPS 0902 +<102259> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Florida North FIPS 0903 +<102260> +proj=lcc +lat_1=29.58333333333333 +lat_2=30.75 +lat_0=29 +lon_0=-84.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Hawaii 1 FIPS 5101 +<102261> +proj=tmerc +lat_0=18.83333333333333 +lon_0=-155.5 +k=0.999967 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Hawaii 2 FIPS 5102 +<102262> +proj=tmerc +lat_0=20.33333333333333 +lon_0=-156.6666666666667 +k=0.999967 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Hawaii 3 FIPS 5103 +<102263> +proj=tmerc +lat_0=21.16666666666667 +lon_0=-158 +k=0.999990 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Hawaii 4 FIPS 5104 +<102264> +proj=tmerc +lat_0=21.83333333333333 +lon_0=-159.5 +k=0.999990 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Hawaii 5 FIPS 5105 +<102265> +proj=tmerc +lat_0=21.66666666666667 +lon_0=-160.1666666666667 +k=1.000000 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Georgia East FIPS 1001 +<102266> +proj=tmerc +lat_0=30 +lon_0=-82.16666666666667 +k=0.999900 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Georgia West FIPS 1002 +<102267> +proj=tmerc +lat_0=30 +lon_0=-84.16666666666667 +k=0.999900 +x_0=700000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Idaho East FIPS 1101 +<102268> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-112.1666666666667 +k=0.999947 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Idaho Central FIPS 1102 +<102269> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-114 +k=0.999947 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Idaho West FIPS 1103 +<102270> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-115.75 +k=0.999933 +x_0=800000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Illinois East FIPS 1201 +<102271> +proj=tmerc +lat_0=36.66666666666666 +lon_0=-88.33333333333333 +k=0.999975 +x_0=300000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Illinois West FIPS 1202 +<102272> +proj=tmerc +lat_0=36.66666666666666 +lon_0=-90.16666666666667 +k=0.999941 +x_0=700000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Indiana East FIPS 1301 +<102273> +proj=tmerc +lat_0=37.5 +lon_0=-85.66666666666667 +k=0.999967 +x_0=100000 +y_0=250000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Indiana West FIPS 1302 +<102274> +proj=tmerc +lat_0=37.5 +lon_0=-87.08333333333333 +k=0.999967 +x_0=900000 +y_0=250000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Kansas North FIPS 1501 +<102277> +proj=lcc +lat_1=38.71666666666667 +lat_2=39.78333333333333 +lat_0=38.33333333333334 +lon_0=-98 +x_0=400000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Kansas South FIPS 1502 +<102278> +proj=lcc +lat_1=37.26666666666667 +lat_2=38.56666666666667 +lat_0=36.66666666666666 +lon_0=-98.5 +x_0=400000 +y_0=400000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Kentucky North FIPS 1601 +<102279> +proj=lcc +lat_1=37.96666666666667 +lat_2=38.96666666666667 +lat_0=37.5 +lon_0=-84.25 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Kentucky South FIPS 1602 +<102280> +proj=lcc +lat_1=36.73333333333333 +lat_2=37.93333333333333 +lat_0=36.33333333333334 +lon_0=-85.75 +x_0=500000 +y_0=500000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Louisiana North FIPS 1701 +<102281> +proj=lcc +lat_1=31.16666666666667 +lat_2=32.66666666666666 +lat_0=30.5 +lon_0=-92.5 +x_0=1000000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Louisiana South FIPS 1702 +<102282> +proj=lcc +lat_1=29.3 +lat_2=30.7 +lat_0=28.5 +lon_0=-91.33333333333333 +x_0=1000000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Maine East FIPS 1801 +<102283> +proj=tmerc +lat_0=43.66666666666666 +lon_0=-68.5 +k=0.999900 +x_0=300000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Maine West FIPS 1802 +<102284> +proj=tmerc +lat_0=42.83333333333334 +lon_0=-70.16666666666667 +k=0.999967 +x_0=900000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Maryland FIPS 1900 +<102285> +proj=lcc +lat_1=38.3 +lat_2=39.45 +lat_0=37.66666666666666 +lon_0=-77 +x_0=400000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Massachusetts Mainland FIPS 2001 +<102286> +proj=lcc +lat_1=41.71666666666667 +lat_2=42.68333333333333 +lat_0=41 +lon_0=-71.5 +x_0=200000 +y_0=750000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Massachusetts Island FIPS 2002 +<102287> +proj=lcc +lat_1=41.28333333333333 +lat_2=41.48333333333333 +lat_0=41 +lon_0=-70.5 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Michigan North FIPS 2111 +<102288> +proj=lcc +lat_1=45.48333333333333 +lat_2=47.08333333333334 +lat_0=44.78333333333333 +lon_0=-87 +x_0=8000000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Michigan Central FIPS 2112 +<102289> +proj=lcc +lat_1=44.18333333333333 +lat_2=45.7 +lat_0=43.31666666666667 +lon_0=-84.36666666666666 +x_0=6000000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Michigan South FIPS 2113 +<102290> +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Minnesota North FIPS 2201 +<102291> +proj=lcc +lat_1=47.03333333333333 +lat_2=48.63333333333333 +lat_0=46.5 +lon_0=-93.09999999999999 +x_0=800000 +y_0=100000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Minnesota Central FIPS 2202 +<102292> +proj=lcc +lat_1=45.61666666666667 +lat_2=47.05 +lat_0=45 +lon_0=-94.25 +x_0=800000 +y_0=100000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Minnesota South FIPS 2203 +<102293> +proj=lcc +lat_1=43.78333333333333 +lat_2=45.21666666666667 +lat_0=43 +lon_0=-94 +x_0=800000 +y_0=100000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Mississippi East FIPS 2301 +<102294> +proj=tmerc +lat_0=29.5 +lon_0=-88.83333333333333 +k=0.999950 +x_0=300000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Mississippi West FIPS 2302 +<102295> +proj=tmerc +lat_0=29.5 +lon_0=-90.33333333333333 +k=0.999950 +x_0=700000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Missouri East FIPS 2401 +<102296> +proj=tmerc +lat_0=35.83333333333334 +lon_0=-90.5 +k=0.999933 +x_0=250000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Missouri Central FIPS 2402 +<102297> +proj=tmerc +lat_0=35.83333333333334 +lon_0=-92.5 +k=0.999933 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Missouri West FIPS 2403 +<102298> +proj=tmerc +lat_0=36.16666666666666 +lon_0=-94.5 +k=0.999941 +x_0=850000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Montana FIPS 2500 +<102300> +proj=lcc +lat_1=45 +lat_2=49 +lat_0=44.25 +lon_0=-109.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Nebraska FIPS 2600 +<102304> +proj=lcc +lat_1=40 +lat_2=43 +lat_0=39.83333333333334 +lon_0=-100 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Nevada East FIPS 2701 +<102307> +proj=tmerc +lat_0=34.75 +lon_0=-115.5833333333333 +k=0.999900 +x_0=200000 +y_0=8000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Nevada Central FIPS 2702 +<102308> +proj=tmerc +lat_0=34.75 +lon_0=-116.6666666666667 +k=0.999900 +x_0=500000 +y_0=6000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Nevada West FIPS 2703 +<102309> +proj=tmerc +lat_0=34.75 +lon_0=-118.5833333333333 +k=0.999900 +x_0=800000 +y_0=4000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New Hampshire FIPS 2800 +<102310> +proj=tmerc +lat_0=42.5 +lon_0=-71.66666666666667 +k=0.999967 +x_0=300000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New Jersey FIPS 2900 +<102311> +proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.999900 +x_0=150000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New Mexico East FIPS 3001 +<102312> +proj=tmerc +lat_0=31 +lon_0=-104.3333333333333 +k=0.999909 +x_0=165000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New Mexico Central FIPS 3002 +<102313> +proj=tmerc +lat_0=31 +lon_0=-106.25 +k=0.999900 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New Mexico West FIPS 3003 +<102314> +proj=tmerc +lat_0=31 +lon_0=-107.8333333333333 +k=0.999917 +x_0=830000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New York East FIPS 3101 +<102315> +proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.999900 +x_0=150000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New York Central FIPS 3102 +<102316> +proj=tmerc +lat_0=40 +lon_0=-76.58333333333333 +k=0.999938 +x_0=250000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New York West FIPS 3103 +<102317> +proj=tmerc +lat_0=40 +lon_0=-78.58333333333333 +k=0.999938 +x_0=350000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane New York Long Island FIPS 3104 +<102318> +proj=lcc +lat_1=40.66666666666666 +lat_2=41.03333333333333 +lat_0=40.16666666666666 +lon_0=-74 +x_0=300000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane North Dakota North FIPS 3301 +<102320> +proj=lcc +lat_1=47.43333333333333 +lat_2=48.73333333333333 +lat_0=47 +lon_0=-100.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane North Dakota South FIPS 3302 +<102321> +proj=lcc +lat_1=46.18333333333333 +lat_2=47.48333333333333 +lat_0=45.66666666666666 +lon_0=-100.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Ohio North FIPS 3401 +<102322> +proj=lcc +lat_1=40.43333333333333 +lat_2=41.7 +lat_0=39.66666666666666 +lon_0=-82.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Ohio South FIPS 3402 +<102323> +proj=lcc +lat_1=38.73333333333333 +lat_2=40.03333333333333 +lat_0=38 +lon_0=-82.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Oklahoma North FIPS 3501 +<102324> +proj=lcc +lat_1=35.56666666666667 +lat_2=36.76666666666667 +lat_0=35 +lon_0=-98 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Oklahoma South FIPS 3502 +<102325> +proj=lcc +lat_1=33.93333333333333 +lat_2=35.23333333333333 +lat_0=33.33333333333334 +lon_0=-98 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Oregon North FIPS 3601 +<102326> +proj=lcc +lat_1=44.33333333333334 +lat_2=46 +lat_0=43.66666666666666 +lon_0=-120.5 +x_0=2500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Oregon South FIPS 3602 +<102327> +proj=lcc +lat_1=42.33333333333334 +lat_2=44 +lat_0=41.66666666666666 +lon_0=-120.5 +x_0=1500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Rhode Island FIPS 3800 +<102330> +proj=tmerc +lat_0=41.08333333333334 +lon_0=-71.5 +k=0.999994 +x_0=100000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane South Dakota North FIPS 4001 +<102334> +proj=lcc +lat_1=44.41666666666666 +lat_2=45.68333333333333 +lat_0=43.83333333333334 +lon_0=-100 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane South Dakota South FIPS 4002 +<102335> +proj=lcc +lat_1=42.83333333333334 +lat_2=44.4 +lat_0=42.33333333333334 +lon_0=-100.3333333333333 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Tennessee FIPS 4100 +<102336> +proj=lcc +lat_1=35.25 +lat_2=36.41666666666666 +lat_0=34.33333333333334 +lon_0=-86 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Texas North FIPS 4201 +<102337> +proj=lcc +lat_1=34.65 +lat_2=36.18333333333333 +lat_0=34 +lon_0=-101.5 +x_0=200000 +y_0=1000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Texas North Central FIPS 4202 +<102338> +proj=lcc +lat_1=32.13333333333333 +lat_2=33.96666666666667 +lat_0=31.66666666666667 +lon_0=-98.5 +x_0=600000 +y_0=2000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Texas Central FIPS 4203 +<102339> +proj=lcc +lat_1=30.11666666666667 +lat_2=31.88333333333333 +lat_0=29.66666666666667 +lon_0=-100.3333333333333 +x_0=700000 +y_0=3000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Texas South Central FIPS 4204 +<102340> +proj=lcc +lat_1=28.38333333333333 +lat_2=30.28333333333334 +lat_0=27.83333333333333 +lon_0=-99 +x_0=600000 +y_0=4000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Texas South FIPS 4205 +<102341> +proj=lcc +lat_1=26.16666666666667 +lat_2=27.83333333333333 +lat_0=25.66666666666667 +lon_0=-98.5 +x_0=300000 +y_0=5000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Utah North FIPS 4301 +<102342> +proj=lcc +lat_1=40.71666666666667 +lat_2=41.78333333333333 +lat_0=40.33333333333334 +lon_0=-111.5 +x_0=500000 +y_0=1000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Utah Central FIPS 4302 +<102343> +proj=lcc +lat_1=39.01666666666667 +lat_2=40.65 +lat_0=38.33333333333334 +lon_0=-111.5 +x_0=500000 +y_0=2000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Utah South FIPS 4303 +<102344> +proj=lcc +lat_1=37.21666666666667 +lat_2=38.35 +lat_0=36.66666666666666 +lon_0=-111.5 +x_0=500000 +y_0=3000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Vermont FIPS 4400 +<102345> +proj=tmerc +lat_0=42.5 +lon_0=-72.5 +k=0.999964 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Virginia North FIPS 4501 +<102346> +proj=lcc +lat_1=38.03333333333333 +lat_2=39.2 +lat_0=37.66666666666666 +lon_0=-78.5 +x_0=3500000 +y_0=2000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Virginia South FIPS 4502 +<102347> +proj=lcc +lat_1=36.76666666666667 +lat_2=37.96666666666667 +lat_0=36.33333333333334 +lon_0=-78.5 +x_0=3500000 +y_0=1000000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Washington North FIPS 4601 +<102348> +proj=lcc +lat_1=47.5 +lat_2=48.73333333333333 +lat_0=47 +lon_0=-120.8333333333333 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Washington South FIPS 4602 +<102349> +proj=lcc +lat_1=45.83333333333334 +lat_2=47.33333333333334 +lat_0=45.33333333333334 +lon_0=-120.5 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane West Virginia North FIPS 4701 +<102350> +proj=lcc +lat_1=39 +lat_2=40.25 +lat_0=38.5 +lon_0=-79.5 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane West Virginia South FIPS 4702 +<102351> +proj=lcc +lat_1=37.48333333333333 +lat_2=38.88333333333333 +lat_0=37 +lon_0=-81 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wisconsin North FIPS 4801 +<102352> +proj=lcc +lat_1=45.56666666666667 +lat_2=46.76666666666667 +lat_0=45.16666666666666 +lon_0=-90 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wisconsin Central FIPS 4802 +<102353> +proj=lcc +lat_1=44.25 +lat_2=45.5 +lat_0=43.83333333333334 +lon_0=-90 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wisconsin South FIPS 4803 +<102354> +proj=lcc +lat_1=42.73333333333333 +lat_2=44.06666666666667 +lat_0=42 +lon_0=-90 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wyoming East FIPS 4901 +<102355> +proj=tmerc +lat_0=40.5 +lon_0=-105.1666666666667 +k=0.999938 +x_0=200000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wyoming East Central FIPS 4902 +<102356> +proj=tmerc +lat_0=40.5 +lon_0=-107.3333333333333 +k=0.999938 +x_0=400000 +y_0=100000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wyoming West Central FIPS 4903 +<102357> +proj=tmerc +lat_0=40.5 +lon_0=-108.75 +k=0.999938 +x_0=600000 +y_0=0 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Wyoming West FIPS 4904 +<102358> +proj=tmerc +lat_0=40.5 +lon_0=-110.0833333333333 +k=0.999938 +x_0=800000 +y_0=100000 +ellps=GRS80 +units=m no_defs <> +# NAD 1983 HARN StatePlane Puerto Rico Virgin Islands FIPS 5200 +<102361> +proj=lcc +lat_1=18.03333333333334 +lat_2=18.43333333333333 +lat_0=17.83333333333333 +lon_0=-66.43333333333334 +x_0=200000 +y_0=200000 +ellps=GRS80 +units=m no_defs <> +# Nord Algerie Ancienne Degree +<102491> +proj=lcc +lat_1=36 +lat_0=36 +lon_0=2.7 +k_0=0.999625544 +x_0=500000 +y_0=300000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# Sud Algerie Ancienne Degree +<102492> +proj=lcc +lat_1=33.3 +lat_0=33.3 +lon_0=2.7 +k_0=0.999625769 +x_0=500000 +y_0=300000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# NTF France I degrees +<102581> +proj=lcc +lat_1=49.5 +lat_0=49.5 +lon_0=2.337229166666667 +k_0=0.999877341 +x_0=600000 +y_0=1200000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# NTF France II degrees +<102582> +proj=lcc +lat_1=46.8 +lat_0=46.8 +lon_0=2.337229166666667 +k_0=0.99987742 +x_0=600000 +y_0=2200000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# NTF France III degrees +<102583> +proj=lcc +lat_1=44.1 +lat_0=44.1 +lon_0=2.337229166666667 +k_0=0.999877499 +x_0=600000 +y_0=3200000 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# NTF France IV degrees +<102584> +proj=lcc +lat_1=42.165 +lat_0=42.165 +lon_0=2.337229166666667 +k_0=0.99994471 +x_0=234.358 +y_0=4185861.369 +a=6378249.2 +b=6356514.999904194 +units=m no_defs <> +# Nord Algerie Degree +<102591> +proj=lcc +lat_1=36 +lat_0=36 +lon_0=2.7 +k_0=0.999625544 +x_0=500135 +y_0=300090 +ellps=clrk80 +units=m no_defs <> +# Sud Algerie Degree +<102592> +proj=lcc +lat_1=33.3 +lat_0=33.3 +lon_0=2.7 +k_0=0.999625769 +x_0=500135 +y_0=300090 +ellps=clrk80 +units=m no_defs <> +# NAD 1983 StatePlane Alabama East FIPS 0101 Feet +<102629> +proj=tmerc +lat_0=30.5 +lon_0=-85.83333333333333 +k=0.999960 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alabama West FIPS 0102 Feet +<102630> +proj=tmerc +lat_0=30 +lon_0=-87.5 +k=0.999933 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 1 FIPS 5001 Feet +<102631> +proj=omerc +lat_0=57 +lonc=-133.6666666666667 +alpha=-36.86989764583333 +k=0.9999 +x_0=4999999.999999999 +y_0=-4999999.999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 2 FIPS 5002 Feet +<102632> +proj=tmerc +lat_0=54 +lon_0=-142 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 3 FIPS 5003 Feet +<102633> +proj=tmerc +lat_0=54 +lon_0=-146 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 4 FIPS 5004 Feet +<102634> +proj=tmerc +lat_0=54 +lon_0=-150 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 5 FIPS 5005 Feet +<102635> +proj=tmerc +lat_0=54 +lon_0=-154 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 6 FIPS 5006 Feet +<102636> +proj=tmerc +lat_0=54 +lon_0=-158 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 7 FIPS 5007 Feet +<102637> +proj=tmerc +lat_0=54 +lon_0=-162 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 8 FIPS 5008 Feet +<102638> +proj=tmerc +lat_0=54 +lon_0=-166 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 9 FIPS 5009 Feet +<102639> +proj=tmerc +lat_0=54 +lon_0=-170 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Alaska 10 FIPS 5010 Feet +<102640> +proj=lcc +lat_1=51.83333333333334 +lat_2=53.83333333333334 +lat_0=51 +lon_0=-176 +x_0=1000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California I FIPS 0401 Feet +<102641> +proj=lcc +lat_1=40 +lat_2=41.66666666666666 +lat_0=39.33333333333334 +lon_0=-122 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California II FIPS 0402 Feet +<102642> +proj=lcc +lat_1=38.33333333333334 +lat_2=39.83333333333334 +lat_0=37.66666666666666 +lon_0=-122 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California III FIPS 0403 Feet +<102643> +proj=lcc +lat_1=37.06666666666667 +lat_2=38.43333333333333 +lat_0=36.5 +lon_0=-120.5 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California IV FIPS 0404 Feet +<102644> +proj=lcc +lat_1=36 +lat_2=37.25 +lat_0=35.33333333333334 +lon_0=-119 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California V FIPS 0405 Feet +<102645> +proj=lcc +lat_1=34.03333333333333 +lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane California VI FIPS 0406 Feet +<102646> +proj=lcc +lat_1=32.78333333333333 +lat_2=33.88333333333333 +lat_0=32.16666666666666 +lon_0=-116.25 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Arizona East FIPS 0201 Feet +<102648> +proj=tmerc +lat_0=31 +lon_0=-110.1666666666667 +k=0.999900 +x_0=213360 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Arizona Central FIPS 0202 Feet +<102649> +proj=tmerc +lat_0=31 +lon_0=-111.9166666666667 +k=0.999900 +x_0=213360 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Arizona West FIPS 0203 Feet +<102650> +proj=tmerc +lat_0=31 +lon_0=-113.75 +k=0.999933 +x_0=213360 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Arkansas North FIPS 0301 Feet +<102651> +proj=lcc +lat_1=34.93333333333333 +lat_2=36.23333333333333 +lat_0=34.33333333333334 +lon_0=-92 +x_0=399999.9999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Arkansas South FIPS 0302 Feet +<102652> +proj=lcc +lat_1=33.3 +lat_2=34.76666666666667 +lat_0=32.66666666666666 +lon_0=-92 +x_0=399999.9999999999 +y_0=399999.9999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Colorado North FIPS 0501 Feet +<102653> +proj=lcc +lat_1=39.71666666666667 +lat_2=40.78333333333333 +lat_0=39.33333333333334 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Colorado Central FIPS 0502 Feet +<102654> +proj=lcc +lat_1=38.45 +lat_2=39.75 +lat_0=37.83333333333334 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Colorado South FIPS 0503 Feet +<102655> +proj=lcc +lat_1=37.23333333333333 +lat_2=38.43333333333333 +lat_0=36.66666666666666 +lon_0=-105.5 +x_0=914401.8289 +y_0=304800.6096 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Connecticut FIPS 0600 Feet +<102656> +proj=lcc +lat_1=41.2 +lat_2=41.86666666666667 +lat_0=40.83333333333334 +lon_0=-72.75 +x_0=304800.6096 +y_0=152400.3048 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Delaware FIPS 0700 Feet +<102657> +proj=tmerc +lat_0=38 +lon_0=-75.41666666666667 +k=0.999995 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Florida East FIPS 0901 Feet +<102658> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-81 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Florida West FIPS 0902 Feet +<102659> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Florida North FIPS 0903 Feet +<102660> +proj=lcc +lat_1=29.58333333333333 +lat_2=30.75 +lat_0=29 +lon_0=-84.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Hawaii 1 FIPS 5101 Feet +<102661> +proj=tmerc +lat_0=18.83333333333333 +lon_0=-155.5 +k=0.999967 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Hawaii 2 FIPS 5102 Feet +<102662> +proj=tmerc +lat_0=20.33333333333333 +lon_0=-156.6666666666667 +k=0.999967 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Hawaii 3 FIPS 5103 Feet +<102663> +proj=tmerc +lat_0=21.16666666666667 +lon_0=-158 +k=0.999990 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Hawaii 4 FIPS 5104 Feet +<102664> +proj=tmerc +lat_0=21.83333333333333 +lon_0=-159.5 +k=0.999990 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Hawaii 5 FIPS 5105 Feet +<102665> +proj=tmerc +lat_0=21.66666666666667 +lon_0=-160.1666666666667 +k=1.000000 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Georgia East FIPS 1001 Feet +<102666> +proj=tmerc +lat_0=30 +lon_0=-82.16666666666667 +k=0.999900 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Georgia West FIPS 1002 Feet +<102667> +proj=tmerc +lat_0=30 +lon_0=-84.16666666666667 +k=0.999900 +x_0=700000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Idaho East FIPS 1101 Feet +<102668> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-112.1666666666667 +k=0.999947 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Idaho Central FIPS 1102 Feet +<102669> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-114 +k=0.999947 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Idaho West FIPS 1103 Feet +<102670> +proj=tmerc +lat_0=41.66666666666666 +lon_0=-115.75 +k=0.999933 +x_0=799999.9999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Illinois East FIPS 1201 Feet +<102671> +proj=tmerc +lat_0=36.66666666666666 +lon_0=-88.33333333333333 +k=0.999975 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Illinois West FIPS 1202 Feet +<102672> +proj=tmerc +lat_0=36.66666666666666 +lon_0=-90.16666666666667 +k=0.999941 +x_0=700000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Indiana East FIPS 1301 Feet +<102673> +proj=tmerc +lat_0=37.5 +lon_0=-85.66666666666667 +k=0.999967 +x_0=100000 +y_0=250000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Indiana West FIPS 1302 Feet +<102674> +proj=tmerc +lat_0=37.5 +lon_0=-87.08333333333333 +k=0.999967 +x_0=900000.0000000001 +y_0=250000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Iowa North FIPS 1401 Feet +<102675> +proj=lcc +lat_1=42.06666666666667 +lat_2=43.26666666666667 +lat_0=41.5 +lon_0=-93.5 +x_0=1500000 +y_0=1000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Iowa South FIPS 1402 Feet +<102676> +proj=lcc +lat_1=40.61666666666667 +lat_2=41.78333333333333 +lat_0=40 +lon_0=-93.5 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Kansas North FIPS 1501 Feet +<102677> +proj=lcc +lat_1=38.71666666666667 +lat_2=39.78333333333333 +lat_0=38.33333333333334 +lon_0=-98 +x_0=399999.9999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Kansas South FIPS 1502 Feet +<102678> +proj=lcc +lat_1=37.26666666666667 +lat_2=38.56666666666667 +lat_0=36.66666666666666 +lon_0=-98.5 +x_0=399999.9999999999 +y_0=399999.9999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Kentucky North FIPS 1601 Feet +<102679> +proj=lcc +lat_1=37.96666666666667 +lat_2=38.96666666666667 +lat_0=37.5 +lon_0=-84.25 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Kentucky South FIPS 1602 Feet +<102680> +proj=lcc +lat_1=36.73333333333333 +lat_2=37.93333333333333 +lat_0=36.33333333333334 +lon_0=-85.75 +x_0=500000.0000000002 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Louisiana North FIPS 1701 Feet +<102681> +proj=lcc +lat_1=31.16666666666667 +lat_2=32.66666666666666 +lat_0=30.5 +lon_0=-92.5 +x_0=1000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Louisiana South FIPS 1702 Feet +<102682> +proj=lcc +lat_1=29.3 +lat_2=30.7 +lat_0=28.5 +lon_0=-91.33333333333333 +x_0=1000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Maine East FIPS 1801 Feet +<102683> +proj=tmerc +lat_0=43.66666666666666 +lon_0=-68.5 +k=0.999900 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Maine West FIPS 1802 Feet +<102684> +proj=tmerc +lat_0=42.83333333333334 +lon_0=-70.16666666666667 +k=0.999967 +x_0=900000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Maryland FIPS 1900 Feet +<102685> +proj=lcc +lat_1=38.3 +lat_2=39.45 +lat_0=37.66666666666666 +lon_0=-77 +x_0=399999.9999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Massachusetts Mainland FIPS 2001 Feet +<102686> +proj=lcc +lat_1=41.71666666666667 +lat_2=42.68333333333333 +lat_0=41 +lon_0=-71.5 +x_0=200000 +y_0=750000.0000000001 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Massachusetts Island FIPS 2002 Feet +<102687> +proj=lcc +lat_1=41.28333333333333 +lat_2=41.48333333333333 +lat_0=41 +lon_0=-70.5 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Michigan North FIPS 2111 Feet +<102688> +proj=lcc +lat_1=45.48333333333333 +lat_2=47.08333333333334 +lat_0=44.78333333333333 +lon_0=-87 +x_0=7999999.999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Michigan Central FIPS 2112 Feet +<102689> +proj=lcc +lat_1=44.18333333333333 +lat_2=45.7 +lat_0=43.31666666666667 +lon_0=-84.36666666666666 +x_0=6000000.000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Michigan South FIPS 2113 Feet +<102690> +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Minnesota North FIPS 2201 Feet +<102691> +proj=lcc +lat_1=47.03333333333333 +lat_2=48.63333333333333 +lat_0=46.5 +lon_0=-93.09999999999999 +x_0=799999.9999999999 +y_0=100000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Minnesota Central FIPS 2202 Feet +<102692> +proj=lcc +lat_1=45.61666666666667 +lat_2=47.05 +lat_0=45 +lon_0=-94.25 +x_0=799999.9999999999 +y_0=100000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Minnesota South FIPS 2203 Feet +<102693> +proj=lcc +lat_1=43.78333333333333 +lat_2=45.21666666666667 +lat_0=43 +lon_0=-94 +x_0=799999.9999999999 +y_0=100000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Mississippi East FIPS 2301 Feet +<102694> +proj=tmerc +lat_0=29.5 +lon_0=-88.83333333333333 +k=0.999950 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Mississippi West FIPS 2302 Feet +<102695> +proj=tmerc +lat_0=29.5 +lon_0=-90.33333333333333 +k=0.999950 +x_0=700000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Missouri East FIPS 2401 Feet +<102696> +proj=tmerc +lat_0=35.83333333333334 +lon_0=-90.5 +k=0.999933 +x_0=250000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Missouri Central FIPS 2402 Feet +<102697> +proj=tmerc +lat_0=35.83333333333334 +lon_0=-92.5 +k=0.999933 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Missouri West FIPS 2403 Feet +<102698> +proj=tmerc +lat_0=36.16666666666666 +lon_0=-94.5 +k=0.999941 +x_0=850000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Montana FIPS 2500 Feet +<102700> +proj=lcc +lat_1=45 +lat_2=49 +lat_0=44.25 +lon_0=-109.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Nebraska FIPS 2600 Feet +<102704> +proj=lcc +lat_1=40 +lat_2=43 +lat_0=39.83333333333334 +lon_0=-100 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Nevada East FIPS 2701 Feet +<102707> +proj=tmerc +lat_0=34.75 +lon_0=-115.5833333333333 +k=0.999900 +x_0=200000 +y_0=7999999.999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Nevada Central FIPS 2702 Feet +<102708> +proj=tmerc +lat_0=34.75 +lon_0=-116.6666666666667 +k=0.999900 +x_0=500000.0000000002 +y_0=6000000.000000001 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Nevada West FIPS 2703 Feet +<102709> +proj=tmerc +lat_0=34.75 +lon_0=-118.5833333333333 +k=0.999900 +x_0=799999.9999999999 +y_0=4000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New Hampshire FIPS 2800 Feet +<102710> +proj=tmerc +lat_0=42.5 +lon_0=-71.66666666666667 +k=0.999967 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New Jersey FIPS 2900 Feet +<102711> +proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.999900 +x_0=150000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New Mexico East FIPS 3001 Feet +<102712> +proj=tmerc +lat_0=31 +lon_0=-104.3333333333333 +k=0.999909 +x_0=165000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New Mexico Central FIPS 3002 Feet +<102713> +proj=tmerc +lat_0=31 +lon_0=-106.25 +k=0.999900 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New Mexico West FIPS 3003 Feet +<102714> +proj=tmerc +lat_0=31 +lon_0=-107.8333333333333 +k=0.999917 +x_0=829999.9999999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New York East FIPS 3101 Feet +<102715> +proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.999900 +x_0=150000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New York Central FIPS 3102 Feet +<102716> +proj=tmerc +lat_0=40 +lon_0=-76.58333333333333 +k=0.999938 +x_0=250000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New York West FIPS 3103 Feet +<102717> +proj=tmerc +lat_0=40 +lon_0=-78.58333333333333 +k=0.999938 +x_0=350000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane New York Long Island FIPS 3104 Feet +<102718> +proj=lcc +lat_1=40.66666666666666 +lat_2=41.03333333333333 +lat_0=40.16666666666666 +lon_0=-74 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane North Carolina FIPS 3200 Feet +<102719> +proj=lcc +lat_1=34.33333333333334 +lat_2=36.16666666666666 +lat_0=33.75 +lon_0=-79 +x_0=609601.2199999999 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane North Dakota North FIPS 3301 Feet +<102720> +proj=lcc +lat_1=47.43333333333333 +lat_2=48.73333333333333 +lat_0=47 +lon_0=-100.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane North Dakota South FIPS 3302 Feet +<102721> +proj=lcc +lat_1=46.18333333333333 +lat_2=47.48333333333333 +lat_0=45.66666666666666 +lon_0=-100.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Ohio North FIPS 3401 Feet +<102722> +proj=lcc +lat_1=40.43333333333333 +lat_2=41.7 +lat_0=39.66666666666666 +lon_0=-82.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Ohio South FIPS 3402 Feet +<102723> +proj=lcc +lat_1=38.73333333333333 +lat_2=40.03333333333333 +lat_0=38 +lon_0=-82.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Oklahoma North FIPS 3501 Feet +<102724> +proj=lcc +lat_1=35.56666666666667 +lat_2=36.76666666666667 +lat_0=35 +lon_0=-98 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Oklahoma South FIPS 3502 Feet +<102725> +proj=lcc +lat_1=33.93333333333333 +lat_2=35.23333333333333 +lat_0=33.33333333333334 +lon_0=-98 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Oregon North FIPS 3601 Feet +<102726> +proj=lcc +lat_1=44.33333333333334 +lat_2=46 +lat_0=43.66666666666666 +lon_0=-120.5 +x_0=2500000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Oregon South FIPS 3602 Feet +<102727> +proj=lcc +lat_1=42.33333333333334 +lat_2=44 +lat_0=41.66666666666666 +lon_0=-120.5 +x_0=1500000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Pennsylvania North FIPS 3701 Feet +<102728> +proj=lcc +lat_1=40.88333333333333 +lat_2=41.95 +lat_0=40.16666666666666 +lon_0=-77.75 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Pennsylvania South FIPS 3702 Feet +<102729> +proj=lcc +lat_1=39.93333333333333 +lat_2=40.96666666666667 +lat_0=39.33333333333334 +lon_0=-77.75 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Rhode Island FIPS 3800 Feet +<102730> +proj=tmerc +lat_0=41.08333333333334 +lon_0=-71.5 +k=0.999994 +x_0=100000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane South Carolina FIPS 3900 Feet +<102733> +proj=lcc +lat_1=32.5 +lat_2=34.83333333333334 +lat_0=31.83333333333333 +lon_0=-81 +x_0=609600.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane South Dakota North FIPS 4001 Feet +<102734> +proj=lcc +lat_1=44.41666666666666 +lat_2=45.68333333333333 +lat_0=43.83333333333334 +lon_0=-100 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane South Dakota South FIPS 4002 Feet +<102735> +proj=lcc +lat_1=42.83333333333334 +lat_2=44.4 +lat_0=42.33333333333334 +lon_0=-100.3333333333333 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Tennessee FIPS 4100 Feet +<102736> +proj=lcc +lat_1=35.25 +lat_2=36.41666666666666 +lat_0=34.33333333333334 +lon_0=-86 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Texas North FIPS 4201 Feet +<102737> +proj=lcc +lat_1=34.65 +lat_2=36.18333333333333 +lat_0=34 +lon_0=-101.5 +x_0=200000 +y_0=1000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Texas North Central FIPS 4202 Feet +<102738> +proj=lcc +lat_1=32.13333333333333 +lat_2=33.96666666666667 +lat_0=31.66666666666667 +lon_0=-98.5 +x_0=600000.0000000001 +y_0=2000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Texas Central FIPS 4203 Feet +<102739> +proj=lcc +lat_1=30.11666666666667 +lat_2=31.88333333333333 +lat_0=29.66666666666667 +lon_0=-100.3333333333333 +x_0=700000 +y_0=3000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Texas South Central FIPS 4204 Feet +<102740> +proj=lcc +lat_1=28.38333333333333 +lat_2=30.28333333333334 +lat_0=27.83333333333333 +lon_0=-99 +x_0=600000.0000000001 +y_0=4000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Texas South FIPS 4205 Feet +<102741> +proj=lcc +lat_1=26.16666666666667 +lat_2=27.83333333333333 +lat_0=25.66666666666667 +lon_0=-98.5 +x_0=300000 +y_0=4999999.999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Utah North FIPS 4301 Feet +<102742> +proj=lcc +lat_1=40.71666666666667 +lat_2=41.78333333333333 +lat_0=40.33333333333334 +lon_0=-111.5 +x_0=500000.0000000002 +y_0=1000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Utah Central FIPS 4302 Feet +<102743> +proj=lcc +lat_1=39.01666666666667 +lat_2=40.65 +lat_0=38.33333333333334 +lon_0=-111.5 +x_0=500000.0000000002 +y_0=2000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Utah South FIPS 4303 Feet +<102744> +proj=lcc +lat_1=37.21666666666667 +lat_2=38.35 +lat_0=36.66666666666666 +lon_0=-111.5 +x_0=500000.0000000002 +y_0=3000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Vermont FIPS 4400 Feet +<102745> +proj=tmerc +lat_0=42.5 +lon_0=-72.5 +k=0.999964 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Virginia North FIPS 4501 Feet +<102746> +proj=lcc +lat_1=38.03333333333333 +lat_2=39.2 +lat_0=37.66666666666666 +lon_0=-78.5 +x_0=3499999.999999999 +y_0=2000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Virginia South FIPS 4502 Feet +<102747> +proj=lcc +lat_1=36.76666666666667 +lat_2=37.96666666666667 +lat_0=36.33333333333334 +lon_0=-78.5 +x_0=3499999.999999999 +y_0=1000000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Washington North FIPS 4601 Feet +<102748> +proj=lcc +lat_1=47.5 +lat_2=48.73333333333333 +lat_0=47 +lon_0=-120.8333333333333 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Washington South FIPS 4602 Feet +<102749> +proj=lcc +lat_1=45.83333333333334 +lat_2=47.33333333333334 +lat_0=45.33333333333334 +lon_0=-120.5 +x_0=500000.0000000002 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane West Virginia North FIPS 4701 Feet +<102750> +proj=lcc +lat_1=39 +lat_2=40.25 +lat_0=38.5 +lon_0=-79.5 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane West Virginia South FIPS 4702 Feet +<102751> +proj=lcc +lat_1=37.48333333333333 +lat_2=38.88333333333333 +lat_0=37 +lon_0=-81 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wisconsin North FIPS 4801 Feet +<102752> +proj=lcc +lat_1=45.56666666666667 +lat_2=46.76666666666667 +lat_0=45.16666666666666 +lon_0=-90 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wisconsin Central FIPS 4802 Feet +<102753> +proj=lcc +lat_1=44.25 +lat_2=45.5 +lat_0=43.83333333333334 +lon_0=-90 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wisconsin South FIPS 4803 Feet +<102754> +proj=lcc +lat_1=42.73333333333333 +lat_2=44.06666666666667 +lat_0=42 +lon_0=-90 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wyoming East FIPS 4901 Feet +<102755> +proj=tmerc +lat_0=40.5 +lon_0=-105.1666666666667 +k=0.999938 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wyoming East Central FIPS 4902 Feet +<102756> +proj=tmerc +lat_0=40.5 +lon_0=-107.3333333333333 +k=0.999938 +x_0=399999.9999999999 +y_0=100000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wyoming West Central FIPS 4903 Feet +<102757> +proj=tmerc +lat_0=40.5 +lon_0=-108.75 +k=0.999938 +x_0=600000.0000000001 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Wyoming West FIPS 4904 Feet +<102758> +proj=tmerc +lat_0=40.5 +lon_0=-110.0833333333333 +k=0.999938 +x_0=799999.9999999999 +y_0=100000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Puerto Rico Virgin Islands FIPS 5200 Feet +<102761> +proj=lcc +lat_1=18.03333333333334 +lat_2=18.43333333333333 +lat_0=17.83333333333333 +lon_0=-66.43333333333334 +x_0=200000 +y_0=200000 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# NAD 1983 StatePlane Guam FIPS 5400 Feet +<102766> +proj=poly +lat_0=13.47246635277778 +lon_0=-144.7487507055556 +x_0=49999.99999999999 +y_0=49999.99999999999 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <> +# Belge Lambert 1972 +<103300> +proj=lcc +lat_1=49.8333339 +lat_2=51.16666733333333 +lat_0=90 +lon_0=4.367486666666666 +x_0=150000.01256 +y_0=5400088.4378 +ellps=intl +units=m no_defs <> +# GCS International 1967 +<4023> +proj=longlat +ellps=aust_SA no_defs <> +# GCS Bern 1898 +<4217> +proj=longlat +ellps=bessel no_defs <> +# GCS Voirol Unifie 1960 +<4305> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Montserrat 1958 +<4404> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Voirol Unifie 1960 Paris +<4812> +proj=longlat +ellps=clrk80 +pm=2.337229166666667 no_defs <> +# GCS WGS 1966 +<37001> +proj=longlat +ellps=WGS66 no_defs <> +# GCS Fischer 1960 +<37002> +proj=longlat +a=6378166 +b=6356784.283607107 no_defs <> +# GCS Fischer 1968 +<37003> +proj=longlat +a=6378150 +b=6356768.337244385 no_defs <> +# GCS Fischer Modified +<37004> +proj=longlat +ellps=fschr60m no_defs <> +# GCS Hough 1960 +<37005> +proj=longlat +a=6378270 +b=6356794.343434343 no_defs <> +# GCS Everest Modified 1969 +<37006> +proj=longlat +a=6377295.664 +b=6356094.667915204 no_defs <> +# GCS Walbeck +<37007> +proj=longlat +a=6376896 +b=6355834.846687363 no_defs <> +# GCS Sphere ARC INFO +<37008> +proj=longlat +a=6370997 +b=6370997 no_defs <> +# GCS European 1979 +<37201> +proj=longlat +ellps=intl no_defs <> +# GCS Everest Bangladesh +<37202> +proj=longlat +a=6377276.345 +b=6356075.413140239 no_defs <> +# GCS Everest India Nepal +<37203> +proj=longlat +a=6377301.243 +b=6356100.230165385 no_defs <> +# GCS Hjorsey 1955 +<37204> +proj=longlat +ellps=intl no_defs <> +# GCS Hong Kong 1963 +<37205> +proj=longlat +ellps=intl no_defs <> +# GCS Oman +<37206> +proj=longlat +ellps=clrk80 no_defs <> +# GCS South Asia Singapore +<37207> +proj=longlat +ellps=fschr60m no_defs <> +# GCS Ayabelle +<37208> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Point 58 +<37211> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Beacon E 1945 +<37212> +proj=longlat +ellps=intl no_defs <> +# GCS Tern Island 1961 +<37213> +proj=longlat +ellps=intl no_defs <> +# GCS Astro 1952 +<37214> +proj=longlat +ellps=intl no_defs <> +# GCS Bellevue IGN +<37215> +proj=longlat +ellps=intl no_defs <> +# GCS Canton 1966 +<37216> +proj=longlat +ellps=intl no_defs <> +# GCS Chatham Island 1971 +<37217> +proj=longlat +ellps=intl no_defs <> +# GCS DOS 1968 +<37218> +proj=longlat +ellps=intl no_defs <> +# GCS Easter Island 1967 +<37219> +proj=longlat +ellps=intl no_defs <> +# GCS Guam 1963 +<37220> +proj=longlat +ellps=clrk66 no_defs <> +# GCS GUX 1 +<37221> +proj=longlat +ellps=intl no_defs <> +# GCS Johnston Island 1961 +<37222> +proj=longlat +ellps=intl no_defs <> +# GCS Carthage Degree +<37223> +proj=longlat +a=6378249.2 +b=6356514.999904194 no_defs <> +# GCS Midway 1961 +<37224> +proj=longlat +ellps=intl no_defs <> +# GCS Pitcairn 1967 +<37226> +proj=longlat +ellps=intl no_defs <> +# GCS Santo DOS 1965 +<37227> +proj=longlat +ellps=intl no_defs <> +# GCS Viti Levu 1916 +<37228> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Wake Eniwetok 1960 +<37229> +proj=longlat +a=6378270 +b=6356794.343434343 no_defs <> +# GCS Wake Island 1952 +<37230> +proj=longlat +ellps=intl no_defs <> +# GCS Anna 1 1965 +<37231> +proj=longlat +ellps=aust_SA no_defs <> +# GCS Gan 1970 +<37232> +proj=longlat +ellps=intl no_defs <> +# GCS ISTS 073 1969 +<37233> +proj=longlat +ellps=intl no_defs <> +# GCS Kerguelen Island 1949 +<37234> +proj=longlat +ellps=intl no_defs <> +# GCS Reunion +<37235> +proj=longlat +ellps=intl no_defs <> +# GCS Ascension Island 1958 +<37237> +proj=longlat +ellps=intl no_defs <> +# GCS DOS 71 4 +<37238> +proj=longlat +ellps=intl no_defs <> +# GCS Cape Canaveral +<37239> +proj=longlat +ellps=clrk66 no_defs <> +# GCS Fort Thomas 1955 +<37240> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Graciosa Base SW 1948 +<37241> +proj=longlat +ellps=intl no_defs <> +# GCS ISTS 061 1968 +<37242> +proj=longlat +ellps=intl no_defs <> +# GCS LC5 1961 +<37243> +proj=longlat +ellps=clrk66 no_defs <> +# GCS Observ Meteorologico 1939 +<37245> +proj=longlat +ellps=intl no_defs <> +# GCS Pico de Las Nieves +<37246> +proj=longlat +ellps=intl no_defs <> +# GCS Porto Santo 1936 +<37247> +proj=longlat +ellps=intl no_defs <> +# GCS Sao Braz +<37249> +proj=longlat +ellps=intl no_defs <> +# GCS Selvagem Grande 1938 +<37250> +proj=longlat +ellps=intl no_defs <> +# GCS Tristan 1968 +<37251> +proj=longlat +ellps=intl no_defs <> +# GCS Samoa 1962 +<37252> +proj=longlat +ellps=clrk66 no_defs <> +# GCS Camp Area +<37253> +proj=longlat +ellps=intl no_defs <> +# GCS Deception Island +<37254> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Gunung Segara +<37255> +proj=longlat +ellps=bessel no_defs <> +# GCS S42 Hungary +<37257> +proj=longlat +ellps=krass no_defs <> +# GCS Kusaie 1951 +<37259> +proj=longlat +ellps=intl no_defs <> +# GCS Alaskan Islands +<37260> +proj=longlat +ellps=clrk66 no_defs <> +# GCS Assumed Geographic 1 +<104000> +proj=longlat +ellps=clrk66 +datum=NAD27 no_defs <> +# GCS Estonia 1937 +<104101> +proj=longlat +ellps=bessel no_defs <> +# GCS Hermannskogel +<104102> +proj=longlat +ellps=bessel no_defs <> +# GCS Sierra Leone 1960 +<104103> +proj=longlat +ellps=clrk80 no_defs <> +# GCS Hong Kong 1980 +<104104> +proj=longlat +ellps=intl no_defs <> +# GCS Datum Lisboa Bessel +<104105> +proj=longlat +ellps=bessel no_defs <> +# GCS Datum Lisboa Hayford +<104106> +proj=longlat +ellps=intl no_defs <> +# GCS RGF 1993 +<104107> +proj=longlat +ellps=GRS80 no_defs <> +# GCS NZGD 2000 +<104108> +proj=longlat +ellps=GRS80 no_defs <> +# GCS Merchich Degree +<104261> +proj=longlat +a=6378249.2 +b=6356514.999904194 no_defs <> +# GCS Voirol 1875 Degree +<104304> +proj=longlat +a=6378249.2 +b=6356514.999904194 no_defs <> +# GCS Voirol Unifie 1960 Degree +<104305> +proj=longlat +ellps=clrk80 no_defs <> Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.csv (revision 2866) @@ -0,0 +1,3750 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","UOM_CODE","SOURCE_GEOGCRS_CODE","COORD_OP_CODE","COORD_OP_METHOD_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","PARAMETER_CODE_1","PARAMETER_VALUE_1","PARAMETER_UOM_1","PARAMETER_CODE_2","PARAMETER_VALUE_2","PARAMETER_UOM_2","PARAMETER_CODE_3","PARAMETER_VALUE_3","PARAMETER_UOM_3","PARAMETER_CODE_4","PARAMETER_VALUE_4","PARAMETER_UOM_4","PARAMETER_CODE_5","PARAMETER_VALUE_5","PARAMETER_UOM_5","PARAMETER_CODE_6","PARAMETER_VALUE_6","PARAMETER_UOM_6","PARAMETER_CODE_7","PARAMETER_VALUE_7","PARAMETER_UOM_7" +2000,"Anguilla 1957 / British West Indies Grid",9001,4600,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2001,"Antigua 1943 / British West Indies Grid",9001,4601,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2002,"Dominica 1945 / British West Indies Grid",9001,4602,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2003,"Grenada 1953 / British West Indies Grid",9001,4603,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2004,"Montserrat 1958 / British West Indies Grid",9001,4604,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2005,"St. Kitts 1955 / British West Indies Grid",9001,4605,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2006,"St. Lucia 1955 / British West Indies Grid",9001,4606,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2007,"St. Vincent 45 / British West Indies Grid",9001,4607,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +2008,"NAD27(CGQ77) / SCoPQ zone 2",9001,4609,17700,9807,1,1,4499,8801,0,9110,8802,-55.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2009,"NAD27(CGQ77) / SCoPQ zone 3",9001,4609,17703,9807,1,0,4499,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2010,"NAD27(CGQ77) / SCoPQ zone 4",9001,4609,17704,9807,1,0,4499,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2011,"NAD27(CGQ77) / SCoPQ zone 5",9001,4609,17705,9807,1,0,4499,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2012,"NAD27(CGQ77) / SCoPQ zone 6",9001,4609,17706,9807,1,0,4499,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2013,"NAD27(CGQ77) / SCoPQ zone 7",9001,4609,17707,9807,1,0,4499,8801,0,9110,8802,-70.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2014,"NAD27(CGQ77) / SCoPQ zone 8",9001,4609,17708,9807,1,0,4499,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2015,"NAD27(CGQ77) / SCoPQ zone 9",9001,4609,17709,9807,1,0,4499,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2016,"NAD27(CGQ77) / SCoPQ zone 10",9001,4609,17710,9807,1,0,4499,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2017,"NAD27(76) / MTM zone 8",9001,4608,17708,9807,1,0,4499,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2018,"NAD27(76) / MTM zone 9",9001,4608,17709,9807,1,0,4499,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2019,"NAD27(76) / MTM zone 10",9001,4608,17710,9807,1,0,4499,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2020,"NAD27(76) / MTM zone 11",9001,4608,17711,9807,1,0,4400,8801,0,9110,8802,-82.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2021,"NAD27(76) / MTM zone 12",9001,4608,17712,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2022,"NAD27(76) / MTM zone 13",9001,4608,17713,9807,1,0,4400,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2023,"NAD27(76) / MTM zone 14",9001,4608,17714,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2024,"NAD27(76) / MTM zone 15",9001,4608,17715,9807,1,0,4400,8801,0,9102,8802,-90,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2025,"NAD27(76) / MTM zone 16",9001,4608,17716,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2026,"NAD27(76) / MTM zone 17",9001,4608,17717,9807,1,0,4400,8801,0,9102,8802,-96,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2027,"NAD27(76) / UTM zone 15N",9001,4608,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2028,"NAD27(76) / UTM zone 16N",9001,4608,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2029,"NAD27(76) / UTM zone 17N",9001,4608,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2030,"NAD27(76) / UTM zone 18N",9001,4608,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2031,"NAD27(CGQ77) / UTM zone 17N",9001,4609,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2032,"NAD27(CGQ77) / UTM zone 18N",9001,4609,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2033,"NAD27(CGQ77) / UTM zone 19N",9001,4609,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2034,"NAD27(CGQ77) / UTM zone 20N",9001,4609,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2035,"NAD27(CGQ77) / UTM zone 21N",9001,4609,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2036,"NAD83(CSRS98) / New Brunswick Stereo",9001,4140,19946,9809,1,1,4500,8801,46.3,9110,8802,-66.3,9110,8805,0.999912,9201,8806,2500000,9001,8807,7500000,9001,,,,,, +2037,"NAD83(CSRS98) / UTM zone 19N",9001,4140,16019,9807,1,1,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2038,"NAD83(CSRS98) / UTM zone 20N",9001,4140,16020,9807,1,1,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2039,"Israel / Israeli TM Grid",9001,4141,18204,9807,1,0,4400,8801,31.4403817,9110,8802,35.1216261,9110,8805,1.0000067,9201,8806,219529.584,9001,8807,626907.39,9001,,,,,, +2040,"Locodjo 1965 / UTM zone 30N",9001,4142,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2041,"Abidjan 1987 / UTM zone 30N",9001,4143,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2042,"Locodjo 1965 / UTM zone 29N",9001,4142,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2043,"Abidjan 1987 / UTM zone 29N",9001,4143,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2044,"Hanoi 1972 / Gauss-Kruger zone 18",9001,4147,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +2045,"Hanoi 1972 / Gauss-Kruger zone 19",9001,4147,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +2046,"Hartebeesthoek94 / Lo15",9001,4148,17515,9808,1,0,6503,8801,0,9102,8802,15,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2047,"Hartebeesthoek94 / Lo17",9001,4148,17517,9808,1,0,6503,8801,0,9102,8802,17,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2048,"Hartebeesthoek94 / Lo19",9001,4148,17519,9808,1,0,6503,8801,0,9102,8802,19,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2049,"Hartebeesthoek94 / Lo21",9001,4148,17521,9808,1,0,6503,8801,0,9102,8802,21,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2050,"Hartebeesthoek94 / Lo23",9001,4148,17523,9808,1,0,6503,8801,0,9102,8802,23,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2051,"Hartebeesthoek94 / Lo25",9001,4148,17525,9808,1,0,6503,8801,0,9102,8802,25,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2052,"Hartebeesthoek94 / Lo27",9001,4148,17527,9808,1,0,6503,8801,0,9102,8802,27,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2053,"Hartebeesthoek94 / Lo29",9001,4148,17529,9808,1,0,6503,8801,0,9102,8802,29,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2054,"Hartebeesthoek94 / Lo31",9001,4148,17531,9808,1,0,6503,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2055,"Hartebeesthoek94 / Lo33",9001,4148,17533,9808,1,0,6503,8801,0,9102,8802,33,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2056,"CH1903+ / LV95",9001,4150,19950,9815,1,0,4498,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,2600000,9001,8817,1200000,9001 +2057,"Rassadiran / Nakhl e Taqi",9001,4153,19951,9815,1,0,4400,8811,27.31077837,9110,8812,52.3612741,9110,8813,0.34179803,9110,8814,0.34179803,9110,8815,0.999895934,9201,8816,658377.437,9001,8817,3044969.194,9001 +2058,"ED50(ED77) / UTM zone 38N",9001,4154,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2059,"ED50(ED77) / UTM zone 39N",9001,4154,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2060,"ED50(ED77) / UTM zone 40N",9001,4154,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2061,"ED50(ED77) / UTM zone 41N",9001,4154,16041,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2062,"Madrid 1870 (Madrid) / Spain",9001,4903,19921,9801,1,0,4499,8801,40,9102,8802,0,9102,8805,0.9988085293,9201,8806,600000,9001,8807,600000,9001,,,,,, +2063,"Dabola 1981 / UTM zone 28N",9001,4315,16028,9807,1,1,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2064,"Dabola 1981 / UTM zone 29N",9001,4315,16029,9807,1,1,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2065,"S-JTSK (Ferro) / Krovak",9001,4818,19952,9819,1,0,6501,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,42.3,9110 +2066,"Mount Dillon / Tobago Grid",9039,4157,19924,9806,1,0,4407,8801,11.1507843,9110,8802,-60.4109632,9110,8806,187500,9039,8807,180000,9039,,,,,,,,, +2067,"Naparima 1955 / UTM zone 20N",9001,4158,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2068,"ELD79 / Libya zone 5",9001,4159,18240,9807,1,0,4499,8801,0,9102,8802,9,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2069,"ELD79 / Libya zone 6",9001,4159,18241,9807,1,0,4499,8801,0,9102,8802,11,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2070,"ELD79 / Libya zone 7",9001,4159,18242,9807,1,0,4499,8801,0,9102,8802,13,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2071,"ELD79 / Libya zone 8",9001,4159,18243,9807,1,0,4499,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2072,"ELD79 / Libya zone 9",9001,4159,18244,9807,1,0,4499,8801,0,9102,8802,17,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2073,"ELD79 / Libya zone 10",9001,4159,18245,9807,1,0,4499,8801,0,9102,8802,19,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2074,"ELD79 / Libya zone 11",9001,4159,18246,9807,1,0,4499,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2075,"ELD79 / Libya zone 12",9001,4159,18247,9807,1,0,4499,8801,0,9102,8802,23,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2076,"ELD79 / Libya zone 13",9001,4159,18248,9807,1,0,4499,8801,0,9102,8802,25,9102,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2077,"ELD79 / UTM zone 32N",9001,4159,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2078,"ELD79 / UTM zone 33N",9001,4159,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2079,"ELD79 / UTM zone 34N",9001,4159,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2080,"ELD79 / UTM zone 35N",9001,4159,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2081,"Chos Malal 1914 / Argentina 2",9001,4160,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +2082,"Pampa del Castillo / Argentina 2",9001,4161,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +2083,"Hito XVIII 1963 / Argentina 2",9001,4254,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +2084,"Hito XVIII 1963 / UTM zone 19S",9001,4254,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2085,"NAD27 / Cuba Norte",9001,4267,18061,9801,1,1,4532,8801,22.21,9110,8802,-81,9110,8805,0.99993602,9201,8806,500000,9001,8807,280296.016,9001,,,,,, +2086,"NAD27 / Cuba Sur",9001,4267,18062,9801,1,1,4532,8801,20.43,9110,8802,-76.5,9110,8805,0.99994848,9201,8806,500000,9001,8807,229126.939,9001,,,,,, +2087,"ELD79 / TM 12 NE",9001,4159,16412,9807,1,0,4400,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2088,"Carthage / TM 11 NE",9001,4223,16411,9807,1,0,4400,8801,0,9102,8802,11,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2089,"Yemen NGN96 / UTM zone 38N",9001,4163,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2090,"Yemen NGN96 / UTM zone 39N",9001,4163,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2091,"South Yemen / Gauss Kruger zone 8",9001,4164,16208,9807,1,1,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +2092,"South Yemen / Gauss Kruger zone 9",9001,4164,16209,9807,1,1,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +2093,"Hanoi 1972 / GK 106 NE",9001,4147,16586,9807,1,0,4530,8801,0,9102,8802,106,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2094,"WGS 72BE / TM 106 NE",9001,4324,16506,9807,1,0,4400,8801,0,9102,8802,106,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2095,"Bissau / UTM zone 28N",9001,4165,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2096,"Korean 1985 / East Belt",9001,4162,18251,9807,1,0,4530,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +2097,"Korean 1985 / Central Belt",9001,4162,18252,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +2098,"Korean 1985 / West Belt",9001,4162,18253,9807,1,0,4530,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +2099,"Qatar 1948 / Qatar Grid",9001,4286,19953,9806,1,0,4400,8801,25.22565,9110,8802,50.4541,9110,8806,100000,9001,8807,100000,9001,,,,,,,,, +2100,"GGRS87 / Greek Grid",9001,4121,19930,9807,1,0,4400,8801,0,9102,8802,24,9110,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2101,"Lake / Maracaibo Grid M1",9001,4249,18260,9801,1,0,4499,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,0,9001,8807,-52684.972,9001,,,,,, +2102,"Lake / Maracaibo Grid",9001,4249,18261,9801,1,0,4499,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,200000,9001,8807,147315.028,9001,,,,,, +2103,"Lake / Maracaibo Grid M3",9001,4249,18262,9801,1,0,4499,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,500000,9001,8807,447315.028,9001,,,,,, +2104,"Lake / Maracaibo La Rosa Grid",9001,4249,18263,9801,1,0,4499,8801,10.1,9110,8802,-71.3620224,9110,8805,1,9201,8806,-17044,9001,8807,-23139.97,9001,,,,,, +2105,"NZGD2000 / Mount Eden 2000",9001,4167,17931,9807,1,0,4500,8801,-36.5247,9110,8802,174.4551,9110,8805,0.9999,9201,8806,400000,9001,8807,800000,9001,,,,,, +2106,"NZGD2000 / Bay of Plenty 2000",9001,4167,17932,9807,1,0,4500,8801,-37.454,9110,8802,176.2758,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2107,"NZGD2000 / Poverty Bay 2000",9001,4167,17933,9807,1,0,4500,8801,-38.3728,9110,8802,177.5308,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2108,"NZGD2000 / Hawkes Bay 2000",9001,4167,17934,9807,1,0,4500,8801,-39.3903,9110,8802,176.4025,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2109,"NZGD2000 / Taranaki 2000",9001,4167,17935,9807,1,0,4500,8801,-39.0808,9110,8802,174.134,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2110,"NZGD2000 / Tuhirangi 2000",9001,4167,17936,9807,1,0,4500,8801,-39.3044,9110,8802,175.3824,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2111,"NZGD2000 / Wanganui 2000",9001,4167,17937,9807,1,0,4500,8801,-40.1431,9110,8802,175.2917,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2112,"NZGD2000 / Wairarapa 2000",9001,4167,17938,9807,1,0,4500,8801,-40.5531,9110,8802,175.385,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2113,"NZGD2000 / Wellington 2000",9001,4167,17939,9807,1,0,4500,8801,-41.1804,9110,8802,174.4635,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2114,"NZGD2000 / Collingwood 2000",9001,4167,17940,9807,1,0,4500,8801,-40.4253,9110,8802,172.4019,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2115,"NZGD2000 / Nelson 2000",9001,4167,17941,9807,1,0,4500,8801,-41.1628,9110,8802,173.1757,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2116,"NZGD2000 / Karamea 2000",9001,4167,17942,9807,1,0,4500,8801,-41.1723,9110,8802,172.0632,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2117,"NZGD2000 / Buller 2000",9001,4167,17943,9807,1,0,4500,8801,-41.4838,9110,8802,171.3452,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2118,"NZGD2000 / Grey 2000",9001,4167,17944,9807,1,0,4500,8801,-42.2001,9110,8802,171.3259,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2119,"NZGD2000 / Amuri 2000",9001,4167,17945,9807,1,0,4500,8801,-42.412,9110,8802,173.0036,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2120,"NZGD2000 / Marlborough 2000",9001,4167,17946,9807,1,0,4500,8801,-41.324,9110,8802,173.4807,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2121,"NZGD2000 / Hokitika 2000",9001,4167,17947,9807,1,0,4500,8801,-42.531,9110,8802,170.5847,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2122,"NZGD2000 / Okarito 2000",9001,4167,17948,9807,1,0,4500,8801,-43.0636,9110,8802,170.1539,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2123,"NZGD2000 / Jacksons Bay 2000",9001,4167,17949,9807,1,0,4500,8801,-43.584,9110,8802,168.3622,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2124,"NZGD2000 / Mount Pleasant 2000",9001,4167,17950,9807,1,0,4500,8801,-43.3526,9110,8802,172.4337,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2125,"NZGD2000 / Gawler 2000",9001,4167,17951,9807,1,0,4500,8801,-43.4455,9110,8802,171.2138,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2126,"NZGD2000 / Timaru 2000",9001,4167,17952,9807,1,0,4500,8801,-44.2407,9110,8802,171.0326,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2127,"NZGD2000 / Lindis Peak 2000",9001,4167,17953,9807,1,0,4500,8801,-44.4406,9110,8802,169.2803,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2128,"NZGD2000 / Mount Nicholas 2000",9001,4167,17954,9807,1,0,4500,8801,-45.0758,9110,8802,168.2355,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2129,"NZGD2000 / Mount York 2000",9001,4167,17955,9807,1,0,4500,8801,-45.3349,9110,8802,167.4419,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2130,"NZGD2000 / Observation Point 2000",9001,4167,17956,9807,1,0,4500,8801,-45.4858,9110,8802,170.3742,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2131,"NZGD2000 / North Taieri 2000",9001,4167,17957,9807,1,0,4500,8801,-45.5141,9110,8802,170.1657,9110,8805,0.99996,9201,8806,400000,9001,8807,800000,9001,,,,,, +2132,"NZGD2000 / Bluff 2000",9001,4167,17958,9807,1,0,4500,8801,-46.36,9110,8802,168.2034,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +2133,"NZGD2000 / UTM zone 58S",9001,4167,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2134,"NZGD2000 / UTM zone 59S",9001,4167,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2135,"NZGD2000 / UTM zone 60S",9001,4167,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2136,"Accra / Ghana National Grid",9094,4168,19959,9807,1,0,4404,8801,4.4,9110,8802,-1,9110,8805,0.99975,9201,8806,900000,9094,8807,0,9094,,,,,, +2137,"Accra / TM 1 NW",9001,4168,17001,9807,1,0,4400,8801,0,9102,8802,-1,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2138,"NAD27(CGQ77) / Quebec Lambert",9001,4609,19944,9802,1,0,4499,8821,44,9110,8822,-68.3,9110,8823,60,9110,8824,46,9110,8826,0,9001,8827,0,9001,,, +2139,"NAD83(CSRS98) / SCoPQ zone 2",9001,4140,17700,9807,1,1,4499,8801,0,9110,8802,-55.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2140,"NAD83(CSRS98) / MTM zone 3",9001,4140,17703,9807,1,1,4496,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2141,"NAD83(CSRS98) / MTM zone 4",9001,4140,17704,9807,1,1,4496,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2142,"NAD83(CSRS98) / MTM zone 5",9001,4140,17705,9807,1,1,4496,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2143,"NAD83(CSRS98) / MTM zone 6",9001,4140,17706,9807,1,1,4496,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2144,"NAD83(CSRS98) / MTM zone 7",9001,4140,17707,9807,1,1,4496,8801,0,9110,8802,-70.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2145,"NAD83(CSRS98) / MTM zone 8",9001,4140,17708,9807,1,1,4496,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2146,"NAD83(CSRS98) / MTM zone 9",9001,4140,17709,9807,1,1,4496,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2147,"NAD83(CSRS98) / MTM zone 10",9001,4140,17710,9807,1,1,4496,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2148,"NAD83(CSRS98) / UTM zone 21N",9001,4140,16021,9807,1,1,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2149,"NAD83(CSRS98) / UTM zone 18N",9001,4140,16018,9807,1,1,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2150,"NAD83(CSRS98) / UTM zone 17N",9001,4140,16017,9807,1,1,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2151,"NAD83(CSRS98) / UTM zone 13N",9001,4140,16013,9807,1,1,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2152,"NAD83(CSRS98) / UTM zone 12N",9001,4140,16012,9807,1,1,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2153,"NAD83(CSRS98) / UTM zone 11N",9001,4140,16011,9807,1,1,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2154,"RGF93 / Lambert-93",9001,4171,18085,9802,1,0,4499,8821,46.3,9110,8822,3,9110,8823,49,9110,8824,44,9110,8826,700000,9001,8827,6600000,9001,,, +2155,"American Samoa 1962 / American Samoa Lambert",9003,4169,15300,9801,1,1,4497,8801,-14.16,9110,8802,170,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +2156,"NAD83(HARN) / UTM zone 59S",9001,4152,16159,9807,1,1,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2157,"IRENET95 / Irish Transverse Mercator",9001,4173,19962,9807,1,0,4400,8801,53.3,9110,8802,-8,9110,8805,0.99982,9201,8806,600000,9001,8807,750000,9001,,,,,, +2158,"IRENET95 / UTM zone 29N",9001,4173,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2159,"Sierra Leone 1924 / New Colony Grid",9094,4174,19963,9807,1,0,4404,8801,6.4,9110,8802,-12,9110,8805,1,9201,8806,500000,9094,8807,0,9094,,,,,, +2160,"Sierra Leone 1924 / New War Office Grid",9094,4174,19964,9807,1,0,4404,8801,6.4,9110,8802,-12,9110,8805,1,9201,8806,800000,9094,8807,600000,9094,,,,,, +2161,"Sierra Leone 1968 / UTM zone 28N",9001,4175,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2162,"Sierra Leone 1968 / UTM zone 29N",9001,4175,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2163,US National Atlas Equal Area,9001,4052,3899,1027,1,0,4499,8801,45,9102,8802,-100,9102,8806,0,9001,8807,0,9001,,,,,,,,, +2164,"Locodjo 1965 / TM 5 NW",9001,4142,17005,9807,1,0,4400,8801,0,9102,8802,-5,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2165,"Abidjan 1987 / TM 5 NW",9001,4143,17005,9807,1,0,4400,8801,0,9102,8802,-5,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2166,"Pulkovo 1942(83) / Gauss Kruger zone 3",9001,4178,16263,9807,1,1,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +2167,"Pulkovo 1942(83) / Gauss Kruger zone 4",9001,4178,16264,9807,1,1,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +2168,"Pulkovo 1942(83) / Gauss Kruger zone 5",9001,4178,16265,9807,1,1,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +2169,"Luxembourg 1930 / Gauss",9001,4181,19966,9807,1,0,4530,8801,49.5,9110,8802,6.1,9110,8805,1,9201,8806,80000,9001,8807,100000,9001,,,,,, +2170,"MGI / Slovenia Grid",9001,4312,19967,9807,1,1,4530,8801,0,9110,8802,15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +2171,"Pulkovo 1942(58) / Poland zone I",9001,4179,18281,9809,1,1,4530,8801,50.373,9110,8802,21.05,9110,8805,0.9998,9201,8806,4637000,9001,8807,5647000,9001,,,,,, +2172,"Pulkovo 1942(58) / Poland zone II",9001,4179,18282,9809,1,0,4530,8801,53.0007,9110,8802,21.301,9110,8805,0.9998,9201,8806,4603000,9001,8807,5806000,9001,,,,,, +2173,"Pulkovo 1942(58) / Poland zone III",9001,4179,18283,9809,1,0,4530,8801,53.35,9110,8802,17.003,9110,8805,0.9998,9201,8806,3501000,9001,8807,5999000,9001,,,,,, +2174,"Pulkovo 1942(58) / Poland zone IV",9001,4179,18284,9809,1,0,4530,8801,51.4015,9110,8802,16.402,9110,8805,0.9998,9201,8806,3703000,9001,8807,5627000,9001,,,,,, +2175,"Pulkovo 1942(58) / Poland zone V",9001,4179,18285,9807,1,0,4530,8801,0,9110,8802,18.573,9110,8805,0.999983,9201,8806,237000,9001,8807,-4700000,9001,,,,,, +2176,"ETRS89 / Poland CS2000 zone 5",9001,4258,18305,9807,1,0,4531,8801,0,9102,8802,15,9102,8805,0.999923,9201,8806,5500000,9001,8807,0,9001,,,,,, +2177,"ETRS89 / Poland CS2000 zone 6",9001,4258,18306,9807,1,0,4531,8801,0,9102,8802,18,9102,8805,0.999923,9201,8806,6500000,9001,8807,0,9001,,,,,, +2178,"ETRS89 / Poland CS2000 zone 7",9001,4258,18307,9807,1,0,4531,8801,0,9102,8802,21,9102,8805,0.999923,9201,8806,7500000,9001,8807,0,9001,,,,,, +2179,"ETRS89 / Poland CS2000 zone 8",9001,4258,18308,9807,1,0,4531,8801,0,9102,8802,24,9102,8805,0.999923,9201,8806,8500000,9001,8807,0,9001,,,,,, +2180,"ETRS89 / Poland CS92",9001,4258,18300,9807,1,0,4531,8801,0,9102,8802,19,9102,8805,0.9993,9201,8806,500000,9001,8807,-5300000,9001,,,,,, +2188,"Azores Occidental 1939 / UTM zone 25N",9001,4182,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2189,"Azores Central 1948 / UTM zone 26N",9001,4183,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2190,"Azores Oriental 1940 / UTM zone 26N",9001,4184,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2191,"Madeira 1936 / UTM zone 28N",9001,4185,16028,9807,1,1,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2192,"ED50 / France EuroLambert",9001,4230,18086,9801,1,0,4499,8801,46.48,9110,8802,2.2014025,9110,8805,0.99987742,9201,8806,600000,9001,8807,2200000,9001,,,,,, +2193,"NZGD2000 / New Zealand Transverse Mercator 2000",9001,4167,19971,9807,1,0,4500,8801,0,9102,8802,173,9102,8805,0.9996,9201,8806,1600000,9001,8807,10000000,9001,,,,,, +2194,"American Samoa 1962 / American Samoa Lambert",9003,4169,15301,9801,1,1,4497,8801,-14.16,9110,8802,-170,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +2195,"NAD83(HARN) / UTM zone 2S",9001,4152,16102,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2196,"ETRS89 / Kp2000 Jutland",9001,4258,18401,9807,1,0,4400,8801,0,9110,8802,9.3,9110,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +2197,"ETRS89 / Kp2000 Zealand",9001,4258,18402,9807,1,0,4400,8801,0,9102,8802,12,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +2198,"ETRS89 / Kp2000 Bornholm",9001,4258,18403,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,1,9201,8806,900000,9001,8807,0,9001,,,,,, +2199,"Albanian 1987 / Gauss Kruger zone 4",9001,4191,16204,9807,1,1,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +2200,"ATS77 / New Brunswick Stereographic (ATS77)",9001,4122,19945,9809,1,0,4500,8801,46.3,9110,8802,-66.3,9110,8805,0.999912,9201,8806,300000,9001,8807,800000,9001,,,,,, +2201,"REGVEN / UTM zone 18N",9001,4189,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2202,"REGVEN / UTM zone 19N",9001,4189,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2203,"REGVEN / UTM zone 20N",9001,4189,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2204,"NAD27 / Tennessee",9003,4267,15302,9802,1,0,4497,8821,34.4,9110,8822,-86,9110,8823,35.15,9110,8824,36.25,9110,8826,2000000,9003,8827,100000,9003,,, +2205,"NAD83 / Kentucky North",9001,4269,15303,9802,1,0,4499,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,500000,9001,8827,0,9001,,, +2206,"ED50 / 3-degree Gauss-Kruger zone 9",9001,4230,16269,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +2207,"ED50 / 3-degree Gauss-Kruger zone 10",9001,4230,16270,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +2208,"ED50 / 3-degree Gauss-Kruger zone 11",9001,4230,16271,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +2209,"ED50 / 3-degree Gauss-Kruger zone 12",9001,4230,16272,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +2210,"ED50 / 3-degree Gauss-Kruger zone 13",9001,4230,16273,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +2211,"ED50 / 3-degree Gauss-Kruger zone 14",9001,4230,16274,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +2212,"ED50 / 3-degree Gauss-Kruger zone 15",9001,4230,16275,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +2213,"ETRS89 / TM 30 NE",9001,4258,16430,9807,1,0,4400,8801,0,9102,8802,30,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2214,"Douala 1948 / AOF west",9001,4192,18415,9807,1,1,4400,8801,0,9110,8802,10.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +2215,"Manoca 1962 / UTM zone 32N",9001,4193,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2216,"Qornoq 1927 / UTM zone 22N",9001,4194,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2217,"Qornoq 1927 / UTM zone 23N",9001,4194,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2218,"Scoresbysund 1952 / Greenland zone 5 east",9001,4195,18425,9826,1,0,4501,8801,70.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2219,"ATS77 / UTM zone 19N",9001,4122,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2220,"ATS77 / UTM zone 20N",9001,4122,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2221,"Scoresbysund 1952 / Greenland zone 6 east",9001,4195,18426,9826,1,0,4501,8801,67.3,9110,8802,-32,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2222,"NAD83 / Arizona East (ft)",9002,4269,15304,9807,1,0,4495,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +2223,"NAD83 / Arizona Central (ft)",9002,4269,15305,9807,1,0,4495,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +2224,"NAD83 / Arizona West (ft)",9002,4269,15306,9807,1,0,4495,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,700000,9002,8807,0,9002,,,,,, +2225,"NAD83 / California zone 1 (ftUS)",9003,4269,15307,9802,1,0,4497,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2226,"NAD83 / California zone 2 (ftUS)",9003,4269,15308,9802,1,0,4497,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2227,"NAD83 / California zone 3 (ftUS)",9003,4269,15309,9802,1,0,4497,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2228,"NAD83 / California zone 4 (ftUS)",9003,4269,15310,9802,1,0,4497,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2229,"NAD83 / California zone 5 (ftUS)",9003,4269,15311,9802,1,0,4497,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2230,"NAD83 / California zone 6 (ftUS)",9003,4269,15312,9802,1,0,4497,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2231,"NAD83 / Colorado North (ftUS)",9003,4269,15313,9802,1,0,4497,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,3000000,9003,8827,1000000,9003,,, +2232,"NAD83 / Colorado Central (ftUS)",9003,4269,15314,9802,1,0,4497,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,3000000,9003,8827,1000000,9003,,, +2233,"NAD83 / Colorado South (ftUS)",9003,4269,15315,9802,1,0,4497,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,3000000,9003,8827,1000000,9003,,, +2234,"NAD83 / Connecticut (ftUS)",9003,4269,15316,9802,1,0,4497,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,1000000,9003,8827,500000,9003,,, +2235,"NAD83 / Delaware (ftUS)",9003,4269,15317,9807,1,0,4497,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2236,"NAD83 / Florida East (ftUS)",9003,4269,15318,9807,1,0,4497,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2237,"NAD83 / Florida West (ftUS)",9003,4269,15319,9807,1,0,4497,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2238,"NAD83 / Florida North (ftUS)",9003,4269,15320,9802,1,0,4497,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,1968500,9003,8827,0,9003,,, +2239,"NAD83 / Georgia East (ftUS)",9003,4269,15321,9807,1,0,4497,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2240,"NAD83 / Georgia West (ftUS)",9003,4269,15322,9807,1,0,4497,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +2241,"NAD83 / Idaho East (ftUS)",9003,4269,15323,9807,1,0,4497,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2242,"NAD83 / Idaho Central (ftUS)",9003,4269,15324,9807,1,0,4497,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +2243,"NAD83 / Idaho West (ftUS)",9003,4269,15325,9807,1,0,4497,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,2624666.667,9003,8807,0,9003,,,,,, +2244,"NAD83 / Indiana East (ftUS)",9003,4269,15326,9807,1,1,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,818125,9003,,,,,, +2245,"NAD83 / Indiana West (ftUS)",9003,4269,15327,9807,1,1,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,818125,9003,,,,,, +2246,"NAD83 / Kentucky North (ftUS)",9003,4269,15328,9802,1,0,4497,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,1640416.667,9003,8827,0,9003,,, +2247,"NAD83 / Kentucky South (ftUS)",9003,4269,15329,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,1640416.667,9003,8827,1640416.667,9003,,, +2248,"NAD83 / Maryland (ftUS)",9003,4269,15330,9802,1,0,4497,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,1312333.333,9003,8827,0,9003,,, +2249,"NAD83 / Massachusetts Mainland (ftUS)",9003,4269,15331,9802,1,0,4497,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,656166.667,9003,8827,2460625,9003,,, +2250,"NAD83 / Massachusetts Island (ftUS)",9003,4269,15332,9802,1,0,4497,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,1640416.667,9003,8827,0,9003,,, +2251,"NAD83 / Michigan North (ft)",9002,4269,15333,9802,1,0,4495,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,26246719.16,9002,8827,0,9002,,, +2252,"NAD83 / Michigan Central (ft)",9002,4269,15334,9802,1,0,4495,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,19685039.37,9002,8827,0,9002,,, +2253,"NAD83 / Michigan South (ft)",9002,4269,15335,9802,1,0,4495,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,13123359.58,9002,8827,0,9002,,, +2254,"NAD83 / Mississippi East (ftUS)",9003,4269,15336,9807,1,0,4497,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,984250,9003,8807,0,9003,,,,,, +2255,"NAD83 / Mississippi West (ftUS)",9003,4269,15337,9807,1,0,4497,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +2256,"NAD83 / Montana (ft)",9002,4269,15338,9802,1,0,4495,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,1968503.937,9002,8827,0,9002,,, +2257,"NAD83 / New Mexico East (ftUS)",9003,4269,15339,9807,1,0,4497,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,541337.5,9003,8807,0,9003,,,,,, +2258,"NAD83 / New Mexico Central (ftUS)",9003,4269,15340,9807,1,0,4497,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +2259,"NAD83 / New Mexico West (ftUS)",9003,4269,15341,9807,1,0,4497,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,2723091.667,9003,8807,0,9003,,,,,, +2260,"NAD83 / New York East (ftUS)",9003,4269,15342,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +2261,"NAD83 / New York Central (ftUS)",9003,4269,15343,9807,1,0,4497,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,820208.333,9003,8807,0,9003,,,,,, +2262,"NAD83 / New York West (ftUS)",9003,4269,15344,9807,1,0,4497,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,1148291.667,9003,8807,0,9003,,,,,, +2263,"NAD83 / New York Long Island (ftUS)",9003,4269,15345,9802,1,0,4497,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,984250,9003,8827,0,9003,,, +2264,"NAD83 / North Carolina (ftUS)",9003,4269,15346,9802,1,0,4497,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,2000000,9003,8827,0,9003,,, +2265,"NAD83 / North Dakota North (ft)",9002,4269,15347,9802,1,0,4495,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,1968503.937,9002,8827,0,9002,,, +2266,"NAD83 / North Dakota South (ft)",9002,4269,15348,9802,1,0,4495,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,1968503.937,9002,8827,0,9002,,, +2267,"NAD83 / Oklahoma North (ftUS)",9003,4269,15349,9802,1,0,4497,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,1968500,9003,8827,0,9003,,, +2268,"NAD83 / Oklahoma South (ftUS)",9003,4269,15350,9802,1,0,4497,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,1968500,9003,8827,0,9003,,, +2269,"NAD83 / Oregon North (ft)",9002,4269,15351,9802,1,0,4495,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,8202099.738,9002,8827,0,9002,,, +2270,"NAD83 / Oregon South (ft)",9002,4269,15352,9802,1,0,4495,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,4921259.843,9002,8827,0,9002,,, +2271,"NAD83 / Pennsylvania North (ftUS)",9003,4269,15353,9802,1,0,4497,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,1968500,9003,8827,0,9003,,, +2272,"NAD83 / Pennsylvania South (ftUS)",9003,4269,15354,9802,1,0,4497,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,1968500,9003,8827,0,9003,,, +2273,"NAD83 / South Carolina (ft)",9002,4269,15355,9802,1,0,4495,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,2000000,9002,8827,0,9002,,, +2274,"NAD83 / Tennessee (ftUS)",9003,4269,15356,9802,1,0,4497,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,1968500,9003,8827,0,9003,,, +2275,"NAD83 / Texas North (ftUS)",9003,4269,15357,9802,1,0,4497,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,656166.667,9003,8827,3280833.333,9003,,, +2276,"NAD83 / Texas North Central (ftUS)",9003,4269,15358,9802,1,0,4497,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,1968500,9003,8827,6561666.667,9003,,, +2277,"NAD83 / Texas Central (ftUS)",9003,4269,15359,9802,1,0,4497,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,2296583.333,9003,8827,9842500,9003,,, +2278,"NAD83 / Texas South Central (ftUS)",9003,4269,15360,9802,1,0,4497,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,1968500,9003,8827,13123333.333,9003,,, +2279,"NAD83 / Texas South (ftUS)",9003,4269,15361,9802,1,0,4497,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,984250,9003,8827,16404166.667,9003,,, +2280,"NAD83 / Utah North (ft)",9002,4269,15362,9802,0,0,4495,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640419.948,9002,8827,3280839.895,9002,,, +2281,"NAD83 / Utah Central (ft)",9002,4269,15363,9802,0,0,4495,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640419.948,9002,8827,6561679.79,9002,,, +2282,"NAD83 / Utah South (ft)",9002,4269,15364,9802,0,0,4495,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640419.948,9002,8827,9842519.685,9002,,, +2283,"NAD83 / Virginia North (ftUS)",9003,4269,15365,9802,1,0,4497,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,11482916.667,9003,8827,6561666.667,9003,,, +2284,"NAD83 / Virginia South (ftUS)",9003,4269,15366,9802,1,0,4497,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,11482916.667,9003,8827,3280833.333,9003,,, +2285,"NAD83 / Washington North (ftUS)",9003,4269,15367,9802,1,0,4497,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,1640416.667,9003,8827,0,9003,,, +2286,"NAD83 / Washington South (ftUS)",9003,4269,15368,9802,1,0,4497,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,1640416.667,9003,8827,0,9003,,, +2287,"NAD83 / Wisconsin North (ftUS)",9003,4269,15369,9802,1,0,4497,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,1968500,9003,8827,0,9003,,, +2288,"NAD83 / Wisconsin Central (ftUS)",9003,4269,15370,9802,1,0,4497,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,1968500,9003,8827,0,9003,,, +2289,"NAD83 / Wisconsin South (ftUS)",9003,4269,15371,9802,1,0,4497,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,1968500,9003,8827,0,9003,,, +2290,"ATS77 / Prince Edward Isl. Stereographic (ATS77)",9001,4122,19933,9809,1,0,4496,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,700000,9001,8807,400000,9001,,,,,, +2291,"NAD83(CSRS98) / Prince Edward Isl. Stereographic (NAD83)",9001,4122,19960,9809,1,1,4496,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,400000,9001,8807,800000,9001,,,,,, +2292,"NAD83(CSRS98) / Prince Edward Isl. Stereographic (NAD83)",9001,4140,19960,9809,1,1,4496,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,400000,9001,8807,800000,9001,,,,,, +2294,"ATS77 / MTM Nova Scotia zone 4",9001,4122,17794,9807,1,0,4400,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,4500000,9001,8807,0,9001,,,,,, +2295,"ATS77 / MTM Nova Scotia zone 5",9001,4122,17795,9807,1,0,4400,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,5500000,9001,8807,0,9001,,,,,, +2296,"Ammassalik 1958 / Greenland zone 7 east",9001,4196,18427,9826,1,0,4501,8801,64.3,9110,8802,-40,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2297,"Qornoq 1927 / Greenland zone 1 east",9001,4194,18421,9826,1,1,4501,8801,82.3,9110,8802,-40,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2298,"Qornoq 1927 / Greenland zone 2 east",9001,4194,18422,9826,1,1,4501,8801,79.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2299,"Qornoq 1927 / Greenland zone 2 west",9001,4194,18432,9826,1,0,4501,8801,79.3,9110,8802,-64,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2300,"Qornoq 1927 / Greenland zone 3 east",9001,4194,18423,9826,1,1,4501,8801,76.3,9110,8802,-20,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2301,"Qornoq 1927 / Greenland zone 3 west",9001,4194,18433,9826,1,0,4501,8801,76.3,9110,8802,-64,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2302,"Qornoq 1927 / Greenland zone 4 east",9001,4194,18424,9826,1,1,4501,8801,73.3,9110,8802,-24,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2303,"Qornoq 1927 / Greenland zone 4 west",9001,4194,18434,9826,1,0,4501,8801,73.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2304,"Qornoq 1927 / Greenland zone 5 west",9001,4194,18435,9826,1,0,4501,8801,70.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2305,"Qornoq 1927 / Greenland zone 6 west",9001,4194,18436,9826,1,0,4501,8801,67.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2306,"Qornoq 1927 / Greenland zone 7 west",9001,4194,18437,9826,1,0,4501,8801,64.3,9110,8802,-52,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2307,"Qornoq 1927 / Greenland zone 8 east",9001,4194,18428,9826,1,0,4501,8801,61.3,9110,8802,-48,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +2308,"Batavia / TM 109 SE",9001,4211,16709,9807,1,0,4400,8801,0,9102,8802,109,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2309,"WGS 84 / TM 116 SE",9001,4326,16716,9807,1,0,4400,8801,0,9102,8802,116,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2310,"WGS 84 / TM 132 SE",9001,4326,16732,9807,1,0,4400,8801,0,9102,8802,132,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2311,"WGS 84 / TM 6 NE",9001,4326,16406,9807,1,0,4400,8801,0,9102,8802,6,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2312,"Garoua / UTM zone 33N",9001,4197,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2313,"Kousseri / UTM zone 33N",9001,4198,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2314,"Trinidad 1903 / Trinidad Grid (ftCla)",9005,4302,19975,9806,1,0,4403,8801,10.263,9110,8802,-61.2,9110,8806,283800,9005,8807,214500,9005,,,,,,,,, +2315,"Campo Inchauspe / UTM zone 19S",9001,4221,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2316,"Campo Inchauspe / UTM zone 20S",9001,4221,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2317,"PSAD56 / ICN Regional",9001,4248,19976,9802,1,0,4499,8821,6,9102,8822,-66,9102,8823,9,9102,8824,3,9102,8826,1000000,9001,8827,1000000,9001,,, +2318,"Ain el Abd / Aramco Lambert",9001,4204,19977,9802,1,0,4400,8821,25.0522236,9110,8822,48,9102,8823,17,9102,8824,33,9102,8826,0,9001,8827,0,9001,,, +2319,"ED50 / TM27",9001,4230,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2320,"ED50 / TM30",9001,4230,16370,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2321,"ED50 / TM33",9001,4230,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2322,"ED50 / TM36",9001,4230,16372,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2323,"ED50 / TM39",9001,4230,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2324,"ED50 / TM42",9001,4230,16374,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2325,"ED50 / TM45",9001,4230,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2326,Hong Kong 1980 Grid System,9001,4611,19978,9807,1,0,4500,8801,22.184368,9110,8802,114.10428,9110,8805,1,9201,8806,836694.05,9001,8807,819069.8,9001,,,,,, +2327,"Xian 1980 / Gauss-Kruger zone 13",9001,4610,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +2328,"Xian 1980 / Gauss-Kruger zone 14",9001,4610,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +2329,"Xian 1980 / Gauss-Kruger zone 15",9001,4610,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +2330,"Xian 1980 / Gauss-Kruger zone 16",9001,4610,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +2331,"Xian 1980 / Gauss-Kruger zone 17",9001,4610,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +2332,"Xian 1980 / Gauss-Kruger zone 18",9001,4610,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +2333,"Xian 1980 / Gauss-Kruger zone 19",9001,4610,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +2334,"Xian 1980 / Gauss-Kruger zone 20",9001,4610,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +2335,"Xian 1980 / Gauss-Kruger zone 21",9001,4610,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +2336,"Xian 1980 / Gauss-Kruger zone 22",9001,4610,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +2337,"Xian 1980 / Gauss-Kruger zone 23",9001,4610,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +2338,"Xian 1980 / Gauss-Kruger CM 75E",9001,4610,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2339,"Xian 1980 / Gauss-Kruger CM 81E",9001,4610,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2340,"Xian 1980 / Gauss-Kruger CM 87E",9001,4610,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2341,"Xian 1980 / Gauss-Kruger CM 93E",9001,4610,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2342,"Xian 1980 / Gauss-Kruger CM 99E",9001,4610,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2343,"Xian 1980 / Gauss-Kruger CM 105E",9001,4610,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2344,"Xian 1980 / Gauss-Kruger CM 111E",9001,4610,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2345,"Xian 1980 / Gauss-Kruger CM 117E",9001,4610,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2346,"Xian 1980 / Gauss-Kruger CM 123E",9001,4610,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2347,"Xian 1980 / Gauss-Kruger CM 129E",9001,4610,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2348,"Xian 1980 / Gauss-Kruger CM 135E",9001,4610,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2349,"Xian 1980 / 3-degree Gauss-Kruger zone 25",9001,4610,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +2350,"Xian 1980 / 3-degree Gauss-Kruger zone 26",9001,4610,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +2351,"Xian 1980 / 3-degree Gauss-Kruger zone 27",9001,4610,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +2352,"Xian 1980 / 3-degree Gauss-Kruger zone 28",9001,4610,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +2353,"Xian 1980 / 3-degree Gauss-Kruger zone 29",9001,4610,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +2354,"Xian 1980 / 3-degree Gauss-Kruger zone 30",9001,4610,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +2355,"Xian 1980 / 3-degree Gauss-Kruger zone 31",9001,4610,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +2356,"Xian 1980 / 3-degree Gauss-Kruger zone 32",9001,4610,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +2357,"Xian 1980 / 3-degree Gauss-Kruger zone 33",9001,4610,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +2358,"Xian 1980 / 3-degree Gauss-Kruger zone 34",9001,4610,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +2359,"Xian 1980 / 3-degree Gauss-Kruger zone 35",9001,4610,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +2360,"Xian 1980 / 3-degree Gauss-Kruger zone 36",9001,4610,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +2361,"Xian 1980 / 3-degree Gauss-Kruger zone 37",9001,4610,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +2362,"Xian 1980 / 3-degree Gauss-Kruger zone 38",9001,4610,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +2363,"Xian 1980 / 3-degree Gauss-Kruger zone 39",9001,4610,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +2364,"Xian 1980 / 3-degree Gauss-Kruger zone 40",9001,4610,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +2365,"Xian 1980 / 3-degree Gauss-Kruger zone 41",9001,4610,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +2366,"Xian 1980 / 3-degree Gauss-Kruger zone 42",9001,4610,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +2367,"Xian 1980 / 3-degree Gauss-Kruger zone 43",9001,4610,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +2368,"Xian 1980 / 3-degree Gauss-Kruger zone 44",9001,4610,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +2369,"Xian 1980 / 3-degree Gauss-Kruger zone 45",9001,4610,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +2370,"Xian 1980 / 3-degree Gauss-Kruger CM 75E",9001,4610,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2371,"Xian 1980 / 3-degree Gauss-Kruger CM 78E",9001,4610,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2372,"Xian 1980 / 3-degree Gauss-Kruger CM 81E",9001,4610,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2373,"Xian 1980 / 3-degree Gauss-Kruger CM 84E",9001,4610,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2374,"Xian 1980 / 3-degree Gauss-Kruger CM 87E",9001,4610,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2375,"Xian 1980 / 3-degree Gauss-Kruger CM 90E",9001,4610,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2376,"Xian 1980 / 3-degree Gauss-Kruger CM 93E",9001,4610,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2377,"Xian 1980 / 3-degree Gauss-Kruger CM 96E",9001,4610,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2378,"Xian 1980 / 3-degree Gauss-Kruger CM 99E",9001,4610,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2379,"Xian 1980 / 3-degree Gauss-Kruger CM 102E",9001,4610,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2380,"Xian 1980 / 3-degree Gauss-Kruger CM 105E",9001,4610,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2381,"Xian 1980 / 3-degree Gauss-Kruger CM 108E",9001,4610,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2382,"Xian 1980 / 3-degree Gauss-Kruger CM 111E",9001,4610,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2383,"Xian 1980 / 3-degree Gauss-Kruger CM 114E",9001,4610,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2384,"Xian 1980 / 3-degree Gauss-Kruger CM 117E",9001,4610,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2385,"Xian 1980 / 3-degree Gauss-Kruger CM 120E",9001,4610,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2386,"Xian 1980 / 3-degree Gauss-Kruger CM 123E",9001,4610,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2387,"Xian 1980 / 3-degree Gauss-Kruger CM 126E",9001,4610,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2388,"Xian 1980 / 3-degree Gauss-Kruger CM 129E",9001,4610,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2389,"Xian 1980 / 3-degree Gauss-Kruger CM 132E",9001,4610,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2390,"Xian 1980 / 3-degree Gauss-Kruger CM 135E",9001,4610,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2391,"KKJ / Finland zone 1",9001,4123,18191,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +2392,"KKJ / Finland zone 2",9001,4123,18192,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +2393,"KKJ / Finland Uniform Coordinate System",9001,4123,18193,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +2394,"KKJ / Finland zone 4",9001,4123,18194,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +2395,"South Yemen / Gauss-Kruger zone 8",9001,4164,16208,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +2396,"South Yemen / Gauss-Kruger zone 9",9001,4164,16209,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +2397,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 3",9001,4178,16263,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +2398,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 4",9001,4178,16264,9807,1,0,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +2399,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 5",9001,4178,16265,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +2400,RT90 2.5 gon W,9001,4124,19929,9807,1,1,4530,8801,0,9110,8802,15.48298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +2401,"Beijing 1954 / 3-degree Gauss-Kruger zone 25",9001,4214,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +2402,"Beijing 1954 / 3-degree Gauss-Kruger zone 26",9001,4214,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +2403,"Beijing 1954 / 3-degree Gauss-Kruger zone 27",9001,4214,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +2404,"Beijing 1954 / 3-degree Gauss-Kruger zone 28",9001,4214,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +2405,"Beijing 1954 / 3-degree Gauss-Kruger zone 29",9001,4214,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +2406,"Beijing 1954 / 3-degree Gauss-Kruger zone 30",9001,4214,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +2407,"Beijing 1954 / 3-degree Gauss-Kruger zone 31",9001,4214,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +2408,"Beijing 1954 / 3-degree Gauss-Kruger zone 32",9001,4214,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +2409,"Beijing 1954 / 3-degree Gauss-Kruger zone 33",9001,4214,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +2410,"Beijing 1954 / 3-degree Gauss-Kruger zone 34",9001,4214,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +2411,"Beijing 1954 / 3-degree Gauss-Kruger zone 35",9001,4214,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +2412,"Beijing 1954 / 3-degree Gauss-Kruger zone 36",9001,4214,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +2413,"Beijing 1954 / 3-degree Gauss-Kruger zone 37",9001,4214,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +2414,"Beijing 1954 / 3-degree Gauss-Kruger zone 38",9001,4214,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +2415,"Beijing 1954 / 3-degree Gauss-Kruger zone 39",9001,4214,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +2416,"Beijing 1954 / 3-degree Gauss-Kruger zone 40",9001,4214,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +2417,"Beijing 1954 / 3-degree Gauss-Kruger zone 41",9001,4214,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +2418,"Beijing 1954 / 3-degree Gauss-Kruger zone 42",9001,4214,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +2419,"Beijing 1954 / 3-degree Gauss-Kruger zone 43",9001,4214,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +2420,"Beijing 1954 / 3-degree Gauss-Kruger zone 44",9001,4214,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +2421,"Beijing 1954 / 3-degree Gauss-Kruger zone 45",9001,4214,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +2422,"Beijing 1954 / 3-degree Gauss-Kruger CM 75E",9001,4214,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2423,"Beijing 1954 / 3-degree Gauss-Kruger CM 78E",9001,4214,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2424,"Beijing 1954 / 3-degree Gauss-Kruger CM 81E",9001,4214,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2425,"Beijing 1954 / 3-degree Gauss-Kruger CM 84E",9001,4214,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2426,"Beijing 1954 / 3-degree Gauss-Kruger CM 87E",9001,4214,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2427,"Beijing 1954 / 3-degree Gauss-Kruger CM 90E",9001,4214,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2428,"Beijing 1954 / 3-degree Gauss-Kruger CM 93E",9001,4214,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2429,"Beijing 1954 / 3-degree Gauss-Kruger CM 96E",9001,4214,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2430,"Beijing 1954 / 3-degree Gauss-Kruger CM 99E",9001,4214,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2431,"Beijing 1954 / 3-degree Gauss-Kruger CM 102E",9001,4214,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2432,"Beijing 1954 / 3-degree Gauss-Kruger CM 105E",9001,4214,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2433,"Beijing 1954 / 3-degree Gauss-Kruger CM 108E",9001,4214,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2434,"Beijing 1954 / 3-degree Gauss-Kruger CM 111E",9001,4214,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2435,"Beijing 1954 / 3-degree Gauss-Kruger CM 114E",9001,4214,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2436,"Beijing 1954 / 3-degree Gauss-Kruger CM 117E",9001,4214,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2437,"Beijing 1954 / 3-degree Gauss-Kruger CM 120E",9001,4214,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2438,"Beijing 1954 / 3-degree Gauss-Kruger CM 123E",9001,4214,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2439,"Beijing 1954 / 3-degree Gauss-Kruger CM 126E",9001,4214,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2440,"Beijing 1954 / 3-degree Gauss-Kruger CM 129E",9001,4214,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2441,"Beijing 1954 / 3-degree Gauss-Kruger CM 132E",9001,4214,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2442,"Beijing 1954 / 3-degree Gauss-Kruger CM 135E",9001,4214,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2443,"JGD2000 / Japan Plane Rectangular CS I",9001,4612,17801,9807,1,0,4530,8801,33,9110,8802,129.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2444,"JGD2000 / Japan Plane Rectangular CS II",9001,4612,17802,9807,1,0,4530,8801,33,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2445,"JGD2000 / Japan Plane Rectangular CS III",9001,4612,17803,9807,1,0,4530,8801,36,9110,8802,132.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2446,"JGD2000 / Japan Plane Rectangular CS IV",9001,4612,17804,9807,1,0,4530,8801,33,9110,8802,133.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2447,"JGD2000 / Japan Plane Rectangular CS V",9001,4612,17805,9807,1,0,4530,8801,36,9110,8802,134.2,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2448,"JGD2000 / Japan Plane Rectangular CS VI",9001,4612,17806,9807,1,0,4530,8801,36,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2449,"JGD2000 / Japan Plane Rectangular CS VII",9001,4612,17807,9807,1,0,4530,8801,36,9110,8802,137.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2450,"JGD2000 / Japan Plane Rectangular CS VIII",9001,4612,17808,9807,1,0,4530,8801,36,9110,8802,138.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2451,"JGD2000 / Japan Plane Rectangular CS IX",9001,4612,17809,9807,1,0,4530,8801,36,9110,8802,139.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2452,"JGD2000 / Japan Plane Rectangular CS X",9001,4612,17810,9807,1,0,4530,8801,40,9110,8802,140.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2453,"JGD2000 / Japan Plane Rectangular CS XI",9001,4612,17811,9807,1,0,4530,8801,44,9110,8802,140.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2454,"JGD2000 / Japan Plane Rectangular CS XII",9001,4612,17812,9807,1,0,4530,8801,44,9110,8802,142.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2455,"JGD2000 / Japan Plane Rectangular CS XIII",9001,4612,17813,9807,1,0,4530,8801,44,9110,8802,144.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2456,"JGD2000 / Japan Plane Rectangular CS XIV",9001,4612,17814,9807,1,0,4530,8801,26,9110,8802,142,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2457,"JGD2000 / Japan Plane Rectangular CS XV",9001,4612,17815,9807,1,0,4530,8801,26,9110,8802,127.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2458,"JGD2000 / Japan Plane Rectangular CS XVI",9001,4612,17816,9807,1,0,4530,8801,26,9110,8802,124,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2459,"JGD2000 / Japan Plane Rectangular CS XVII",9001,4612,17817,9807,1,0,4530,8801,26,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2460,"JGD2000 / Japan Plane Rectangular CS XVIII",9001,4612,17818,9807,1,0,4530,8801,20,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2461,"JGD2000 / Japan Plane Rectangular CS XIX",9001,4612,17819,9807,1,0,4530,8801,26,9110,8802,154,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +2462,"Albanian 1987 / Gauss-Kruger zone 4",9001,4191,16204,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +2463,"Pulkovo 1995 / Gauss-Kruger CM 21E",9001,4200,16304,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2464,"Pulkovo 1995 / Gauss-Kruger CM 27E",9001,4200,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2465,"Pulkovo 1995 / Gauss-Kruger CM 33E",9001,4200,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2466,"Pulkovo 1995 / Gauss-Kruger CM 39E",9001,4200,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2467,"Pulkovo 1995 / Gauss-Kruger CM 45E",9001,4200,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2468,"Pulkovo 1995 / Gauss-Kruger CM 51E",9001,4200,16309,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2469,"Pulkovo 1995 / Gauss-Kruger CM 57E",9001,4200,16310,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2470,"Pulkovo 1995 / Gauss-Kruger CM 63E",9001,4200,16311,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2471,"Pulkovo 1995 / Gauss-Kruger CM 69E",9001,4200,16312,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2472,"Pulkovo 1995 / Gauss-Kruger CM 75E",9001,4200,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2473,"Pulkovo 1995 / Gauss-Kruger CM 81E",9001,4200,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2474,"Pulkovo 1995 / Gauss-Kruger CM 87E",9001,4200,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2475,"Pulkovo 1995 / Gauss-Kruger CM 93E",9001,4200,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2476,"Pulkovo 1995 / Gauss-Kruger CM 99E",9001,4200,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2477,"Pulkovo 1995 / Gauss-Kruger CM 105E",9001,4200,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2478,"Pulkovo 1995 / Gauss-Kruger CM 111E",9001,4200,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2479,"Pulkovo 1995 / Gauss-Kruger CM 117E",9001,4200,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2480,"Pulkovo 1995 / Gauss-Kruger CM 123E",9001,4200,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2481,"Pulkovo 1995 / Gauss-Kruger CM 129E",9001,4200,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2482,"Pulkovo 1995 / Gauss-Kruger CM 135E",9001,4200,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2483,"Pulkovo 1995 / Gauss-Kruger CM 141E",9001,4200,16324,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2484,"Pulkovo 1995 / Gauss-Kruger CM 147E",9001,4200,16325,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2485,"Pulkovo 1995 / Gauss-Kruger CM 153E",9001,4200,16326,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2486,"Pulkovo 1995 / Gauss-Kruger CM 159E",9001,4200,16327,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2487,"Pulkovo 1995 / Gauss-Kruger CM 165E",9001,4200,16328,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2488,"Pulkovo 1995 / Gauss-Kruger CM 171E",9001,4200,16329,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2489,"Pulkovo 1995 / Gauss-Kruger CM 177E",9001,4200,16330,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2490,"Pulkovo 1995 / Gauss-Kruger CM 177W",9001,4200,16331,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2491,"Pulkovo 1995 / Gauss-Kruger CM 171W",9001,4200,16332,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2492,"Pulkovo 1942 / Gauss-Kruger CM 9E",9001,4284,16302,9807,1,1,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2493,"Pulkovo 1942 / Gauss-Kruger CM 15E",9001,4284,16303,9807,1,1,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2494,"Pulkovo 1942 / Gauss-Kruger CM 21E",9001,4284,16304,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2495,"Pulkovo 1942 / Gauss-Kruger CM 27E",9001,4284,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2496,"Pulkovo 1942 / Gauss-Kruger CM 33E",9001,4284,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2497,"Pulkovo 1942 / Gauss-Kruger CM 39E",9001,4284,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2498,"Pulkovo 1942 / Gauss-Kruger CM 45E",9001,4284,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2499,"Pulkovo 1942 / Gauss-Kruger CM 51E",9001,4284,16309,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2500,"Pulkovo 1942 / Gauss-Kruger CM 57E",9001,4284,16310,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2501,"Pulkovo 1942 / Gauss-Kruger CM 63E",9001,4284,16311,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2502,"Pulkovo 1942 / Gauss-Kruger CM 69E",9001,4284,16312,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2503,"Pulkovo 1942 / Gauss-Kruger CM 75E",9001,4284,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2504,"Pulkovo 1942 / Gauss-Kruger CM 81E",9001,4284,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2505,"Pulkovo 1942 / Gauss-Kruger CM 87E",9001,4284,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2506,"Pulkovo 1942 / Gauss-Kruger CM 93E",9001,4284,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2507,"Pulkovo 1942 / Gauss-Kruger CM 99E",9001,4284,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2508,"Pulkovo 1942 / Gauss-Kruger CM 105E",9001,4284,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2509,"Pulkovo 1942 / Gauss-Kruger CM 111E",9001,4284,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2510,"Pulkovo 1942 / Gauss-Kruger CM 117E",9001,4284,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2511,"Pulkovo 1942 / Gauss-Kruger CM 123E",9001,4284,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2512,"Pulkovo 1942 / Gauss-Kruger CM 129E",9001,4284,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2513,"Pulkovo 1942 / Gauss-Kruger CM 135E",9001,4284,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2514,"Pulkovo 1942 / Gauss-Kruger CM 141E",9001,4284,16324,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2515,"Pulkovo 1942 / Gauss-Kruger CM 147E",9001,4284,16325,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2516,"Pulkovo 1942 / Gauss-Kruger CM 153E",9001,4284,16326,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2517,"Pulkovo 1942 / Gauss-Kruger CM 159E",9001,4284,16327,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2518,"Pulkovo 1942 / Gauss-Kruger CM 165E",9001,4284,16328,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2519,"Pulkovo 1942 / Gauss-Kruger CM 171E",9001,4284,16329,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2520,"Pulkovo 1942 / Gauss-Kruger CM 177E",9001,4284,16330,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2521,"Pulkovo 1942 / Gauss-Kruger CM 177W",9001,4284,16331,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2522,"Pulkovo 1942 / Gauss-Kruger CM 171W",9001,4284,16332,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2523,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 7",9001,4284,16267,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +2524,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 8",9001,4284,16268,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +2525,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 9",9001,4284,16269,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +2526,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 10",9001,4284,16270,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +2527,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 11",9001,4284,16271,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +2528,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 12",9001,4284,16272,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +2529,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 13",9001,4284,16273,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +2530,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 14",9001,4284,16274,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +2531,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 15",9001,4284,16275,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +2532,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 16",9001,4284,16276,9807,1,0,4530,8801,0,9102,8802,48,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +2533,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 17",9001,4284,16277,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +2534,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 18",9001,4284,16278,9807,1,0,4530,8801,0,9102,8802,54,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +2535,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 19",9001,4284,16279,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +2536,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 20",9001,4284,16280,9807,1,0,4530,8801,0,9102,8802,60,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +2537,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 21",9001,4284,16281,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +2538,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 22",9001,4284,16282,9807,1,0,4530,8801,0,9102,8802,66,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +2539,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 23",9001,4284,16283,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +2540,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 24",9001,4284,16284,9807,1,0,4530,8801,0,9102,8802,72,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +2541,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 25",9001,4284,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +2542,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 26",9001,4284,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +2543,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 27",9001,4284,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +2544,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 28",9001,4284,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +2545,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 29",9001,4284,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +2546,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 30",9001,4284,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +2547,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 31",9001,4284,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +2548,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 32",9001,4284,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +2549,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 33",9001,4284,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +2550,"Samboja / UTM zone 50S",9001,4125,16150,9807,1,1,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2551,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 34",9001,4284,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +2552,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 35",9001,4284,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +2553,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 36",9001,4284,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +2554,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 37",9001,4284,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +2555,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 38",9001,4284,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +2556,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 39",9001,4284,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +2557,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 40",9001,4284,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +2558,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 41",9001,4284,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +2559,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 42",9001,4284,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +2560,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 43",9001,4284,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +2561,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 44",9001,4284,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +2562,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 45",9001,4284,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +2563,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 46",9001,4284,16076,9807,1,0,4530,8801,0,9102,8802,138,9102,8805,1,9201,8806,46500000,9001,8807,0,9001,,,,,, +2564,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 47",9001,4284,16077,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,47500000,9001,8807,0,9001,,,,,, +2565,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 48",9001,4284,16078,9807,1,0,4530,8801,0,9102,8802,144,9102,8805,1,9201,8806,48500000,9001,8807,0,9001,,,,,, +2566,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 49",9001,4284,16079,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,49500000,9001,8807,0,9001,,,,,, +2567,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 50",9001,4284,16080,9807,1,0,4530,8801,0,9102,8802,150,9102,8805,1,9201,8806,50500000,9001,8807,0,9001,,,,,, +2568,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 51",9001,4284,16081,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,51500000,9001,8807,0,9001,,,,,, +2569,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 52",9001,4284,16082,9807,1,0,4530,8801,0,9102,8802,156,9102,8805,1,9201,8806,52500000,9001,8807,0,9001,,,,,, +2570,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 53",9001,4284,16083,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,53500000,9001,8807,0,9001,,,,,, +2571,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 54",9001,4284,16084,9807,1,0,4530,8801,0,9102,8802,162,9102,8805,1,9201,8806,54500000,9001,8807,0,9001,,,,,, +2572,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 55",9001,4284,16085,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,55500000,9001,8807,0,9001,,,,,, +2573,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 56",9001,4284,16086,9807,1,0,4530,8801,0,9102,8802,168,9102,8805,1,9201,8806,56500000,9001,8807,0,9001,,,,,, +2574,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 57",9001,4284,16087,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,57500000,9001,8807,0,9001,,,,,, +2575,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 58",9001,4284,16088,9807,1,0,4530,8801,0,9102,8802,174,9102,8805,1,9201,8806,58500000,9001,8807,0,9001,,,,,, +2576,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 59",9001,4284,16089,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,59500000,9001,8807,0,9001,,,,,, +2577,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 60",9001,4284,16090,9807,1,1,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,60000000,9001,8807,0,9001,,,,,, +2578,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 61",9001,4284,16091,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,61500000,9001,8807,0,9001,,,,,, +2579,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 62",9001,4284,16092,9807,1,0,4530,8801,0,9102,8802,-174,9102,8805,1,9201,8806,62500000,9001,8807,0,9001,,,,,, +2580,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 63",9001,4284,16093,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,63500000,9001,8807,0,9001,,,,,, +2581,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 64",9001,4284,16094,9807,1,0,4530,8801,0,9102,8802,-168,9102,8805,1,9201,8806,64500000,9001,8807,0,9001,,,,,, +2582,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 21E",9001,4284,16304,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2583,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 24E",9001,4284,16368,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2584,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 27E",9001,4284,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2585,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 30E",9001,4284,16370,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2586,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 33E",9001,4284,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2587,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 36E",9001,4284,16372,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2588,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 39E",9001,4284,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2589,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 42E",9001,4284,16374,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2590,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 45E",9001,4284,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2591,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 48E",9001,4284,16376,9807,1,0,4530,8801,0,9102,8802,48,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2592,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 51E",9001,4284,16309,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2593,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 54E",9001,4284,16378,9807,1,0,4530,8801,0,9102,8802,54,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2594,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 57E",9001,4284,16310,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2595,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 60E",9001,4284,16380,9807,1,0,4530,8801,0,9102,8802,60,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2596,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 63E",9001,4284,16311,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2597,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 66E",9001,4284,16382,9807,1,0,4530,8801,0,9102,8802,66,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2598,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 69E",9001,4284,16312,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2599,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 72E",9001,4284,16384,9807,1,0,4530,8801,0,9102,8802,72,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2600,Lietuvos Koordinoei Sistema 1994,9001,4669,19934,9807,1,1,4530,8801,0,9102,8802,24,9102,8805,0.9998,9201,8806,500000,9001,8807,0,9001,,,,,, +2601,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 75E",9001,4284,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2602,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 78E",9001,4284,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2603,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 81E",9001,4284,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2604,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 84E",9001,4284,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2605,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 87E",9001,4284,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2606,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 90E",9001,4284,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2607,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 93E",9001,4284,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2608,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 96E",9001,4284,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2609,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 99E",9001,4284,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2610,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 102E",9001,4284,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2611,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 105E",9001,4284,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2612,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 108E",9001,4284,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2613,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 111E",9001,4284,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2614,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 114E",9001,4284,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2615,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 117E",9001,4284,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2616,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 120E",9001,4284,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2617,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 123E",9001,4284,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2618,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 126E",9001,4284,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2619,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 129E",9001,4284,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2620,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 132E",9001,4284,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2621,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 135E",9001,4284,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2622,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 138E",9001,4284,16176,9807,1,0,4530,8801,0,9102,8802,138,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2623,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 141E",9001,4284,16324,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2624,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 144E",9001,4284,16178,9807,1,0,4530,8801,0,9102,8802,144,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2625,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 147E",9001,4284,16325,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2626,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 150E",9001,4284,16180,9807,1,0,4530,8801,0,9102,8802,150,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2627,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 153E",9001,4284,16326,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2628,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 156E",9001,4284,16182,9807,1,0,4530,8801,0,9102,8802,156,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2629,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 159E",9001,4284,16327,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2630,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 162E",9001,4284,16184,9807,1,0,4530,8801,0,9102,8802,162,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2631,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 165E",9001,4284,16328,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2632,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 168E",9001,4284,16186,9807,1,0,4530,8801,0,9102,8802,168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2633,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 171E",9001,4284,16329,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2634,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 174E",9001,4284,16188,9807,1,0,4530,8801,0,9102,8802,174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2635,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 177E",9001,4284,16330,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2636,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 180E",9001,4284,16190,9807,1,0,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2637,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 177W",9001,4284,16331,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2638,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 174W",9001,4284,16192,9807,1,0,4530,8801,0,9102,8802,-174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2639,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 171W",9001,4284,16332,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2640,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 168W",9001,4284,16194,9807,1,0,4530,8801,0,9102,8802,-168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2641,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 7",9001,4200,16267,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +2642,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 8",9001,4200,16268,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +2643,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 9",9001,4200,16269,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +2644,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 10",9001,4200,16270,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +2645,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 11",9001,4200,16271,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +2646,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 12",9001,4200,16272,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +2647,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 13",9001,4200,16273,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +2648,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 14",9001,4200,16274,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +2649,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 15",9001,4200,16275,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +2650,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 16",9001,4200,16276,9807,1,0,4530,8801,0,9102,8802,48,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +2651,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 17",9001,4200,16277,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +2652,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 18",9001,4200,16278,9807,1,0,4530,8801,0,9102,8802,54,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +2653,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 19",9001,4200,16279,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +2654,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 20",9001,4200,16280,9807,1,0,4530,8801,0,9102,8802,60,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +2655,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 21",9001,4200,16281,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +2656,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 22",9001,4200,16282,9807,1,0,4530,8801,0,9102,8802,66,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +2657,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 23",9001,4200,16283,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +2658,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 24",9001,4200,16284,9807,1,0,4530,8801,0,9102,8802,72,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +2659,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 25",9001,4200,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +2660,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 26",9001,4200,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +2661,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 27",9001,4200,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +2662,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 28",9001,4200,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +2663,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 29",9001,4200,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +2664,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 30",9001,4200,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +2665,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 31",9001,4200,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +2666,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 32",9001,4200,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +2667,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 33",9001,4200,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +2668,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 34",9001,4200,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +2669,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 35",9001,4200,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +2670,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 36",9001,4200,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +2671,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 37",9001,4200,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +2672,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 38",9001,4200,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +2673,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 39",9001,4200,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +2674,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 40",9001,4200,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +2675,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 41",9001,4200,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +2676,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 42",9001,4200,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +2677,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 43",9001,4200,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +2678,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 44",9001,4200,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +2679,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 45",9001,4200,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +2680,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 46",9001,4200,16076,9807,1,0,4530,8801,0,9102,8802,138,9102,8805,1,9201,8806,46500000,9001,8807,0,9001,,,,,, +2681,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 47",9001,4200,16077,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,47500000,9001,8807,0,9001,,,,,, +2682,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 48",9001,4200,16078,9807,1,0,4530,8801,0,9102,8802,144,9102,8805,1,9201,8806,48500000,9001,8807,0,9001,,,,,, +2683,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 49",9001,4200,16079,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,49500000,9001,8807,0,9001,,,,,, +2684,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 50",9001,4200,16080,9807,1,0,4530,8801,0,9102,8802,150,9102,8805,1,9201,8806,50500000,9001,8807,0,9001,,,,,, +2685,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 51",9001,4200,16081,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,51500000,9001,8807,0,9001,,,,,, +2686,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 52",9001,4200,16082,9807,1,0,4530,8801,0,9102,8802,156,9102,8805,1,9201,8806,52500000,9001,8807,0,9001,,,,,, +2687,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 53",9001,4200,16083,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,53500000,9001,8807,0,9001,,,,,, +2688,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 54",9001,4200,16084,9807,1,0,4530,8801,0,9102,8802,162,9102,8805,1,9201,8806,54500000,9001,8807,0,9001,,,,,, +2689,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 55",9001,4200,16085,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,55500000,9001,8807,0,9001,,,,,, +2690,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 56",9001,4200,16086,9807,1,0,4530,8801,0,9102,8802,168,9102,8805,1,9201,8806,56500000,9001,8807,0,9001,,,,,, +2691,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 57",9001,4200,16087,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,57500000,9001,8807,0,9001,,,,,, +2692,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 58",9001,4200,16088,9807,1,0,4530,8801,0,9102,8802,174,9102,8805,1,9201,8806,58500000,9001,8807,0,9001,,,,,, +2693,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 59",9001,4200,16089,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,59500000,9001,8807,0,9001,,,,,, +2694,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 60",9001,4200,16090,9807,1,1,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,60000000,9001,8807,0,9001,,,,,, +2695,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 61",9001,4200,16091,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,61500000,9001,8807,0,9001,,,,,, +2696,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 62",9001,4200,16092,9807,1,0,4530,8801,0,9102,8802,-174,9102,8805,1,9201,8806,62500000,9001,8807,0,9001,,,,,, +2697,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 63",9001,4200,16093,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,63500000,9001,8807,0,9001,,,,,, +2698,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 64",9001,4200,16094,9807,1,0,4530,8801,0,9102,8802,-168,9102,8805,1,9201,8806,64500000,9001,8807,0,9001,,,,,, +2699,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 21E",9001,4200,16304,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2700,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 24E",9001,4200,16368,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2701,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 27E",9001,4200,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2702,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 30E",9001,4200,16370,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2703,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 33E",9001,4200,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2704,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 36E",9001,4200,16372,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2705,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 39E",9001,4200,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2706,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 42E",9001,4200,16374,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2707,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 45E",9001,4200,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2708,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 48E",9001,4200,16376,9807,1,0,4530,8801,0,9102,8802,48,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2709,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 51E",9001,4200,16309,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2710,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 54E",9001,4200,16378,9807,1,0,4530,8801,0,9102,8802,54,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2711,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 57E",9001,4200,16310,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2712,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 60E",9001,4200,16380,9807,1,0,4530,8801,0,9102,8802,60,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2713,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 63E",9001,4200,16311,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2714,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 66E",9001,4200,16382,9807,1,0,4530,8801,0,9102,8802,66,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2715,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 69E",9001,4200,16312,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2716,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 72E",9001,4200,16384,9807,1,0,4530,8801,0,9102,8802,72,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2717,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 75E",9001,4200,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2718,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 78E",9001,4200,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2719,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 81E",9001,4200,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2720,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 84E",9001,4200,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2721,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 87E",9001,4200,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2722,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 90E",9001,4200,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2723,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 93E",9001,4200,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2724,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 96E",9001,4200,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2725,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 99E",9001,4200,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2726,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 102E",9001,4200,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2727,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 105E",9001,4200,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2728,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 108E",9001,4200,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2729,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 111E",9001,4200,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2730,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 114E",9001,4200,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2731,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 117E",9001,4200,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2732,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 120E",9001,4200,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2733,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 123E",9001,4200,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2734,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 126E",9001,4200,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2735,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 129E",9001,4200,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2736,"Tete / UTM zone 36S",9001,4127,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2737,"Tete / UTM zone 37S",9001,4127,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2738,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 132E",9001,4200,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2739,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 135E",9001,4200,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2740,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 138E",9001,4200,16176,9807,1,0,4530,8801,0,9102,8802,138,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2741,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 141E",9001,4200,16324,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2742,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 144E",9001,4200,16178,9807,1,0,4530,8801,0,9102,8802,144,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2743,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 147E",9001,4200,16325,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2744,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 150E",9001,4200,16180,9807,1,0,4530,8801,0,9102,8802,150,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2745,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 153E",9001,4200,16326,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2746,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 156E",9001,4200,16182,9807,1,0,4530,8801,0,9102,8802,156,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2747,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 159E",9001,4200,16327,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2748,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 162E",9001,4200,16184,9807,1,0,4530,8801,0,9102,8802,162,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2749,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 165E",9001,4200,16328,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2750,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 168E",9001,4200,16186,9807,1,0,4530,8801,0,9102,8802,168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2751,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 171E",9001,4200,16329,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2752,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 174E",9001,4200,16188,9807,1,0,4530,8801,0,9102,8802,174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2753,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 177E",9001,4200,16330,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2754,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 180E",9001,4200,16190,9807,1,0,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2755,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 177W",9001,4200,16331,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2756,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 174W",9001,4200,16192,9807,1,0,4530,8801,0,9102,8802,-174,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2757,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 171W",9001,4200,16332,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2758,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 168W",9001,4200,16194,9807,1,0,4530,8801,0,9102,8802,-168,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2759,"NAD83(HARN) / Alabama East",9001,4152,10131,9807,1,0,4499,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,200000,9001,8807,0,9001,,,,,, +2760,"NAD83(HARN) / Alabama West",9001,4152,10132,9807,1,0,4499,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,600000,9001,8807,0,9001,,,,,, +2761,"NAD83(HARN) / Arizona East",9001,4152,10231,9807,1,0,4499,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +2762,"NAD83(HARN) / Arizona Central",9001,4152,10232,9807,1,0,4499,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +2763,"NAD83(HARN) / Arizona West",9001,4152,10233,9807,1,0,4499,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,213360,9001,8807,0,9001,,,,,, +2764,"NAD83(HARN) / Arkansas North",9001,4152,10331,9802,1,0,4499,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,400000,9001,8827,0,9001,,, +2765,"NAD83(HARN) / Arkansas South",9001,4152,10332,9802,1,0,4499,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,400000,9001,8827,400000,9001,,, +2766,"NAD83(HARN) / California zone 1",9001,4152,10431,9802,1,0,4499,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9001,8827,500000,9001,,, +2767,"NAD83(HARN) / California zone 2",9001,4152,10432,9802,1,0,4499,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9001,8827,500000,9001,,, +2768,"NAD83(HARN) / California zone 3",9001,4152,10433,9802,1,0,4499,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9001,8827,500000,9001,,, +2769,"NAD83(HARN) / California zone 4",9001,4152,10434,9802,1,0,4499,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9001,8827,500000,9001,,, +2770,"NAD83(HARN) / California zone 5",9001,4152,10435,9802,1,0,4499,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9001,8827,500000,9001,,, +2771,"NAD83(HARN) / California zone 6",9001,4152,10436,9802,1,0,4499,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9001,8827,500000,9001,,, +2772,"NAD83(HARN) / Colorado North",9001,4152,10531,9802,1,0,4499,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +2773,"NAD83(HARN) / Colorado Central",9001,4152,10532,9802,1,0,4499,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +2774,"NAD83(HARN) / Colorado South",9001,4152,10533,9802,1,0,4499,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +2775,"NAD83(HARN) / Connecticut",9001,4152,10630,9802,1,0,4499,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,304800.6096,9001,8827,152400.3048,9001,,, +2776,"NAD83(HARN) / Delaware",9001,4152,10730,9807,1,0,4499,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,200000,9001,8807,0,9001,,,,,, +2777,"NAD83(HARN) / Florida East",9001,4152,10931,9807,1,0,4499,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +2778,"NAD83(HARN) / Florida West",9001,4152,10932,9807,1,0,4499,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +2779,"NAD83(HARN) / Florida North",9001,4152,10933,9802,1,0,4499,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,600000,9001,8827,0,9001,,, +2780,"NAD83(HARN) / Georgia East",9001,4152,11031,9807,1,0,4499,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +2781,"NAD83(HARN) / Georgia West",9001,4152,11032,9807,1,0,4499,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,700000,9001,8807,0,9001,,,,,, +2782,"NAD83(HARN) / Hawaii zone 1",9001,4152,15131,9807,1,0,4499,8801,18.5,9110,8802,-155.3,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +2783,"NAD83(HARN) / Hawaii zone 2",9001,4152,15132,9807,1,0,4499,8801,20.2,9110,8802,-156.4,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +2784,"NAD83(HARN) / Hawaii zone 3",9001,4152,15133,9807,1,0,4499,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +2785,"NAD83(HARN) / Hawaii zone 4",9001,4152,15134,9807,1,0,4499,8801,21.5,9110,8802,-159.3,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +2786,"NAD83(HARN) / Hawaii zone 5",9001,4152,15135,9807,1,0,4499,8801,21.4,9110,8802,-160.1,9110,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +2787,"NAD83(HARN) / Idaho East",9001,4152,11131,9807,1,0,4499,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,200000,9001,8807,0,9001,,,,,, +2788,"NAD83(HARN) / Idaho Central",9001,4152,11132,9807,1,0,4499,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9001,8807,0,9001,,,,,, +2789,"NAD83(HARN) / Idaho West",9001,4152,11133,9807,1,0,4499,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,800000,9001,8807,0,9001,,,,,, +2790,"NAD83(HARN) / Illinois East",9001,4152,11231,9807,1,0,4499,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,300000,9001,8807,0,9001,,,,,, +2791,"NAD83(HARN) / Illinois West",9001,4152,11232,9807,1,0,4499,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,700000,9001,8807,0,9001,,,,,, +2792,"NAD83(HARN) / Indiana East",9001,4152,11331,9807,1,0,4499,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,100000,9001,8807,250000,9001,,,,,, +2793,"NAD83(HARN) / Indiana West",9001,4152,11332,9807,1,0,4499,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,900000,9001,8807,250000,9001,,,,,, +2794,"NAD83(HARN) / Iowa North",9001,4152,11431,9802,1,0,4499,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,1500000,9001,8827,1000000,9001,,, +2795,"NAD83(HARN) / Iowa South",9001,4152,11432,9802,1,0,4499,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,500000,9001,8827,0,9001,,, +2796,"NAD83(HARN) / Kansas North",9001,4152,11531,9802,1,0,4499,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,400000,9001,8827,0,9001,,, +2797,"NAD83(HARN) / Kansas South",9001,4152,11532,9802,1,0,4499,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,400000,9001,8827,400000,9001,,, +2798,"NAD83(HARN) / Kentucky North",9001,4152,15303,9802,1,0,4499,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,500000,9001,8827,0,9001,,, +2799,"NAD83(HARN) / Kentucky South",9001,4152,11632,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,500000,9001,8827,500000,9001,,, +2800,"NAD83(HARN) / Louisiana North",9001,4152,11731,9802,1,0,4499,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,1000000,9001,8827,0,9001,,, +2801,"NAD83(HARN) / Louisiana South",9001,4152,11732,9802,1,0,4499,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,1000000,9001,8827,0,9001,,, +2802,"NAD83(HARN) / Maine East",9001,4152,11831,9807,1,0,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,300000,9001,8807,0,9001,,,,,, +2803,"NAD83(HARN) / Maine West",9001,4152,11832,9807,1,0,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,900000,9001,8807,0,9001,,,,,, +2804,"NAD83(HARN) / Maryland",9001,4152,11930,9802,1,0,4499,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,400000,9001,8827,0,9001,,, +2805,"NAD83(HARN) / Massachusetts Mainland",9001,4152,12031,9802,1,0,4499,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,200000,9001,8827,750000,9001,,, +2806,"NAD83(HARN) / Massachusetts Island",9001,4152,12032,9802,1,0,4499,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,500000,9001,8827,0,9001,,, +2807,"NAD83(HARN) / Michigan North",9001,4152,12141,9802,1,0,4499,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,8000000,9001,8827,0,9001,,, +2808,"NAD83(HARN) / Michigan Central",9001,4152,12142,9802,1,0,4499,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,6000000,9001,8827,0,9001,,, +2809,"NAD83(HARN) / Michigan South",9001,4152,12143,9802,1,0,4499,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,4000000,9001,8827,0,9001,,, +2810,"NAD83(HARN) / Minnesota North",9001,4152,12231,9802,1,0,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,800000,9001,8827,100000,9001,,, +2811,"NAD83(HARN) / Minnesota Central",9001,4152,12232,9802,1,0,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,800000,9001,8827,100000,9001,,, +2812,"NAD83(HARN) / Minnesota South",9001,4152,12233,9802,1,0,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,800000,9001,8827,100000,9001,,, +2813,"NAD83(HARN) / Mississippi East",9001,4152,12331,9807,1,0,4499,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,300000,9001,8807,0,9001,,,,,, +2814,"NAD83(HARN) / Mississippi West",9001,4152,12332,9807,1,0,4499,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,700000,9001,8807,0,9001,,,,,, +2815,"NAD83(HARN) / Missouri East",9001,4152,12431,9807,1,0,4499,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,250000,9001,8807,0,9001,,,,,, +2816,"NAD83(HARN) / Missouri Central",9001,4152,12432,9807,1,0,4499,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9001,8807,0,9001,,,,,, +2817,"NAD83(HARN) / Missouri West",9001,4152,12433,9807,1,0,4499,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,850000,9001,8807,0,9001,,,,,, +2818,"NAD83(HARN) / Montana",9001,4152,12530,9802,1,0,4499,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,600000,9001,8827,0,9001,,, +2819,"NAD83(HARN) / Nebraska",9001,4152,12630,9802,1,0,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,500000,9001,8827,0,9001,,, +2820,"NAD83(HARN) / Nevada East",9001,4152,12731,9807,1,0,4499,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,200000,9001,8807,8000000,9001,,,,,, +2821,"NAD83(HARN) / Nevada Central",9001,4152,12732,9807,1,0,4499,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9001,8807,6000000,9001,,,,,, +2822,"NAD83(HARN) / Nevada West",9001,4152,12733,9807,1,0,4499,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,800000,9001,8807,4000000,9001,,,,,, +2823,"NAD83(HARN) / New Hampshire",9001,4152,12830,9807,1,0,4499,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,300000,9001,8807,0,9001,,,,,, +2824,"NAD83(HARN) / New Jersey",9001,4152,12930,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +2825,"NAD83(HARN) / New Mexico East",9001,4152,13031,9807,1,0,4499,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,165000,9001,8807,0,9001,,,,,, +2826,"NAD83(HARN) / New Mexico Central",9001,4152,13032,9807,1,0,4499,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +2827,"NAD83(HARN) / New Mexico West",9001,4152,13033,9807,1,0,4499,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,830000,9001,8807,0,9001,,,,,, +2828,"NAD83(HARN) / New York East",9001,4152,13131,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +2829,"NAD83(HARN) / New York Central",9001,4152,13132,9807,1,0,4499,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,250000,9001,8807,0,9001,,,,,, +2830,"NAD83(HARN) / New York West",9001,4152,13133,9807,1,0,4499,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,350000,9001,8807,0,9001,,,,,, +2831,"NAD83(HARN) / New York Long Island",9001,4152,13134,9802,1,0,4499,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,300000,9001,8827,0,9001,,, +2832,"NAD83(HARN) / North Dakota North",9001,4152,13331,9802,1,0,4499,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,600000,9001,8827,0,9001,,, +2833,"NAD83(HARN) / North Dakota South",9001,4152,13332,9802,1,0,4499,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,600000,9001,8827,0,9001,,, +2834,"NAD83(HARN) / Ohio North",9001,4152,13431,9802,1,0,4499,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,600000,9001,8827,0,9001,,, +2835,"NAD83(HARN) / Ohio South",9001,4152,13432,9802,1,0,4499,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,600000,9001,8827,0,9001,,, +2836,"NAD83(HARN) / Oklahoma North",9001,4152,13531,9802,1,0,4499,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,600000,9001,8827,0,9001,,, +2837,"NAD83(HARN) / Oklahoma South",9001,4152,13532,9802,1,0,4499,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,600000,9001,8827,0,9001,,, +2838,"NAD83(HARN) / Oregon North",9001,4152,13631,9802,1,0,4499,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,2500000,9001,8827,0,9001,,, +2839,"NAD83(HARN) / Oregon South",9001,4152,13632,9802,1,0,4499,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,1500000,9001,8827,0,9001,,, +2840,"NAD83(HARN) / Rhode Island",9001,4152,13830,9807,1,0,4499,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,100000,9001,8807,0,9001,,,,,, +2841,"NAD83(HARN) / South Dakota North",9001,4152,14031,9802,1,0,4499,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,600000,9001,8827,0,9001,,, +2842,"NAD83(HARN) / South Dakota South",9001,4152,14032,9802,1,0,4499,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,600000,9001,8827,0,9001,,, +2843,"NAD83(HARN) / Tennessee",9001,4152,14130,9802,1,0,4499,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,600000,9001,8827,0,9001,,, +2844,"NAD83(HARN) / Texas North",9001,4152,14231,9802,1,0,4499,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,200000,9001,8827,1000000,9001,,, +2845,"NAD83(HARN) / Texas North Central",9001,4152,14232,9802,1,0,4499,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,600000,9001,8827,2000000,9001,,, +2846,"NAD83(HARN) / Texas Central",9001,4152,14233,9802,1,0,4499,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,700000,9001,8827,3000000,9001,,, +2847,"NAD83(HARN) / Texas South Central",9001,4152,14234,9802,1,0,4499,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,600000,9001,8827,4000000,9001,,, +2848,"NAD83(HARN) / Texas South",9001,4152,14235,9802,1,0,4499,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,300000,9001,8827,5000000,9001,,, +2849,"NAD83(HARN) / Utah North",9001,4152,14331,9802,1,0,4499,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,500000,9001,8827,1000000,9001,,, +2850,"NAD83(HARN) / Utah Central",9001,4152,14332,9802,1,0,4499,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,500000,9001,8827,2000000,9001,,, +2851,"NAD83(HARN) / Utah South",9001,4152,14333,9802,1,0,4499,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,500000,9001,8827,3000000,9001,,, +2852,"NAD83(HARN) / Vermont",9001,4152,14430,9807,1,0,4499,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9001,8807,0,9001,,,,,, +2853,"NAD83(HARN) / Virginia North",9001,4152,14531,9802,1,0,4499,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,3500000,9001,8827,2000000,9001,,, +2854,"NAD83(HARN) / Virginia South",9001,4152,14532,9802,1,0,4499,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,3500000,9001,8827,1000000,9001,,, +2855,"NAD83(HARN) / Washington North",9001,4152,14631,9802,1,0,4499,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,500000,9001,8827,0,9001,,, +2856,"NAD83(HARN) / Washington South",9001,4152,14632,9802,1,0,4499,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,500000,9001,8827,0,9001,,, +2857,"NAD83(HARN) / West Virginia North",9001,4152,14731,9802,1,0,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,600000,9001,8827,0,9001,,, +2858,"NAD83(HARN) / West Virginia South",9001,4152,14732,9802,1,0,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,600000,9001,8827,0,9001,,, +2859,"NAD83(HARN) / Wisconsin North",9001,4152,14831,9802,1,0,4499,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,600000,9001,8827,0,9001,,, +2860,"NAD83(HARN) / Wisconsin Central",9001,4152,14832,9802,1,0,4499,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,600000,9001,8827,0,9001,,, +2861,"NAD83(HARN) / Wisconsin South",9001,4152,14833,9802,1,0,4499,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,600000,9001,8827,0,9001,,, +2862,"NAD83(HARN) / Wyoming East",9001,4152,14931,9807,1,0,4499,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,200000,9001,8807,0,9001,,,,,, +2863,"NAD83(HARN) / Wyoming East Central",9001,4152,14932,9807,1,0,4499,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,400000,9001,8807,100000,9001,,,,,, +2864,"NAD83(HARN) / Wyoming West Central",9001,4152,14933,9807,1,0,4499,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,600000,9001,8807,0,9001,,,,,, +2865,"NAD83(HARN) / Wyoming West",9001,4152,14934,9807,1,0,4499,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,800000,9001,8807,100000,9001,,,,,, +2866,"NAD83(HARN) / Puerto Rico and Virgin Is.",9001,4152,15230,9802,1,0,4499,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,200000,9001,8827,200000,9001,,, +2867,"NAD83(HARN) / Arizona East (ft)",9002,4152,15304,9807,1,0,4495,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +2868,"NAD83(HARN) / Arizona Central (ft)",9002,4152,15305,9807,1,0,4495,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +2869,"NAD83(HARN) / Arizona West (ft)",9002,4152,15306,9807,1,0,4495,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,700000,9002,8807,0,9002,,,,,, +2870,"NAD83(HARN) / California zone 1 (ftUS)",9003,4152,15307,9802,1,0,4497,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2871,"NAD83(HARN) / California zone 2 (ftUS)",9003,4152,15308,9802,1,0,4497,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2872,"NAD83(HARN) / California zone 3 (ftUS)",9003,4152,15309,9802,1,0,4497,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2873,"NAD83(HARN) / California zone 4 (ftUS)",9003,4152,15310,9802,1,0,4497,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2874,"NAD83(HARN) / California zone 5 (ftUS)",9003,4152,15311,9802,1,0,4497,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2875,"NAD83(HARN) / California zone 6 (ftUS)",9003,4152,15312,9802,1,0,4497,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +2876,"NAD83(HARN) / Colorado North (ftUS)",9003,4152,15313,9802,1,0,4497,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,3000000,9003,8827,1000000,9003,,, +2877,"NAD83(HARN) / Colorado Central (ftUS)",9003,4152,15314,9802,1,0,4497,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,3000000,9003,8827,1000000,9003,,, +2878,"NAD83(HARN) / Colorado South (ftUS)",9003,4152,15315,9802,1,0,4497,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,3000000,9003,8827,1000000,9003,,, +2879,"NAD83(HARN) / Connecticut (ftUS)",9003,4152,15316,9802,1,0,4497,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,1000000,9003,8827,500000,9003,,, +2880,"NAD83(HARN) / Delaware (ftUS)",9003,4152,15317,9807,1,0,4497,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2881,"NAD83(HARN) / Florida East (ftUS)",9003,4152,15318,9807,1,0,4497,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2882,"NAD83(HARN) / Florida West (ftUS)",9003,4152,15319,9807,1,0,4497,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2883,"NAD83(HARN) / Florida North (ftUS)",9003,4152,15320,9802,1,0,4497,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,1968500,9003,8827,0,9003,,, +2884,"NAD83(HARN) / Georgia East (ftUS)",9003,4152,15321,9807,1,0,4497,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2885,"NAD83(HARN) / Georgia West (ftUS)",9003,4152,15322,9807,1,0,4497,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +2886,"NAD83(HARN) / Idaho East (ftUS)",9003,4152,15323,9807,1,0,4497,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,656166.667,9003,8807,0,9003,,,,,, +2887,"NAD83(HARN) / Idaho Central (ftUS)",9003,4152,15324,9807,1,0,4497,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +2888,"NAD83(HARN) / Idaho West (ftUS)",9003,4152,15325,9807,1,0,4497,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,2624666.667,9003,8807,0,9003,,,,,, +2889,"NAD83(HARN) / Indiana East (ftUS)",9003,4152,15326,9807,1,1,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,818125,9003,,,,,, +2890,"NAD83(HARN) / Indiana West (ftUS)",9003,4152,15327,9807,1,1,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,818125,9003,,,,,, +2891,"NAD83(HARN) / Kentucky North (ftUS)",9003,4152,15328,9802,1,0,4497,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,1640416.667,9003,8827,0,9003,,, +2892,"NAD83(HARN) / Kentucky South (ftUS)",9003,4152,15329,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,1640416.667,9003,8827,1640416.667,9003,,, +2893,"NAD83(HARN) / Maryland (ftUS)",9003,4152,15330,9802,1,0,4497,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,1312333.333,9003,8827,0,9003,,, +2894,"NAD83(HARN) / Massachusetts Mainland (ftUS)",9003,4152,15331,9802,1,0,4497,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,656166.667,9003,8827,2460625,9003,,, +2895,"NAD83(HARN) / Massachusetts Island (ftUS)",9003,4152,15332,9802,1,0,4497,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,1640416.667,9003,8827,0,9003,,, +2896,"NAD83(HARN) / Michigan North (ft)",9002,4152,15333,9802,1,0,4495,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,26246719.16,9002,8827,0,9002,,, +2897,"NAD83(HARN) / Michigan Central (ft)",9002,4152,15334,9802,1,0,4495,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,19685039.37,9002,8827,0,9002,,, +2898,"NAD83(HARN) / Michigan South (ft)",9002,4152,15335,9802,1,0,4495,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,13123359.58,9002,8827,0,9002,,, +2899,"NAD83(HARN) / Mississippi East (ftUS)",9003,4152,15336,9807,1,0,4497,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,984250,9003,8807,0,9003,,,,,, +2900,"NAD83(HARN) / Mississippi West (ftUS)",9003,4152,15337,9807,1,0,4497,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +2901,"NAD83(HARN) / Montana (ft)",9002,4152,15338,9802,1,0,4495,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,1968503.937,9002,8827,0,9002,,, +2902,"NAD83(HARN) / New Mexico East (ftUS)",9003,4152,15339,9807,1,0,4497,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,541337.5,9003,8807,0,9003,,,,,, +2903,"NAD83(HARN) / New Mexico Central (ftUS)",9003,4152,15340,9807,1,0,4497,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +2904,"NAD83(HARN) / New Mexico West (ftUS)",9003,4152,15341,9807,1,0,4497,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,2723091.667,9003,8807,0,9003,,,,,, +2905,"NAD83(HARN) / New York East (ftUS)",9003,4152,15342,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +2906,"NAD83(HARN) / New York Central (ftUS)",9003,4152,15343,9807,1,0,4497,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,820208.333,9003,8807,0,9003,,,,,, +2907,"NAD83(HARN) / New York West (ftUS)",9003,4152,15344,9807,1,0,4497,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,1148291.667,9003,8807,0,9003,,,,,, +2908,"NAD83(HARN) / New York Long Island (ftUS)",9003,4152,15345,9802,1,0,4497,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,984250,9003,8827,0,9003,,, +2909,"NAD83(HARN) / North Dakota North (ft)",9002,4152,15347,9802,1,0,4495,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,1968503.937,9002,8827,0,9002,,, +2910,"NAD83(HARN) / North Dakota South (ft)",9002,4152,15348,9802,1,0,4495,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,1968503.937,9002,8827,0,9002,,, +2911,"NAD83(HARN) / Oklahoma North (ftUS)",9003,4152,15349,9802,1,0,4497,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,1968500,9003,8827,0,9003,,, +2912,"NAD83(HARN) / Oklahoma South (ftUS)",9003,4152,15350,9802,1,0,4497,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,1968500,9003,8827,0,9003,,, +2913,"NAD83(HARN) / Oregon North (ft)",9002,4152,15351,9802,1,0,4495,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,8202099.738,9002,8827,0,9002,,, +2914,"NAD83(HARN) / Oregon South (ft)",9002,4152,15352,9802,1,0,4495,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,4921259.843,9002,8827,0,9002,,, +2915,"NAD83(HARN) / Tennessee (ftUS)",9003,4152,15356,9802,1,0,4497,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,1968500,9003,8827,0,9003,,, +2916,"NAD83(HARN) / Texas North (ftUS)",9003,4152,15357,9802,1,0,4497,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,656166.667,9003,8827,3280833.333,9003,,, +2917,"NAD83(HARN) / Texas North Central (ftUS)",9003,4152,15358,9802,1,0,4497,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,1968500,9003,8827,6561666.667,9003,,, +2918,"NAD83(HARN) / Texas Central (ftUS)",9003,4152,15359,9802,1,0,4497,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,2296583.333,9003,8827,9842500,9003,,, +2919,"NAD83(HARN) / Texas South Central (ftUS)",9003,4152,15360,9802,1,0,4497,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,1968500,9003,8827,13123333.333,9003,,, +2920,"NAD83(HARN) / Texas South (ftUS)",9003,4152,15361,9802,1,0,4497,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,984250,9003,8827,16404166.667,9003,,, +2921,"NAD83(HARN) / Utah North (ft)",9002,4152,15362,9802,0,0,4495,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640419.948,9002,8827,3280839.895,9002,,, +2922,"NAD83(HARN) / Utah Central (ft)",9002,4152,15363,9802,0,0,4495,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640419.948,9002,8827,6561679.79,9002,,, +2923,"NAD83(HARN) / Utah South (ft)",9002,4152,15364,9802,0,0,4495,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640419.948,9002,8827,9842519.685,9002,,, +2924,"NAD83(HARN) / Virginia North (ftUS)",9003,4152,15365,9802,1,0,4497,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,11482916.667,9003,8827,6561666.667,9003,,, +2925,"NAD83(HARN) / Virginia South (ftUS)",9003,4152,15366,9802,1,0,4497,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,11482916.667,9003,8827,3280833.333,9003,,, +2926,"NAD83(HARN) / Washington North (ftUS)",9003,4152,15367,9802,1,0,4497,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,1640416.667,9003,8827,0,9003,,, +2927,"NAD83(HARN) / Washington South (ftUS)",9003,4152,15368,9802,1,0,4497,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,1640416.667,9003,8827,0,9003,,, +2928,"NAD83(HARN) / Wisconsin North (ftUS)",9003,4152,15369,9802,1,0,4497,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,1968500,9003,8827,0,9003,,, +2929,"NAD83(HARN) / Wisconsin Central (ftUS)",9003,4152,15370,9802,1,0,4497,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,1968500,9003,8827,0,9003,,, +2930,"NAD83(HARN) / Wisconsin South (ftUS)",9003,4152,15371,9802,1,0,4497,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,1968500,9003,8827,0,9003,,, +2931,"Beduaram / TM 13 NE",9001,4213,16413,9807,1,0,4499,8801,0,9102,8802,13,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2932,"QND95 / Qatar National Grid",9001,4614,19919,9807,1,0,4400,8801,24.27,9110,8802,51.13,9110,8805,0.99999,9201,8806,200000,9001,8807,300000,9001,,,,,, +2933,"Segara / UTM zone 50S",9001,4613,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2934,"Segara (Jakarta) / NEIEZ",9001,4820,19905,9804,1,1,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +2935,"Pulkovo 1942 / CS63 zone A1",9001,4284,18441,9807,1,0,4530,8801,0.07,9110,8802,41.32,9110,8805,1,9201,8806,1300000,9001,8807,0,9001,,,,,, +2936,"Pulkovo 1942 / CS63 zone A2",9001,4284,18442,9807,1,0,4530,8801,0.07,9110,8802,44.32,9110,8805,1,9201,8806,2300000,9001,8807,0,9001,,,,,, +2937,"Pulkovo 1942 / CS63 zone A3",9001,4284,18443,9807,1,0,4530,8801,0.07,9110,8802,47.32,9110,8805,1,9201,8806,3300000,9001,8807,0,9001,,,,,, +2938,"Pulkovo 1942 / CS63 zone A4",9001,4284,18444,9807,1,0,4530,8801,0.07,9110,8802,50.32,9110,8805,1,9201,8806,4300000,9001,8807,0,9001,,,,,, +2939,"Pulkovo 1942 / CS63 zone K2",9001,4284,18446,9807,1,0,4530,8801,0.08,9110,8802,50.46,9110,8805,1,9201,8806,2300000,9001,8807,0,9001,,,,,, +2940,"Pulkovo 1942 / CS63 zone K3",9001,4284,18447,9807,1,0,4530,8801,0.08,9110,8802,53.46,9110,8805,1,9201,8806,3300000,9001,8807,0,9001,,,,,, +2941,"Pulkovo 1942 / CS63 zone K4",9001,4284,18448,9807,1,0,4530,8801,0.08,9110,8802,56.46,9110,8805,1,9201,8806,4300000,9001,8807,0,9001,,,,,, +2942,"Porto Santo / UTM zone 28N",9001,4615,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2943,"Selvagem Grande / UTM zone 28N",9001,4616,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2944,"NAD83(CSRS) / SCoPQ zone 2",9001,4617,17700,9807,1,1,4499,8801,0,9110,8802,-55.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2945,"NAD83(CSRS) / MTM zone 3",9001,4617,17703,9807,1,0,4496,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2946,"NAD83(CSRS) / MTM zone 4",9001,4617,17704,9807,1,0,4496,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2947,"NAD83(CSRS) / MTM zone 5",9001,4617,17705,9807,1,0,4496,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2948,"NAD83(CSRS) / MTM zone 6",9001,4617,17706,9807,1,0,4496,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2949,"NAD83(CSRS) / MTM zone 7",9001,4617,17707,9807,1,0,4496,8801,0,9110,8802,-70.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2950,"NAD83(CSRS) / MTM zone 8",9001,4617,17708,9807,1,0,4496,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2951,"NAD83(CSRS) / MTM zone 9",9001,4617,17709,9807,1,0,4496,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2952,"NAD83(CSRS) / MTM zone 10",9001,4617,17710,9807,1,0,4496,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +2953,"NAD83(CSRS) / New Brunswick Stereographic",9001,4617,19946,9809,1,0,4500,8801,46.3,9110,8802,-66.3,9110,8805,0.999912,9201,8806,2500000,9001,8807,7500000,9001,,,,,, +2954,"NAD83(CSRS) / Prince Edward Isl. Stereographic (NAD83)",9001,4617,19960,9809,1,0,4496,8801,47.15,9110,8802,-63,9110,8805,0.999912,9201,8806,400000,9001,8807,800000,9001,,,,,, +2955,"NAD83(CSRS) / UTM zone 11N",9001,4617,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2956,"NAD83(CSRS) / UTM zone 12N",9001,4617,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2957,"NAD83(CSRS) / UTM zone 13N",9001,4617,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2958,"NAD83(CSRS) / UTM zone 17N",9001,4617,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2959,"NAD83(CSRS) / UTM zone 18N",9001,4617,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2960,"NAD83(CSRS) / UTM zone 19N",9001,4617,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2961,"NAD83(CSRS) / UTM zone 20N",9001,4617,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2962,"NAD83(CSRS) / UTM zone 21N",9001,4617,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2963,"Lisbon 1890 (Lisbon) / Portugal Bonne",9001,4904,19979,9828,1,0,6509,8801,39.4,9110,8802,1,9110,8806,0,9001,8807,0,9001,,,,,,,,, +2964,"NAD27 / Alaska Albers",9003,4267,15020,9822,1,0,4497,8821,50,9102,8822,-154,9102,8823,55,9102,8824,65,9102,8826,0,9003,8827,0,9003,,, +2965,"NAD83 / Indiana East (ftUS)",9003,4269,15372,9807,1,0,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,820208.333,9003,,,,,, +2966,"NAD83 / Indiana West (ftUS)",9003,4269,15373,9807,1,0,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,820208.333,9003,,,,,, +2967,"NAD83(HARN) / Indiana East (ftUS)",9003,4152,15372,9807,1,0,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,820208.333,9003,,,,,, +2968,"NAD83(HARN) / Indiana West (ftUS)",9003,4152,15373,9807,1,0,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,820208.333,9003,,,,,, +2969,"Fort Marigot / UTM zone 20N",9001,4621,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2970,"Guadeloupe 1948 / UTM zone 20N",9001,4622,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2971,"CSG67 / UTM zone 22N",9001,4623,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2972,"RGFG95 / UTM zone 22N",9001,4624,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2973,"Martinique 1938 / UTM zone 20N",9001,4625,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2975,"RGR92 / UTM zone 40S",9001,4627,16140,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2976,"Tahiti 52 / UTM zone 6S",9001,4628,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2977,"Tahaa 54 / UTM zone 5S",9001,4629,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2978,"IGN72 Nuku Hiva / UTM zone 7S",9001,4630,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2979,"K0 1949 / UTM zone 42S",9001,4631,16142,9807,1,1,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2980,"Combani 1950 / UTM zone 38S",9001,4632,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2981,"IGN56 Lifou / UTM zone 58S",9001,4633,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2982,"IGN72 Grand Terre / UTM zone 58S",9001,4634,16158,9807,1,1,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2983,"ST87 Ouvea / UTM zone 58S",9001,4635,16158,9807,1,1,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2984,"RGNC 1991 / Lambert New Caledonia",9001,4645,19981,9802,1,1,4499,8821,-21.3,9110,8822,166,9110,8823,-20.4,9110,8824,-22.2,9110,8826,400000,9001,8827,300000,9001,,, +2985,"Petrels 1972 / Terre Adelie Polar Stereographic",9001,4636,19983,9830,1,0,1025,8826,300000,9001,8827,200000,9001,8832,-67,9102,8833,140,9102,,,,,,,,, +2986,"Perroud 1950 / Terre Adelie Polar Stereographic",9001,4637,19983,9830,1,0,1025,8826,300000,9001,8827,200000,9001,8832,-67,9102,8833,140,9102,,,,,,,,, +2987,"Saint Pierre et Miquelon 1950 / UTM zone 21N",9001,4638,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2988,"MOP78 / UTM zone 1S",9001,4639,16101,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2989,"RRAF 1991 / UTM zone 20N",9001,4640,16020,9807,1,1,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +2990,"Reunion 1947 / TM Reunion",9001,4626,19982,9807,1,1,4499,8801,-21.07,9110,8802,55.32,9110,8805,1,9201,8806,50000,9001,8807,160000,9001,,,,,, +2991,"NAD83 / Oregon Lambert",9001,4269,13633,9802,1,0,4499,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,400000,9001,8827,0,9001,,, +2992,"NAD83 / Oregon Lambert (ft)",9002,4269,15374,9802,1,0,4495,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,1312335.958,9002,8827,0,9002,,, +2993,"NAD83(HARN) / Oregon Lambert",9001,4152,13633,9802,1,0,4499,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,400000,9001,8827,0,9001,,, +2994,"NAD83(HARN) / Oregon Lambert (ft)",9002,4152,15374,9802,1,0,4495,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,1312335.958,9002,8827,0,9002,,, +2995,"IGN53 Mare / UTM zone 58S",9001,4641,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2996,"ST84 Ile des Pins / UTM zone 58S",9001,4642,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2997,"ST71 Belep / UTM zone 58S",9001,4643,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2998,"NEA74 Noumea / UTM zone 58S",9001,4644,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +2999,"Grand Comoros / UTM zone 38S",9001,4646,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3000,"Segara / NEIEZ",9001,4613,19905,9804,1,0,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +3001,"Batavia / NEIEZ",9001,4211,19905,9804,1,0,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +3002,"Makassar / NEIEZ",9001,4257,19905,9804,1,0,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +3003,"Monte Mario / Italy zone 1",9001,4265,18121,9807,1,0,4499,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,1500000,9001,8807,0,9001,,,,,, +3004,"Monte Mario / Italy zone 2",9001,4265,18122,9807,1,0,4499,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,2520000,9001,8807,0,9001,,,,,, +3005,"NAD83 / BC Albers",9001,4269,19984,9822,1,0,4400,8821,45,9102,8822,-126,9102,8823,50,9110,8824,58.3,9110,8826,1000000,9001,8827,0,9001,,, +3006,SWEREF99 TM,9001,4619,17333,9807,1,0,4500,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3007,SWEREF99 12 00,9001,4619,17321,9807,1,0,4500,8801,0,9102,8802,12,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3008,SWEREF99 13 30,9001,4619,17322,9807,1,0,4500,8801,0,9110,8802,13.3,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3009,SWEREF99 15 00,9001,4619,17323,9807,1,0,4500,8801,0,9102,8802,15,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3010,SWEREF99 16 30,9001,4619,17324,9807,1,0,4500,8801,0,9110,8802,16.3,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3011,SWEREF99 18 00,9001,4619,17325,9807,1,0,4500,8801,0,9102,8802,18,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3012,SWEREF99 14 15,9001,4619,17326,9807,1,0,4500,8801,0,9110,8802,14.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3013,SWEREF99 15 45,9001,4619,17327,9807,1,0,4500,8801,0,9110,8802,15.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3014,SWEREF99 17 15,9001,4619,17328,9807,1,0,4500,8801,0,9110,8802,17.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3015,SWEREF99 18 45,9001,4619,17329,9807,1,0,4500,8801,0,9110,8802,18.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3016,SWEREF99 20 15,9001,4619,17330,9807,1,0,4500,8801,0,9110,8802,20.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3017,SWEREF99 21 45,9001,4619,17331,9807,1,0,4500,8801,0,9110,8802,21.45,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3018,SWEREF99 23 15,9001,4619,17332,9807,1,0,4500,8801,0,9110,8802,23.15,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +3019,RT90 7.5 gon V,9001,4124,17334,9807,1,0,4530,8801,0,9110,8802,11.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3020,RT90 5 gon V,9001,4124,17335,9807,1,0,4530,8801,0,9110,8802,13.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3021,RT90 2.5 gon V,9001,4124,19929,9807,1,0,4530,8801,0,9110,8802,15.48298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3022,RT90 0 gon,9001,4124,17336,9807,1,0,4530,8801,0,9110,8802,18.03298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3023,RT90 2.5 gon O,9001,4124,17337,9807,1,0,4530,8801,0,9110,8802,20.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3024,RT90 5 gon O,9001,4124,17338,9807,1,0,4530,8801,0,9110,8802,22.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3025,RT38 7.5 gon V,9001,4308,17334,9807,1,0,4530,8801,0,9110,8802,11.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3026,RT38 5 gon V,9001,4308,17335,9807,1,0,4530,8801,0,9110,8802,13.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3027,RT38 2.5 gon V,9001,4308,19929,9807,1,0,4530,8801,0,9110,8802,15.48298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3028,RT38 0 gon,9001,4308,17336,9807,1,0,4530,8801,0,9110,8802,18.03298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3029,RT38 2.5 gon O,9001,4308,17337,9807,1,0,4530,8801,0,9110,8802,20.18298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3030,RT38 5 gon O,9001,4308,17338,9807,1,0,4530,8801,0,9110,8802,22.33298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +3031,"WGS 84 / Antarctic Polar Stereographic",9001,4326,19992,9829,1,0,4490,8806,0,9001,8807,0,9001,8832,-71,9102,8833,0,9102,,,,,,,,, +3032,"WGS 84 / Australian Antarctic Polar Stereographic",9001,4326,19993,9829,1,0,4489,8806,6000000,9001,8807,6000000,9001,8832,-71,9102,8833,70,9102,,,,,,,,, +3033,"WGS 84 / Australian Antarctic Lambert",9001,4326,19994,9802,1,0,4400,8821,-50,9110,8822,70,9110,8823,-68.3,9110,8824,-74.3,9110,8826,6000000,9001,8827,6000000,9001,,, +3034,"ETRS89 / LCC Europe",9001,4258,19985,9802,1,0,4500,8821,52,9102,8822,10,9102,8823,35,9102,8824,65,9102,8826,4000000,9001,8827,2800000,9001,,, +3035,"ETRS89 / LAEA Europe",9001,4258,19986,9820,1,0,4532,8801,52,9102,8802,10,9102,8806,4321000,9001,8807,3210000,9001,,,,,,,,, +3036,"Moznet / UTM zone 36S",9001,4130,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3037,"Moznet / UTM zone 37S",9001,4130,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3038,"ETRS89 / TM26",9001,4258,16026,9807,1,0,4500,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3039,"ETRS89 / TM27",9001,4258,16027,9807,1,0,4500,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3040,"ETRS89 / TM28",9001,4258,16028,9807,1,0,4500,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3041,"ETRS89 / TM29",9001,4258,16029,9807,1,0,4500,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3042,"ETRS89 / TM30",9001,4258,16030,9807,1,0,4500,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3043,"ETRS89 / TM31",9001,4258,16031,9807,1,0,4500,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3044,"ETRS89 / TM32",9001,4258,16032,9807,1,0,4500,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3045,"ETRS89 / TM33",9001,4258,16033,9807,1,0,4500,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3046,"ETRS89 / TM34",9001,4258,16034,9807,1,0,4500,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3047,"ETRS89 / TM35",9001,4258,16035,9807,1,0,4500,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3048,"ETRS89 / TM36",9001,4258,16036,9807,1,0,4500,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3049,"ETRS89 / TM37",9001,4258,16037,9807,1,0,4500,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3050,"ETRS89 / TM38",9001,4258,16038,9807,1,0,4500,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3051,"ETRS89 / TM39",9001,4258,16039,9807,1,0,4500,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3052,"Reykjavik 1900 / Lambert 1900",9001,4657,19987,9826,1,0,4491,8801,65,9110,8802,-19.011965,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3053,"Hjorsey 1955 / Lambert 1955",9001,4658,19988,9826,1,0,4491,8801,65,9102,8802,-18,9102,8805,1,9201,8806,500000,9001,8807,500000,9001,,,,,, +3054,"Hjorsey 1955 / UTM zone 26N",9001,4658,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3055,"Hjorsey 1955 / UTM zone 27N",9001,4658,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3056,"Hjorsey 1955 / UTM zone 28N",9001,4658,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3057,"ISN93 / Lambert 1993",9001,4659,19989,9802,1,0,4499,8821,65,9110,8822,-19,9110,8823,64.15,9110,8824,65.45,9110,8826,500000,9001,8827,500000,9001,,, +3058,"Helle 1954 / Jan Mayen Grid",9001,4660,19991,9807,1,0,4531,8801,0,9110,8802,-8.3,9110,8805,1,9201,8806,50000,9001,8807,-7800000,9001,,,,,, +3059,"LKS92 / Latvia TM",9001,4661,19990,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,0.9996,9201,8806,500000,9001,8807,-6000000,9001,,,,,, +3060,"IGN72 Grande Terre / UTM zone 58S",9001,4662,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3061,"Porto Santo 1995 / UTM zone 28N",9001,4663,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3062,"Azores Oriental 1995 / UTM zone 26N",9001,4664,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3063,"Azores Central 1995 / UTM zone 26N",9001,4665,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3064,"IGM95 / UTM zone 32N",9001,4670,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3065,"IGM95 / UTM zone 33N",9001,4670,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3066,"ED50 / Jordan TM",9001,4230,19995,9807,1,0,4400,8801,0,9102,8802,37,9102,8805,0.9998,9201,8806,500000,9001,8807,-3000000,9001,,,,,, +3067,"ETRS89 / TM35FIN(E,N)",9001,4258,16065,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3068,"DHDN / Soldner Berlin",9001,4314,19996,9806,1,0,4531,8801,52.25071338,9110,8802,13.37379332,9110,8806,40000,9001,8807,10000,9001,,,,,,,,, +3069,"NAD27 / Wisconsin Transverse Mercator",9001,4267,14811,9807,1,0,4499,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,500000,9001,8807,-4500000,9001,,,,,, +3070,"NAD83 / Wisconsin Transverse Mercator",9001,4269,14841,9807,1,0,4499,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,520000,9001,8807,-4480000,9001,,,,,, +3071,"NAD83(HARN) / Wisconsin Transverse Mercator",9001,4152,14841,9807,1,0,4499,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,520000,9001,8807,-4480000,9001,,,,,, +3072,"NAD83 / Maine CS2000 East",9001,4269,11851,9807,1,0,4499,8801,43.5,9110,8802,-67.523,9110,8805,0.99998,9201,8806,700000,9001,8807,0,9001,,,,,, +3073,"NAD83 / Maine CS2000 Central",9001,4269,11852,9807,1,1,4499,8801,43,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +3074,"NAD83 / Maine CS2000 West",9001,4269,11853,9807,1,0,4499,8801,42.5,9110,8802,-70.223,9110,8805,0.99998,9201,8806,300000,9001,8807,0,9001,,,,,, +3075,"NAD83(HARN) / Maine CS2000 East",9001,4152,11851,9807,1,0,4499,8801,43.5,9110,8802,-67.523,9110,8805,0.99998,9201,8806,700000,9001,8807,0,9001,,,,,, +3076,"NAD83(HARN) / Maine CS2000 Central",9001,4152,11852,9807,1,1,4499,8801,43,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +3077,"NAD83(HARN) / Maine CS2000 West",9001,4152,11853,9807,1,0,4499,8801,42.5,9110,8802,-70.223,9110,8805,0.99998,9201,8806,300000,9001,8807,0,9001,,,,,, +3078,"NAD83 / Michigan Oblique Mercator",9001,4269,12150,9812,1,0,4499,8806,2546731.496,9001,8807,-4354009.816,9001,8811,45.1833,9110,8812,-86,9110,8813,337.25556,9102,8814,337.25556,9102,8815,0.9996,9201 +3079,"NAD83(HARN) / Michigan Oblique Mercator",9001,4152,12150,9812,1,0,4499,8806,2546731.496,9001,8807,-4354009.816,9001,8811,45.1833,9110,8812,-86,9110,8813,337.25556,9102,8814,337.25556,9102,8815,0.9996,9201 +3080,"NAD27 / Shackleford",9002,4267,14252,9802,1,0,4495,8821,31.1,9110,8822,-100,9110,8823,27.25,9110,8824,34.55,9110,8826,3000000,9002,8827,3000000,9002,,, +3081,"NAD83 / Texas State Mapping System",9001,4269,14251,9802,1,0,4499,8821,31.1,9110,8822,-100,9110,8823,27.25,9110,8824,34.55,9110,8826,1000000,9001,8827,1000000,9001,,, +3082,"NAD83 / Texas Centric Lambert Conformal",9001,4269,14253,9802,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,5000000,9001,,, +3083,"NAD83 / Texas Centric Albers Equal Area",9001,4269,14254,9822,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,6000000,9001,,, +3084,"NAD83(HARN) / Texas Centric Lambert Conformal",9001,4152,14253,9802,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,5000000,9001,,, +3085,"NAD83(HARN) / Texas Centric Albers Equal Area",9001,4152,14254,9822,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,6000000,9001,,, +3086,"NAD83 / Florida GDL Albers",9001,4269,10934,9822,1,0,4499,8821,24,9110,8822,-84,9110,8823,24,9110,8824,31.3,9110,8826,400000,9001,8827,0,9001,,, +3087,"NAD83(HARN) / Florida GDL Albers",9001,4152,10934,9822,1,0,4499,8821,24,9110,8822,-84,9110,8823,24,9110,8824,31.3,9110,8826,400000,9001,8827,0,9001,,, +3088,"NAD83 / Kentucky Single Zone",9001,4269,11630,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,1500000,9001,8827,1000000,9001,,, +3089,"NAD83 / Kentucky Single Zone (ftUS)",9003,4269,15375,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,4921250,9003,8827,3280833.333,9003,,, +3090,"NAD83(HARN) / Kentucky Single Zone",9001,4152,11630,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,1500000,9001,8827,1000000,9001,,, +3091,"NAD83(HARN) / Kentucky Single Zone (ftUS)",9003,4152,15375,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,4921250,9003,8827,3280833.333,9003,,, +3092,"Tokyo / UTM zone 51N",9001,4301,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3093,"Tokyo / UTM zone 52N",9001,4301,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3094,"Tokyo / UTM zone 53N",9001,4301,16053,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3095,"Tokyo / UTM zone 54N",9001,4301,16054,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3096,"Tokyo / UTM zone 55N",9001,4301,16055,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3097,"JGD2000 / UTM zone 51N",9001,4612,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3098,"JGD2000 / UTM zone 52N",9001,4612,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3099,"JGD2000 / UTM zone 53N",9001,4612,16053,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3100,"JGD2000 / UTM zone 54N",9001,4612,16054,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3101,"JGD2000 / UTM zone 55N",9001,4612,16055,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3102,"American Samoa 1962 / American Samoa Lambert",9003,4169,15376,9801,1,0,4497,8801,-14.16,9110,8802,-170,9110,8805,1,9201,8806,500000,9003,8807,312234.65,9003,,,,,, +3103,"Mauritania 1999 / UTM zone 28N",9001,4681,16028,9807,1,1,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3104,"Mauritania 1999 / UTM zone 29N",9001,4681,16029,9807,1,1,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3105,"Mauritania 1999 / UTM zone 30N",9001,4681,16030,9807,1,1,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3106,"Gulshan 303 / Bangladesh Transverse Mercator",9001,4682,16490,9807,1,0,4400,8801,0,9102,8802,90,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3107,"GDA94 / SA Lambert",9001,4283,17359,9802,1,0,4400,8821,-32,9102,8822,135,9102,8823,-28,9102,8824,-36,9102,8826,1000000,9001,8827,2000000,9001,,, +3108,"ETRS89 / Guernsey Grid",9001,4258,19998,9807,1,0,4400,8801,49.3,9110,8802,-2.25,9110,8805,0.999997,9201,8806,47000,9001,8807,50000,9001,,,,,, +3109,"ETRS89 / Jersey Transverse Mercator",9001,4258,19999,9807,1,0,4400,8801,49.225,9102,8802,-2.135,9102,8805,0.9999999,9201,8806,40000,9001,8807,70000,9001,,,,,, +3110,"AGD66 / Vicgrid66",9001,4202,17360,9802,1,0,4400,8821,-37,9102,8822,145,9102,8823,-36,9102,8824,-38,9102,8826,2500000,9001,8827,4500000,9001,,, +3111,"GDA94 / Vicgrid94",9001,4283,17361,9802,1,0,4400,8821,-37,9102,8822,145,9102,8823,-36,9102,8824,-38,9102,8826,2500000,9001,8827,2500000,9001,,, +3112,"GDA94 / Geoscience Australia Lambert",9001,4283,17362,9802,1,0,4400,8821,0,9102,8822,134,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +3113,"GDA94 / BCSG02",9001,4283,17363,9807,1,0,4400,8801,-28,9102,8802,153,9102,8805,0.99999,9201,8806,50000,9001,8807,100000,9001,,,,,, +3114,"MAGNA-SIRGAS / Colombia Far West zone",9001,4686,18055,9807,1,0,4500,8801,4.35463215,9110,8802,-80.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3115,"MAGNA-SIRGAS / Colombia West zone",9001,4686,18056,9807,1,0,4500,8801,4.35463215,9110,8802,-77.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3116,"MAGNA-SIRGAS / Colombia Bogota zone",9001,4686,18057,9807,1,0,4500,8801,4.35463215,9110,8802,-74.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3117,"MAGNA-SIRGAS / Colombia East Central zone",9001,4686,18058,9807,1,0,4500,8801,4.35463215,9110,8802,-71.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3118,"MAGNA-SIRGAS / Colombia East zone",9001,4686,18059,9807,1,0,4500,8801,4.35463215,9110,8802,-68.04390285,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3119,"Douala 1948 / AEF west",9001,4192,18415,9807,1,0,4400,8801,0,9110,8802,10.3,9110,8805,0.999,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3120,"Pulkovo 1942(58) / Poland zone I",9001,4179,18280,9809,1,0,4530,8801,50.373,9110,8802,21.05,9110,8805,0.9998,9201,8806,4637000,9001,8807,5467000,9001,,,,,, +3121,"PRS92 / Philippines zone 1",9001,4683,18171,9807,1,0,4499,8801,0,9102,8802,117,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +3122,"PRS92 / Philippines zone 2",9001,4683,18172,9807,1,0,4499,8801,0,9102,8802,119,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +3123,"PRS92 / Philippines zone 3",9001,4683,18173,9807,1,0,4499,8801,0,9102,8802,121,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +3124,"PRS92 / Philippines zone 4",9001,4683,18174,9807,1,0,4499,8801,0,9102,8802,123,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +3125,"PRS92 / Philippines zone 5",9001,4683,18175,9807,1,0,4499,8801,0,9102,8802,125,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +3126,"ETRS89 / ETRS-GK19FIN",9001,4258,18183,9807,1,0,4500,8801,0,9102,8802,19,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3127,"ETRS89 / ETRS-GK20FIN",9001,4258,18184,9807,1,0,4500,8801,0,9102,8802,20,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3128,"ETRS89 / ETRS-GK21FIN",9001,4258,18185,9807,1,0,4500,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3129,"ETRS89 / ETRS-GK22FIN",9001,4258,18186,9807,1,0,4500,8801,0,9102,8802,22,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3130,"ETRS89 / ETRS-GK23FIN",9001,4258,18187,9807,1,0,4500,8801,0,9102,8802,23,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3131,"ETRS89 / ETRS-GK24FIN",9001,4258,18188,9807,1,0,4500,8801,0,9102,8802,24,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3132,"ETRS89 / ETRS-GK25FIN",9001,4258,18189,9807,1,0,4500,8801,0,9102,8802,25,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3133,"ETRS89 / ETRS-GK26FIN",9001,4258,18190,9807,1,0,4500,8801,0,9102,8802,26,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3134,"ETRS89 / ETRS-GK27FIN",9001,4258,18195,9807,1,0,4500,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3135,"ETRS89 / ETRS-GK28FIN",9001,4258,18196,9807,1,0,4500,8801,0,9102,8802,28,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3136,"ETRS89 / ETRS-GK29FIN",9001,4258,18197,9807,1,0,4500,8801,0,9102,8802,29,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3137,"ETRS89 / ETRS-GK30FIN",9001,4258,18198,9807,1,0,4500,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3138,"ETRS89 / ETRS-GK31FIN",9001,4258,18199,9807,1,0,4500,8801,0,9102,8802,31,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3139,"Vanua Levu 1915 / Vanua Levu Grid",9098,4748,19878,9833,1,0,4533,8801,-16.15,9110,8802,179.2,9110,8806,1251331.8,9098,8807,1662888.5,9098,,,,,,,,, +3140,"Viti Levu 1912 / Viti Levu Grid",9098,4752,19879,9806,1,0,4533,8801,-18,9102,8802,178,9102,8806,544000,9098,8807,704000,9098,,,,,,,,, +3141,"Fiji 1956 / UTM zone 60S",9001,4721,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3142,"Fiji 1956 / UTM zone 1S",9001,4721,16101,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3143,"Fiji 1986 / Fiji Map Grid",9001,4720,19880,9807,1,1,4400,8801,-17,9110,8802,178.45,9110,8805,0.99985,9001,8806,2000000,9001,8807,4000000,9001,,,,,, +3144,"FD54 / Faroe Lambert",9001,4741,19870,9826,1,0,4501,8801,62,9102,8802,-9,9102,8805,1,9201,8806,500000,9001,8807,500000,9001,,,,,, +3145,"ETRS89 / Faroe Lambert",9001,4258,19870,9826,1,0,4501,8801,62,9102,8802,-9,9102,8805,1,9201,8806,500000,9001,8807,500000,9001,,,,,, +3146,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 6",9001,4284,16266,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3147,"Pulkovo 1942 / 3-degree Gauss-Kruger CM 18E",9001,4284,16366,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3148,"Indian 1960 / UTM zone 48N",9001,4131,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3149,"Indian 1960 / UTM zone 49N",9001,4131,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3150,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 6",9001,4200,16266,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3151,"Pulkovo 1995 / 3-degree Gauss-Kruger CM 18E",9001,4200,16366,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3152,ST74,9001,4619,19876,9807,1,0,4531,8801,0,9110,8802,18.0328044,9110,8805,0.99999425,9201,8806,100178.1808,9001,8807,-6500614.7836,9001,,,,,, +3153,"NAD83(CSRS) / BC Albers",9001,4617,19984,9822,1,0,4400,8821,45,9102,8822,-126,9102,8823,50,9110,8824,58.3,9110,8826,1000000,9001,8827,0,9001,,, +3154,"NAD83(CSRS) / UTM zone 7N",9001,4617,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3155,"NAD83(CSRS) / UTM zone 8N",9001,4617,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3156,"NAD83(CSRS) / UTM zone 9N",9001,4617,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3157,"NAD83(CSRS) / UTM zone 10N",9001,4617,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3158,"NAD83(CSRS) / UTM zone 14N",9001,4617,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3159,"NAD83(CSRS) / UTM zone 15N",9001,4617,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3160,"NAD83(CSRS) / UTM zone 16N",9001,4617,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3161,"NAD83 / Ontario MNR Lambert",9001,4269,19875,9802,1,0,4400,8821,0,9102,8822,-85,9102,8823,44.5,9102,8824,53.5,9102,8826,930000,9001,8827,6430000,9001,,, +3162,"NAD83(CSRS) / Ontario MNR Lambert",9001,4617,19875,9802,1,0,4400,8821,0,9102,8822,-85,9102,8823,44.5,9102,8824,53.5,9102,8826,930000,9001,8827,6430000,9001,,, +3163,"RGNC91-93 / Lambert New Caledonia",9001,4749,19981,9802,1,0,4499,8821,-21.3,9110,8822,166,9110,8823,-20.4,9110,8824,-22.2,9110,8826,400000,9001,8827,300000,9001,,, +3164,"ST87 Ouvea / UTM zone 58S",9001,4750,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3165,"NEA74 Noumea / Noumea Lambert",9001,4644,19873,9802,1,0,4499,8821,-22.16108903,9110,8822,166.26327327,9110,8823,-22.14408903,9110,8824,-22.17408903,9110,8826,0.66,9001,8827,1.02,9001,,, +3166,"NEA74 Noumea / Noumea Lambert 2",9001,4644,19874,9802,1,0,4499,8821,-22.1611,9110,8822,166.2633,9110,8823,-22.1441,9110,8824,-22.1741,9110,8826,8.313,9001,8827,-2.354,9001,,, +3167,"Kertau (RSO) / RSO Malaya (ch)",9301,4751,19871,9812,1,0,4410,8806,40000,9301,8807,0,9301,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +3168,"Kertau (RSO) / RSO Malaya (m)",9001,4751,19872,9812,1,0,4400,8806,804670.24,9001,8807,0,9001,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +3169,"RGNC91-93 / UTM zone 57S",9001,4749,16157,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3170,"RGNC91-93 / UTM zone 58S",9001,4749,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3171,"RGNC91-93 / UTM zone 59S",9001,4749,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3172,"IGN53 Mare / UTM zone 59S",9001,4641,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3173,"fk89 / Faroe Lambert FK89",9001,4753,19877,9826,1,0,4501,8801,62,9102,8802,-9,9102,8805,1,9201,8806,700000,9001,8807,700000,9001,,,,,, +3174,"NAD83 / Great Lakes Albers",9001,4269,15397,9822,1,0,4499,8821,45.568977,9102,8822,-84.455955,9102,8823,42.122774,9102,8824,49.01518,9102,8826,1000000,9001,8827,1000000,9001,,, +3175,"NAD83 / Great Lakes and St Lawrence Albers",9001,4269,15398,9822,1,0,4499,8821,45.568977,9102,8822,-83.248627,9102,8823,42.122774,9102,8824,49.01518,9102,8826,1000000,9001,8827,1000000,9001,,, +3176,"Indian 1960 / TM 106 NE",9001,4131,16506,9807,1,0,4400,8801,0,9102,8802,106,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3177,"LGD2006 / Libya TM",9001,4754,18319,9807,1,0,4499,8801,0,9102,8802,17,9102,8805,0.9965,9201,8806,1000000,9001,8807,0,9001,,,,,, +3178,"GR96 / UTM zone 18N",9001,4747,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3179,"GR96 / UTM zone 19N",9001,4747,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3180,"GR96 / UTM zone 20N",9001,4747,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3181,"GR96 / UTM zone 21N",9001,4747,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3182,"GR96 / UTM zone 22N",9001,4747,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3183,"GR96 / UTM zone 23N",9001,4747,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3184,"GR96 / UTM zone 24N",9001,4747,16024,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3185,"GR96 / UTM zone 25N",9001,4747,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3186,"GR96 / UTM zone 26N",9001,4747,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3187,"GR96 / UTM zone 27N",9001,4747,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3188,"GR96 / UTM zone 28N",9001,4747,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3189,"GR96 / UTM zone 29N",9001,4747,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3190,"LGD2006 / Libya TM zone 5",9001,4754,18310,9807,1,0,4499,8801,0,9102,8802,9,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3191,"LGD2006 / Libya TM zone 6",9001,4754,18311,9807,1,0,4499,8801,0,9102,8802,11,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3192,"LGD2006 / Libya TM zone 7",9001,4754,18312,9807,1,0,4499,8801,0,9102,8802,13,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3193,"LGD2006 / Libya TM zone 8",9001,4754,18313,9807,1,0,4499,8801,0,9102,8802,15,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3194,"LGD2006 / Libya TM zone 9",9001,4754,18314,9807,1,0,4499,8801,0,9102,8802,17,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3195,"LGD2006 / Libya TM zone 10",9001,4754,18315,9807,1,0,4499,8801,0,9102,8802,19,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3196,"LGD2006 / Libya TM zone 11",9001,4754,18316,9807,1,0,4499,8801,0,9102,8802,21,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3197,"LGD2006 / Libya TM zone 12",9001,4754,18317,9807,1,0,4499,8801,0,9102,8802,23,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3198,"LGD2006 / Libya TM zone 13",9001,4754,18318,9807,1,0,4499,8801,0,9102,8802,25,9102,8805,0.99995,9201,8806,200000,9001,8807,0,9001,,,,,, +3199,"LGD2006 / UTM zone 32N",9001,4754,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3200,"FD58 / Iraq zone",9001,4132,19906,9801,1,0,4400,8801,32.3,9110,8802,45,9110,8805,0.9987864078,9201,8806,1500000,9001,8807,1166200,9001,,,,,, +3201,"LGD2006 / UTM zone 33N",9001,4754,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3202,"LGD2006 / UTM zone 34N",9001,4754,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3203,"LGD2006 / UTM zone 35N",9001,4754,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3204,"WGS 84 / SCAR IMW SP19-20",9001,4326,17204,9802,1,0,4400,8821,-90,9102,8822,-66,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +3205,"WGS 84 / SCAR IMW SP21-22",9001,4326,17205,9802,1,0,4400,8821,-90,9102,8822,-54,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +3206,"WGS 84 / SCAR IMW SP23-24",9001,4326,17206,9802,1,0,4400,8821,-90,9102,8822,-42,9102,8823,-60.4,9110,8824,-63.2,9110,8826,0,9001,8827,0,9001,,, +3207,"WGS 84 / SCAR IMW SQ01-02",9001,4326,17207,9802,1,0,4400,8821,-90,9102,8822,-174,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3208,"WGS 84 / SCAR IMW SQ19-20",9001,4326,17208,9802,1,0,4400,8821,-90,9102,8822,-66,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3209,"WGS 84 / SCAR IMW SQ21-22",9001,4326,17209,9802,1,0,4400,8821,-90,9102,8822,-54,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3210,"WGS 84 / SCAR IMW SQ37-38",9001,4326,17210,9802,1,0,4400,8821,-90,9102,8822,42,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3211,"WGS 84 / SCAR IMW SQ39-40",9001,4326,17211,9802,1,0,4400,8821,-90,9102,8822,54,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3212,"WGS 84 / SCAR IMW SQ41-42",9001,4326,17212,9802,1,0,4400,8821,-90,9102,8822,66,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3213,"WGS 84 / SCAR IMW SQ43-44",9001,4326,17213,9802,1,0,4400,8821,-90,9102,8822,78,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3214,"WGS 84 / SCAR IMW SQ45-46",9001,4326,17214,9802,1,0,4400,8821,-90,9102,8822,90,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3215,"WGS 84 / SCAR IMW SQ47-48",9001,4326,17215,9802,1,0,4400,8821,-90,9102,8822,102,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3216,"WGS 84 / SCAR IMW SQ49-50",9001,4326,17216,9802,1,0,4400,8821,-90,9102,8822,114,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3217,"WGS 84 / SCAR IMW SQ51-52",9001,4326,17217,9802,1,0,4400,8821,-90,9102,8822,126,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3218,"WGS 84 / SCAR IMW SQ53-54",9001,4326,17218,9802,1,0,4400,8821,-90,9102,8822,138,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3219,"WGS 84 / SCAR IMW SQ55-56",9001,4326,17219,9802,1,0,4400,8821,-90,9102,8822,150,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3220,"WGS 84 / SCAR IMW SQ57-58",9001,4326,17220,9802,1,0,4400,8821,-90,9102,8822,162,9102,8823,-64.4,9110,8824,-67.2,9110,8826,0,9001,8827,0,9001,,, +3221,"WGS 84 / SCAR IMW SR13-14",9001,4326,17221,9802,1,0,4400,8821,-90,9102,8822,-102,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3222,"WGS 84 / SCAR IMW SR15-16",9001,4326,17222,9802,1,0,4400,8821,-90,9102,8822,-90,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3223,"WGS 84 / SCAR IMW SR17-18",9001,4326,17223,9802,1,0,4400,8821,-90,9102,8822,-78,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3224,"WGS 84 / SCAR IMW SR19-20",9001,4326,17224,9802,1,0,4400,8821,-90,9102,8822,-66,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3225,"WGS 84 / SCAR IMW SR27-28",9001,4326,17225,9802,1,0,4400,8821,-90,9102,8822,-18,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3226,"WGS 84 / SCAR IMW SR29-30",9001,4326,17226,9802,1,0,4400,8821,-90,9102,8822,-6,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3227,"WGS 84 / SCAR IMW SR31-32",9001,4326,17227,9802,1,0,4400,8821,-90,9102,8822,6,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3228,"WGS 84 / SCAR IMW SR33-34",9001,4326,17228,9802,1,0,4400,8821,-90,9102,8822,18,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3229,"WGS 84 / SCAR IMW SR35-36",9001,4326,17229,9802,1,0,4400,8821,-90,9102,8822,30,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3230,"WGS 84 / SCAR IMW SR37-38",9001,4326,17230,9802,1,0,4400,8821,-90,9102,8822,42,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3231,"WGS 84 / SCAR IMW SR39-40",9001,4326,17231,9802,1,0,4400,8821,-90,9102,8822,54,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3232,"WGS 84 / SCAR IMW SR41-42",9001,4326,17232,9802,1,0,4400,8821,-90,9102,8822,66,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3233,"WGS 84 / SCAR IMW SR43-44",9001,4326,17233,9802,1,0,4400,8821,-90,9102,8822,78,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3234,"WGS 84 / SCAR IMW SR45-46",9001,4326,17234,9802,1,0,4400,8821,-90,9102,8822,90,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3235,"WGS 84 / SCAR IMW SR47-48",9001,4326,17235,9802,1,0,4400,8821,-90,9102,8822,102,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3236,"WGS 84 / SCAR IMW SR49-50",9001,4326,17236,9802,1,0,4400,8821,-90,9102,8822,114,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3237,"WGS 84 / SCAR IMW SR51-52",9001,4326,17237,9802,1,0,4400,8821,-90,9102,8822,126,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3238,"WGS 84 / SCAR IMW SR53-54",9001,4326,17238,9802,1,0,4400,8821,-90,9102,8822,138,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3239,"WGS 84 / SCAR IMW SR55-56",9001,4326,17239,9802,1,0,4400,8821,-90,9102,8822,150,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3240,"WGS 84 / SCAR IMW SR57-58",9001,4326,17240,9802,1,0,4400,8821,-90,9102,8822,162,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3241,"WGS 84 / SCAR IMW SR59-60",9001,4326,17241,9802,1,0,4400,8821,-90,9102,8822,174,9102,8823,-68.4,9110,8824,-71.2,9110,8826,0,9001,8827,0,9001,,, +3242,"WGS 84 / SCAR IMW SS04-06",9001,4326,17242,9802,1,0,4400,8821,-90,9102,8822,-153,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3243,"WGS 84 / SCAR IMW SS07-09",9001,4326,17243,9802,1,0,4400,8821,-90,9102,8822,-135,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3244,"WGS 84 / SCAR IMW SS10-12",9001,4326,17244,9802,1,0,4400,8821,-90,9102,8822,-117,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3245,"WGS 84 / SCAR IMW SS13-15",9001,4326,17245,9802,1,0,4400,8821,-90,9102,8822,-99,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3246,"WGS 84 / SCAR IMW SS16-18",9001,4326,17246,9802,1,0,4400,8821,-90,9102,8822,-81,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3247,"WGS 84 / SCAR IMW SS19-21",9001,4326,17247,9802,1,0,4400,8821,-90,9102,8822,-63,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3248,"WGS 84 / SCAR IMW SS25-27",9001,4326,17248,9802,1,0,4400,8821,-90,9102,8822,-27,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3249,"WGS 84 / SCAR IMW SS28-30",9001,4326,17249,9802,1,0,4400,8821,-90,9102,8822,-9,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3250,"WGS 84 / SCAR IMW SS31-33",9001,4326,17250,9802,1,0,4400,8821,-90,9102,8822,9,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3251,"WGS 84 / SCAR IMW SS34-36",9001,4326,17251,9802,1,0,4400,8821,-90,9102,8822,27,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3252,"WGS 84 / SCAR IMW SS37-39",9001,4326,17252,9802,1,0,4400,8821,-90,9102,8822,45,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3253,"WGS 84 / SCAR IMW SS40-42",9001,4326,17253,9802,1,0,4400,8821,-90,9102,8822,63,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3254,"WGS 84 / SCAR IMW SS43-45",9001,4326,17254,9802,1,0,4400,8821,-90,9102,8822,81,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3255,"WGS 84 / SCAR IMW SS46-48",9001,4326,17255,9802,1,0,4400,8821,-90,9102,8822,99,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3256,"WGS 84 / SCAR IMW SS49-51",9001,4326,17256,9802,1,0,4400,8821,-90,9102,8822,117,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3257,"WGS 84 / SCAR IMW SS52-54",9001,4326,17257,9802,1,0,4400,8821,-90,9102,8822,135,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3258,"WGS 84 / SCAR IMW SS55-57",9001,4326,17258,9802,1,0,4400,8821,-90,9102,8822,153,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3259,"WGS 84 / SCAR IMW SS58-60",9001,4326,17259,9802,1,0,4400,8821,-90,9102,8822,171,9102,8823,-72.4,9110,8824,-75.2,9110,8826,0,9001,8827,0,9001,,, +3260,"WGS 84 / SCAR IMW ST01-04",9001,4326,17260,9802,1,0,4400,8821,-90,9102,8822,-168,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3261,"WGS 84 / SCAR IMW ST05-08",9001,4326,17261,9802,1,0,4400,8821,-90,9102,8822,-144,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3262,"WGS 84 / SCAR IMW ST09-12",9001,4326,17262,9802,1,0,4400,8821,-90,9102,8822,-120,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3263,"WGS 84 / SCAR IMW ST13-16",9001,4326,17263,9802,1,0,4400,8821,-90,9102,8822,-96,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3264,"WGS 84 / SCAR IMW ST17-20",9001,4326,17264,9802,1,0,4400,8821,-90,9102,8822,-72,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3265,"WGS 84 / SCAR IMW ST21-24",9001,4326,17265,9802,1,0,4400,8821,-90,9102,8822,-48,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3266,"WGS 84 / SCAR IMW ST25-28",9001,4326,17266,9802,1,0,4400,8821,-90,9102,8822,-24,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3267,"WGS 84 / SCAR IMW ST29-32",9001,4326,17267,9802,1,0,4400,8821,-90,9102,8822,0,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3268,"WGS 84 / SCAR IMW ST33-36",9001,4326,17268,9802,1,0,4400,8821,-90,9102,8822,24,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3269,"WGS 84 / SCAR IMW ST37-40",9001,4326,17269,9802,1,0,4400,8821,-90,9102,8822,48,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3270,"WGS 84 / SCAR IMW ST41-44",9001,4326,17270,9802,1,0,4400,8821,-90,9102,8822,72,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3271,"WGS 84 / SCAR IMW ST45-48",9001,4326,17271,9802,1,0,4400,8821,-90,9102,8822,96,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3272,"WGS 84 / SCAR IMW ST49-52",9001,4326,17272,9802,1,0,4400,8821,-90,9102,8822,120,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3273,"WGS 84 / SCAR IMW ST53-56",9001,4326,17273,9802,1,0,4400,8821,-90,9102,8822,144,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3274,"WGS 84 / SCAR IMW ST57-60",9001,4326,17274,9802,1,0,4400,8821,-90,9102,8822,168,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3275,"WGS 84 / SCAR IMW SU01-05",9001,4326,17275,9829,1,0,4471,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-165,9102,,,,,,,,, +3276,"WGS 84 / SCAR IMW SU06-10",9001,4326,17276,9829,1,0,4473,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-135,9102,,,,,,,,, +3277,"WGS 84 / SCAR IMW SU11-15",9001,4326,17277,9829,1,0,4474,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-105,9102,,,,,,,,, +3278,"WGS 84 / SCAR IMW SU16-20",9001,4326,17278,9829,1,0,4476,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-75,9102,,,,,,,,, +3279,"WGS 84 / SCAR IMW SU21-25",9001,4326,17279,9829,1,0,4477,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-45,9102,,,,,,,,, +3280,"WGS 84 / SCAR IMW SU26-30",9001,4326,17280,9829,1,0,4479,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-15,9102,,,,,,,,, +3281,"WGS 84 / SCAR IMW SU31-35",9001,4326,17281,9829,1,0,4480,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,15,9102,,,,,,,,, +3282,"WGS 84 / SCAR IMW SU36-40",9001,4326,17282,9829,1,0,4482,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,45,9102,,,,,,,,, +3283,"WGS 84 / SCAR IMW SU41-45",9001,4326,17283,9829,1,0,4483,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,75,9102,,,,,,,,, +3284,"WGS 84 / SCAR IMW SU46-50",9001,4326,17284,9829,1,0,4485,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,105,9102,,,,,,,,, +3285,"WGS 84 / SCAR IMW SU51-55",9001,4326,17285,9829,1,0,4486,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,135,9102,,,,,,,,, +3286,"WGS 84 / SCAR IMW SU56-60",9001,4326,17286,9829,1,0,4488,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,165,9102,,,,,,,,, +3287,"WGS 84 / SCAR IMW SV01-10",9001,4326,17287,9829,1,0,4472,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-150,9102,,,,,,,,, +3288,"WGS 84 / SCAR IMW SV11-20",9001,4326,17288,9829,1,0,4475,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-90,9102,,,,,,,,, +3289,"WGS 84 / SCAR IMW SV21-30",9001,4326,17289,9829,1,0,4478,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,-30,9102,,,,,,,,, +3290,"WGS 84 / SCAR IMW SV31-40",9001,4326,17290,9829,1,0,4481,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,30,9102,,,,,,,,, +3291,"WGS 84 / SCAR IMW SV41-50",9001,4326,17291,9829,1,0,4484,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,90,9102,,,,,,,,, +3292,"WGS 84 / SCAR IMW SV51-60",9001,4326,17292,9829,1,0,4487,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,150,9102,,,,,,,,, +3293,"WGS 84 / SCAR IMW SW01-60",9001,4326,17293,9829,1,0,4490,8806,0,9001,8807,0,9001,8832,-80.1419,9110,8833,0,9102,,,,,,,,, +3294,"WGS 84 / USGS Transantarctic Mountains",9001,4326,17294,9802,1,0,4400,8821,-78,9102,8822,162,9102,8823,-76.4,9110,8824,-79.2,9110,8826,0,9001,8827,0,9001,,, +3295,"Guam 1963 / Yap Islands",9001,4675,15399,9832,1,0,4499,8801,9.324815,9110,8802,138.100748,9110,8806,40000,9001,8807,60000,9001,,,,,,,,, +3296,"RGPF / UTM zone 5S",9001,4687,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3297,"RGPF / UTM zone 6S",9001,4687,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3298,"RGPF / UTM zone 7S",9001,4687,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3299,"RGPF / UTM zone 8S",9001,4687,16108,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3300,Estonian Coordinate System of 1992,9001,4133,19938,9802,1,0,4530,8821,57.310319415,9110,8822,24,9110,8823,59.2,9110,8824,58,9110,8826,500000,9001,8827,6375000,9001,,, +3301,Estonian Coordinate System of 1997,9001,4180,19938,9802,1,0,4530,8821,57.310319415,9110,8822,24,9110,8823,59.2,9110,8824,58,9110,8826,500000,9001,8827,6375000,9001,,, +3302,"IGN63 Hiva Oa / UTM zone 7S",9001,4689,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3303,"Fatu Iva 72 / UTM zone 7S",9001,4688,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3304,"Tahiti 79 / UTM zone 6S",9001,4690,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3305,"Moorea 87 / UTM zone 6S",9001,4691,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3306,"Maupiti 83 / UTM zone 5S",9001,4692,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3307,"Nakhl-e Ghanem / UTM zone 39N",9001,4693,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3308,"GDA94 / NSW Lambert",9001,4283,17364,9802,1,0,4400,8821,-33.25,9102,8822,147,9102,8823,-30.75,9102,8824,-35.75,9102,8826,9300000,9001,8827,4500000,9001,,, +3309,"NAD27 / California Albers",9001,4267,10420,9822,1,0,4499,8821,0,9102,8822,-120,9102,8823,34,9102,8824,40.5,9102,8826,0,9001,8827,-4000000,9001,,, +3310,"NAD83 / California Albers",9001,4269,10420,9822,1,0,4499,8821,0,9102,8822,-120,9102,8823,34,9102,8824,40.5,9102,8826,0,9001,8827,-4000000,9001,,, +3311,"NAD83(HARN) / California Albers",9001,4152,10420,9822,1,0,4499,8821,0,9102,8822,-120,9102,8823,34,9102,8824,40.5,9102,8826,0,9001,8827,-4000000,9001,,, +3312,"CSG67 / UTM zone 21N",9001,4623,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3313,"RGFG95 / UTM zone 21N",9001,4624,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3314,"Katanga 1955 / Katanga Lambert",9001,4695,17401,9802,1,1,4400,8821,0,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,0,9001,8827,0,9001,,, +3315,"Katanga 1955 / Katanga TM",9001,4695,17402,9807,1,1,4400,8801,-9,9102,8802,26,9102,8805,0.9998,9201,8806,0,9001,8807,0,9001,,,,,, +3316,"Kasai 1953 / Congo TM zone 22",9001,4696,17422,9807,1,0,4400,8801,0,9102,8802,22,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3317,"Kasai 1953 / Congo TM zone 24",9001,4696,17424,9807,1,0,4400,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3318,"IGC 1962 / Congo TM zone 12",9001,4697,17412,9807,1,0,4400,8801,0,9102,8802,12,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3319,"IGC 1962 / Congo TM zone 14",9001,4697,17414,9807,1,0,4400,8801,0,9102,8802,14,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3320,"IGC 1962 / Congo TM zone 16",9001,4697,17416,9807,1,0,4400,8801,0,9102,8802,16,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3321,"IGC 1962 / Congo TM zone 18",9001,4697,17418,9807,1,0,4400,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3322,"IGC 1962 / Congo TM zone 20",9001,4697,17420,9807,1,0,4400,8801,0,9102,8802,20,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3323,"IGC 1962 / Congo TM zone 22",9001,4697,17422,9807,1,0,4400,8801,0,9102,8802,22,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3324,"IGC 1962 / Congo TM zone 24",9001,4697,17424,9807,1,0,4400,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3325,"IGC 1962 / Congo TM zone 26",9001,4697,17426,9807,1,0,4400,8801,0,9102,8802,26,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3326,"IGC 1962 / Congo TM zone 28",9001,4697,17428,9807,1,0,4400,8801,0,9102,8802,28,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3327,"IGC 1962 / Congo TM zone 30",9001,4697,17430,9807,1,0,4400,8801,0,9102,8802,30,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3328,"Pulkovo 1942(58) / GUGiK-80",9001,4179,18286,9809,1,0,4530,8801,52.1,9110,8802,19.1,9110,8805,0.999714,9201,8806,500000,9001,8807,500000,9001,,,,,, +3329,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 5",9001,4179,16265,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +3330,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 6",9001,4179,16266,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3331,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 7",9001,4179,16267,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +3332,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 8",9001,4179,16268,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +3333,"Pulkovo 1942(58) / Gauss-Kruger zone 3",9001,4179,16203,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +3334,"Pulkovo 1942(58) / Gauss-Kruger zone 4",9001,4179,16204,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +3335,"Pulkovo 1942(58) / Gauss-Kruger zone 5",9001,4179,16205,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +3336,"IGN 1962 Kerguelen / UTM zone 42S",9001,4698,16142,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3337,"Le Pouce 1934 / Mauritius Grid",9001,4699,19899,9801,1,0,4400,8801,-20.114225,9110,8802,57.311858,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +3338,"NAD83 / Alaska Albers",9001,4269,15021,9822,1,0,4499,8821,50,9102,8822,-154,9102,8823,55,9102,8824,65,9102,8826,0,9001,8827,0,9001,,, +3339,"IGCB 1955 / Congo TM zone 12",9001,4701,17412,9807,1,0,4400,8801,0,9102,8802,12,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3340,"IGCB 1955 / Congo TM zone 14",9001,4701,17414,9807,1,0,4400,8801,0,9102,8802,14,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3341,"IGCB 1955 / Congo TM zone 16",9001,4701,17416,9807,1,0,4400,8801,0,9102,8802,16,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3342,"IGCB 1955 / UTM zone 33S",9001,4701,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3343,"Mauritania 1999 / UTM zone 28N",9001,4702,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3344,"Mauritania 1999 / UTM zone 29N",9001,4702,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3345,"Mauritania 1999 / UTM zone 30N",9001,4702,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3346,"LKS94 / Lithuania TM",9001,4669,19934,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,0.9998,9201,8806,500000,9001,8807,0,9001,,,,,, +3347,"NAD83 / Statistics Canada Lambert",9001,4269,19897,9802,1,0,4400,8821,63.390675,9102,8822,-91.52,9110,8823,49,9102,8824,77,9102,8826,6200000,9001,8827,3000000,9001,,, +3348,"NAD83(CSRS) / Statistics Canada Lambert",9001,4617,19897,9802,1,0,4400,8821,63.390675,9102,8822,-91.52,9110,8823,49,9102,8824,77,9102,8826,6200000,9001,8827,3000000,9001,,, +3349,"WGS 84 / PDC Mercator",9001,4326,19898,9804,1,1,4400,8801,0,9102,8802,-150,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3350,"Pulkovo 1942 / CS63 zone C0",9001,4284,18450,9807,1,0,4530,8801,0.06,9110,8802,21.57,9110,8805,1,9201,8806,250000,9001,8807,0,9001,,,,,, +3351,"Pulkovo 1942 / CS63 zone C1",9001,4284,18451,9807,1,0,4530,8801,0.06,9110,8802,24.57,9110,8805,1,9201,8806,1250000,9001,8807,0,9001,,,,,, +3352,"Pulkovo 1942 / CS63 zone C2",9001,4284,18452,9807,1,0,4530,8801,0.06,9110,8802,27.57,9110,8805,1,9201,8806,2250000,9001,8807,0,9001,,,,,, +3353,"Mhast (onshore) / UTM zone 32S",9001,4704,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3354,"Mhast (offshore) / UTM zone 32S",9001,4705,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3355,"Egypt Gulf of Suez S-650 TL / Red Belt",9001,4706,18072,9807,1,0,4400,8801,30,9102,8802,31,9102,8805,1,9201,8806,615000,9001,8807,810000,9001,,,,,, +3356,"Grand Cayman 1959 / UTM zone 17N",9001,4723,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3357,"Little Cayman 1961 / UTM zone 17N",9001,4726,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3358,"NAD83(HARN) / North Carolina",9001,4152,13230,9802,1,0,4499,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,609601.22,9001,8827,0,9001,,, +3359,"NAD83(HARN) / North Carolina (ftUS)",9002,4152,15346,9802,1,1,4495,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,2000000,9003,8827,0,9003,,, +3360,"NAD83(HARN) / South Carolina",9001,4152,13930,9802,1,0,4499,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,609600,9001,8827,0,9001,,, +3361,"NAD83(HARN) / South Carolina (ft)",9002,4152,15355,9802,1,0,4495,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,2000000,9002,8827,0,9002,,, +3362,"NAD83(HARN) / Pennsylvania North",9001,4152,13731,9802,1,0,4499,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,600000,9001,8827,0,9001,,, +3363,"NAD83(HARN) / Pennsylvania North (ftUS)",9003,4152,15353,9802,1,0,4497,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,1968500,9003,8827,0,9003,,, +3364,"NAD83(HARN) / Pennsylvania South",9001,4152,13732,9802,1,0,4499,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,600000,9001,8827,0,9001,,, +3365,"NAD83(HARN) / Pennsylvania South (ftUS)",9003,4152,15354,9802,1,0,4497,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,1968500,9003,8827,0,9003,,, +3366,Hong Kong 1963 Grid System,9001,4738,19896,9806,1,1,4500,8801,22.184368,9110,8802,114.10428,9110,8806,132033.92,9005,8807,62565.96,9005,,,,,,,,, +3367,"IGN Astro 1960 / UTM zone 28N",9001,4700,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3368,"IGN Astro 1960 / UTM zone 29N",9001,4700,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3369,"IGN Astro 1960 / UTM zone 30N",9001,4700,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3370,"NAD27 / UTM zone 59N",9001,4267,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3371,"NAD27 / UTM zone 60N",9001,4267,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3372,"NAD83 / UTM zone 59N",9001,4269,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3373,"NAD83 / UTM zone 60N",9001,4269,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3374,"FD54 / UTM zone 29N",9001,4741,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3375,"GDM2000 / Peninsula RSO",9001,4742,19895,9812,1,0,4400,8806,804671,9001,8807,0,9001,8811,4,9110,8812,102.15,9110,8813,323.013286728,9110,8814,323.07483685,9110,8815,0.99984,9201 +3376,"GDM2000 / East Malaysia BRSO",9001,4742,19894,9812,1,0,4400,8806,0,9001,8807,0,9001,8811,4,9110,8812,115,9110,8813,53.185691582,9110,8814,53.07483685,9110,8815,0.99984,9201 +3377,"GDM2000 / Johor Grid",9001,4742,19893,9806,1,0,4400,8801,2.071804708,9110,8802,103.254057045,9110,8806,-14810.562,9001,8807,8758.32,9001,,,,,,,,, +3378,"GDM2000 / Sembilan and Melaka Grid",9001,4742,19892,9806,1,0,4400,8801,2.405645149,9110,8802,101.582965815,9110,8806,3673.785,9001,8807,-4240.573,9001,,,,,,,,, +3379,"GDM2000 / PahangGrid",9001,4742,19891,9806,1,0,4400,8801,3.460979712,9110,8802,102.220587634,9110,8806,-7368.228,9001,8807,6485.858,9001,,,,,,,,, +3380,"GDM2000 / Selangor Grid",9001,4742,19890,9806,1,0,4400,8801,3.410473658,9110,8802,101.232078849,9110,8806,-34836.161,9001,8807,56464.049,9001,,,,,,,,, +3381,"GDM2000 / Terengganu Grid",9001,4742,19889,9806,1,0,4400,8801,4.583462672,9110,8802,103.041299225,9110,8806,19594.245,9001,8807,3371.895,9001,,,,,,,,, +3382,"GDM2000 / Pinang Grid",9001,4742,19888,9806,1,0,4400,8801,5.251746315,9110,8802,100.203975707,9110,8806,-23.414,9001,8807,62.283,9001,,,,,,,,, +3383,"GDM2000 / Kedah and Perlis Grid",9001,4742,19887,9806,1,0,4400,8801,5.575282177,9110,8802,100.3810936,9110,8806,0,9001,8807,0,9001,,,,,,,,, +3384,"GDM2000 / Perak Grid",9001,4742,19886,9806,1,0,4400,8801,4.513262688,9110,8802,100.485547811,9110,8806,-1.769,9001,8807,133454.779,9001,,,,,,,,, +3385,"GDM2000 / Kelantan Grid",9001,4742,19885,9806,1,0,4400,8801,5.582115717,9110,8802,102.174287001,9110,8806,13227.851,9001,8807,8739.894,9001,,,,,,,,, +3386,"KKJ / Finland zone 0",9001,4123,18180,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +3387,"KKJ / Finland zone 5",9001,4123,18205,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +3388,"Pulkovo 1942 / Caspian Sea Mercator",9001,4284,19884,9805,1,0,4534,8802,51,9102,8806,0,9001,8807,0,9001,8823,42,9102,,,,,,,,, +3389,"Pulkovo 1942 / 3-degree Gauss-Kruger zone 60",9001,4284,16099,9807,1,0,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,60500000,9001,8807,0,9001,,,,,, +3390,"Pulkovo 1995 / 3-degree Gauss-Kruger zone 60",9001,4200,16099,9807,1,0,4530,8801,0,9102,8802,180,9102,8805,1,9201,8806,60500000,9001,8807,0,9001,,,,,, +3391,"Karbala 1979 / UTM zone 37N",9001,4743,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3392,"Karbala 1979 / UTM zone 38N",9001,4743,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3393,"Karbala 1979 / UTM zone 39N",9001,4743,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3394,"Nahrwan 1934 / Iraq zone",9001,4744,19906,9801,1,0,4400,8801,32.3,9110,8802,45,9110,8805,0.9987864078,9201,8806,1500000,9001,8807,1166200,9001,,,,,, +3395,"WGS 84 / World Mercator",9001,4326,19883,9804,1,0,4400,8801,0,9102,8802,0,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3396,"PD/83 / 3-degree Gauss-Kruger zone 3",9001,4746,16263,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +3397,"PD/83 / 3-degree Gauss-Kruger zone 4",9001,4746,16264,9807,1,0,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +3398,"RD/83 / 3-degree Gauss-Kruger zone 4",9001,4745,16264,9807,1,0,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +3399,"RD/83 / 3-degree Gauss-Kruger zone 5",9001,4745,16265,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +3400,"NAD83 / Alberta 10-TM (Forest)",9001,4269,19881,9807,1,0,4400,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,500000,9001,8807,0,9001,,,,,, +3401,"NAD83 / Alberta 10-TM (Resource)",9001,4269,19882,9807,1,0,4400,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,0,9001,8807,0,9001,,,,,, +3402,"NAD83(CSRS) / Alberta 10-TM (Forest)",9001,4617,19881,9807,1,0,4400,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,500000,9001,8807,0,9001,,,,,, +3403,"NAD83(CSRS) / Alberta 10-TM (Resource)",9001,4617,19882,9807,1,0,4400,8801,0,9102,8802,-115,9102,8805,0.9992,9201,8806,0,9001,8807,0,9001,,,,,, +3404,"NAD83(HARN) / North Carolina (ftUS)",9003,4152,15346,9802,1,0,4497,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,2000000,9003,8827,0,9003,,, +3405,"VN-2000 / UTM zone 48N",9001,4756,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3406,"VN-2000 / UTM zone 49N",9001,4756,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3407,Hong Kong 1963 Grid System,9005,4738,19896,9806,1,0,4502,8801,22.184368,9110,8802,114.10428,9110,8806,132033.92,9005,8807,62565.96,9005,,,,,,,,, +3408,NSIDC EASE-Grid North,9001,4053,3897,1027,1,0,4469,8801,90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3409,NSIDC EASE-Grid South,9001,4053,3898,1027,1,0,4470,8801,-90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3410,NSIDC EASE-Grid Global,9001,4053,19869,9834,1,0,4499,8802,0,9102,8806,0,9001,8807,0,9001,8823,30,9102,,,,,,,,, +3411,NSIDC Sea Ice Polar Stereographic North,9001,4054,19865,9829,1,0,4468,8806,0,9001,8807,0,9001,8832,70,9102,8833,-45,9102,,,,,,,,, +3412,NSIDC Sea Ice Polar Stereographic South,9001,4054,19866,9829,1,0,4470,8806,0,9001,8807,0,9001,8832,-70,9102,8833,0,9102,,,,,,,,, +3413,"WGS 84 / NSIDC Sea Ice Polar Stereographic North",9001,4326,19865,9829,1,0,4468,8806,0,9001,8807,0,9001,8832,70,9102,8833,-45,9102,,,,,,,,, +3414,"SVY21 / Singapore TM",9001,4757,19864,9807,1,0,4500,8801,1.22,9110,8802,103.5,9110,8805,1,9201,8806,28001.642,9001,8807,38744.572,9001,,,,,, +3415,"WGS 72BE / South China Sea Lambert",9001,4324,19863,9802,1,0,4400,8821,21,9102,8822,114,9102,8823,18,9102,8824,24,9102,8826,500000,9001,8827,500000,9001,,, +3416,"ETRS89 / Austria Lambert",9001,4258,19947,9802,1,0,4530,8821,47.3,9110,8822,13.2,9110,8823,49,9110,8824,46,9110,8826,400000,9001,8827,400000,9001,,, +3417,"NAD83 / Iowa North (ft US)",9003,4269,15377,9802,1,0,4497,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,4921250,9003,8827,3280833.3333,9003,,, +3418,"NAD83 / Iowa South (ft US)",9003,4269,15378,9802,1,0,4497,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,1640416.6667,9003,8827,0,9003,,, +3419,"NAD83 / Kansas North (ft US)",9003,4269,15379,9802,1,0,4497,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,1312333.3333,9003,8827,0,9003,,, +3420,"NAD83 / Kansas South (ft US)",9003,4269,15380,9802,1,0,4497,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3421,"NAD83 / Nevada East (ft US)",9003,4269,15381,9807,1,0,4497,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,656166.6667,9003,8807,26246666.6667,9003,,,,,, +3422,"NAD83 / Nevada Central (ft US)",9003,4269,15382,9807,1,0,4497,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,1640416.6667,9003,8807,19685000,9003,,,,,, +3423,"NAD83 / Nevada West (ft US)",9003,4269,15383,9807,1,0,4497,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,2624666.6667,9003,8807,13123333.3333,9003,,,,,, +3424,"NAD83 / New Jersey (ft US)",9003,4269,15384,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +3425,"NAD83(HARN) / Iowa North (ft US)",9003,4152,15377,9802,1,0,4497,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,4921250,9003,8827,3280833.3333,9003,,, +3426,"NAD83(HARN) / Iowa South (ft US)",9003,4152,15378,9802,1,0,4497,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,1640416.6667,9003,8827,0,9003,,, +3427,"NAD83(HARN) / Kansas North (ft US)",9003,4152,15379,9802,1,0,4497,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,1312333.3333,9003,8827,0,9003,,, +3428,"NAD83(HARN) / Kansas South (ft US)",9003,4152,15380,9802,1,0,4497,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3429,"NAD83(HARN) / Nevada East (ft US)",9003,4152,15381,9807,1,0,4497,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,656166.6667,9003,8807,26246666.6667,9003,,,,,, +3430,"NAD83(HARN) / Nevada Central (ft US)",9003,4152,15382,9807,1,0,4497,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,1640416.6667,9003,8807,19685000,9003,,,,,, +3431,"NAD83(HARN) / Nevada West (ft US)",9003,4152,15383,9807,1,0,4497,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,2624666.6667,9003,8807,13123333.3333,9003,,,,,, +3432,"NAD83(HARN) / New Jersey (ft US)",9003,4152,15384,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +3433,"NAD83 / Arkansas North (ftUS)",9003,4269,15385,9802,1,0,4497,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,1312333.3333,9003,8827,0,9003,,, +3434,"NAD83 / Arkansas South (ftUS)",9003,4269,15386,9802,1,0,4497,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3435,"NAD83 / Illinois East (ftUS)",9003,4269,15387,9807,1,0,4497,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,984250,9003,8807,0,9003,,,,,, +3436,"NAD83 / Illinois West (ftUS)",9003,4269,15388,9807,1,0,4497,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,2296583.3333,9003,8807,0,9003,,,,,, +3437,"NAD83 / New Hampshire (ftUS)",9003,4269,15389,9807,1,0,4497,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,984250,9003,8807,0,9003,,,,,, +3438,"NAD83 / Rhode Island (ftUS)",9003,4269,15390,9807,1,0,4497,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,328083.3333,9003,8807,0,9003,,,,,, +3439,"PSD93 / UTM zone 39N",9001,4134,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3440,"PSD93 / UTM zone 40N",9001,4134,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3441,"NAD83(HARN) / Arkansas North (ftUS)",9003,4152,15385,9802,1,0,4497,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,1312333.3333,9003,8827,0,9003,,, +3442,"NAD83(HARN) / Arkansas South (ftUS)",9003,4152,15386,9802,1,0,4497,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3443,"NAD83(HARN) / Illinois East (ftUS)",9003,4152,15387,9807,1,0,4497,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,984250,9003,8807,0,9003,,,,,, +3444,"NAD83(HARN) / Illinois West (ftUS)",9003,4152,15388,9807,1,0,4497,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,2296583.3333,9003,8807,0,9003,,,,,, +3445,"NAD83(HARN) / New Hampshire (ftUS)",9003,4152,15389,9807,1,0,4497,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,984250,9003,8807,0,9003,,,,,, +3446,"NAD83(HARN) / Rhode Island (ftUS)",9003,4152,15390,9807,1,0,4497,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,328083.3333,9003,8807,0,9003,,,,,, +3447,"ETRS89 / Belgian Lambert 2005",9001,4258,19862,9802,1,0,4499,8821,50.4752134,9110,8822,4.2133177,9110,8823,49.5,9110,8824,51.1,9110,8826,150328,9001,8827,166262,9001,,, +3448,"JAD2001 / Jamaica Metric Grid",9001,4758,19860,9801,1,0,4400,8801,18,9102,8802,-77,9102,8805,1,9201,8806,750000,9001,8807,650000,9001,,,,,, +3449,"JAD2001 / UTM zone 17N",9001,4758,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3450,"JAD2001 / UTM zone 18N",9001,4758,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3451,"NAD83 / Louisiana North (ftUS)",9003,4269,15391,9802,1,0,4497,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +3452,"NAD83 / Louisiana South (ftUS)",9003,4269,15392,9802,1,0,4497,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,3280833.3333,9003,8827,0,9003,,, +3453,"NAD83 / Louisiana Offshore (ftUS)",9003,4269,15393,9802,1,0,4497,8821,25.3,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +3454,"NAD83 / South Dakota North (ftUS)",9003,4269,15395,9802,1,1,4497,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,1968500,9003,8827,0,9003,,, +3455,"NAD83 / South Dakota South (ftUS)",9003,4269,15395,9802,1,0,4497,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,1968500,9003,8827,0,9003,,, +3456,"NAD83(HARN) / Louisiana North (ftUS)",9003,4152,15391,9802,1,0,4497,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +3457,"NAD83(HARN) / Louisiana South (ftUS)",9003,4152,15392,9802,1,0,4497,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,3280833.3333,9003,8827,0,9003,,, +3458,"NAD83(HARN) / South Dakota North (ftUS)",9003,4152,15394,9802,1,0,4497,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,1968500,9003,8827,0,9003,,, +3459,"NAD83(HARN) / South Dakota South (ftUS)",9003,4152,15395,9802,1,0,4497,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,1968500,9003,8827,0,9003,,, +3460,"Fiji 1986 / Fiji Map Grid",9001,4720,19859,9807,1,0,4400,8801,-17,9110,8802,178.45,9110,8805,0.99985,9201,8806,2000000,9001,8807,4000000,9001,,,,,, +3461,"Dabola 1981 / UTM zone 28N",9001,4155,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3462,"Dabola 1981 / UTM zone 29N",9001,4155,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3463,"NAD83 / Maine CS2000 Central",9001,4269,11854,9807,1,0,4499,8801,43.3,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +3464,"NAD83(HARN) / Maine CS2000 Central",9001,4152,11854,9807,1,0,4499,8801,43.3,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +3465,"NAD83(NSRS2007) / Alabama East",9001,4759,10131,9807,1,0,4499,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,200000,9001,8807,0,9001,,,,,, +3466,"NAD83(NSRS2007) / Alabama West",9001,4759,10132,9807,1,0,4499,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,600000,9001,8807,0,9001,,,,,, +3467,"NAD83(NSRS2007) / Alaska Albers",9001,4759,15021,9822,1,0,4499,8821,50,9102,8822,-154,9102,8823,55,9102,8824,65,9102,8826,0,9001,8827,0,9001,,, +3468,"NAD83(NSRS2007) / Alaska zone 1",9001,4759,15031,9812,1,0,4499,8806,5000000,9001,8807,-5000000,9001,8811,57,9110,8812,-133.4,9110,8813,323.07483685,9110,8814,323.07483685,9110,8815,0.9999,9201 +3469,"NAD83(NSRS2007) / Alaska zone 2",9001,4759,15032,9807,1,0,4499,8801,54,9102,8802,-142,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3470,"NAD83(NSRS2007) / Alaska zone 3",9001,4759,15033,9807,1,0,4499,8801,54,9102,8802,-146,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3471,"NAD83(NSRS2007) / Alaska zone 4",9001,4759,15034,9807,1,0,4499,8801,54,9102,8802,-150,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3472,"NAD83(NSRS2007) / Alaska zone 5",9001,4759,15035,9807,1,0,4499,8801,54,9102,8802,-154,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3473,"NAD83(NSRS2007) / Alaska zone 6",9001,4759,15036,9807,1,0,4499,8801,54,9102,8802,-158,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3474,"NAD83(NSRS2007) / Alaska zone 7",9001,4759,15037,9807,1,0,4499,8801,54,9102,8802,-162,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3475,"NAD83(NSRS2007) / Alaska zone 8",9001,4759,15038,9807,1,0,4499,8801,54,9102,8802,-166,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3476,"NAD83(NSRS2007) / Alaska zone 9",9001,4759,15039,9807,1,0,4499,8801,54,9102,8802,-170,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3477,"NAD83(NSRS2007) / Alaska zone 10",9001,4759,15040,9802,1,0,4499,8821,51,9110,8822,-176,9110,8823,53.5,9110,8824,51.5,9110,8826,1000000,9001,8827,0,9001,,, +3478,"NAD83(NSRS2007) / Arizona Central",9001,4759,10232,9807,1,0,4499,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +3479,"NAD83(NSRS2007) / Arizona Central (ft)",9002,4759,15305,9807,1,0,4495,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +3480,"NAD83(NSRS2007) / Arizona East",9001,4759,10231,9807,1,0,4499,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +3481,"NAD83(NSRS2007) / Arizona East (ft)",9002,4759,15304,9807,1,0,4495,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,700000,9002,8807,0,9002,,,,,, +3482,"NAD83(NSRS2007) / Arizona West",9001,4759,10233,9807,1,0,4499,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,213360,9001,8807,0,9001,,,,,, +3483,"NAD83(NSRS2007) / Arizona West (ft)",9002,4759,15306,9807,1,0,4495,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,700000,9002,8807,0,9002,,,,,, +3484,"NAD83(NSRS2007) / Arkansas North",9001,4759,10331,9802,1,0,4499,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,400000,9001,8827,0,9001,,, +3485,"NAD83(NSRS2007) / Arkansas North (ftUS)",9003,4759,15385,9802,1,0,4497,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,1312333.3333,9003,8827,0,9003,,, +3486,"NAD83(NSRS2007) / Arkansas South",9001,4759,10332,9802,1,0,4499,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,400000,9001,8827,400000,9001,,, +3487,"NAD83(NSRS2007) / Arkansas South (ftUS)",9003,4759,15386,9802,1,0,4497,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3488,"NAD83(NSRS2007) / California Albers",9001,4759,10420,9822,1,0,4499,8821,0,9102,8822,-120,9102,8823,34,9102,8824,40.5,9102,8826,0,9001,8827,-4000000,9001,,, +3489,"NAD83(NSRS2007) / California zone 1",9001,4759,10431,9802,1,0,4499,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9001,8827,500000,9001,,, +3490,"NAD83(NSRS2007) / California zone 1 (ftUS)",9003,4759,15307,9802,1,0,4497,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3491,"NAD83(NSRS2007) / California zone 2",9001,4759,10432,9802,1,0,4499,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9001,8827,500000,9001,,, +3492,"NAD83(NSRS2007) / California zone 2 (ftUS)",9003,4759,15308,9802,1,0,4497,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3493,"NAD83(NSRS2007) / California zone 3",9001,4759,10433,9802,1,0,4499,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9001,8827,500000,9001,,, +3494,"NAD83(NSRS2007) / California zone 3 (ftUS)",9003,4759,15309,9802,1,0,4497,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3495,"NAD83(NSRS2007) / California zone 4",9001,4759,10434,9802,1,0,4499,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9001,8827,500000,9001,,, +3496,"NAD83(NSRS2007) / California zone 4 (ftUS)",9003,4759,15310,9802,1,0,4497,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3497,"NAD83(NSRS2007) / California zone 5",9001,4759,10435,9802,1,0,4499,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9001,8827,500000,9001,,, +3498,"NAD83(NSRS2007) / California zone 5 (ftUS)",9003,4759,15311,9802,1,0,4497,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3499,"NAD83(NSRS2007) / California zone 6",9001,4759,10436,9802,1,0,4499,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9001,8827,500000,9001,,, +3500,"NAD83(NSRS2007) / California zone 6 (ftUS)",9003,4759,15312,9802,1,0,4497,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,6561666.667,9003,8827,1640416.667,9003,,, +3501,"NAD83(NSRS2007) / Colorado Central",9001,4759,10532,9802,1,0,4499,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +3502,"NAD83(NSRS2007) / Colorado Central (ftUS)",9003,4759,15314,9802,1,0,4497,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,3000000,9003,8827,1000000,9003,,, +3503,"NAD83(NSRS2007) / Colorado North",9001,4759,10531,9802,1,0,4499,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +3504,"NAD83(NSRS2007) / Colorado North (ftUS)",9003,4759,15313,9802,1,0,4497,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,3000000,9003,8827,1000000,9003,,, +3505,"NAD83(NSRS2007) / Colorado South",9001,4759,10533,9802,1,0,4499,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +3506,"NAD83(NSRS2007) / Colorado South (ftUS)",9003,4759,15315,9802,1,0,4497,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,3000000,9003,8827,1000000,9003,,, +3507,"NAD83(NSRS2007) / Connecticut",9001,4759,10630,9802,1,0,4499,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,304800.6096,9001,8827,152400.3048,9001,,, +3508,"NAD83(NSRS2007) / Connecticut (ftUS)",9003,4759,15316,9802,1,0,4497,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,1000000,9003,8827,500000,9003,,, +3509,"NAD83(NSRS2007) / Delaware",9001,4759,10730,9807,1,0,4499,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,200000,9001,8807,0,9001,,,,,, +3510,"NAD83(NSRS2007) / Delaware (ftUS)",9003,4759,15317,9807,1,0,4497,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,656166.667,9003,8807,0,9003,,,,,, +3511,"NAD83(NSRS2007) / Florida East",9001,4759,10931,9807,1,0,4499,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +3512,"NAD83(NSRS2007) / Florida East (ftUS)",9003,4759,15318,9807,1,0,4497,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +3513,"NAD83(NSRS2007) / Florida GDL Albers",9001,4759,10934,9822,1,0,4499,8821,24,9110,8822,-84,9110,8823,24,9110,8824,31.3,9110,8826,400000,9001,8827,0,9001,,, +3514,"NAD83(NSRS2007) / Florida North",9001,4759,10933,9802,1,0,4499,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,600000,9001,8827,0,9001,,, +3515,"NAD83(NSRS2007) / Florida North (ftUS)",9003,4759,15320,9802,1,0,4497,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,1968500,9003,8827,0,9003,,, +3516,"NAD83(NSRS2007) / Florida West",9001,4759,10932,9807,1,0,4499,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +3517,"NAD83(NSRS2007) / Florida West (ftUS)",9003,4759,15319,9807,1,0,4497,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,656166.667,9003,8807,0,9003,,,,,, +3518,"NAD83(NSRS2007) / Georgia East",9001,4759,11031,9807,1,0,4499,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +3519,"NAD83(NSRS2007) / Georgia East (ftUS)",9003,4759,15321,9807,1,0,4497,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,656166.667,9003,8807,0,9003,,,,,, +3520,"NAD83(NSRS2007) / Georgia West",9001,4759,11032,9807,1,0,4499,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,700000,9001,8807,0,9001,,,,,, +3521,"NAD83(NSRS2007) / Georgia West (ftUS)",9003,4759,15322,9807,1,0,4497,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +3522,"NAD83(NSRS2007) / Idaho Central",9001,4759,11132,9807,1,0,4499,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9001,8807,0,9001,,,,,, +3523,"NAD83(NSRS2007) / Idaho Central (ftUS)",9003,4759,15324,9807,1,0,4497,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +3524,"NAD83(NSRS2007) / Idaho East",9001,4759,11131,9807,1,0,4499,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,200000,9001,8807,0,9001,,,,,, +3525,"NAD83(NSRS2007) / Idaho East (ftUS)",9003,4759,15323,9807,1,0,4497,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,656166.667,9003,8807,0,9003,,,,,, +3526,"NAD83(NSRS2007) / Idaho West",9001,4759,11133,9807,1,0,4499,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,800000,9001,8807,0,9001,,,,,, +3527,"NAD83(NSRS2007) / Idaho West (ftUS)",9003,4759,15325,9807,1,0,4497,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,2624666.667,9003,8807,0,9003,,,,,, +3528,"NAD83(NSRS2007) / Illinois East",9001,4759,11231,9807,1,0,4499,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,300000,9001,8807,0,9001,,,,,, +3529,"NAD83(NSRS2007) / Illinois East (ftUS)",9003,4759,15387,9807,1,0,4497,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,984250,9003,8807,0,9003,,,,,, +3530,"NAD83(NSRS2007) / Illinois West",9001,4759,11232,9807,1,0,4499,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,700000,9001,8807,0,9001,,,,,, +3531,"NAD83(NSRS2007) / Illinois West (ftUS)",9003,4759,15388,9807,1,0,4497,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,2296583.3333,9003,8807,0,9003,,,,,, +3532,"NAD83(NSRS2007) / Indiana East",9001,4759,11331,9807,1,0,4499,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,100000,9001,8807,250000,9001,,,,,, +3533,"NAD83(NSRS2007) / Indiana East (ftUS)",9003,4759,15372,9807,1,0,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,328083.333,9003,8807,820208.333,9003,,,,,, +3534,"NAD83(NSRS2007) / Indiana West",9001,4759,11332,9807,1,0,4499,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,900000,9001,8807,250000,9001,,,,,, +3535,"NAD83(NSRS2007) / Indiana West (ftUS)",9003,4759,15373,9807,1,0,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,2952750,9003,8807,820208.333,9003,,,,,, +3536,"NAD83(NSRS2007) / Iowa North",9001,4759,11431,9802,1,0,4499,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,1500000,9001,8827,1000000,9001,,, +3537,"NAD83(NSRS2007) / Iowa North (ft US)",9003,4759,15377,9802,1,0,4497,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,4921250,9003,8827,3280833.3333,9003,,, +3538,"NAD83(NSRS2007) / Iowa South",9001,4759,11432,9802,1,0,4499,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,500000,9001,8827,0,9001,,, +3539,"NAD83(NSRS2007) / Iowa South (ft US)",9003,4759,15378,9802,1,0,4497,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,1640416.6667,9003,8827,0,9003,,, +3540,"NAD83(NSRS2007) / Kansas North",9001,4759,11531,9802,1,0,4499,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,400000,9001,8827,0,9001,,, +3541,"NAD83(NSRS2007) / Kansas North (ft US)",9003,4759,15379,9802,1,0,4497,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,1312333.3333,9003,8827,0,9003,,, +3542,"NAD83(NSRS2007) / Kansas South",9001,4759,11532,9802,1,0,4499,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,400000,9001,8827,400000,9001,,, +3543,"NAD83(NSRS2007) / Kansas South (ft US)",9003,4759,15380,9802,1,0,4497,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,1312333.3333,9003,8827,1312333.3333,9003,,, +3544,"NAD83(NSRS2007) / Kentucky North",9001,4759,15303,9802,1,0,4499,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,500000,9001,8827,0,9001,,, +3545,"NAD83(NSRS2007) / Kentucky North (ftUS)",9003,4759,15328,9802,1,0,4497,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,1640416.667,9003,8827,0,9003,,, +3546,"NAD83(NSRS2007) / Kentucky Single Zone",9001,4759,11630,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,1500000,9001,8827,1000000,9001,,, +3547,"NAD83(NSRS2007) / Kentucky Single Zone (ftUS)",9003,4759,15375,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.05,9110,8824,38.4,9110,8826,4921250,9003,8827,3280833.333,9003,,, +3548,"NAD83(NSRS2007) / Kentucky South",9001,4759,11632,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,500000,9001,8827,500000,9001,,, +3549,"NAD83(NSRS2007) / Kentucky South (ftUS)",9003,4759,15329,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,1640416.667,9003,8827,1640416.667,9003,,, +3550,"NAD83(NSRS2007) / Louisiana North",9001,4759,11731,9802,1,0,4499,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,1000000,9001,8827,0,9001,,, +3551,"NAD83(NSRS2007) / Louisiana North (ftUS)",9003,4759,15391,9802,1,0,4497,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,3280833.3333,9003,8827,0,9003,,, +3552,"NAD83(NSRS2007) / Louisiana South",9001,4759,11732,9802,1,0,4499,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,1000000,9001,8827,0,9001,,, +3553,"NAD83(NSRS2007) / Louisiana South (ftUS)",9003,4759,15392,9802,1,0,4497,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,3280833.3333,9003,8827,0,9003,,, +3554,"NAD83(NSRS2007) / Maine CS2000 Central",9001,4759,11854,9807,1,0,4499,8801,43.3,9110,8802,-69.073,9110,8805,0.99998,9201,8806,500000,9001,8807,0,9001,,,,,, +3555,"NAD83(NSRS2007) / Maine CS2000 East",9001,4759,11851,9807,1,0,4499,8801,43.5,9110,8802,-67.523,9110,8805,0.99998,9201,8806,700000,9001,8807,0,9001,,,,,, +3556,"NAD83(NSRS2007) / Maine CS2000 West",9001,4759,11853,9807,1,0,4499,8801,42.5,9110,8802,-70.223,9110,8805,0.99998,9201,8806,300000,9001,8807,0,9001,,,,,, +3557,"NAD83(NSRS2007) / Maine East",9001,4759,11831,9807,1,0,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,300000,9001,8807,0,9001,,,,,, +3558,"NAD83(NSRS2007) / Maine West",9001,4759,11832,9807,1,0,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,900000,9001,8807,0,9001,,,,,, +3559,"NAD83(NSRS2007) / Maryland",9001,4759,11930,9802,1,0,4499,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,400000,9001,8827,0,9001,,, +3560,"NAD83 / Utah North (ftUS)",9003,4269,15297,9802,0,0,4497,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640416.6667,9003,8827,3280833.3333,9003,,, +3561,"Old Hawaiian / Hawaii zone 1",9003,4135,15101,9807,1,0,4497,8801,18.5,9110,8802,-155.3,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +3562,"Old Hawaiian / Hawaii zone 2",9003,4135,15102,9807,1,0,4497,8801,20.2,9110,8802,-156.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +3563,"Old Hawaiian / Hawaii zone 3",9003,4135,15103,9807,1,0,4497,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,500000,9003,8807,0,9003,,,,,, +3564,"Old Hawaiian / Hawaii zone 4",9003,4135,15104,9807,1,0,4497,8801,21.5,9110,8802,-159.3,9110,8805,0.99999,9201,8806,500000,9003,8807,0,9003,,,,,, +3565,"Old Hawaiian / Hawaii zone 5",9003,4135,15105,9807,1,0,4497,8801,21.4,9110,8802,-160.1,9110,8805,1,9201,8806,500000,9003,8807,0,9003,,,,,, +3566,"NAD83 / Utah Central (ftUS)",9003,4269,15298,9802,0,0,4497,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640416.6667,9003,8827,6561666.6667,9003,,, +3567,"NAD83 / Utah South (ftUS)",9003,4269,15299,9802,0,0,4497,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640416.6667,9003,8827,9842500,9003,,, +3568,"NAD83(HARN) / Utah North (ftUS)",9003,4152,15297,9802,0,0,4497,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640416.6667,9003,8827,3280833.3333,9003,,, +3569,"NAD83(HARN) / Utah Central (ftUS)",9003,4152,15298,9802,0,0,4497,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640416.6667,9003,8827,6561666.6667,9003,,, +3570,"NAD83(HARN) / Utah South (ftUS)",9003,4152,15299,9802,0,0,4497,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640416.6667,9003,8827,9842500,9003,,, +3571,"WGS 84 / North Pole LAEA Bering Sea",9001,4326,17295,9820,1,0,4464,8801,90,9102,8802,180,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3572,"WGS 84 / North Pole LAEA Alaska",9001,4326,17296,9820,1,0,4467,8801,90,9102,8802,-150,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3573,"WGS 84 / North Pole LAEA Canada",9001,4326,17297,9820,1,0,4466,8801,90,9102,8802,-100,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3574,"WGS 84 / North Pole LAEA Atlantic",9001,4326,17298,9820,1,0,4465,8801,90,9102,8802,-40,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3575,"WGS 84 / North Pole LAEA Europe",9001,4326,17299,9820,1,0,4463,8801,90,9102,8802,10,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3576,"WGS 84 / North Pole LAEA Russia",9001,4326,17300,9820,1,0,4462,8801,90,9102,8802,90,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3577,"GDA94 / Australian Albers",9001,4283,17365,9822,1,0,4400,8821,0,9102,8822,132,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +3578,"NAD83 / Yukon Albers",9001,4269,19858,9822,1,0,4400,8821,59,9110,8822,-132.3,9110,8823,61.4,9110,8824,68,9110,8826,500000,9001,8827,500000,9001,,, +3579,"NAD83(CSRS) / Yukon Albers",9001,4617,19858,9822,1,0,4400,8821,59,9110,8822,-132.3,9110,8823,61.4,9110,8824,68,9110,8826,500000,9001,8827,500000,9001,,, +3580,"NAD83 / NWT Lambert",9001,4269,19857,9802,1,0,4400,8821,0,9102,8822,-112,9102,8823,62,9102,8824,70,9102,8826,0,9001,8827,0,9001,,, +3581,"NAD83(CSRS) / NWT Lambert",9001,4617,19857,9802,1,0,4400,8821,0,9102,8822,-112,9102,8823,62,9102,8824,70,9102,8826,0,9001,8827,0,9001,,, +3582,"NAD83(NSRS2007) / Maryland (ftUS)",9003,4759,15330,9802,1,0,4497,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,1312333.333,9003,8827,0,9003,,, +3583,"NAD83(NSRS2007) / Massachusetts Island",9001,4759,12032,9802,1,0,4499,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,500000,9001,8827,0,9001,,, +3584,"NAD83(NSRS2007) / Massachusetts Island (ftUS)",9003,4759,15332,9802,1,0,4497,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,1640416.667,9003,8827,0,9003,,, +3585,"NAD83(NSRS2007) / Massachusetts Mainland",9001,4759,12031,9802,1,0,4499,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,200000,9001,8827,750000,9001,,, +3586,"NAD83(NSRS2007) / Massachusetts Mainland (ftUS)",9003,4759,15331,9802,1,0,4497,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,656166.667,9003,8827,2460625,9003,,, +3587,"NAD83(NSRS2007) / Michigan Central",9001,4759,12142,9802,1,0,4499,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,6000000,9001,8827,0,9001,,, +3588,"NAD83(NSRS2007) / Michigan Central (ft)",9002,4759,15334,9802,1,0,4495,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,19685039.37,9002,8827,0,9002,,, +3589,"NAD83(NSRS2007) / Michigan North",9001,4759,12141,9802,1,0,4499,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,8000000,9001,8827,0,9001,,, +3590,"NAD83(NSRS2007) / Michigan North (ft)",9002,4759,15333,9802,1,0,4495,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,26246719.16,9002,8827,0,9002,,, +3591,"NAD83(NSRS2007) / Michigan Oblique Mercator",9001,4759,12150,9812,1,0,4499,8806,2546731.496,9001,8807,-4354009.816,9001,8811,45.1833,9110,8812,-86,9110,8813,337.25556,9102,8814,337.25556,9102,8815,0.9996,9201 +3592,"NAD83(NSRS2007) / Michigan South",9001,4759,12143,9802,1,0,4499,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,4000000,9001,8827,0,9001,,, +3593,"NAD83(NSRS2007) / Michigan South (ft)",9002,4759,15335,9802,1,0,4495,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,13123359.58,9002,8827,0,9002,,, +3594,"NAD83(NSRS2007) / Minnesota Central",9001,4759,12232,9802,1,0,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,800000,9001,8827,100000,9001,,, +3595,"NAD83(NSRS2007) / Minnesota North",9001,4759,12231,9802,1,0,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,800000,9001,8827,100000,9001,,, +3596,"NAD83(NSRS2007) / Minnesota South",9001,4759,12233,9802,1,0,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,800000,9001,8827,100000,9001,,, +3597,"NAD83(NSRS2007) / Mississippi East",9001,4759,12331,9807,1,0,4499,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,300000,9001,8807,0,9001,,,,,, +3598,"NAD83(NSRS2007) / Mississippi East (ftUS)",9003,4759,15336,9807,1,0,4497,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,984250,9003,8807,0,9003,,,,,, +3599,"NAD83(NSRS2007) / Mississippi West",9001,4759,12332,9807,1,0,4499,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,700000,9001,8807,0,9001,,,,,, +3600,"NAD83(NSRS2007) / Mississippi West (ftUS)",9003,4759,15337,9807,1,0,4497,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,2296583.333,9003,8807,0,9003,,,,,, +3601,"NAD83(NSRS2007) / Missouri Central",9001,4759,12432,9807,1,0,4499,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9001,8807,0,9001,,,,,, +3602,"NAD83(NSRS2007) / Missouri East",9001,4759,12431,9807,1,0,4499,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,250000,9001,8807,0,9001,,,,,, +3603,"NAD83(NSRS2007) / Missouri West",9001,4759,12433,9807,1,0,4499,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,850000,9001,8807,0,9001,,,,,, +3604,"NAD83(NSRS2007) / Montana",9001,4759,12530,9802,1,0,4499,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,600000,9001,8827,0,9001,,, +3605,"NAD83(NSRS2007) / Montana (ft)",9002,4759,15338,9802,1,0,4495,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,1968503.937,9002,8827,0,9002,,, +3606,"NAD83(NSRS2007) / Nebraska",9001,4759,12630,9802,1,0,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,500000,9001,8827,0,9001,,, +3607,"NAD83(NSRS2007) / Nevada Central",9001,4759,12732,9807,1,0,4499,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9001,8807,6000000,9001,,,,,, +3608,"NAD83(NSRS2007) / Nevada Central (ft US)",9003,4759,15382,9807,1,0,4497,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,1640416.6667,9003,8807,19685000,9003,,,,,, +3609,"NAD83(NSRS2007) / Nevada East",9001,4759,12731,9807,1,0,4499,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,200000,9001,8807,8000000,9001,,,,,, +3610,"NAD83(NSRS2007) / Nevada East (ft US)",9003,4759,15381,9807,1,0,4497,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,656166.6667,9003,8807,26246666.6667,9003,,,,,, +3611,"NAD83(NSRS2007) / Nevada West",9001,4759,12733,9807,1,0,4499,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,800000,9001,8807,4000000,9001,,,,,, +3612,"NAD83(NSRS2007) / Nevada West (ft US)",9003,4759,15383,9807,1,0,4497,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,2624666.6667,9003,8807,13123333.3333,9003,,,,,, +3613,"NAD83(NSRS2007) / New Hampshire",9001,4759,12830,9807,1,0,4499,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,300000,9001,8807,0,9001,,,,,, +3614,"NAD83(NSRS2007) / New Hampshire (ftUS)",9003,4759,15389,9807,1,0,4497,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,984250,9003,8807,0,9003,,,,,, +3615,"NAD83(NSRS2007) / New Jersey",9001,4759,12930,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +3616,"NAD83(NSRS2007) / New Jersey (ft US)",9003,4759,15384,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +3617,"NAD83(NSRS2007) / New Mexico Central",9001,4759,13032,9807,1,0,4499,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3618,"NAD83(NSRS2007) / New Mexico Central (ftUS)",9003,4759,15340,9807,1,0,4497,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,1640416.667,9003,8807,0,9003,,,,,, +3619,"NAD83(NSRS2007) / New Mexico East",9001,4759,13031,9807,1,0,4499,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,165000,9001,8807,0,9001,,,,,, +3620,"NAD83(NSRS2007) / New Mexico East (ftUS)",9003,4759,15339,9807,1,0,4497,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,541337.5,9003,8807,0,9003,,,,,, +3621,"NAD83(NSRS2007) / New Mexico West",9001,4759,13033,9807,1,0,4499,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,830000,9001,8807,0,9001,,,,,, +3622,"NAD83(NSRS2007) / New Mexico West (ftUS)",9003,4759,15341,9807,1,0,4497,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,2723091.667,9003,8807,0,9003,,,,,, +3623,"NAD83(NSRS2007) / New York Central",9001,4759,13132,9807,1,0,4499,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,250000,9001,8807,0,9001,,,,,, +3624,"NAD83(NSRS2007) / New York Central (ftUS)",9003,4759,15343,9807,1,0,4497,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,820208.333,9003,8807,0,9003,,,,,, +3625,"NAD83(NSRS2007) / New York East",9001,4759,13131,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +3626,"NAD83(NSRS2007) / New York East (ftUS)",9003,4759,15342,9807,1,0,4497,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,492125,9003,8807,0,9003,,,,,, +3627,"NAD83(NSRS2007) / New York Long Island",9001,4759,13134,9802,1,0,4499,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,300000,9001,8827,0,9001,,, +3628,"NAD83(NSRS2007) / New York Long Island (ftUS)",9003,4759,15345,9802,1,0,4497,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,984250,9003,8827,0,9003,,, +3629,"NAD83(NSRS2007) / New York West",9001,4759,13133,9807,1,0,4499,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,350000,9001,8807,0,9001,,,,,, +3630,"NAD83(NSRS2007) / New York West (ftUS)",9003,4759,15344,9807,1,0,4497,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,1148291.667,9003,8807,0,9003,,,,,, +3631,"NAD83(NSRS2007) / North Carolina",9001,4759,13230,9802,1,0,4499,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,609601.22,9001,8827,0,9001,,, +3632,"NAD83(NSRS2007) / North Carolina (ftUS)",9003,4759,15346,9802,1,0,4497,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,2000000,9003,8827,0,9003,,, +3633,"NAD83(NSRS2007) / North Dakota North",9001,4759,13331,9802,1,0,4499,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,600000,9001,8827,0,9001,,, +3634,"NAD83(NSRS2007) / North Dakota North (ft)",9002,4759,15347,9802,1,0,4495,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,1968503.937,9002,8827,0,9002,,, +3635,"NAD83(NSRS2007) / North Dakota South",9001,4759,13332,9802,1,0,4499,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,600000,9001,8827,0,9001,,, +3636,"NAD83(NSRS2007) / North Dakota South (ft)",9002,4759,15348,9802,1,0,4495,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,1968503.937,9002,8827,0,9002,,, +3637,"NAD83(NSRS2007) / Ohio North",9001,4759,13431,9802,1,0,4499,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,600000,9001,8827,0,9001,,, +3638,"NAD83(NSRS2007) / Ohio South",9001,4759,13432,9802,1,0,4499,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,600000,9001,8827,0,9001,,, +3639,"NAD83(NSRS2007) / Oklahoma North",9001,4759,13531,9802,1,0,4499,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,600000,9001,8827,0,9001,,, +3640,"NAD83(NSRS2007) / Oklahoma North (ftUS)",9003,4759,15349,9802,1,0,4497,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,1968500,9003,8827,0,9003,,, +3641,"NAD83(NSRS2007) / Oklahoma South",9001,4759,13532,9802,1,0,4499,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,600000,9001,8827,0,9001,,, +3642,"NAD83(NSRS2007) / Oklahoma South (ftUS)",9003,4759,15350,9802,1,0,4497,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,1968500,9003,8827,0,9003,,, +3643,"NAD83(NSRS2007) / Oregon Lambert",9001,4759,13633,9802,1,0,4499,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,400000,9001,8827,0,9001,,, +3644,"NAD83(NSRS2007) / Oregon Lambert (ft)",9002,4759,15374,9802,1,0,4495,8821,41.45,9110,8822,-120.3,9110,8823,43,9110,8824,45.3,9110,8826,1312335.958,9002,8827,0,9002,,, +3645,"NAD83(NSRS2007) / Oregon North",9001,4759,13631,9802,1,0,4499,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,2500000,9001,8827,0,9001,,, +3646,"NAD83(NSRS2007) / Oregon North (ft)",9002,4759,15351,9802,1,0,4495,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,8202099.738,9002,8827,0,9002,,, +3647,"NAD83(NSRS2007) / Oregon South",9001,4759,13632,9802,1,0,4499,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,1500000,9001,8827,0,9001,,, +3648,"NAD83(NSRS2007) / Oregon South (ft)",9002,4759,15352,9802,1,0,4495,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,4921259.843,9002,8827,0,9002,,, +3649,"NAD83(NSRS2007) / Pennsylvania North",9001,4759,13731,9802,1,0,4499,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,600000,9001,8827,0,9001,,, +3650,"NAD83(NSRS2007) / Pennsylvania North (ftUS)",9003,4759,15353,9802,1,0,4497,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,1968500,9003,8827,0,9003,,, +3651,"NAD83(NSRS2007) / Pennsylvania South",9001,4759,13732,9802,1,0,4499,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,600000,9001,8827,0,9001,,, +3652,"NAD83(NSRS2007) / Pennsylvania South (ftUS)",9003,4759,15354,9802,1,0,4497,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,1968500,9003,8827,0,9003,,, +3653,"NAD83(NSRS2007) / Rhode Island",9001,4759,13830,9807,1,0,4499,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,100000,9001,8807,0,9001,,,,,, +3654,"NAD83(NSRS2007) / Rhode Island (ftUS)",9003,4759,15390,9807,1,0,4497,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,328083.3333,9003,8807,0,9003,,,,,, +3655,"NAD83(NSRS2007) / South Carolina",9001,4759,13930,9802,1,0,4499,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,609600,9001,8827,0,9001,,, +3656,"NAD83(NSRS2007) / South Carolina (ft)",9002,4759,15355,9802,1,0,4495,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,2000000,9002,8827,0,9002,,, +3657,"NAD83(NSRS2007) / South Dakota North",9001,4759,14031,9802,1,0,4499,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,600000,9001,8827,0,9001,,, +3658,"NAD83(NSRS2007) / South Dakota North (ftUS)",9003,4759,15394,9802,1,0,4497,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,1968500,9003,8827,0,9003,,, +3659,"NAD83(NSRS2007) / South Dakota South",9001,4759,14032,9802,1,0,4499,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,600000,9001,8827,0,9001,,, +3660,"NAD83(NSRS2007) / South Dakota South (ftUS)",9003,4759,15395,9802,1,0,4497,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,1968500,9003,8827,0,9003,,, +3661,"NAD83(NSRS2007) / Tennessee",9001,4759,14130,9802,1,0,4499,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,600000,9001,8827,0,9001,,, +3662,"NAD83(NSRS2007) / Tennessee (ftUS)",9003,4759,15356,9802,1,0,4497,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,1968500,9003,8827,0,9003,,, +3663,"NAD83(NSRS2007) / Texas Central",9001,4759,14233,9802,1,0,4499,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,700000,9001,8827,3000000,9001,,, +3664,"NAD83(NSRS2007) / Texas Central (ftUS)",9003,4759,15359,9802,1,0,4497,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,2296583.333,9003,8827,9842500,9003,,, +3665,"NAD83(NSRS2007) / Texas Centric Albers Equal Area",9001,4759,14254,9822,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,6000000,9001,,, +3666,"NAD83(NSRS2007) / Texas Centric Lambert Conformal",9001,4759,14253,9802,1,0,4499,8821,18,9110,8822,-100,9110,8823,27.3,9110,8824,35,9110,8826,1500000,9001,8827,5000000,9001,,, +3667,"NAD83(NSRS2007) / Texas North",9001,4759,14231,9802,1,0,4499,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,200000,9001,8827,1000000,9001,,, +3668,"NAD83(NSRS2007) / Texas North (ftUS)",9003,4759,15357,9802,1,0,4497,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,656166.667,9003,8827,3280833.333,9003,,, +3669,"NAD83(NSRS2007) / Texas North Central",9001,4759,14232,9802,1,0,4499,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,600000,9001,8827,2000000,9001,,, +3670,"NAD83(NSRS2007) / Texas North Central (ftUS)",9003,4759,15358,9802,1,0,4497,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,1968500,9003,8827,6561666.667,9003,,, +3671,"NAD83(NSRS2007) / Texas South",9001,4759,14235,9802,1,0,4499,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,300000,9001,8827,5000000,9001,,, +3672,"NAD83(NSRS2007) / Texas South (ftUS)",9003,4759,15361,9802,1,0,4497,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,984250,9003,8827,16404166.667,9003,,, +3673,"NAD83(NSRS2007) / Texas South Central",9001,4759,14234,9802,1,0,4499,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,600000,9001,8827,4000000,9001,,, +3674,"NAD83(NSRS2007) / Texas South Central (ftUS)",9003,4759,15360,9802,1,0,4497,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,1968500,9003,8827,13123333.333,9003,,, +3675,"NAD83(NSRS2007) / Utah Central",9001,4759,14332,9802,1,0,4499,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,500000,9001,8827,2000000,9001,,, +3676,"NAD83(NSRS2007) / Utah Central (ft)",9002,4759,15363,9802,0,0,4495,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640419.948,9002,8827,6561679.79,9002,,, +3677,"NAD83(NSRS2007) / Utah Central (ftUS)",9003,4759,15298,9802,0,0,4497,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,1640416.6667,9003,8827,6561666.6667,9003,,, +3678,"NAD83(NSRS2007) / Utah North",9001,4759,14331,9802,1,0,4499,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,500000,9001,8827,1000000,9001,,, +3679,"NAD83(NSRS2007) / Utah North (ft)",9002,4759,15362,9802,0,0,4495,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640419.948,9002,8827,3280839.895,9002,,, +3680,"NAD83(NSRS2007) / Utah North (ftUS)",9003,4759,15297,9802,0,0,4497,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,1640416.6667,9003,8827,3280833.3333,9003,,, +3681,"NAD83(NSRS2007) / Utah South",9001,4759,14333,9802,1,0,4499,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,500000,9001,8827,3000000,9001,,, +3682,"NAD83(NSRS2007) / Utah South (ft)",9002,4759,15364,9802,0,0,4495,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640419.948,9002,8827,9842519.685,9002,,, +3683,"NAD83(NSRS2007) / Utah South (ftUS)",9003,4759,15299,9802,0,0,4497,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,1640416.6667,9003,8827,9842500,9003,,, +3684,"NAD83(NSRS2007) / Vermont",9001,4759,14430,9807,1,0,4499,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9001,8807,0,9001,,,,,, +3685,"NAD83(NSRS2007) / Virginia North",9001,4759,14531,9802,1,0,4499,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,3500000,9001,8827,2000000,9001,,, +3686,"NAD83(NSRS2007) / Virginia North (ftUS)",9003,4759,15365,9802,1,0,4497,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,11482916.667,9003,8827,6561666.667,9003,,, +3687,"NAD83(NSRS2007) / Virginia South",9001,4759,14532,9802,1,0,4499,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,3500000,9001,8827,1000000,9001,,, +3688,"NAD83(NSRS2007) / Virginia South (ftUS)",9003,4759,15366,9802,1,0,4497,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,11482916.667,9003,8827,3280833.333,9003,,, +3689,"NAD83(NSRS2007) / Washington North",9001,4759,14631,9802,1,0,4499,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,500000,9001,8827,0,9001,,, +3690,"NAD83(NSRS2007) / Washington North (ftUS)",9003,4759,15367,9802,1,0,4497,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,1640416.667,9003,8827,0,9003,,, +3691,"NAD83(NSRS2007) / Washington South",9001,4759,14632,9802,1,0,4499,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,500000,9001,8827,0,9001,,, +3692,"NAD83(NSRS2007) / Washington South (ftUS)",9003,4759,15368,9802,1,0,4497,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,1640416.667,9003,8827,0,9003,,, +3693,"NAD83(NSRS2007) / West Virginia North",9001,4759,14731,9802,1,0,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,600000,9001,8827,0,9001,,, +3694,"NAD83(NSRS2007) / West Virginia South",9001,4759,14732,9802,1,0,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,600000,9001,8827,0,9001,,, +3695,"NAD83(NSRS2007) / Wisconsin Central",9001,4759,14832,9802,1,0,4499,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,600000,9001,8827,0,9001,,, +3696,"NAD83(NSRS2007) / Wisconsin Central (ftUS)",9003,4759,15370,9802,1,0,4497,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,1968500,9003,8827,0,9003,,, +3697,"NAD83(NSRS2007) / Wisconsin North",9001,4759,14831,9802,1,0,4499,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,600000,9001,8827,0,9001,,, +3698,"NAD83(NSRS2007) / Wisconsin North (ftUS)",9003,4759,15369,9802,1,0,4497,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,1968500,9003,8827,0,9003,,, +3699,"NAD83(NSRS2007) / Wisconsin South",9001,4759,14833,9802,1,0,4499,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,600000,9001,8827,0,9001,,, +3700,"NAD83(NSRS2007) / Wisconsin South (ftUS)",9003,4759,15371,9802,1,0,4497,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,1968500,9003,8827,0,9003,,, +3701,"NAD83(NSRS2007) / Wisconsin Transverse Mercator",9001,4759,14841,9807,1,0,4499,8801,0,9102,8802,-90,9102,8805,0.9996,9201,8806,520000,9001,8807,-4480000,9001,,,,,, +3702,"NAD83(NSRS2007) / Wyoming East",9001,4759,14931,9807,1,0,4499,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,200000,9001,8807,0,9001,,,,,, +3703,"NAD83(NSRS2007) / Wyoming East Central",9001,4759,14932,9807,1,0,4499,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,400000,9001,8807,100000,9001,,,,,, +3704,"NAD83(NSRS2007) / Wyoming West Central",9001,4759,14933,9807,1,0,4499,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,600000,9001,8807,0,9001,,,,,, +3705,"NAD83(NSRS2007) / Wyoming West",9001,4759,14934,9807,1,0,4499,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,800000,9001,8807,100000,9001,,,,,, +3706,"NAD83(NSRS2007) / UTM zone 59N",9001,4759,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3707,"NAD83(NSRS2007) / UTM zone 60N",9001,4759,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3708,"NAD83(NSRS2007) / UTM zone 1N",9001,4759,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3709,"NAD83(NSRS2007) / UTM zone 2N",9001,4759,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3710,"NAD83(NSRS2007) / UTM zone 3N",9001,4759,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3711,"NAD83(NSRS2007) / UTM zone 4N",9001,4759,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3712,"NAD83(NSRS2007) / UTM zone 5N",9001,4759,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3713,"NAD83(NSRS2007) / UTM zone 6N",9001,4759,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3714,"NAD83(NSRS2007) / UTM zone 7N",9001,4759,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3715,"NAD83(NSRS2007) / UTM zone 8N",9001,4759,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3716,"NAD83(NSRS2007) / UTM zone 9N",9001,4759,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3717,"NAD83(NSRS2007) / UTM zone 10N",9001,4759,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3718,"NAD83(NSRS2007) / UTM zone 11N",9001,4759,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3719,"NAD83(NSRS2007) / UTM zone 12N",9001,4759,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3720,"NAD83(NSRS2007) / UTM zone 13N",9001,4759,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3721,"NAD83(NSRS2007) / UTM zone 14N",9001,4759,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3722,"NAD83(NSRS2007) / UTM zone 15N",9001,4759,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3723,"NAD83(NSRS2007) / UTM zone 16N",9001,4759,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3724,"NAD83(NSRS2007) / UTM zone 17N",9001,4759,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3725,"NAD83(NSRS2007) / UTM zone 18N",9001,4759,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3726,"NAD83(NSRS2007) / UTM zone 19N",9001,4759,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3727,"Reunion 1947 / TM Reunion",9001,4626,19856,9807,1,0,4499,8801,-21.07,9110,8802,55.32,9110,8805,1,9201,8806,160000,9001,8807,50000,9001,,,,,, +3728,"NAD83(NSRS2007) / Ohio North (ftUS)",9003,4759,13433,9802,1,0,4497,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,1968500,9003,8827,0,9003,,, +3729,"NAD83(NSRS2007) / Ohio South (ftUS)",9003,4759,13434,9802,1,0,4497,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,1968500,9003,8827,0,9003,,, +3730,"NAD83(NSRS2007) / Wyoming East (ftUS)",9003,4759,14935,9807,1,0,4497,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,656166.6667,9003,8807,0,9003,,,,,, +3731,"NAD83(NSRS2007) / Wyoming East Central (ftUS)",9003,4759,14936,9807,1,0,4497,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,1312333.3333,9003,8807,328083.3333,9003,,,,,, +3732,"NAD83(NSRS2007) / Wyoming West Central (ftUS)",9003,4759,14937,9807,1,0,4497,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,1968500,9003,8807,0,9003,,,,,, +3733,"NAD83(NSRS2007) / Wyoming West (ftUS)",9003,4759,14938,9807,1,0,4497,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,2624666.6667,9003,8807,328083.3333,9003,,,,,, +3734,"NAD83 / Ohio North (ftUS)",9003,4269,13433,9802,1,0,4497,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,1968500,9003,8827,0,9003,,, +3735,"NAD83 / Ohio South (ftUS)",9003,4269,13434,9802,1,0,4497,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,1968500,9003,8827,0,9003,,, +3736,"NAD83 / Wyoming East (ftUS)",9003,4269,14935,9807,1,0,4497,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,656166.6667,9003,8807,0,9003,,,,,, +3737,"NAD83 / Wyoming East Central (ftUS)",9003,4269,14936,9807,1,0,4497,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,1312333.3333,9003,8807,328083.3333,9003,,,,,, +3738,"NAD83 / Wyoming West Central (ftUS)",9003,4269,14937,9807,1,0,4497,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,1968500,9003,8807,0,9003,,,,,, +3739,"NAD83 / Wyoming West (ftUS)",9003,4269,14938,9807,1,0,4497,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,2624666.6667,9003,8807,328083.3333,9003,,,,,, +3740,"NAD83(HARN) / UTM zone 10N",9001,4152,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3741,"NAD83(HARN) / UTM zone 11N",9001,4152,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3742,"NAD83(HARN) / UTM zone 12N",9001,4152,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3743,"NAD83(HARN) / UTM zone 13N",9001,4152,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3744,"NAD83(HARN) / UTM zone 14N",9001,4152,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3745,"NAD83(HARN) / UTM zone 15N",9001,4152,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3746,"NAD83(HARN) / UTM zone 16N",9001,4152,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3747,"NAD83(HARN) / UTM zone 17N",9001,4152,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3748,"NAD83(HARN) / UTM zone 18N",9001,4152,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3749,"NAD83(HARN) / UTM zone 19N",9001,4152,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3750,"NAD83(HARN) / UTM zone 4N",9001,4152,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3751,"NAD83(HARN) / UTM zone 5N",9001,4152,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3752,"WGS 84 / Mercator 41",9001,4326,19855,9804,1,1,4499,8801,-41,9102,8802,100,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3753,"NAD83(HARN) / Ohio North (ftUS)",9003,4152,13433,9802,1,0,4497,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,1968500,9003,8827,0,9003,,, +3754,"NAD83(HARN) / Ohio South (ftUS)",9003,4152,13434,9802,1,0,4497,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,1968500,9003,8827,0,9003,,, +3755,"NAD83(HARN) / Wyoming East (ftUS)",9003,4152,14935,9807,1,0,4497,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,656166.6667,9003,8807,0,9003,,,,,, +3756,"NAD83(HARN) / Wyoming East Central (ftUS)",9003,4152,14936,9807,1,0,4497,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,1312333.3333,9003,8807,328083.3333,9003,,,,,, +3757,"NAD83(HARN) / Wyoming West Central (ftUS)",9003,4152,14937,9807,1,0,4497,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,1968500,9003,8807,0,9003,,,,,, +3758,"NAD83(HARN) / Wyoming West (ftUS)",9003,4152,14938,9807,1,0,4497,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,2624666.6667,9003,8807,328083.3333,9003,,,,,, +3759,"NAD83 / Hawaii zone 3 (ftUS)",9003,4269,15138,9807,1,0,4497,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,1640416.6667,9003,8807,0,9003,,,,,, +3760,"NAD83(HARN) / Hawaii zone 3 (ftUS)",9003,4152,15138,9807,1,0,4497,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,1640416.6667,9003,8807,0,9003,,,,,, +3761,"NAD83(CSRS) / UTM zone 22N",9001,4617,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3762,"WGS 84 / South Georgia Lambert",9001,4326,19854,9802,1,0,4400,8821,-55,9102,8822,-37,9102,8823,-54,9110,8824,-54.45,9110,8826,0,9001,8827,0,9001,,, +3763,"ETRS89 / Portugal TM06",9001,4258,19853,9807,1,0,4499,8801,39.400573,9110,8802,-8.075919,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3764,"NZGD2000 / Chatham Island Circuit 2000",9001,4167,17959,9807,1,0,4500,8801,-44,9110,8802,-176.3,9110,8805,1,9201,8806,400000,9001,8807,800000,9001,,,,,, +3765,"HTRS96 / Croatia TM",9001,4761,19851,9807,1,0,4400,8801,0,9102,8802,16.5,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3766,"HTRS96 / Croatia LCC",9001,4761,19852,9802,1,0,4400,8821,0,9102,8822,16.3,9110,8823,45.55,9110,8824,43.05,9110,8826,0,9001,8827,0,9001,,, +3767,"HTRS96 / UTM zone 33N",9001,4761,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3768,"HTRS96 / UTM zone 34N",9001,4761,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3769,"Bermuda 1957 / UTM zone 20N",9001,4216,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3770,"BDA2000 / Bermuda 2000 National Grid",9001,4762,19849,9807,1,0,4400,8801,32,9110,8802,-64.45,9110,8805,1,9201,8806,550000,9001,8807,100000,9001,,,,,, +3771,"NAD27 / Alberta 3TM ref merid 111 W",9001,4267,17722,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3772,"NAD27 / Alberta 3TM ref merid 114 W",9001,4267,17723,9807,1,0,4400,8801,0,9102,8802,-114,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3773,"NAD27 / Alberta 3TM ref merid 117 W",9001,4267,17724,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3774,"NAD27 / Alberta 3TM ref merid 120 W",9001,4267,17725,9807,1,1,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9001,8806,0,9001,8807,0,9001,,,,,, +3775,"NAD83 / Alberta 3TM ref merid 111 W",9001,4269,17722,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3776,"NAD83 / Alberta 3TM ref merid 114 W",9001,4269,17723,9807,1,0,4400,8801,0,9102,8802,-114,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3777,"NAD83 / Alberta 3TM ref merid 117 W",9001,4269,17724,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3778,"NAD83 / Alberta 3TM ref merid 120 W",9001,4269,17725,9807,1,1,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9001,8806,0,9001,8807,0,9001,,,,,, +3779,"NAD83(CSRS) / Alberta 3TM ref merid 111 W",9001,4617,17722,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3780,"NAD83(CSRS) / Alberta 3TM ref merid 114 W",9001,4617,17723,9807,1,0,4400,8801,0,9102,8802,-114,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3781,"NAD83(CSRS) / Alberta 3TM ref merid 117 W",9001,4617,17724,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3782,"NAD83(CSRS) / Alberta 3TM ref merid 120 W",9001,4617,17725,9807,1,1,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9001,8806,0,9001,8807,0,9001,,,,,, +3783,"Pitcairn 2006 / Pitcairn TM 2006",9001,4763,19848,9807,1,0,4400,8801,-25.04067894,9110,8802,-130.06466816,9110,8805,1,9201,8806,14200,9001,8807,15500,9001,,,,,, +3784,"Pitcairn 1967 / UTM zone 9S",9001,4729,16109,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +3785,"Popular Visualisation CRS / Mercator",9001,4055,19847,9841,1,1,4499,8801,0,9102,8802,0,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3786,"World Equidistant Cylindrical (Sphere)",9001,4047,19968,9823,1,1,4499,8801,0,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3787,"MGI / Slovene National Grid",9001,4312,19845,9807,1,1,4498,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,500000,9001,8807,-5000000,9001,,,,,, +3788,"NZGD2000 / Auckland Islands TM 2000",9001,4167,17960,9807,1,0,4500,8801,0,9102,8802,166,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +3789,"NZGD2000 / Campbell Island TM 2000",9001,4167,17961,9807,1,0,4500,8801,0,9102,8802,169,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +3790,"NZGD2000 / Antipodes Islands TM 2000",9001,4167,17962,9807,1,0,4500,8801,0,9102,8802,179,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +3791,"NZGD2000 / Raoul Island TM 2000",9001,4167,17963,9807,1,0,4500,8801,0,9102,8802,-178,9102,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +3793,"NZGD2000 / Chatham Islands TM 2000",9001,4167,17965,9807,1,0,4500,8801,0,9110,8802,-176.3,9110,8805,1,9201,8806,3500000,9001,8807,10000000,9001,,,,,, +3794,"Slovenia 1996 / Slovene National Grid",9001,4765,19845,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,500000,9001,8807,-5000000,9001,,,,,, +3795,"NAD27 / Cuba Norte",9001,4267,18063,9802,1,0,4532,8821,22.21,9110,8822,-81,9110,8823,23,9110,8824,21.42,9110,8826,500000,9001,8827,280296.016,9001,,, +3796,"NAD27 / Cuba Sur",9001,4267,18064,9802,1,0,4532,8821,20.43,9110,8822,-76.5,9110,8823,21.18,9110,8824,20.08,9110,8826,500000,9001,8827,229126.939,9001,,, +3797,"NAD27 / MTQ Lambert",9001,4267,19844,9802,1,0,4499,8821,44,9102,8822,-70,9102,8823,50,9102,8824,46,9102,8826,800000,9001,8827,0,9001,,, +3798,"NAD83 / MTQ Lambert",9001,4269,19844,9802,1,0,4499,8821,44,9102,8822,-70,9102,8823,50,9102,8824,46,9102,8826,800000,9001,8827,0,9001,,, +3799,"NAD83(CSRS) / MTQ Lambert",9001,4617,19844,9802,1,0,4499,8821,44,9102,8822,-70,9102,8823,50,9102,8824,46,9102,8826,800000,9001,8827,0,9001,,, +3800,"NAD27 / Alberta 3TM ref merid 120 W",9001,4267,17726,9807,1,0,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3801,"NAD83 / Alberta 3TM ref merid 120 W",9001,4269,17726,9807,1,0,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3802,"NAD83(CSRS) / Alberta 3TM ref merid 120 W",9001,4617,17726,9807,1,0,4400,8801,0,9102,8802,-120,9102,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +3812,"ETRS89 / Belgian Lambert 2008",9001,4258,3811,9802,1,0,4499,8821,50.4752134,9110,8822,4.2133177,9110,8823,49.5,9110,8824,51.1,9110,8826,649328,9001,8827,665262,9001,,, +3814,"NAD83 / Mississippi TM",9001,4269,3813,9807,1,0,4499,8801,32.3,9110,8802,-89.45,9110,8805,0.9998335,9201,8806,500000,9001,8807,1300000,9001,,,,,, +3815,"NAD83(HARN) / Mississippi TM",9001,4152,3813,9807,1,0,4499,8801,32.3,9110,8802,-89.45,9110,8805,0.9998335,9201,8806,500000,9001,8807,1300000,9001,,,,,, +3816,"NAD83(NSRS2007) / Mississippi TM",9001,4759,3813,9807,1,0,4499,8801,32.3,9110,8802,-89.45,9110,8805,0.9998335,9201,8806,500000,9001,8807,1300000,9001,,,,,, +3825,"TWD97 / TM2 zone 119",9001,3824,3818,9807,1,0,4499,8801,0,9102,8802,119,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3826,"TWD97 / TM2 zone 121",9001,3824,3820,9807,1,0,4499,8801,0,9102,8802,121,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3827,"TWD67 / TM2 zone 119",9001,3821,3818,9807,1,0,4499,8801,0,9102,8802,119,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3828,"TWD67 / TM2 zone 121",9001,3821,3820,9807,1,0,4499,8801,0,9102,8802,121,9102,8805,0.9999,9201,8806,250000,9001,8807,0,9001,,,,,, +3829,"Hu Tzu Shan 1950 / UTM zone 51N",9001,4236,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3832,"WGS 84 / PDC Mercator",9001,4326,3831,9804,1,0,4400,8801,0,9102,8802,150,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +3833,"Pulkovo 1942(58) / Gauss-Kruger zone 2",9001,4179,16202,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +3834,"Pulkovo 1942(83) / Gauss-Kruger zone 2",9001,4178,16202,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +3835,"Pulkovo 1942(83) / Gauss-Kruger zone 3",9001,4178,16203,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +3836,"Pulkovo 1942(83) / Gauss-Kruger zone 4",9001,4178,16204,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +3837,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 3",9001,4179,16263,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +3838,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 4",9001,4179,16264,9807,1,0,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +3839,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 9",9001,4179,16269,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +3840,"Pulkovo 1942(58) / 3-degree Gauss-Kruger zone 10",9001,4179,16270,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +3841,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 6",9001,4178,16266,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3842,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 7",9001,4178,16266,9807,1,1,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3843,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 8",9001,4178,16266,9807,1,1,4530,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +3844,"Pulkovo 1942(58) / Stereo70",9001,4179,19926,9809,1,0,4530,8801,46,9102,8802,25,9102,8805,0.99975,9201,8806,500000,9001,8807,500000,9001,,,,,, +3845,"SWEREF99 / RT90 7.5 gon V emulation",9001,4619,17339,9807,1,0,4530,8801,0,9110,8802,11.18225,9110,8805,1.000006,9201,8806,1500025.141,9001,8807,-667.282,9001,,,,,, +3846,"SWEREF99 / RT90 5 gon V emulation",9001,4619,17340,9807,1,0,4530,8801,0,9110,8802,13.332256,9110,8805,1.0000058,9201,8806,1500044.695,9001,8807,-667.13,9001,,,,,, +3847,"SWEREF99 / RT90 2.5 gon V emulation",9001,4619,17341,9807,1,0,4530,8801,0,9110,8802,15.4822624306,9110,8805,1.00000561024,9201,8806,1500064.274,9001,8807,-667.711,9001,,,,,, +3848,"SWEREF99 / RT90 0 gon emulation",9001,4619,17342,9807,1,0,4530,8801,0,9110,8802,18.032268,9110,8805,1.0000054,9201,8806,1500083.521,9001,8807,-668.844,9001,,,,,, +3849,"SWEREF99 / RT90 2.5 gon O emulation",9001,4619,17343,9807,1,0,4530,8801,0,9110,8802,20.182274,9110,8805,1.0000052,9201,8806,1500102.765,9001,8807,-670.706,9001,,,,,, +3850,"SWEREF99 / RT90 5 gon O emulation",9001,4619,17344,9807,1,0,4530,8801,0,9110,8802,22.33228,9110,8805,1.0000049,9201,8806,1500121.846,9001,8807,-672.557,9001,,,,,, +3851,"NZGD2000 / NZCS2000",9001,4167,17964,9802,1,0,4500,8821,-41,9110,8822,173,9110,8823,-37.3,9110,8824,-44.3,9110,8826,3000000,9001,8827,7000000,9001,,, +3852,"RSRGD2000 / DGLC2000",9001,4764,17966,9802,1,0,4500,8821,-90,9110,8822,157,9110,8823,-76.4,9110,8824,-79.2,9110,8826,500000,9001,8827,0,9001,,, +3854,County ST74,9001,4619,3853,9807,1,0,4531,8801,0,9110,8802,18.0328332,9110,8805,0.99999506,9201,8806,100182.7406,9001,8807,-6500620.1207,9001,,,,,, +3857,"WGS 84 / Pseudo-Mercator",9001,4326,3856,1024,1,0,4499,8801,0,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3873,"ETRS89 / GK19FIN",9001,4258,3860,9807,1,0,4500,8801,0,9102,8802,19,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +3874,"ETRS89 / GK20FIN",9001,4258,3861,9807,1,0,4500,8801,0,9102,8802,20,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +3875,"ETRS89 / GK21FIN",9001,4258,3862,9807,1,0,4500,8801,0,9102,8802,21,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +3876,"ETRS89 / GK22FIN",9001,4258,3863,9807,1,0,4500,8801,0,9102,8802,22,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +3877,"ETRS89 / GK23FIN",9001,4258,3864,9807,1,0,4500,8801,0,9102,8802,23,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +3878,"ETRS89 / GK24FIN",9001,4258,3865,9807,1,0,4500,8801,0,9102,8802,24,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +3879,"ETRS89 / GK25FIN",9001,4258,3866,9807,1,0,4500,8801,0,9102,8802,25,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +3880,"ETRS89 / GK26FIN",9001,4258,3867,9807,1,0,4500,8801,0,9102,8802,26,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +3881,"ETRS89 / GK27FIN",9001,4258,3868,9807,1,0,4500,8801,0,9102,8802,27,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +3882,"ETRS89 / GK28FIN",9001,4258,3869,9807,1,0,4500,8801,0,9102,8802,28,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +3883,"ETRS89 / GK29FIN",9001,4258,3870,9807,1,0,4500,8801,0,9102,8802,29,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +3884,"ETRS89 / GK30FIN",9001,4258,3871,9807,1,0,4500,8801,0,9102,8802,30,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +3885,"ETRS89 / GK31FIN",9001,4258,3872,9807,1,0,4500,8801,0,9102,8802,31,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +3890,"IGRS / UTM zone 37N",9001,3889,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3891,"IGRS / UTM zone 38N",9001,3889,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3892,"IGRS / UTM zone 39N",9001,3889,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3893,"ED50 / Iraq National Grid",9001,4230,19907,9807,1,0,4400,8801,29.0134566,9110,8802,46.3,9110,8805,0.9994,9201,8806,800000,9001,8807,0,9001,,,,,, +3907,"MGI 1901 / Balkans zone 5",9001,3906,18275,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,5500000,9001,8807,0,9001,,,,,, +3908,"MGI 1901 / Balkans zone 6",9001,3906,18276,9807,1,0,4530,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,6500000,9001,8807,0,9001,,,,,, +3909,"MGI 1901 / Balkans zone 7",9001,3906,18277,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,7500000,9001,8807,0,9001,,,,,, +3910,"MGI 1901 / Balkans zone 8",9001,3906,18278,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,8500000,9001,8807,0,9001,,,,,, +3911,"MGI 1901 / Slovenia Grid",9001,3906,19967,9807,1,0,4530,8801,0,9110,8802,15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +3912,"MGI 1901 / Slovene National Grid",9001,3906,19845,9807,1,0,4498,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,500000,9001,8807,-5000000,9001,,,,,, +3920,"Puerto Rico / UTM zone 20N",9001,4139,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +3942,"RGF93 / CC42",9001,4171,18101,9802,1,0,4499,8821,42,9102,8822,3,9102,8823,41.25,9102,8824,42.75,9102,8826,1700000,9001,8827,1200000,9001,,, +3943,"RGF93 / CC43",9001,4171,18102,9802,1,0,4499,8821,43,9102,8822,3,9102,8823,42.25,9102,8824,43.75,9102,8826,1700000,9001,8827,2200000,9001,,, +3944,"RGF93 / CC44",9001,4171,18103,9802,1,0,4499,8821,44,9102,8822,3,9102,8823,43.25,9102,8824,44.75,9102,8826,1700000,9001,8827,3200000,9001,,, +3945,"RGF93 / CC45",9001,4171,18104,9802,1,0,4499,8821,45,9102,8822,3,9102,8823,44.25,9102,8824,45.75,9102,8826,1700000,9001,8827,4200000,9001,,, +3946,"RGF93 / CC46",9001,4171,18105,9802,1,0,4499,8821,46,9102,8822,3,9102,8823,45.25,9102,8824,46.75,9102,8826,1700000,9001,8827,5200000,9001,,, +3947,"RGF93 / CC47",9001,4171,18106,9802,1,0,4499,8821,47,9102,8822,3,9102,8823,46.25,9102,8824,47.75,9102,8826,1700000,9001,8827,6200000,9001,,, +3948,"RGF93 / CC48",9001,4171,18107,9802,1,0,4499,8821,48,9102,8822,3,9102,8823,47.25,9102,8824,48.75,9102,8826,1700000,9001,8827,7200000,9001,,, +3949,"RGF93 / CC49",9001,4171,18108,9802,1,0,4499,8821,49,9102,8822,3,9102,8823,48.25,9102,8824,49.75,9102,8826,1700000,9001,8827,8200000,9001,,, +3950,"RGF93 / CC50",9001,4171,18109,9802,1,0,4499,8821,50,9102,8822,3,9102,8823,49.25,9102,8824,50.75,9102,8826,1700000,9001,8827,9200000,9001,,, +3968,"NAD83 / Virginia Lambert",9001,4269,3967,9802,1,0,4499,8821,36,9102,8822,-79.5,9102,8823,37,9102,8824,39.5,9102,8826,0,9001,8827,0,9001,,, +3969,"NAD83(HARN) / Virginia Lambert",9001,4152,3967,9802,1,0,4499,8821,36,9102,8822,-79.5,9102,8823,37,9102,8824,39.5,9102,8826,0,9001,8827,0,9001,,, +3970,"NAD83(NSRS2007) / Virginia Lambert",9001,4759,3967,9802,1,0,4499,8821,36,9102,8822,-79.5,9102,8823,37,9102,8824,39.5,9102,8826,0,9001,8827,0,9001,,, +3973,"WGS 84 / NSIDC EASE-Grid North",9001,4326,3897,1027,1,0,4469,8801,90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3974,"WGS 84 / NSIDC EASE-Grid South",9001,4326,3898,1027,1,0,4470,8801,-90,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +3975,"WGS 84 / NSIDC EASE-Grid Global",9001,4326,19869,9834,1,0,4499,8802,0,9102,8806,0,9001,8807,0,9001,8823,30,9102,,,,,,,,, +3976,"WGS 84 / NSIDC Sea Ice Polar Stereographic South",9001,4326,19866,9829,1,0,4470,8806,0,9001,8807,0,9001,8832,-70,9102,8833,0,9102,,,,,,,,, +3978,"NAD83 / Canada Atlas Lambert",9001,4269,3977,9802,1,0,4400,8821,49,9102,8822,-95,9102,8823,49,9102,8824,77,9102,8826,0,9001,8827,0,9001,,, +3979,"NAD83(CSRS) / Canada Atlas Lambert",9001,4617,3977,9802,1,0,4400,8821,49,9102,8822,-95,9102,8823,49,9102,8824,77,9102,8826,0,9001,8827,0,9001,,, +3985,"Katanga 1955 / Katanga Lambert",9001,4695,3980,9802,1,1,4499,8821,9,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,500000,9001,8827,500000,9001,,, +3986,"Katanga 1955 / Katanga Gauss zone A",9001,4695,3981,9807,1,0,4499,8801,-9,9102,8802,30,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3987,"Katanga 1955 / Katanga Gauss zone B",9001,4695,3982,9807,1,0,4499,8801,-9,9102,8802,28,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3988,"Katanga 1955 / Katanga Gauss zone C",9001,4695,3983,9807,1,0,4499,8801,-9,9102,8802,26,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3989,"Katanga 1955 / Katanga Gauss zone D",9001,4695,3984,9807,1,0,4499,8801,-9,9102,8802,24,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +3991,Puerto Rico State Plane CS of 1927,9003,4139,15201,9802,1,0,4497,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,500000,9003,8827,0,9003,,, +3992,"Puerto Rico / St. Croix",9003,4139,15202,9802,1,0,4497,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,500000,9003,8827,100000,9003,,, +3993,"Guam 1963 / Guam SPCS",9001,4675,15400,9831,1,0,4499,8801,13.282087887,9110,8802,144.445550254,9110,8806,50000,9001,8807,50000,9001,,,,,,,,, +3994,"WGS 84 / Mercator 41",9001,4326,19843,9805,1,0,4499,8802,100,9102,8806,0,9001,8807,0,9001,8823,-41,9102,,,,,,,,, +3995,"WGS 84 / Arctic Polar Stereographic",9001,4326,19842,9829,1,0,4469,8806,0,9001,8807,0,9001,8832,71,9102,8833,0,9102,,,,,,,,, +3996,"WGS 84 / IBCAO Polar Stereographic",9001,4326,19840,9829,1,0,4469,8806,0,9001,8807,0,9001,8832,75,9102,8833,0,9102,,,,,,,,, +3997,"WGS 84 / Dubai Local TM",9001,4326,19839,9807,1,0,4400,8801,0,9110,8802,55.2,9110,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4026,"MOLDREF99 / Moldova TM",9001,4023,3999,9807,1,0,4530,8801,0,9110,8802,28.24,9110,8805,0.99994,9201,8806,200000,9001,8807,-5000000,9001,,,,,, +4037,"WGS 84 / TMzn35N",9001,4326,16035,9807,1,0,4500,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4038,"WGS 84 / TMzn36N",9001,4326,16036,9807,1,0,4500,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4048,"RGRDC 2005 / Congo TM zone 12",9001,4046,17412,9807,1,0,4499,8801,0,9102,8802,12,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4049,"RGRDC 2005 / Congo TM zone 14",9001,4046,17414,9807,1,0,4499,8801,0,9102,8802,14,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4050,"RGRDC 2005 / Congo TM zone 16",9001,4046,17416,9807,1,0,4499,8801,0,9102,8802,16,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4051,"RGRDC 2005 / Congo TM zone 18",9001,4046,17418,9807,1,0,4499,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4056,"RGRDC 2005 / Congo TM zone 20",9001,4046,17420,9807,1,0,4499,8801,0,9102,8802,20,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4057,"RGRDC 2005 / Congo TM zone 22",9001,4046,17422,9807,1,0,4499,8801,0,9102,8802,22,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4058,"RGRDC 2005 / Congo TM zone 24",9001,4046,17424,9807,1,0,4499,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4059,"RGRDC 2005 / Congo TM zone 26",9001,4046,17426,9807,1,0,4499,8801,0,9102,8802,26,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4060,"RGRDC 2005 / Congo TM zone 28",9001,4046,17428,9807,1,0,4499,8801,0,9102,8802,28,9102,8805,0.9999,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4061,"RGRDC 2005 / UTM zone 33S",9001,4046,16133,9807,1,0,4499,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4062,"RGRDC 2005 / UTM zone 34S",9001,4046,16134,9807,1,0,4499,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4063,"RGRDC 2005 / UTM zone 35S",9001,4046,16135,9807,1,0,4499,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4071,"Chua / UTM zone 23S",9001,4224,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4082,"REGCAN95 / UTM zone 27N",9001,4081,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4083,"REGCAN95 / UTM zone 28N",9001,4081,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4087,"WGS 84 / World Equidistant Cylindrical",9001,4326,4085,1028,1,0,4499,8802,0,9102,8806,0,9001,8807,0,9001,8823,0,9102,,,,,,,,, +4088,"World Equidistant Cylindrical (Sphere)",9001,4047,4086,1029,1,0,4499,8802,0,9102,8806,0,9001,8807,0,9001,8823,0,9102,,,,,,,,, +4093,"ETRS89 / DKTM1",9001,4258,4089,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.99998,9201,8806,200000,9001,8807,-5000000,9001,,,,,, +4094,"ETRS89 / DKTM2",9001,4258,4090,9807,1,0,4400,8801,0,9102,8802,10,9102,8805,0.99998,9201,8806,400000,9001,8807,-5000000,9001,,,,,, +4095,"ETRS89 / DKTM3",9001,4258,4091,9807,1,0,4400,8801,0,9102,8802,11.75,9102,8805,0.99998,9201,8806,600000,9001,8807,-5000000,9001,,,,,, +4096,"ETRS89 / DKTM4",9001,4258,4092,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,1,9201,8806,800000,9001,8807,-5000000,9001,,,,,, +4217,"NAD83 / BLM 59N (ftUS)",9003,4269,4186,9807,1,0,4497,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4399,"NAD27 / BLM 59N (ftUS)",9003,4267,4186,9807,1,0,4497,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4400,"NAD27 / BLM 60N (ftUS)",9003,4267,4187,9807,1,0,4497,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4401,"NAD27 / BLM 1N (ftUS)",9003,4267,4101,9807,1,0,4497,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4402,"NAD27 / BLM 2N (ftUS)",9003,4267,4102,9807,1,0,4497,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4403,"NAD27 / BLM 3N (ftUS)",9003,4267,4103,9807,1,0,4497,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4404,"NAD27 / BLM 4N (ftUS)",9003,4267,4104,9807,1,0,4497,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4405,"NAD27 / BLM 5N (ftUS)",9003,4267,4105,9807,1,0,4497,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4406,"NAD27 / BLM 6N (ftUS)",9003,4267,4106,9807,1,0,4497,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4407,"NAD27 / BLM 7N (ftUS)",9003,4267,4107,9807,1,0,4497,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4408,"NAD27 / BLM 8N (ftUS)",9003,4267,4108,9807,1,0,4497,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4409,"NAD27 / BLM 9N (ftUS)",9003,4267,4109,9807,1,0,4497,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4410,"NAD27 / BLM 10N (ftUS)",9003,4267,4110,9807,1,0,4497,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4411,"NAD27 / BLM 11N (ftUS)",9003,4267,4111,9807,1,0,4497,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4412,"NAD27 / BLM 12N (ftUS)",9003,4267,4112,9807,1,0,4497,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4413,"NAD27 / BLM 13N (ftUS)",9003,4267,4113,9807,1,0,4497,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4414,"NAD83(HARN) / Guam Map Grid",9001,4152,4325,9807,1,0,4499,8801,13.3,9110,8802,144.45,9110,8805,1,9201,8806,100000,9001,8807,200000,9001,,,,,, +4415,"Katanga 1955 / Katanga Lambert",9001,4695,4416,9802,1,0,4499,8821,-9,9102,8822,26,9102,8823,-6.5,9102,8824,-11.5,9102,8826,500000,9001,8827,500000,9001,,, +4417,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 7",9001,4178,16267,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +4418,"NAD27 / BLM 18N (ftUS)",9003,4267,4118,9807,1,0,4497,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4419,"NAD27 / BLM 19N (ftUS)",9003,4267,4119,9807,1,0,4497,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4420,"NAD83 / BLM 60N (ftUS)",9003,4269,4187,9807,1,0,4497,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4421,"NAD83 / BLM 1N (ftUS)",9003,4269,4101,9807,1,0,4497,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4422,"NAD83 / BLM 2N (ftUS)",9003,4269,4102,9807,1,0,4497,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4423,"NAD83 / BLM 3N (ftUS)",9003,4269,4103,9807,1,0,4497,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4424,"NAD83 / BLM 4N (ftUS)",9003,4269,4104,9807,1,0,4497,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4425,"NAD83 / BLM 5N (ftUS)",9003,4269,4105,9807,1,0,4497,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4426,"NAD83 / BLM 6N (ftUS)",9003,4269,4106,9807,1,0,4497,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4427,"NAD83 / BLM 7N (ftUS)",9003,4269,4107,9807,1,0,4497,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4428,"NAD83 / BLM 8N (ftUS)",9003,4269,4108,9807,1,0,4497,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4429,"NAD83 / BLM 9N (ftUS)",9003,4269,4109,9807,1,0,4497,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4430,"NAD83 / BLM 10N (ftUS)",9003,4269,4110,9807,1,0,4497,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4431,"NAD83 / BLM 11N (ftUS)",9003,4269,4111,9807,1,0,4497,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4432,"NAD83 / BLM 12N (ftUS)",9003,4269,4112,9807,1,0,4497,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4433,"NAD83 / BLM 13N (ftUS)",9003,4269,4113,9807,1,0,4497,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4434,"Pulkovo 1942(83) / 3-degree Gauss-Kruger zone 8",9001,4178,16268,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +4437,"NAD83(NSRS2007) / Puerto Rico and Virgin Is.",9001,4759,15230,9802,1,0,4499,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,200000,9001,8827,200000,9001,,, +4438,"NAD83 / BLM 18N (ftUS)",9003,4269,4118,9807,1,0,4497,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4439,"NAD83 / BLM 19N (ftUS)",9003,4269,4119,9807,1,0,4497,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +4455,"NAD27 / Pennsylvania South",9003,4267,4436,9802,1,0,4497,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,2000000,9003,8827,0,9003,,, +4456,"NAD27 / New York Long Island",9003,4267,4454,9802,1,0,4497,8821,40.3,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,2000000,9003,8827,100000,9003,,, +4457,"NAD83 / South Dakota North (ftUS)",9003,4269,15394,9802,1,0,4497,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,1968500,9003,8827,0,9003,,, +4462,"WGS 84 / Australian Centre for Remote Sensing Lambert",9001,4326,4460,9802,1,0,4400,8821,-27,9102,8822,132,9102,8823,-18,9102,8824,-36,9102,8826,0,9001,8827,0,9001,,, +4467,"RGSPM06 / UTM zone 21N",9001,4463,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4471,"RGM04 / UTM zone 38S",9001,4470,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4474,"Cadastre 1997 / UTM zone 38S",9001,4632,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +4484,"Mexican Datum of 1993 / UTM zone 11N",9001,4483,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4485,"Mexican Datum of 1993 / UTM zone 12N",9001,4483,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4486,"Mexican Datum of 1993 / UTM zone 13N",9001,4483,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4487,"Mexican Datum of 1993 / UTM zone 14N",9001,4483,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4488,"Mexican Datum of 1993 / UTM zone 15N",9001,4483,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4489,"Mexican Datum of 1993 / UTM zone 16N",9001,4483,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4491,"CGCS2000 / Gauss-Kruger zone 13",9001,4490,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +4492,"CGCS2000 / Gauss-Kruger zone 14",9001,4490,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +4493,"CGCS2000 / Gauss-Kruger zone 15",9001,4490,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +4494,"CGCS2000 / Gauss-Kruger zone 16",9001,4490,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +4495,"CGCS2000 / Gauss-Kruger zone 17",9001,4490,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +4496,"CGCS2000 / Gauss-Kruger zone 18",9001,4490,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +4497,"CGCS2000 / Gauss-Kruger zone 19",9001,4490,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +4498,"CGCS2000 / Gauss-Kruger zone 20",9001,4490,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +4499,"CGCS2000 / Gauss-Kruger zone 21",9001,4490,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +4500,"CGCS2000 / Gauss-Kruger zone 22",9001,4490,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +4501,"CGCS2000 / Gauss-Kruger zone 23",9001,4490,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +4502,"CGCS2000 / Gauss-Kruger CM 75E",9001,4490,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4503,"CGCS2000 / Gauss-Kruger CM 81E",9001,4490,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4504,"CGCS2000 / Gauss-Kruger CM 87E",9001,4490,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4505,"CGCS2000 / Gauss-Kruger CM 93E",9001,4490,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4506,"CGCS2000 / Gauss-Kruger CM 99E",9001,4490,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4507,"CGCS2000 / Gauss-Kruger CM 105E",9001,4490,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4508,"CGCS2000 / Gauss-Kruger CM 111E",9001,4490,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4509,"CGCS2000 / Gauss-Kruger CM 117E",9001,4490,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4510,"CGCS2000 / Gauss-Kruger CM 123E",9001,4490,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4511,"CGCS2000 / Gauss-Kruger CM 129E",9001,4490,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4512,"CGCS2000 / Gauss-Kruger CM 135E",9001,4490,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4513,"CGCS2000 / 3-degree Gauss-Kruger zone 25",9001,4490,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +4514,"CGCS2000 / 3-degree Gauss-Kruger zone 26",9001,4490,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +4515,"CGCS2000 / 3-degree Gauss-Kruger zone 27",9001,4490,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +4516,"CGCS2000 / 3-degree Gauss-Kruger zone 28",9001,4490,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +4517,"CGCS2000 / 3-degree Gauss-Kruger zone 29",9001,4490,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +4518,"CGCS2000 / 3-degree Gauss-Kruger zone 30",9001,4490,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +4519,"CGCS2000 / 3-degree Gauss-Kruger zone 31",9001,4490,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +4520,"CGCS2000 / 3-degree Gauss-Kruger zone 32",9001,4490,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +4521,"CGCS2000 / 3-degree Gauss-Kruger zone 33",9001,4490,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +4522,"CGCS2000 / 3-degree Gauss-Kruger zone 34",9001,4490,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +4523,"CGCS2000 / 3-degree Gauss-Kruger zone 35",9001,4490,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +4524,"CGCS2000 / 3-degree Gauss-Kruger zone 36",9001,4490,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +4525,"CGCS2000 / 3-degree Gauss-Kruger zone 37",9001,4490,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +4526,"CGCS2000 / 3-degree Gauss-Kruger zone 38",9001,4490,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +4527,"CGCS2000 / 3-degree Gauss-Kruger zone 39",9001,4490,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +4528,"CGCS2000 / 3-degree Gauss-Kruger zone 40",9001,4490,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +4529,"CGCS2000 / 3-degree Gauss-Kruger zone 41",9001,4490,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +4530,"CGCS2000 / 3-degree Gauss-Kruger zone 42",9001,4490,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +4531,"CGCS2000 / 3-degree Gauss-Kruger zone 43",9001,4490,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +4532,"CGCS2000 / 3-degree Gauss-Kruger zone 44",9001,4490,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +4533,"CGCS2000 / 3-degree Gauss-Kruger zone 45",9001,4490,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +4534,"CGCS2000 / 3-degree Gauss-Kruger CM 75E",9001,4490,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4535,"CGCS2000 / 3-degree Gauss-Kruger CM 78E",9001,4490,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4536,"CGCS2000 / 3-degree Gauss-Kruger CM 81E",9001,4490,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4537,"CGCS2000 / 3-degree Gauss-Kruger CM 84E",9001,4490,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4538,"CGCS2000 / 3-degree Gauss-Kruger CM 87E",9001,4490,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4539,"CGCS2000 / 3-degree Gauss-Kruger CM 90E",9001,4490,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4540,"CGCS2000 / 3-degree Gauss-Kruger CM 93E",9001,4490,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4541,"CGCS2000 / 3-degree Gauss-Kruger CM 96E",9001,4490,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4542,"CGCS2000 / 3-degree Gauss-Kruger CM 99E",9001,4490,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4543,"CGCS2000 / 3-degree Gauss-Kruger CM 102E",9001,4490,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4544,"CGCS2000 / 3-degree Gauss-Kruger CM 105E",9001,4490,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4545,"CGCS2000 / 3-degree Gauss-Kruger CM 108E",9001,4490,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4546,"CGCS2000 / 3-degree Gauss-Kruger CM 111E",9001,4490,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4547,"CGCS2000 / 3-degree Gauss-Kruger CM 114E",9001,4490,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4548,"CGCS2000 / 3-degree Gauss-Kruger CM 117E",9001,4490,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4549,"CGCS2000 / 3-degree Gauss-Kruger CM 120E",9001,4490,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4550,"CGCS2000 / 3-degree Gauss-Kruger CM 123E",9001,4490,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4551,"CGCS2000 / 3-degree Gauss-Kruger CM 126E",9001,4490,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4552,"CGCS2000 / 3-degree Gauss-Kruger CM 129E",9001,4490,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4553,"CGCS2000 / 3-degree Gauss-Kruger CM 132E",9001,4490,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4554,"CGCS2000 / 3-degree Gauss-Kruger CM 135E",9001,4490,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4559,"RRAF 1991 / UTM zone 20N",9001,4558,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +4568,"New Beijing / Gauss-Kruger zone 13",9001,4555,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +4569,"New Beijing / Gauss-Kruger zone 14",9001,4555,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +4570,"New Beijing / Gauss-Kruger zone 15",9001,4555,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +4571,"New Beijing / Gauss-Kruger zone 16",9001,4555,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +4572,"New Beijing / Gauss-Kruger zone 17",9001,4555,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +4573,"New Beijing / Gauss-Kruger zone 18",9001,4555,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +4574,"New Beijing / Gauss-Kruger zone 19",9001,4555,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +4575,"New Beijing / Gauss-Kruger zone 20",9001,4555,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +4576,"New Beijing / Gauss-Kruger zone 21",9001,4555,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +4577,"New Beijing / Gauss-Kruger zone 22",9001,4555,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +4578,"New Beijing / Gauss-Kruger zone 23",9001,4555,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +4579,"New Beijing / Gauss-Kruger CM 75E",9001,4555,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4580,"New Beijing / Gauss-Kruger CM 81E",9001,4555,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4581,"New Beijing / Gauss-Kruger CM 87E",9001,4555,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4582,"New Beijing / Gauss-Kruger CM 93E",9001,4555,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4583,"New Beijing / Gauss-Kruger CM 99E",9001,4555,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4584,"New Beijing / Gauss-Kruger CM 105E",9001,4555,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4585,"New Beijing / Gauss-Kruger CM 111E",9001,4555,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4586,"New Beijing / Gauss-Kruger CM 117E",9001,4555,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4587,"New Beijing / Gauss-Kruger CM 123E",9001,4555,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4588,"New Beijing / Gauss-Kruger CM 129E",9001,4555,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4589,"New Beijing / Gauss-Kruger CM 135E",9001,4555,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4647,"ETRS89 / UTM zone N32",9001,4258,4648,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,32500000,9001,8807,0,9001,,,,,, +4652,"New Beijing / 3-degree Gauss-Kruger zone 25",9001,4555,16285,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +4653,"New Beijing / 3-degree Gauss-Kruger zone 26",9001,4555,16286,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +4654,"New Beijing / 3-degree Gauss-Kruger zone 27",9001,4555,16287,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +4655,"New Beijing / 3-degree Gauss-Kruger zone 28",9001,4555,16288,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +4656,"New Beijing / 3-degree Gauss-Kruger zone 29",9001,4555,16289,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +4766,"New Beijing / 3-degree Gauss-Kruger zone 30",9001,4555,16290,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +4767,"New Beijing / 3-degree Gauss-Kruger zone 31",9001,4555,16291,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +4768,"New Beijing / 3-degree Gauss-Kruger zone 32",9001,4555,16292,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +4769,"New Beijing / 3-degree Gauss-Kruger zone 33",9001,4555,16293,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,33500000,9001,8807,0,9001,,,,,, +4770,"New Beijing / 3-degree Gauss-Kruger zone 34",9001,4555,16294,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,34500000,9001,8807,0,9001,,,,,, +4771,"New Beijing / 3-degree Gauss-Kruger zone 35",9001,4555,16295,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,35500000,9001,8807,0,9001,,,,,, +4772,"New Beijing / 3-degree Gauss-Kruger zone 36",9001,4555,16296,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,36500000,9001,8807,0,9001,,,,,, +4773,"New Beijing / 3-degree Gauss-Kruger zone 37",9001,4555,16297,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,37500000,9001,8807,0,9001,,,,,, +4774,"New Beijing / 3-degree Gauss-Kruger zone 38",9001,4555,16298,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,38500000,9001,8807,0,9001,,,,,, +4775,"New Beijing / 3-degree Gauss-Kruger zone 39",9001,4555,16299,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,39500000,9001,8807,0,9001,,,,,, +4776,"New Beijing / 3-degree Gauss-Kruger zone 40",9001,4555,16070,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,40500000,9001,8807,0,9001,,,,,, +4777,"New Beijing / 3-degree Gauss-Kruger zone 41",9001,4555,16071,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,41500000,9001,8807,0,9001,,,,,, +4778,"New Beijing / 3-degree Gauss-Kruger zone 42",9001,4555,16072,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,42500000,9001,8807,0,9001,,,,,, +4779,"New Beijing / 3-degree Gauss-Kruger zone 43",9001,4555,16073,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,43500000,9001,8807,0,9001,,,,,, +4780,"New Beijing / 3-degree Gauss-Kruger zone 44",9001,4555,16074,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,44500000,9001,8807,0,9001,,,,,, +4781,"New Beijing / 3-degree Gauss-Kruger zone 45",9001,4555,16075,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,45500000,9001,8807,0,9001,,,,,, +4782,"New Beijing / 3-degree Gauss-Kruger CM 75E",9001,4555,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4783,"New Beijing / 3-degree Gauss-Kruger CM 78E",9001,4555,16386,9807,1,0,4530,8801,0,9102,8802,78,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4784,"New Beijing / 3-degree Gauss-Kruger CM 81E",9001,4555,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4785,"New Beijing / 3-degree Gauss-Kruger CM 84E",9001,4555,16388,9807,1,0,4530,8801,0,9102,8802,84,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4786,"New Beijing / 3-degree Gauss-Kruger CM 87E",9001,4555,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4787,"New Beijing / 3-degree Gauss-Kruger CM 90E",9001,4555,16390,9807,1,0,4530,8801,0,9102,8802,90,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4788,"New Beijing / 3-degree Gauss-Kruger CM 93E",9001,4555,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4789,"New Beijing / 3-degree Gauss-Kruger CM 96E",9001,4555,16392,9807,1,0,4530,8801,0,9102,8802,96,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4790,"New Beijing / 3-degree Gauss-Kruger CM 99E",9001,4555,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4791,"New Beijing / 3-degree Gauss-Kruger CM 102E",9001,4555,16394,9807,1,0,4530,8801,0,9102,8802,102,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4792,"New Beijing / 3-degree Gauss-Kruger CM 105E",9001,4555,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4793,"New Beijing / 3-degree Gauss-Kruger CM 108E",9001,4555,16396,9807,1,0,4530,8801,0,9102,8802,108,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4794,"New Beijing / 3-degree Gauss-Kruger CM 111E",9001,4555,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4795,"New Beijing / 3-degree Gauss-Kruger CM 114E",9001,4555,16398,9807,1,0,4530,8801,0,9102,8802,114,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4796,"New Beijing / 3-degree Gauss-Kruger CM 117E",9001,4555,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4797,"New Beijing / 3-degree Gauss-Kruger CM 120E",9001,4555,16170,9807,1,0,4530,8801,0,9102,8802,120,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4798,"New Beijing / 3-degree Gauss-Kruger CM 123E",9001,4555,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4799,"New Beijing / 3-degree Gauss-Kruger CM 126E",9001,4555,16172,9807,1,0,4530,8801,0,9102,8802,126,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4800,"New Beijing / 3-degree Gauss-Kruger CM 129E",9001,4555,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4812,"New Beijing / 3-degree Gauss-Kruger CM 132E",9001,4555,16174,9807,1,0,4530,8801,0,9102,8802,132,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4822,"New Beijing / 3-degree Gauss-Kruger CM 135E",9001,4555,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +4826,"WGS 84 / Cape Verde National",9001,4326,4825,9802,1,0,1024,8821,15.5,9110,8822,-24,9110,8823,15,9110,8824,16.4,9110,8826,161587.83,9001,8827,128511.202,9001,,, +4839,"ETRS89 / LCC Germany (N-E)",9001,4258,4838,9802,1,0,4500,8821,51,9102,8822,10.3,9110,8823,48.4,9110,8824,53.4,9110,8826,0,9001,8827,0,9001,,, +4855,"ETRS89 / NTM zone 5",9001,4258,4845,9807,1,1,4500,8801,0,9110,8802,5.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4856,"ETRS89 / NTM zone 6",9001,4258,4846,9807,1,1,4500,8801,0,9110,8802,6.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4857,"ETRS89 / NTM zone 7",9001,4258,4847,9807,1,1,4500,8801,0,9110,8802,7.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4858,"ETRS89 / NTM zone 8",9001,4258,4848,9807,1,1,4500,8801,0,9110,8802,8.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4859,"ETRS89 / NTM zone 9",9001,4258,4849,9807,1,1,4500,8801,0,9110,8802,9.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4860,"ETRS89 / NTM zone 10",9001,4258,4850,9807,1,1,4500,8801,0,9110,8802,10.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4861,"ETRS89 / NTM zone 11",9001,4258,4851,9807,1,1,4500,8801,0,9110,8802,11.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4862,"ETRS89 / NTM zone 12",9001,4258,4852,9807,1,1,4500,8801,0,9110,8802,12.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4863,"ETRS89 / NTM zone 13",9001,4258,4853,9807,1,1,4500,8801,0,9110,8802,13.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4864,"ETRS89 / NTM zone 14",9001,4258,4854,9807,1,1,4500,8801,0,9110,8802,14.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4865,"ETRS89 / NTM zone 15",9001,4258,4841,9807,1,1,4500,8801,0,9110,8802,15.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4866,"ETRS89 / NTM zone 16",9001,4258,4842,9807,1,1,4500,8801,0,9110,8802,16.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4867,"ETRS89 / NTM zone 17",9001,4258,4843,9807,1,1,4500,8801,0,9110,8802,17.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4868,"ETRS89 / NTM zone 18",9001,4258,4844,9807,1,1,4500,8801,0,9110,8802,18.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4869,"ETRS89 / NTM zone 19",9001,4258,4881,9807,1,1,4500,8801,0,9110,8802,19.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4870,"ETRS89 / NTM zone 20",9001,4258,5000,9807,1,1,4500,8801,0,9110,8802,20.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4871,"ETRS89 / NTM zone 21",9001,4258,5001,9807,1,1,4500,8801,0,9110,8802,21.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4872,"ETRS89 / NTM zone 22",9001,4258,5002,9807,1,1,4500,8801,0,9110,8802,22.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4873,"ETRS89 / NTM zone 23",9001,4258,5003,9807,1,1,4500,8801,0,9110,8802,23.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4874,"ETRS89 / NTM zone 24",9001,4258,5004,9807,1,1,4500,8801,0,9110,8802,24.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4875,"ETRS89 / NTM zone 25",9001,4258,5005,9807,1,1,4500,8801,0,9110,8802,25.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4876,"ETRS89 / NTM zone 26",9001,4258,5006,9807,1,1,4500,8801,0,9110,8802,26.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4877,"ETRS89 / NTM zone 27",9001,4258,5007,9807,1,1,4500,8801,0,9110,8802,27.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4878,"ETRS89 / NTM zone 28",9001,4258,5008,9807,1,1,4500,8801,0,9110,8802,28.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4879,"ETRS89 / NTM zone 29",9001,4258,5009,9807,1,1,4500,8801,0,9110,8802,29.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +4880,"ETRS89 / NTM zone 30",9001,4258,5010,9807,1,1,4500,8801,0,9110,8802,30.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5014,"PTRA08 / UTM zone 25N",9001,5013,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5015,"PTRA08 / UTM zone 26N",9001,5013,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5016,"PTRA08 / UTM zone 28N",9001,5013,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5017,"Lisbon 1890 / Portugal Bonne New",9001,4666,5019,9828,1,0,6509,8801,39.4,9110,8802,-8.0754862,9110,8806,0,9001,8807,0,9001,,,,,,,,, +5018,"Lisbon / Portuguese Grid New",9001,4207,5020,9807,1,0,4499,8801,39.4,9110,8802,-8.0754862,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +5041,"WGS 84 / UPS North (E,N)",9001,4326,16061,9810,1,0,1026,8801,90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +5042,"WGS 84 / UPS South (E,N)",9001,4326,16161,9810,1,0,1027,8801,-90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +5048,"ETRS89 / TM35FIN(N,E)",9001,4258,16065,9807,1,0,4500,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5069,"NAD27 / Conus Albers",9001,4267,5068,9822,1,0,4499,8821,23,9102,8822,-96,9102,8823,29.3,9110,8824,45.3,9110,8826,0,9001,8827,0,9001,,, +5070,"NAD83 / Conus Albers",9001,4269,5068,9822,1,0,4499,8821,23,9102,8822,-96,9102,8823,29.3,9110,8824,45.3,9110,8826,0,9001,8827,0,9001,,, +5071,"NAD83(HARN) / Conus Albers",9001,4152,5068,9822,1,0,4499,8821,23,9102,8822,-96,9102,8823,29.3,9110,8824,45.3,9110,8826,0,9001,8827,0,9001,,, +5072,"NAD83(NSRS2007) / Conus Albers",9001,4759,5068,9822,1,0,4499,8821,23,9102,8822,-96,9102,8823,29.3,9110,8824,45.3,9110,8826,0,9001,8827,0,9001,,, +5105,"ETRS89 / NTM zone 5",9001,4258,5135,9807,1,0,4500,8801,58,9110,8802,5.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5106,"ETRS89 / NTM zone 6",9001,4258,5136,9807,1,0,4500,8801,58,9110,8802,6.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5107,"ETRS89 / NTM zone 7",9001,4258,5137,9807,1,0,4500,8801,58,9110,8802,7.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5108,"ETRS89 / NTM zone 8",9001,4258,5138,9807,1,0,4500,8801,58,9110,8802,8.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5109,"ETRS89 / NTM zone 9",9001,4258,5139,9807,1,0,4500,8801,58,9110,8802,9.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5110,"ETRS89 / NTM zone 10",9001,4258,5140,9807,1,0,4500,8801,58,9110,8802,10.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5111,"ETRS89 / NTM zone 11",9001,4258,5141,9807,1,0,4500,8801,58,9110,8802,11.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5112,"ETRS89 / NTM zone 12",9001,4258,5142,9807,1,0,4500,8801,58,9110,8802,12.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5113,"ETRS89 / NTM zone 13",9001,4258,5143,9807,1,0,4500,8801,58,9110,8802,13.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5114,"ETRS89 / NTM zone 14",9001,4258,5144,9807,1,0,4500,8801,58,9110,8802,14.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5115,"ETRS89 / NTM zone 15",9001,4258,5145,9807,1,0,4500,8801,58,9110,8802,15.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5116,"ETRS89 / NTM zone 16",9001,4258,5146,9807,1,0,4500,8801,58,9110,8802,16.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5117,"ETRS89 / NTM zone 17",9001,4258,5147,9807,1,0,4500,8801,58,9110,8802,17.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5118,"ETRS89 / NTM zone 18",9001,4258,5148,9807,1,0,4500,8801,58,9110,8802,18.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5119,"ETRS89 / NTM zone 19",9001,4258,5149,9807,1,0,4500,8801,58,9110,8802,19.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5120,"ETRS89 / NTM zone 20",9001,4258,5150,9807,1,0,4500,8801,58,9110,8802,20.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5121,"ETRS89 / NTM zone 21",9001,4258,5151,9807,1,0,4500,8801,58,9110,8802,21.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5122,"ETRS89 / NTM zone 22",9001,4258,5152,9807,1,0,4500,8801,58,9110,8802,22.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5123,"ETRS89 / NTM zone 23",9001,4258,5153,9807,1,0,4500,8801,58,9110,8802,23.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5124,"ETRS89 / NTM zone 24",9001,4258,5154,9807,1,0,4500,8801,58,9110,8802,24.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5125,"ETRS89 / NTM zone 25",9001,4258,5155,9807,1,0,4500,8801,58,9110,8802,25.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5126,"ETRS89 / NTM zone 26",9001,4258,5156,9807,1,0,4500,8801,58,9110,8802,26.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5127,"ETRS89 / NTM zone 27",9001,4258,5157,9807,1,0,4500,8801,58,9110,8802,27.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5128,"ETRS89 / NTM zone 28",9001,4258,5158,9807,1,0,4500,8801,58,9110,8802,28.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5129,"ETRS89 / NTM zone 29",9001,4258,5159,9807,1,0,4500,8801,58,9110,8802,29.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5130,"ETRS89 / NTM zone 30",9001,4258,5160,9807,1,0,4500,8801,58,9110,8802,30.3,9110,8805,1,9201,8806,100000,9001,8807,1000000,9001,,,,,, +5167,"Korean 1985 / East Sea Belt",9001,4162,5049,9807,1,0,4530,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5168,"Korean 1985 / Central Belt Jeju",9001,4162,5131,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,550000,9001,,,,,, +5169,"Tokyo 1892 / Korea West Belt",9001,5132,18253,9807,1,0,4530,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5170,"Tokyo 1892 / Korea Central Belt",9001,5132,18252,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5171,"Tokyo 1892 / Korea East Belt",9001,5132,18251,9807,1,0,4530,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5172,"Tokyo 1892 / Korea East Sea Belt",9001,5132,5049,9807,1,0,4530,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5173,"Korean 1985 / Modified West Belt",9001,4162,5161,9807,1,0,4530,8801,38,9102,8802,125.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5174,"Korean 1985 / Modified Central Belt",9001,4162,5162,9807,1,0,4530,8801,38,9102,8802,127.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5175,"Korean 1985 / Modified Central Belt Jeju",9001,4162,5163,9807,1,0,4530,8801,38,9102,8802,127.0010405,9110,8805,1,9201,8806,200000,9001,8807,550000,9001,,,,,, +5176,"Korean 1985 / Modified East Belt",9001,4162,5164,9807,1,0,4530,8801,38,9102,8802,129.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5177,"Korean 1985 / Modified East Sea Belt",9001,4162,5165,9807,1,0,4530,8801,38,9102,8802,131.0010405,9110,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5178,"Korean 1985 / Unified CS",9001,4162,5100,9807,1,0,4530,8801,38,9102,8802,127.3,9110,8805,0.9996,9201,8806,1000000,9001,8807,2000000,9001,,,,,, +5179,"Korea 2000 / Unified CS",9001,4737,5100,9807,1,0,4530,8801,38,9102,8802,127.3,9110,8805,0.9996,9201,8806,1000000,9001,8807,2000000,9001,,,,,, +5180,"Korea 2000 / West Belt",9001,4737,18253,9807,1,0,4530,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5181,"Korea 2000 / Central Belt",9001,4737,18252,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5182,"Korea 2000 / Central Belt Jeju",9001,4737,5131,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,550000,9001,,,,,, +5183,"Korea 2000 / East Belt",9001,4737,18251,9807,1,0,4530,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5184,"Korea 2000 / East Sea Belt",9001,4737,5049,9807,1,0,4530,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,500000,9001,,,,,, +5185,"Korea 2000 / West Belt 2010",9001,4737,5101,9807,1,0,4530,8801,38,9102,8802,125,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5186,"Korea 2000 / Central Belt 2010",9001,4737,5102,9807,1,0,4530,8801,38,9102,8802,127,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5187,"Korea 2000 / East Belt 2010",9001,4737,5103,9807,1,0,4530,8801,38,9102,8802,129,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5188,"Korea 2000 / East Sea Belt 2010",9001,4737,5104,9807,1,0,4530,8801,38,9102,8802,131,9102,8805,1,9201,8806,200000,9001,8807,600000,9001,,,,,, +5221,"S-JTSK (Ferro) / Krovak East North",9001,4818,5218,1041,1,0,4499,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,42.3,9110 +5223,"WGS 84 / Gabon TM",9001,4326,5222,9807,1,0,4499,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,500000,9001,,,,,, +5224,"S-JTSK/05 (Ferro) / Modified Krovak",9001,5229,5219,1042,1,0,6501,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5225,"S-JTSK/05 (Ferro) / Modified Krovak East North",9001,5229,5220,1043,1,0,4499,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5234,"Kandawala / Sri Lanka Grid",9001,4244,5231,9807,1,0,4400,8801,7.0001729,9110,8802,80.461816,9110,8805,0.9999238418,9201,8806,200000,9001,8807,200000,9001,,,,,, +5235,"SLD99 / Sri Lanka Grid 1999",9001,5233,5232,9807,1,0,4400,8801,7.00016975,9110,8802,80.46181671,9110,8805,0.9999238418,9201,8806,500000,9001,8807,500000,9001,,,,,, +5243,"ETRS89 / LCC Germany (E-N)",9001,4258,4838,9802,1,0,4400,8821,51,9102,8822,10.3,9110,8823,48.4,9110,8824,53.4,9110,8826,0,9001,8827,0,9001,,, +5247,"GDBD2009 / Brunei BRSO",9001,5246,19894,9812,1,0,4400,8806,0,9001,8807,0,9001,8811,4,9110,8812,115,9110,8813,53.185691582,9110,8814,53.07483685,9110,8815,0.99984,9201 +5253,"TUREF / TM27",9001,5252,16305,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5254,"TUREF / TM30",9001,5252,16370,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5255,"TUREF / TM33",9001,5252,16306,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5256,"TUREF / TM36",9001,5252,16372,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5257,"TUREF / TM39",9001,5252,16307,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5258,"TUREF / TM42",9001,5252,16374,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5259,"TUREF / TM45",9001,5252,16308,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +5266,"DRUKREF 03 / Bhutan National Grid",9001,5264,5265,9807,1,0,4400,8801,0,9102,8802,90,9102,8805,1,9201,8806,250000,9001,8807,0,9001,,,,,, +5269,"TUREF / 3-degree Gauss-Kruger zone 9",9001,5252,16269,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +5270,"TUREF / 3-degree Gauss-Kruger zone 10",9001,5252,16270,9807,1,0,4530,8801,0,9102,8802,30,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +5271,"TUREF / 3-degree Gauss-Kruger zone 11",9001,5252,16271,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +5272,"TUREF / 3-degree Gauss-Kruger zone 12",9001,5252,16272,9807,1,0,4530,8801,0,9102,8802,36,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +5273,"TUREF / 3-degree Gauss-Kruger zone 13",9001,5252,16273,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +5274,"TUREF / 3-degree Gauss-Kruger zone 14",9001,5252,16274,9807,1,0,4530,8801,0,9102,8802,42,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +5275,"TUREF / 3-degree Gauss-Kruger zone 15",9001,5252,16275,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +5292,"DRUKREF 03 / Bumthang TM",9001,5264,5268,9807,1,0,4400,8801,0,9110,8802,90.44,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5293,"DRUKREF 03 / Chhukha TM",9001,5264,5276,9807,1,0,4400,8801,0,9110,8802,89.33,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5294,"DRUKREF 03 / Dagana TM",9001,5264,5277,9807,1,0,4400,8801,0,9110,8802,89.51,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5295,"DRUKREF 03 / Gasa TM",9001,5264,5278,9807,1,0,4400,8801,0,9110,8802,90.02,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5296,"DRUKREF 03 / Ha TM",9001,5264,5279,9807,1,0,4400,8801,0,9110,8802,90.09,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5297,"DRUKREF 03 / Lhuentse TM",9001,5264,5280,9807,1,0,4400,8801,0,9110,8802,91.08,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5298,"DRUKREF 03 / Mongar TM",9001,5264,5281,9807,1,0,4400,8801,0,9110,8802,91.14,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5299,"DRUKREF 03 / Paro TM",9001,5264,5282,9807,1,0,4400,8801,0,9110,8802,89.21,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5300,"DRUKREF 03 / Pemagatshel TM",9001,5264,5283,9807,1,0,4400,8801,0,9110,8802,91.21,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5301,"DRUKREF 03 / Punakha TM",9001,5264,5313,9807,1,0,4400,8801,0,9110,8802,89.51,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5302,"DRUKREF 03 / Samdrup Jongkhar TM",9001,5264,5285,9807,1,0,4400,8801,0,9110,8802,91.34,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5303,"DRUKREF 03 / Samtse TM",9001,5264,5286,9807,1,0,4400,8801,0,9110,8802,89.04,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5304,"DRUKREF 03 / Sarpang TM",9001,5264,5287,9807,1,0,4400,8801,0,9110,8802,90.16,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5305,"DRUKREF 03 / Thimphu TM",9001,5264,5312,9807,1,0,4400,8801,0,9110,8802,89.33,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5306,"DRUKREF 03 / Trashigang TM",9001,5264,5289,9807,1,0,4400,8801,0,9110,8802,91.45,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5307,"DRUKREF 03 / Trongsa TM",9001,5264,5290,9807,1,0,4400,8801,0,9110,8802,90.3,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5308,"DRUKREF 03 / Tsirang TM",9001,5264,5284,9807,1,0,4400,8801,0,9110,8802,90.1,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5309,"DRUKREF 03 / Wangdue Phodrang TM",9001,5264,5288,9807,1,0,4400,8801,0,9110,8802,90.07,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5310,"DRUKREF 03 / Yangtse TM",9001,5264,5314,9807,1,0,4400,8801,0,9110,8802,91.34,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5311,"DRUKREF 03 / Zhemgang TM",9001,5264,5291,9807,1,0,4400,8801,0,9110,8802,90.52,9110,8805,1,9201,8806,250000,9001,8807,-2500000,9001,,,,,, +5316,"ETRS89 / Faroe TM",9001,4258,5315,9807,1,0,4400,8801,0,9102,8802,-7,9102,8805,0.999997,9201,8806,200000,9001,8807,-6000000,9001,,,,,, +5320,"NAD83 / Teranet Ontario Lambert",9001,4269,5319,9802,1,0,4499,8821,0,9102,8822,-84,9102,8823,44.3,9110,8824,54.3,9110,8826,1000000,9001,8827,0,9001,,, +5321,"NAD83(CSRS) / Teranet Ontario Lambert",9001,4617,5319,9802,1,0,4499,8821,0,9102,8822,-84,9102,8823,44.3,9110,8824,54.3,9110,8826,1000000,9001,8827,0,9001,,, +5325,"ISN2004 / Lambert 2004",9001,5324,5326,9802,1,0,4499,8821,65,9110,8822,-19,9110,8823,64.15,9110,8824,65.45,9110,8826,1700000,9001,8827,300000,9001,,, +5329,"Segara (Jakarta) / NEIEZ",9001,4820,5328,9804,1,0,4499,8801,0,9102,8802,3.113221,9110,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +5330,"Batavia (Jakarta) / NEIEZ",9001,4813,5328,9804,1,0,4499,8801,0,9102,8802,3.113221,9110,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +5331,"Makassar (Jakarta) / NEIEZ",9001,4804,5328,9804,1,0,4499,8801,0,9102,8802,3.113221,9110,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +5337,"Aratu / UTM zone 25S",9001,4208,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5343,"POSGAR 2007 / Argentina 1",9001,5340,18031,9807,1,0,4530,8801,-90,9102,8802,-72,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +5344,"POSGAR 2007 / Argentina 2",9001,5340,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +5345,"POSGAR 2007 / Argentina 3",9001,5340,18033,9807,1,0,4530,8801,-90,9102,8802,-66,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +5346,"POSGAR 2007 / Argentina 4",9001,5340,18034,9807,1,0,4530,8801,-90,9102,8802,-63,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +5347,"POSGAR 2007 / Argentina 5",9001,5340,18035,9807,1,0,4530,8801,-90,9102,8802,-60,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +5348,"POSGAR 2007 / Argentina 6",9001,5340,18036,9807,1,0,4530,8801,-90,9102,8802,-57,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +5349,"POSGAR 2007 / Argentina 7",9001,5340,18037,9807,1,0,4530,8801,-90,9102,8802,-54,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +5355,"MARGEN / UTM zone 20S",9001,5354,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5356,"MARGEN / UTM zone 19S",9001,5354,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5357,"MARGEN / UTM zone 21S",9001,5354,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5361,"SIRGAS-Chile / UTM zone 19S",9001,5360,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5362,"SIRGAS-Chile / UTM zone 18S",9001,5360,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5367,"CR05 / CRTM05",9001,5365,5366,9807,1,0,4500,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +5382,"SIRGAS-ROU98 / UTM zone 21S",9001,5381,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5383,"SIRGAS-ROU98 / UTM zone 22S",9001,5381,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5387,"Peru96 / UTM zone 18S",9001,5373,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5388,"Peru96 / UTM zone 17S",9001,5373,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5389,"Peru96 / UTM zone 19S",9001,5373,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5396,"SIRGAS 2000 / UTM zone 26S",9001,4674,16126,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5456,"Ocotepeque 1935 / Costa Rica Norte",9001,5451,5390,9801,1,0,4499,8801,10.28,9110,8802,-84.2,9110,8805,0.99995696,9201,8806,500000,9001,8807,271820.522,9001,,,,,, +5457,"Ocotepeque 1935 / Costa Rica Sur",9001,5451,5394,9801,1,0,4499,8801,9,9110,8802,-83.4,9110,8805,0.99995696,9201,8806,500000,9001,8807,327987.436,9001,,,,,, +5458,"Ocotepeque 1935 / Guatemala Norte",9001,4267,18211,9801,1,1,4499,8801,16.49,9110,8802,-90.2,9110,8805,0.99992226,9201,8806,500000,9001,8807,292209.579,9001,,,,,, +5459,"Ocotepeque 1935 / Guatemala Sur",9001,5451,18212,9801,1,0,4499,8801,14.54,9110,8802,-90.2,9110,8805,0.99989906,9201,8806,500000,9001,8807,325992.681,9001,,,,,, +5460,"Ocotepeque 1935 / El Salvador Lambert",9001,5451,5399,9801,1,0,4499,8801,13.47,9110,8802,-89,9110,8805,0.99996704,9201,8806,500000,9001,8807,295809.184,9001,,,,,, +5461,"Ocotepeque 1935 / Nicaragua Norte",9001,5451,5439,9801,1,0,4499,8801,13.52,9110,8802,-85.3,9110,8805,0.99990314,9201,8806,500000,9001,8807,359891.816,9001,,,,,, +5462,"Ocotepeque 1935 / Nicaragua Sur",9001,5451,5444,9801,1,0,4499,8801,11.44,9110,8802,-85.3,9110,8805,0.99992228,9201,8806,500000,9001,8807,288876.327,9001,,,,,, +5463,"SAD69 / UTM zone 17N",9001,4618,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5466,"Sibun Gorge 1922 / Colony Grid",9001,5464,5465,9807,1,0,4499,8801,17.0340471,9110,8802,-88.3754687,9110,8805,1,9201,8806,217259.26,9005,8807,445474.83,9005,,,,,, +5469,"Panama-Colon 1911 / Panama Lambert",9001,5467,5468,9801,1,0,4499,8801,8.25,9110,8802,-80,9110,8805,0.99989909,9201,8806,500000,9001,8807,294865.303,9001,,,,,, +5472,"Panama-Colon 1911 / Panama Polyconic",9037,5467,5471,9818,1,0,1028,8801,8.15,9110,8802,-81,9110,8806,1000000,9037,8807,1092972.1,9037,,,,,,,,, +5479,"RSRGD2000 / MSLC2000",9001,4764,5475,9802,1,0,4500,8821,-78,9110,8822,163,9110,8823,-76.4,9110,8824,-79.2,9110,8826,7000000,9001,8827,5000000,9001,,, +5480,"RSRGD2000 / BCLC2000",9001,4764,5476,9802,1,0,4500,8821,-74.3,9110,8822,165,9110,8823,-73.4,9110,8824,-75.2,9110,8826,5000000,9001,8827,3000000,9001,,, +5481,"RSRGD2000 / PCLC2000",9001,4764,5477,9802,1,0,4500,8821,-71.3,9110,8822,166,9110,8823,-70.4,9110,8824,-72.2,9110,8826,3000000,9001,8827,1000000,9001,,, +5482,"RSRGD2000 / RSPS2000",9001,4764,5478,9810,1,0,4500,8801,-90,9102,8802,180,9102,8805,0.994,9201,8806,5000000,9001,8807,1000000,9001,,,,,, +5490,"RGAF09 / UTM zone 20N",9001,5489,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +5513,"S-JTSK / Krovak",9001,4156,5509,9819,1,0,6501,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,24.5,9110 +5514,"S-JTSK / Krovak East North",9001,4156,5510,1041,1,0,4499,1036,30.1717303,9110,8806,0,9001,8807,0,9001,8811,49.3,9110,8818,78.3,9110,8819,0.9999,9201,8833,24.5,9110 +5515,"S-JTSK/05 / Modified Krovak",9001,5228,5511,1042,1,0,6501,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5516,"S-JTSK/05 / Modified Krovak East North",9001,5228,5512,1043,1,0,4499,1026,0.02946529277,9203,1027,0.02515965696,9203,1028,1.193845912e-07,9203,1029,-4.668270147e-07,9203,1030,9.233980362e-12,9203,1031,1.523735715e-12,9203,1032,1.696780024e-18,9203 +5518,"CI1971 / Chatham Islands Map Grid",9001,4672,5517,9807,1,0,4500,8801,-44,9110,8802,-176.3,9110,8805,1,9201,8806,350000,9001,8807,650000,9001,,,,,, +5519,"CI1979 / Chatham Islands Map Grid",9001,4673,5517,9807,1,0,4500,8801,-44,9110,8802,-176.3,9110,8805,1,9201,8806,350000,9001,8807,650000,9001,,,,,, +5520,"DHDN / 3-degree Gauss-Kruger zone 1",9001,4314,16261,9807,1,0,4530,8801,0,9102,8802,3,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +5523,"WGS 84 / Gabon TM 2011",9001,4326,5522,9807,1,0,4499,8801,0,9102,8802,11.3,9110,8805,0.9996,9201,8806,1500000,9001,8807,5500000,9001,,,,,, +5530,"SAD69(96) / Brazil Polyconic",9001,5527,19941,9818,1,0,4499,8801,0,9102,8802,-54,9102,8806,5000000,9001,8807,10000000,9001,,,,,,,,, +5531,"SAD69(96) / UTM zone 21S",9001,5527,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5532,"SAD69(96) / UTM zone 22S",9001,4618,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5533,"SAD69(96) / UTM zone 23S",9001,5527,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5534,"SAD69(96) / UTM zone 24S",9001,5527,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5535,"SAD69(96) / UTM zone 25S",9001,5527,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5536,"Corrego Alegre 1961 / UTM zone 21S",9001,5524,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5537,"Corrego Alegre 1961 / UTM zone 22S",9001,5524,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5538,"Corrego Alegre 1961 / UTM zone 23S",9001,5524,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5539,"Corrego Alegre 1961 / UTM zone 24S",9001,5524,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5550,"PNG94 / PNGMG94 zone 54",9001,5546,5547,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5551,"PNG94 / PNGMG94 zone 55",9001,5546,5548,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5552,"PNG94 / PNGMG94 zone 56",9001,5546,5549,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +5559,"Ocotepeque 1935 / Guatemala Norte",9001,5451,18211,9801,1,0,4499,8801,16.49,9110,8802,-90.2,9110,8805,0.99992226,9201,8806,500000,9001,8807,292209.579,9001,,,,,, +5819,EPSG topocentric example A,9001,4979,15594,9837,1,0,4461,8834,55,9102,8835,5,9102,8836,0,9001,,,,,,,,,,,, +5820,EPSG topocentric example B,9001,4978,15595,9836,1,0,4461,8837,3771793.97,9001,8838,140253.34,9001,8839,5124304.35,9001,,,,,,,,,,,, +5821,EPSG vertical perspective example,9001,5819,19850,9838,1,0,4461,8834,55,9102,8835,5,9102,8836,200,9001,8840,5900,9036,,,,,,,,, +20004,"Pulkovo 1995 / Gauss-Kruger zone 4",9001,4200,16204,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +20005,"Pulkovo 1995 / Gauss-Kruger zone 5",9001,4200,16205,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +20006,"Pulkovo 1995 / Gauss-Kruger zone 6",9001,4200,16206,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +20007,"Pulkovo 1995 / Gauss-Kruger zone 7",9001,4200,16207,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +20008,"Pulkovo 1995 / Gauss-Kruger zone 8",9001,4200,16208,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +20009,"Pulkovo 1995 / Gauss-Kruger zone 9",9001,4200,16209,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +20010,"Pulkovo 1995 / Gauss-Kruger zone 10",9001,4200,16210,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +20011,"Pulkovo 1995 / Gauss-Kruger zone 11",9001,4200,16211,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +20012,"Pulkovo 1995 / Gauss-Kruger zone 12",9001,4200,16212,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +20013,"Pulkovo 1995 / Gauss-Kruger zone 13",9001,4200,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +20014,"Pulkovo 1995 / Gauss-Kruger zone 14",9001,4200,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +20015,"Pulkovo 1995 / Gauss-Kruger zone 15",9001,4200,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +20016,"Pulkovo 1995 / Gauss-Kruger zone 16",9001,4200,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +20017,"Pulkovo 1995 / Gauss-Kruger zone 17",9001,4200,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +20018,"Pulkovo 1995 / Gauss-Kruger zone 18",9001,4200,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +20019,"Pulkovo 1995 / Gauss-Kruger zone 19",9001,4200,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +20020,"Pulkovo 1995 / Gauss-Kruger zone 20",9001,4200,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +20021,"Pulkovo 1995 / Gauss-Kruger zone 21",9001,4200,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +20022,"Pulkovo 1995 / Gauss-Kruger zone 22",9001,4200,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +20023,"Pulkovo 1995 / Gauss-Kruger zone 23",9001,4200,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +20024,"Pulkovo 1995 / Gauss-Kruger zone 24",9001,4200,16224,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +20025,"Pulkovo 1995 / Gauss-Kruger zone 25",9001,4200,16225,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +20026,"Pulkovo 1995 / Gauss-Kruger zone 26",9001,4200,16226,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +20027,"Pulkovo 1995 / Gauss-Kruger zone 27",9001,4200,16227,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +20028,"Pulkovo 1995 / Gauss-Kruger zone 28",9001,4200,16228,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +20029,"Pulkovo 1995 / Gauss-Kruger zone 29",9001,4200,16229,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +20030,"Pulkovo 1995 / Gauss-Kruger zone 30",9001,4200,16230,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +20031,"Pulkovo 1995 / Gauss-Kruger zone 31",9001,4200,16231,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +20032,"Pulkovo 1995 / Gauss-Kruger zone 32",9001,4200,16232,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +20064,"Pulkovo 1995 / Gauss-Kruger 4N",9001,4200,16304,9807,1,1,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20065,"Pulkovo 1995 / Gauss-Kruger 5N",9001,4200,16305,9807,1,1,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20066,"Pulkovo 1995 / Gauss-Kruger 6N",9001,4200,16306,9807,1,1,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20067,"Pulkovo 1995 / Gauss-Kruger 7N",9001,4200,16307,9807,1,1,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20068,"Pulkovo 1995 / Gauss-Kruger 8N",9001,4200,16308,9807,1,1,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20069,"Pulkovo 1995 / Gauss-Kruger 9N",9001,4200,16309,9807,1,1,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20070,"Pulkovo 1995 / Gauss-Kruger 10N",9001,4200,16310,9807,1,1,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20071,"Pulkovo 1995 / Gauss-Kruger 11N",9001,4200,16311,9807,1,1,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20072,"Pulkovo 1995 / Gauss-Kruger 12N",9001,4200,16312,9807,1,1,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20073,"Pulkovo 1995 / Gauss-Kruger 13N",9001,4200,16313,9807,1,1,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20074,"Pulkovo 1995 / Gauss-Kruger 14N",9001,4200,16314,9807,1,1,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20075,"Pulkovo 1995 / Gauss-Kruger 15N",9001,4200,16315,9807,1,1,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20076,"Pulkovo 1995 / Gauss-Kruger 16N",9001,4200,16316,9807,1,1,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20077,"Pulkovo 1995 / Gauss-Kruger 17N",9001,4200,16317,9807,1,1,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20078,"Pulkovo 1995 / Gauss-Kruger 18N",9001,4200,16318,9807,1,1,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20079,"Pulkovo 1995 / Gauss-Kruger 19N",9001,4200,16319,9807,1,1,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20080,"Pulkovo 1995 / Gauss-Kruger 20N",9001,4200,16320,9807,1,1,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20081,"Pulkovo 1995 / Gauss-Kruger 21N",9001,4200,16321,9807,1,1,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20082,"Pulkovo 1995 / Gauss-Kruger 22N",9001,4200,16322,9807,1,1,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20083,"Pulkovo 1995 / Gauss-Kruger 23N",9001,4200,16323,9807,1,1,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20084,"Pulkovo 1995 / Gauss-Kruger 24N",9001,4200,16324,9807,1,1,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20085,"Pulkovo 1995 / Gauss-Kruger 25N",9001,4200,16325,9807,1,1,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20086,"Pulkovo 1995 / Gauss-Kruger 26N",9001,4200,16326,9807,1,1,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20087,"Pulkovo 1995 / Gauss-Kruger 27N",9001,4200,16327,9807,1,1,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20088,"Pulkovo 1995 / Gauss-Kruger 28N",9001,4200,16328,9807,1,1,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20089,"Pulkovo 1995 / Gauss-Kruger 29N",9001,4200,16329,9807,1,1,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20090,"Pulkovo 1995 / Gauss-Kruger 30N",9001,4200,16330,9807,1,1,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20091,"Pulkovo 1995 / Gauss-Kruger 31N",9001,4200,16331,9807,1,1,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20092,"Pulkovo 1995 / Gauss-Kruger 32N",9001,4200,16332,9807,1,1,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +20135,"Adindan / UTM zone 35N",9001,4201,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20136,"Adindan / UTM zone 36N",9001,4201,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20137,"Adindan / UTM zone 37N",9001,4201,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20138,"Adindan / UTM zone 38N",9001,4201,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20248,"AGD66 / AMG zone 48",9001,4202,17448,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20249,"AGD66 / AMG zone 49",9001,4202,17449,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20250,"AGD66 / AMG zone 50",9001,4202,17450,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20251,"AGD66 / AMG zone 51",9001,4202,17451,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20252,"AGD66 / AMG zone 52",9001,4202,17452,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20253,"AGD66 / AMG zone 53",9001,4202,17453,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20254,"AGD66 / AMG zone 54",9001,4202,17454,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20255,"AGD66 / AMG zone 55",9001,4202,17455,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20256,"AGD66 / AMG zone 56",9001,4202,17456,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20257,"AGD66 / AMG zone 57",9001,4202,17457,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20258,"AGD66 / AMG zone 58",9001,4202,17458,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20348,"AGD84 / AMG zone 48",9001,4203,17448,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20349,"AGD84 / AMG zone 49",9001,4203,17449,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20350,"AGD84 / AMG zone 50",9001,4203,17450,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20351,"AGD84 / AMG zone 51",9001,4203,17451,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20352,"AGD84 / AMG zone 52",9001,4203,17452,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20353,"AGD84 / AMG zone 53",9001,4203,17453,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20354,"AGD84 / AMG zone 54",9001,4203,17454,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20355,"AGD84 / AMG zone 55",9001,4203,17455,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20356,"AGD84 / AMG zone 56",9001,4203,17456,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20357,"AGD84 / AMG zone 57",9001,4203,17457,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20358,"AGD84 / AMG zone 58",9001,4203,17458,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20436,"Ain el Abd / UTM zone 36N",9001,4204,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20437,"Ain el Abd / UTM zone 37N",9001,4204,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20438,"Ain el Abd / UTM zone 38N",9001,4204,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20439,"Ain el Abd / UTM zone 39N",9001,4204,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20440,"Ain el Abd / UTM zone 40N",9001,4204,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20499,"Ain el Abd / Bahrain Grid",9001,4204,19900,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20538,"Afgooye / UTM zone 38N",9001,4205,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20539,"Afgooye / UTM zone 39N",9001,4205,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +20790,"Lisbon (Lisbon) / Portuguese National Grid",9001,4803,19936,9807,1,0,4499,8801,39.4,9110,8802,1,9110,8805,1,9201,8806,200000,9001,8807,300000,9001,,,,,, +20791,"Lisbon (Lisbon) / Portuguese Grid",9001,4803,19969,9807,1,0,4499,8801,39.4,9110,8802,1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +20822,"Aratu / UTM zone 22S",9001,4208,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20823,"Aratu / UTM zone 23S",9001,4208,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20824,"Aratu / UTM zone 24S",9001,4208,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20934,"Arc 1950 / UTM zone 34S",9001,4209,16134,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20935,"Arc 1950 / UTM zone 35S",9001,4209,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +20936,"Arc 1950 / UTM zone 36S",9001,4209,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21035,"Arc 1960 / UTM zone 35S",9001,4210,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21036,"Arc 1960 / UTM zone 36S",9001,4210,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21037,"Arc 1960 / UTM zone 37S",9001,4210,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21095,"Arc 1960 / UTM zone 35N",9001,4210,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +21096,"Arc 1960 / UTM zone 36N",9001,4210,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +21097,"Arc 1960 / UTM zone 37N",9001,4210,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +21100,"Batavia (Jakarta) / NEIEZ",9001,4813,19905,9804,1,1,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +21148,"Batavia / UTM zone 48S",9001,4211,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21149,"Batavia / UTM zone 49S",9001,4211,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21150,"Batavia / UTM zone 50S",9001,4211,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +21291,"Barbados 1938 / British West Indies Grid",9001,4212,19942,9807,1,0,4400,8801,0,9102,8802,-62,9102,8805,0.9995,9201,8806,400000,9001,8807,0,9001,,,,,, +21292,"Barbados 1938 / Barbados National Grid",9001,4212,19943,9807,1,0,4400,8801,13.1035,9110,8802,-59.3335,9110,8805,0.9999986,9201,8806,30000,9001,8807,75000,9001,,,,,, +21413,"Beijing 1954 / Gauss-Kruger zone 13",9001,4214,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +21414,"Beijing 1954 / Gauss-Kruger zone 14",9001,4214,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +21415,"Beijing 1954 / Gauss-Kruger zone 15",9001,4214,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +21416,"Beijing 1954 / Gauss-Kruger zone 16",9001,4214,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +21417,"Beijing 1954 / Gauss-Kruger zone 17",9001,4214,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +21418,"Beijing 1954 / Gauss-Kruger zone 18",9001,4214,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +21419,"Beijing 1954 / Gauss-Kruger zone 19",9001,4214,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +21420,"Beijing 1954 / Gauss-Kruger zone 20",9001,4214,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +21421,"Beijing 1954 / Gauss-Kruger zone 21",9001,4214,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +21422,"Beijing 1954 / Gauss-Kruger zone 22",9001,4214,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +21423,"Beijing 1954 / Gauss-Kruger zone 23",9001,4214,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +21453,"Beijing 1954 / Gauss-Kruger CM 75E",9001,4214,16313,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21454,"Beijing 1954 / Gauss-Kruger CM 81E",9001,4214,16314,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21455,"Beijing 1954 / Gauss-Kruger CM 87E",9001,4214,16315,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21456,"Beijing 1954 / Gauss-Kruger CM 93E",9001,4214,16316,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21457,"Beijing 1954 / Gauss-Kruger CM 99E",9001,4214,16317,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21458,"Beijing 1954 / Gauss-Kruger CM 105E",9001,4214,16318,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21459,"Beijing 1954 / Gauss-Kruger CM 111E",9001,4214,16319,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21460,"Beijing 1954 / Gauss-Kruger CM 117E",9001,4214,16320,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21461,"Beijing 1954 / Gauss-Kruger CM 123E",9001,4214,16321,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21462,"Beijing 1954 / Gauss-Kruger CM 129E",9001,4214,16322,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21463,"Beijing 1954 / Gauss-Kruger CM 135E",9001,4214,16323,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21473,"Beijing 1954 / Gauss-Kruger 13N",9001,4214,16313,9807,1,1,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21474,"Beijing 1954 / Gauss-Kruger 14N",9001,4214,16314,9807,1,1,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21475,"Beijing 1954 / Gauss-Kruger 15N",9001,4214,16315,9807,1,1,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21476,"Beijing 1954 / Gauss-Kruger 16N",9001,4214,16316,9807,1,1,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21477,"Beijing 1954 / Gauss-Kruger 17N",9001,4214,16317,9807,1,1,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21478,"Beijing 1954 / Gauss-Kruger 18N",9001,4214,16318,9807,1,1,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21479,"Beijing 1954 / Gauss-Kruger 19N",9001,4214,16319,9807,1,1,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21480,"Beijing 1954 / Gauss-Kruger 20N",9001,4214,16320,9807,1,1,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21481,"Beijing 1954 / Gauss-Kruger 21N",9001,4214,16321,9807,1,1,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21482,"Beijing 1954 / Gauss-Kruger 22N",9001,4214,16322,9807,1,1,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21483,"Beijing 1954 / Gauss-Kruger 23N",9001,4214,16323,9807,1,1,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +21500,"Belge 1950 (Brussels) / Belge Lambert 50",9001,4809,19901,9802,1,0,4499,8821,90,9110,8822,0,9110,8823,49.5,9110,8824,51.1,9110,8826,150000,9001,8827,5400000,9001,,, +21780,"Bern 1898 (Bern) / LV03C",9001,4801,19923,9815,1,0,4498,8811,46.570866,9110,8812,0,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,0,9001,8817,0,9001 +21781,"CH1903 / LV03",9001,4149,19922,9815,1,0,4498,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,600000,9001,8817,200000,9001 +21782,"CH1903 / LV03C-G",9001,4149,19841,9815,1,0,4498,8811,46.570866,9110,8812,7.26225,9110,8813,90,9110,8814,90,9110,8815,1,9201,8816,0,9001,8817,0,9001 +21817,"Bogota 1975 / UTM zone 17N",9001,4218,16017,9807,1,1,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +21818,"Bogota 1975 / UTM zone 18N",9001,4218,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +21891,"Bogota 1975 / Colombia West zone",9001,4218,18051,9807,1,1,4499,8801,4.355657,9110,8802,-77.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21892,"Bogota 1975 / Colombia Bogota zone",9001,4218,18052,9807,1,1,4499,8801,4.355657,9110,8802,-74.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21893,"Bogota 1975 / Colombia East Central zone",9001,4218,18053,9807,1,1,4499,8801,4.355657,9110,8802,-71.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21894,"Bogota 1975 / Colombia East",9001,4218,18054,9807,1,1,4499,8801,4.355657,9110,8802,-68.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21896,"Bogota 1975 / Colombia West zone",9001,4218,18051,9807,1,0,4530,8801,4.355657,9110,8802,-77.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21897,"Bogota 1975 / Colombia Bogota zone",9001,4218,18052,9807,1,0,4530,8801,4.355657,9110,8802,-74.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21898,"Bogota 1975 / Colombia East Central zone",9001,4218,18053,9807,1,0,4530,8801,4.355657,9110,8802,-71.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +21899,"Bogota 1975 / Colombia East",9001,4218,18054,9807,1,0,4530,8801,4.355657,9110,8802,-68.04513,9110,8805,1,9201,8806,1000000,9001,8807,1000000,9001,,,,,, +22032,"Camacupa / UTM zone 32S",9001,4220,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22033,"Camacupa / UTM zone 33S",9001,4220,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22091,"Camacupa / TM 11.30 SE",9001,4220,16611,9807,1,0,4400,8801,0,9110,8802,11.3,9110,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22092,"Camacupa / TM 12 SE",9001,4220,16612,9807,1,0,4400,8801,0,9102,8802,12,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22171,"POSGAR 98 / Argentina 1",9001,4190,18031,9807,1,0,4530,8801,-90,9102,8802,-72,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +22172,"POSGAR 98 / Argentina 2",9001,4190,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +22173,"POSGAR 98 / Argentina 3",9001,4190,18033,9807,1,0,4530,8801,-90,9102,8802,-66,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +22174,"POSGAR 98 / Argentina 4",9001,4190,18034,9807,1,0,4530,8801,-90,9102,8802,-63,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +22175,"POSGAR 98 / Argentina 5",9001,4190,18035,9807,1,0,4530,8801,-90,9102,8802,-60,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +22176,"POSGAR 98 / Argentina 6",9001,4190,18036,9807,1,0,4530,8801,-90,9102,8802,-57,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +22177,"POSGAR 98 / Argentina 7",9001,4190,18037,9807,1,0,4530,8801,-90,9102,8802,-54,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +22181,"POSGAR 94 / Argentina 1",9001,4694,18031,9807,1,0,4530,8801,-90,9102,8802,-72,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +22182,"POSGAR 94 / Argentina 2",9001,4694,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +22183,"POSGAR 94 / Argentina 3",9001,4694,18033,9807,1,0,4530,8801,-90,9102,8802,-66,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +22184,"POSGAR 94 / Argentina 4",9001,4694,18034,9807,1,0,4530,8801,-90,9102,8802,-63,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +22185,"POSGAR 94 / Argentina 5",9001,4694,18035,9807,1,0,4530,8801,-90,9102,8802,-60,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +22186,"POSGAR 94 / Argentina 6",9001,4694,18036,9807,1,0,4530,8801,-90,9102,8802,-57,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +22187,"POSGAR 94 / Argentina 7",9001,4694,18037,9807,1,0,4530,8801,-90,9102,8802,-54,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +22191,"Campo Inchauspe / Argentina 1",9001,4221,18031,9807,1,0,4530,8801,-90,9102,8802,-72,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +22192,"Campo Inchauspe / Argentina 2",9001,4221,18032,9807,1,0,4530,8801,-90,9102,8802,-69,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +22193,"Campo Inchauspe / Argentina 3",9001,4221,18033,9807,1,0,4530,8801,-90,9102,8802,-66,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +22194,"Campo Inchauspe / Argentina 4",9001,4221,18034,9807,1,0,4530,8801,-90,9102,8802,-63,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +22195,"Campo Inchauspe / Argentina 5",9001,4221,18035,9807,1,0,4530,8801,-90,9102,8802,-60,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +22196,"Campo Inchauspe / Argentina 6",9001,4221,18036,9807,1,0,4530,8801,-90,9102,8802,-57,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +22197,"Campo Inchauspe / Argentina 7",9001,4221,18037,9807,1,0,4530,8801,-90,9102,8802,-54,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +22234,"Cape / UTM zone 34S",9001,4222,16134,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22235,"Cape / UTM zone 35S",9001,4222,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22236,"Cape / UTM zone 36S",9001,4222,16136,9807,1,1,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22275,"Cape / Lo15",9001,4222,17515,9808,1,0,6503,8801,0,9102,8802,15,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22277,"Cape / Lo17",9001,4222,17517,9808,1,0,6503,8801,0,9102,8802,17,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22279,"Cape / Lo19",9001,4222,17519,9808,1,0,6503,8801,0,9102,8802,19,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22281,"Cape / Lo21",9001,4222,17521,9808,1,0,6503,8801,0,9102,8802,21,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22283,"Cape / Lo23",9001,4222,17523,9808,1,0,6503,8801,0,9102,8802,23,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22285,"Cape / Lo25",9001,4222,17525,9808,1,0,6503,8801,0,9102,8802,25,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22287,"Cape / Lo27",9001,4222,17527,9808,1,0,6503,8801,0,9102,8802,27,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22289,"Cape / Lo29",9001,4222,17529,9808,1,0,6503,8801,0,9102,8802,29,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22291,"Cape / Lo31",9001,4222,17531,9808,1,0,6503,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22293,"Cape / Lo33",9001,4222,17533,9808,1,0,6503,8801,0,9102,8802,33,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +22300,"Carthage (Paris) / Tunisia Mining Grid",9036,4816,19937,9816,1,0,4406,8821,38.81973,9105,8822,7.83445,9105,8826,270,9036,8827,582,9036,,,,,,,,, +22332,"Carthage / UTM zone 32N",9001,4223,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +22391,"Carthage / Nord Tunisie",9001,4223,18181,9801,1,0,4499,8801,40,9105,8802,11,9105,8805,0.999625544,9201,8806,500000,9001,8807,300000,9001,,,,,, +22392,"Carthage / Sud Tunisie",9001,4223,18182,9801,1,0,4499,8801,37,9105,8802,11,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +22521,"Corrego Alegre 1970-72 / UTM zone 21S",9001,4225,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22522,"Corrego Alegre 1970-72 / UTM zone 22S",9001,4225,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22523,"Corrego Alegre 1970-72 / UTM zone 23S",9001,4225,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22524,"Corrego Alegre 1970-72 / UTM zone 24S",9001,4225,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22525,"Corrego Alegre 1970-72 / UTM zone 25S",9001,4225,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +22700,"Deir ez Zor / Levant Zone",9001,4227,19940,9817,1,0,4499,8801,34.39,9110,8802,37.21,9110,8805,0.9996256,9201,8806,300000,9001,8807,300000,9001,,,,,, +22770,"Deir ez Zor / Syria Lambert",9001,4227,19948,9801,1,0,4499,8801,34.39,9110,8802,37.21,9110,8805,0.9996256,9201,8806,300000,9001,8807,300000,9001,,,,,, +22780,"Deir ez Zor / Levant Stereographic",9001,4227,19949,9809,1,0,4499,8801,38,9105,8802,43.5,9105,8805,0.9995341,9201,8806,0,9001,8807,0,9001,,,,,, +22832,"Douala / UTM zone 32N",9001,4228,16032,9807,1,1,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +22991,"Egypt 1907 / Blue Belt",9001,4229,18071,9807,1,0,4400,8801,30,9102,8802,35,9102,8805,1,9201,8806,300000,9001,8807,1100000,9001,,,,,, +22992,"Egypt 1907 / Red Belt",9001,4229,18072,9807,1,0,4400,8801,30,9102,8802,31,9102,8805,1,9201,8806,615000,9001,8807,810000,9001,,,,,, +22993,"Egypt 1907 / Purple Belt",9001,4229,18073,9807,1,0,4400,8801,30,9102,8802,27,9102,8805,1,9201,8806,700000,9001,8807,200000,9001,,,,,, +22994,"Egypt 1907 / Extended Purple Belt",9001,4229,18074,9807,1,0,4400,8801,30,9102,8802,27,9102,8805,1,9201,8806,700000,9001,8807,1200000,9001,,,,,, +23028,"ED50 / UTM zone 28N",9001,4230,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23029,"ED50 / UTM zone 29N",9001,4230,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23030,"ED50 / UTM zone 30N",9001,4230,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23031,"ED50 / UTM zone 31N",9001,4230,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23032,"ED50 / UTM zone 32N",9001,4230,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23033,"ED50 / UTM zone 33N",9001,4230,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23034,"ED50 / UTM zone 34N",9001,4230,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23035,"ED50 / UTM zone 35N",9001,4230,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23036,"ED50 / UTM zone 36N",9001,4230,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23037,"ED50 / UTM zone 37N",9001,4230,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23038,"ED50 / UTM zone 38N",9001,4230,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23090,"ED50 / TM 0 N",9001,4230,16400,9807,1,0,4400,8801,0,9102,8802,0,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23095,"ED50 / TM 5 NE",9001,4230,16405,9807,1,0,4400,8801,0,9102,8802,5,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23239,"Fahud / UTM zone 39N",9001,4232,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23240,"Fahud / UTM zone 40N",9001,4232,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23433,"Garoua / UTM zone 33N",9001,4234,16033,9807,1,1,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23700,"HD72 / EOV",9001,4237,19931,9815,1,0,4498,8811,47.08398174,9110,8812,19.02548584,9110,8813,90,9110,8814,90,9110,8815,0.99993,9201,8816,650000,9001,8817,200000,9001 +23830,"DGN95 / Indonesia TM-3 zone 46.2",9001,4755,17432,9807,1,0,4499,8801,0,9102,8802,94.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23831,"DGN95 / Indonesia TM-3 zone 47.1",9001,4755,17433,9807,1,0,4499,8801,0,9102,8802,97.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23832,"DGN95 / Indonesia TM-3 zone 47.2",9001,4755,17434,9807,1,0,4499,8801,0,9102,8802,100.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23833,"DGN95 / Indonesia TM-3 zone 48.1",9001,4755,17435,9807,1,0,4499,8801,0,9102,8802,103.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23834,"DGN95 / Indonesia TM-3 zone 48.2",9001,4755,17436,9807,1,0,4499,8801,0,9102,8802,106.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23835,"DGN95 / Indonesia TM-3 zone 49.1",9001,4755,17437,9807,1,0,4499,8801,0,9102,8802,109.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23836,"DGN95 / Indonesia TM-3 zone 49.2",9001,4755,17438,9807,1,0,4499,8801,0,9102,8802,112.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23837,"DGN95 / Indonesia TM-3 zone 50.1",9001,4755,17439,9807,1,0,4499,8801,0,9102,8802,115.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23838,"DGN95 / Indonesia TM-3 zone 50.2",9001,4755,17440,9807,1,0,4499,8801,0,9102,8802,118.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23839,"DGN95 / Indonesia TM-3 zone 51.1",9001,4755,17441,9807,1,0,4499,8801,0,9102,8802,121.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23840,"DGN95 / Indonesia TM-3 zone 51.2",9001,4755,17442,9807,1,0,4499,8801,0,9102,8802,124.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23841,"DGN95 / Indonesia TM-3 zone 52.1",9001,4755,17443,9807,1,0,4499,8801,0,9102,8802,127.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23842,"DGN95 / Indonesia TM-3 zone 52.2",9001,4755,17444,9807,1,0,4499,8801,0,9102,8802,130.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23843,"DGN95 / Indonesia TM-3 zone 53.1",9001,4755,17445,9807,1,0,4499,8801,0,9102,8802,133.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23844,"DGN95 / Indonesia TM-3 zone 53.2",9001,4755,17446,9807,1,0,4499,8801,0,9102,8802,136.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23845,"DGN95 / Indonesia TM-3 zone 54.1",9001,4755,17447,9807,1,0,4499,8801,0,9102,8802,139.5,9102,8805,0.9999,9201,8806,200000,9001,8807,1500000,9001,,,,,, +23846,"ID74 / UTM zone 46N",9001,4238,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23847,"ID74 / UTM zone 47N",9001,4238,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23848,"ID74 / UTM zone 48N",9001,4238,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23849,"ID74 / UTM zone 49N",9001,4238,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23850,"ID74 / UTM zone 50N",9001,4238,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23851,"ID74 / UTM zone 51N",9001,4238,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23852,"ID74 / UTM zone 52N",9001,4238,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23853,"ID74 / UTM zone 53N",9001,4238,16053,9807,1,1,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23866,"DGN95 / UTM zone 46N",9001,4755,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23867,"DGN95 / UTM zone 47N",9001,4755,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23868,"DGN95 / UTM zone 48N",9001,4755,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23869,"DGN95 / UTM zone 49N",9001,4755,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23870,"DGN95 / UTM zone 50N",9001,4755,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23871,"DGN95 / UTM zone 51N",9001,4755,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23872,"DGN95 / UTM zone 52N",9001,4755,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23877,"DGN95 / UTM zone 47S",9001,4755,16147,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23878,"DGN95 / UTM zone 48S",9001,4755,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23879,"DGN95 / UTM zone 49S",9001,4755,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23880,"DGN95 / UTM zone 50S",9001,4755,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23881,"DGN95 / UTM zone 51S",9001,4755,16151,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23882,"DGN95 / UTM zone 52S",9001,4755,16152,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23883,"DGN95 / UTM zone 53S",9001,4755,16153,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23884,"DGN95 / UTM zone 54S",9001,4755,16154,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23886,"ID74 / UTM zone 46S",9001,4238,16146,9807,1,1,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23887,"ID74 / UTM zone 47S",9001,4238,16147,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23888,"ID74 / UTM zone 48S",9001,4238,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23889,"ID74 / UTM zone 49S",9001,4238,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23890,"ID74 / UTM zone 50S",9001,4238,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23891,"ID74 / UTM zone 51S",9001,4238,16151,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23892,"ID74 / UTM zone 52S",9001,4238,16152,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23893,"ID74 / UTM zone 53S",9001,4238,16153,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23894,"ID74 / UTM zone 54S",9001,4238,16154,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +23946,"Indian 1954 / UTM zone 46N",9001,4239,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23947,"Indian 1954 / UTM zone 47N",9001,4239,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +23948,"Indian 1954 / UTM zone 48N",9001,4239,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24047,"Indian 1975 / UTM zone 47N",9001,4240,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24048,"Indian 1975 / UTM zone 48N",9001,4240,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24100,"Jamaica 1875 / Jamaica (Old Grid)",9005,4241,19909,9801,1,0,4403,8801,18,9102,8802,-77,9102,8805,1,9201,8806,550000,9005,8807,400000,9005,,,,,, +24200,"JAD69 / Jamaica National Grid",9001,4242,19910,9801,1,0,4400,8801,18,9102,8802,-77,9102,8805,1,9201,8806,250000,9001,8807,150000,9001,,,,,, +24305,"Kalianpur 1937 / UTM zone 45N",9001,4144,16045,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24306,"Kalianpur 1937 / UTM zone 46N",9001,4144,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24311,"Kalianpur 1962 / UTM zone 41N",9001,4145,16041,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24312,"Kalianpur 1962 / UTM zone 42N",9001,4145,16042,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24313,"Kalianpur 1962 / UTM zone 43N",9001,4145,16043,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24342,"Kalianpur 1975 / UTM zone 42N",9001,4146,16042,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24343,"Kalianpur 1975 / UTM zone 43N",9001,4146,16043,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24344,"Kalianpur 1975 / UTM zone 44N",9001,4146,16044,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24345,"Kalianpur 1975 / UTM zone 45N",9001,4146,16045,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24346,"Kalianpur 1975 / UTM zone 46N",9001,4146,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24347,"Kalianpur 1975 / UTM zone 47N",9001,4146,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24370,"Kalianpur 1880 / India zone 0",9084,4243,18110,9801,1,0,4408,8801,39.3,9110,8802,68,9110,8805,0.99846154,9201,8806,2355500,9084,8807,2590000,9084,,,,,, +24371,"Kalianpur 1880 / India zone I",9084,4243,18111,9801,1,0,4408,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +24372,"Kalianpur 1880 / India zone IIa",9084,4243,18112,9801,1,0,4408,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +24373,"Kalianpur 1880 / India zone III",9084,4243,18114,9801,1,0,4408,8801,19,9102,8802,80,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +24374,"Kalianpur 1880 / India zone IV",9084,4243,18116,9801,1,0,4408,8801,12,9102,8802,80,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +24375,"Kalianpur 1937 / India zone IIb",9001,4144,18238,9801,1,0,4400,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,2743185.69,9001,8807,914395.23,9001,,,,,, +24376,"Kalianpur 1962 / India zone I",9001,4145,18236,9801,1,0,4400,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,2743196.4,9001,8807,914398.8,9001,,,,,, +24377,"Kalianpur 1962 / India zone IIa",9001,4145,18237,9801,1,0,4400,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,2743196.4,9001,8807,914398.8,9001,,,,,, +24378,"Kalianpur 1975 / India zone I",9001,4146,18231,9801,1,0,4400,8801,32.3,9110,8802,68,9110,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +24379,"Kalianpur 1975 / India zone IIa",9001,4146,18232,9801,1,0,4400,8801,26,9102,8802,74,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +24380,"Kalianpur 1975 / India zone IIb",9001,4146,18235,9801,1,0,4400,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +24381,"Kalianpur 1975 / India zone III",9001,4146,18233,9801,1,0,4400,8801,19,9102,8802,80,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +24382,"Kalianpur 1880 / India zone IIb",9084,4243,18113,9801,1,0,4408,8801,26,9102,8802,90,9102,8805,0.99878641,9201,8806,3000000,9084,8807,1000000,9084,,,,,, +24383,"Kalianpur 1975 / India zone IV",9001,4146,18234,9801,1,0,4400,8801,12,9102,8802,80,9102,8805,0.99878641,9201,8806,2743195.5,9001,8807,914398.5,9001,,,,,, +24500,"Kertau 1968 / Singapore Grid",9001,4245,19920,9806,1,0,4400,8801,1.1715528,9110,8802,103.5110808,9110,8806,30000,9001,8807,30000,9001,,,,,,,,, +24547,"Kertau 1968 / UTM zone 47N",9001,4245,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24548,"Kertau 1968 / UTM zone 48N",9001,4245,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24571,"Kertau / R.S.O. Malaya (ch)",9062,4245,19935,9812,1,1,4401,8806,40000,9062,8807,0,9062,8811,4,9110,8812,102.15,9110,8813,323.01328458,9110,8814,323.07483685,9110,8815,0.99984,9201 +24600,KOC Lambert,9001,4246,19906,9801,1,0,4400,8801,32.3,9110,8802,45,9110,8805,0.9987864078,9201,8806,1500000,9001,8807,1166200,9001,,,,,, +24718,"La Canoa / UTM zone 18N",9001,4247,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24719,"La Canoa / UTM zone 19N",9001,4247,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24720,"La Canoa / UTM zone 20N",9001,4247,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24817,"PSAD56 / UTM zone 17N",9001,4248,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24818,"PSAD56 / UTM zone 18N",9001,4248,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24819,"PSAD56 / UTM zone 19N",9001,4248,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24820,"PSAD56 / UTM zone 20N",9001,4248,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24821,"PSAD56 / UTM zone 21N",9001,4248,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +24877,"PSAD56 / UTM zone 17S",9001,4248,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24878,"PSAD56 / UTM zone 18S",9001,4248,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24879,"PSAD56 / UTM zone 19S",9001,4248,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24880,"PSAD56 / UTM zone 20S",9001,4248,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24881,"PSAD56 / UTM zone 21S",9001,4248,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24882,"PSAD56 / UTM zone 22S",9001,4248,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +24891,"PSAD56 / Peru west zone",9001,4248,18161,9807,1,0,4499,8801,-6,9110,8802,-80.3,9110,8805,0.99983008,9201,8806,222000,9001,8807,1426834.743,9001,,,,,, +24892,"PSAD56 / Peru central zone",9001,4248,18162,9807,1,0,4499,8801,-9.3,9110,8802,-76,9110,8805,0.99932994,9201,8806,720000,9001,8807,1039979.159,9001,,,,,, +24893,"PSAD56 / Peru east zone",9001,4248,18163,9807,1,0,4499,8801,-9.3,9110,8802,-70.3,9110,8805,0.99952992,9201,8806,1324000,9001,8807,1040084.558,9001,,,,,, +25000,"Leigon / Ghana Metre Grid",9001,4250,19904,9807,1,0,4400,8801,4.4,9110,8802,-1,9110,8805,0.99975,9201,8806,274319.51,9001,8807,0,9001,,,,,, +25231,"Lome / UTM zone 31N",9001,4252,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25391,"Luzon 1911 / Philippines zone I",9001,4253,18171,9807,1,0,4499,8801,0,9102,8802,117,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +25392,"Luzon 1911 / Philippines zone II",9001,4253,18172,9807,1,0,4499,8801,0,9102,8802,119,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +25393,"Luzon 1911 / Philippines zone III",9001,4253,18173,9807,1,0,4499,8801,0,9102,8802,121,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +25394,"Luzon 1911 / Philippines zone IV",9001,4253,18174,9807,1,0,4499,8801,0,9102,8802,123,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +25395,"Luzon 1911 / Philippines zone V",9001,4253,18175,9807,1,0,4499,8801,0,9102,8802,125,9102,8805,0.99995,9201,8806,500000,9001,8807,0,9001,,,,,, +25700,"Makassar (Jakarta) / NEIEZ",9001,4804,19905,9804,1,1,4499,8801,0,9102,8802,110,9102,8805,0.997,9201,8806,3900000,9001,8807,900000,9001,,,,,, +25828,"ETRS89 / UTM zone 28N",9001,4258,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25829,"ETRS89 / UTM zone 29N",9001,4258,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25830,"ETRS89 / UTM zone 30N",9001,4258,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25831,"ETRS89 / UTM zone 31N",9001,4258,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25832,"ETRS89 / UTM zone 32N",9001,4258,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25833,"ETRS89 / UTM zone 33N",9001,4258,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25834,"ETRS89 / UTM zone 34N",9001,4258,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25835,"ETRS89 / UTM zone 35N",9001,4258,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25836,"ETRS89 / UTM zone 36N",9001,4258,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25837,"ETRS89 / UTM zone 37N",9001,4258,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25838,"ETRS89 / UTM zone 38N",9001,4258,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25884,"ETRS89 / TM Baltic93",9001,4258,19939,9807,1,0,4530,8801,0,9102,8802,24,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +25932,"Malongo 1987 / UTM zone 32S",9001,4259,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +26191,"Merchich / Nord Maroc",9001,4261,18131,9801,1,0,4499,8801,37,9105,8802,-6,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +26192,"Merchich / Sud Maroc",9001,4261,18132,9801,1,0,4499,8801,33,9105,8802,-6,9105,8805,0.999615596,9201,8806,500000,9001,8807,300000,9001,,,,,, +26193,"Merchich / Sahara",9001,4261,18133,9801,1,1,4499,8801,29,9105,8802,-6,9105,8805,0.9996,9201,8806,1200000,9001,8807,400000,9001,,,,,, +26194,"Merchich / Sahara Nord",9001,4261,18134,9801,1,0,4499,8801,29,9105,8802,-6,9105,8805,0.999616304,9201,8806,1200000,9001,8807,400000,9001,,,,,, +26195,"Merchich / Sahara Sud",9001,4261,18135,9801,1,0,4499,8801,25,9105,8802,-6,9105,8805,0.999616437,9201,8806,1500000,9001,8807,400000,9001,,,,,, +26237,"Massawa / UTM zone 37N",9001,4262,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26331,"Minna / UTM zone 31N",9001,4263,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26332,"Minna / UTM zone 32N",9001,4263,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26391,"Minna / Nigeria West Belt",9001,4263,18151,9807,1,0,4400,8801,4,9110,8802,4.3,9110,8805,0.99975,9201,8806,230738.26,9001,8807,0,9001,,,,,, +26392,"Minna / Nigeria Mid Belt",9001,4263,18152,9807,1,0,4400,8801,4,9110,8802,8.3,9110,8805,0.99975,9201,8806,670553.98,9001,8807,0,9001,,,,,, +26393,"Minna / Nigeria East Belt",9001,4263,18153,9807,1,0,4400,8801,4,9110,8802,12.3,9110,8805,0.99975,9201,8806,1110369.7,9001,8807,0,9001,,,,,, +26432,"Mhast / UTM zone 32S",9001,4264,16132,9807,1,1,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +26591,"Monte Mario (Rome) / Italy zone 1",9001,4806,18121,9807,1,1,4499,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,1500000,9001,8807,0,9001,,,,,, +26592,"Monte Mario (Rome) / Italy zone 2",9001,4806,18122,9807,1,1,4499,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,2520000,9001,8807,0,9001,,,,,, +26632,"M'poraloko / UTM zone 32N",9001,4266,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26692,"M'poraloko / UTM zone 32S",9001,4266,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +26701,"NAD27 / UTM zone 1N",9001,4267,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26702,"NAD27 / UTM zone 2N",9001,4267,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26703,"NAD27 / UTM zone 3N",9001,4267,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26704,"NAD27 / UTM zone 4N",9001,4267,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26705,"NAD27 / UTM zone 5N",9001,4267,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26706,"NAD27 / UTM zone 6N",9001,4267,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26707,"NAD27 / UTM zone 7N",9001,4267,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26708,"NAD27 / UTM zone 8N",9001,4267,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26709,"NAD27 / UTM zone 9N",9001,4267,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26710,"NAD27 / UTM zone 10N",9001,4267,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26711,"NAD27 / UTM zone 11N",9001,4267,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26712,"NAD27 / UTM zone 12N",9001,4267,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26713,"NAD27 / UTM zone 13N",9001,4267,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26714,"NAD27 / UTM zone 14N",9001,4267,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26715,"NAD27 / UTM zone 15N",9001,4267,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26716,"NAD27 / UTM zone 16N",9001,4267,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26717,"NAD27 / UTM zone 17N",9001,4267,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26718,"NAD27 / UTM zone 18N",9001,4267,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26719,"NAD27 / UTM zone 19N",9001,4267,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26720,"NAD27 / UTM zone 20N",9001,4267,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26721,"NAD27 / UTM zone 21N",9001,4267,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26722,"NAD27 / UTM zone 22N",9001,4267,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26729,"NAD27 / Alabama East",9003,4267,10101,9807,1,0,4497,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,500000,9003,8807,0,9003,,,,,, +26730,"NAD27 / Alabama West",9003,4267,10102,9807,1,0,4497,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +26731,"NAD27 / Alaska zone 1",9003,4267,15001,9812,1,0,4497,8806,16404166.67,9003,8807,-16404166.67,9003,8811,57,9110,8812,-133.4,9110,8813,323.07483685,9110,8814,323.07483685,9110,8815,0.9999,9201 +26732,"NAD27 / Alaska zone 2",9003,4267,15002,9807,1,0,4497,8801,54,9102,8802,-142,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26733,"NAD27 / Alaska zone 3",9003,4267,15003,9807,1,0,4497,8801,54,9102,8802,-146,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26734,"NAD27 / Alaska zone 4",9003,4267,15004,9807,1,0,4497,8801,54,9102,8802,-150,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26735,"NAD27 / Alaska zone 5",9003,4267,15005,9807,1,0,4497,8801,54,9102,8802,-154,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26736,"NAD27 / Alaska zone 6",9003,4267,15006,9807,1,0,4497,8801,54,9102,8802,-158,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26737,"NAD27 / Alaska zone 7",9003,4267,15007,9807,1,0,4497,8801,54,9102,8802,-162,9102,8805,0.9999,9201,8806,700000,9003,8807,0,9003,,,,,, +26738,"NAD27 / Alaska zone 8",9003,4267,15008,9807,1,0,4497,8801,54,9102,8802,-166,9102,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26739,"NAD27 / Alaska zone 9",9003,4267,15009,9807,1,0,4497,8801,54,9102,8802,-170,9102,8805,0.9999,9201,8806,600000,9003,8807,0,9003,,,,,, +26740,"NAD27 / Alaska zone 10",9003,4267,15010,9802,1,0,4497,8821,51,9110,8822,-176,9110,8823,53.5,9110,8824,51.5,9110,8826,3000000,9003,8827,0,9003,,, +26741,"NAD27 / California zone I",9003,4267,10401,9802,1,0,4497,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9003,8827,0,9003,,, +26742,"NAD27 / California zone II",9003,4267,10402,9802,1,0,4497,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9003,8827,0,9003,,, +26743,"NAD27 / California zone III",9003,4267,10403,9802,1,0,4497,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9003,8827,0,9003,,, +26744,"NAD27 / California zone IV",9003,4267,10404,9802,1,0,4497,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9003,8827,0,9003,,, +26745,"NAD27 / California zone V",9003,4267,10405,9802,1,0,4497,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9003,8827,0,9003,,, +26746,"NAD27 / California zone VI",9003,4267,10406,9802,1,0,4497,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9003,8827,0,9003,,, +26747,"NAD27 / California zone VII",9003,4267,10407,9802,1,1,4497,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,416926.74,9003,,, +26748,"NAD27 / Arizona East",9003,4267,10201,9807,1,0,4497,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26749,"NAD27 / Arizona Central",9003,4267,10202,9807,1,0,4497,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26750,"NAD27 / Arizona West",9003,4267,10203,9807,1,0,4497,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +26751,"NAD27 / Arkansas North",9003,4267,10301,9802,1,0,4497,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,2000000,9003,8827,0,9003,,, +26752,"NAD27 / Arkansas South",9003,4267,10302,9802,1,0,4497,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,2000000,9003,8827,0,9003,,, +26753,"NAD27 / Colorado North",9003,4267,10501,9802,1,0,4497,8821,39.2,9110,8822,-105.3,9110,8823,39.43,9110,8824,40.47,9110,8826,2000000,9003,8827,0,9003,,, +26754,"NAD27 / Colorado Central",9003,4267,10502,9802,1,0,4497,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,2000000,9003,8827,0,9003,,, +26755,"NAD27 / Colorado South",9003,4267,10503,9802,1,0,4497,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,2000000,9003,8827,0,9003,,, +26756,"NAD27 / Connecticut",9003,4267,10600,9802,1,0,4497,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,600000,9003,8827,0,9003,,, +26757,"NAD27 / Delaware",9003,4267,10700,9807,1,0,4497,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,500000,9003,8807,0,9003,,,,,, +26758,"NAD27 / Florida East",9003,4267,10901,9807,1,0,4497,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +26759,"NAD27 / Florida West",9003,4267,10902,9807,1,0,4497,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +26760,"NAD27 / Florida North",9003,4267,10903,9802,1,0,4497,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,2000000,9003,8827,0,9003,,, +26766,"NAD27 / Georgia East",9003,4267,11001,9807,1,0,4497,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26767,"NAD27 / Georgia West",9003,4267,11002,9807,1,0,4497,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26768,"NAD27 / Idaho East",9003,4267,11101,9807,1,0,4497,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,500000,9003,8807,0,9003,,,,,, +26769,"NAD27 / Idaho Central",9003,4267,11102,9807,1,0,4497,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9003,8807,0,9003,,,,,, +26770,"NAD27 / Idaho West",9003,4267,11103,9807,1,0,4497,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +26771,"NAD27 / Illinois East",9003,4267,11201,9807,1,0,4497,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,500000,9003,8807,0,9003,,,,,, +26772,"NAD27 / Illinois West",9003,4267,11202,9807,1,0,4497,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +26773,"NAD27 / Indiana East",9003,4267,11301,9807,1,0,4497,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +26774,"NAD27 / Indiana West",9003,4267,11302,9807,1,0,4497,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +26775,"NAD27 / Iowa North",9003,4267,11401,9802,1,0,4497,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,2000000,9003,8827,0,9003,,, +26776,"NAD27 / Iowa South",9003,4267,11402,9802,1,0,4497,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,2000000,9003,8827,0,9003,,, +26777,"NAD27 / Kansas North",9003,4267,11501,9802,1,0,4497,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,2000000,9003,8827,0,9003,,, +26778,"NAD27 / Kansas South",9003,4267,11502,9802,1,0,4497,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,2000000,9003,8827,0,9003,,, +26779,"NAD27 / Kentucky North",9003,4267,11601,9802,1,0,4497,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,38.58,9110,8826,2000000,9003,8827,0,9003,,, +26780,"NAD27 / Kentucky South",9003,4267,11602,9802,1,0,4497,8821,36.2,9110,8822,-85.45,9110,8823,36.44,9110,8824,37.56,9110,8826,2000000,9003,8827,0,9003,,, +26781,"NAD27 / Louisiana North",9003,4267,11701,9802,1,0,4497,8821,30.4,9110,8822,-92.3,9110,8823,31.1,9110,8824,32.4,9110,8826,2000000,9003,8827,0,9003,,, +26782,"NAD27 / Louisiana South",9003,4267,11702,9802,1,0,4497,8821,28.4,9110,8822,-91.2,9110,8823,29.18,9110,8824,30.42,9110,8826,2000000,9003,8827,0,9003,,, +26783,"NAD27 / Maine East",9003,4267,11801,9807,1,0,4497,8801,43.5,9110,8802,-68.3,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +26784,"NAD27 / Maine West",9003,4267,11802,9807,1,0,4497,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +26785,"NAD27 / Maryland",9003,4267,11900,9802,1,0,4497,8821,37.5,9110,8822,-77,9110,8823,38.18,9110,8824,39.27,9110,8826,800000,9003,8827,0,9003,,, +26786,"NAD27 / Massachusetts Mainland",9003,4267,12001,9802,1,0,4497,8821,41,9110,8822,-71.3,9110,8823,41.43,9110,8824,42.41,9110,8826,600000,9003,8827,0,9003,,, +26787,"NAD27 / Massachusetts Island",9003,4267,12002,9802,1,0,4497,8821,41,9110,8822,-70.3,9110,8823,41.17,9110,8824,41.29,9110,8826,200000,9003,8827,0,9003,,, +26791,"NAD27 / Minnesota North",9003,4267,12201,9802,1,0,4497,8821,46.3,9110,8822,-93.06,9110,8823,47.02,9110,8824,48.38,9110,8826,2000000,9003,8827,0,9003,,, +26792,"NAD27 / Minnesota Central",9003,4267,12202,9802,1,0,4497,8821,45,9110,8822,-94.15,9110,8823,45.37,9110,8824,47.03,9110,8826,2000000,9003,8827,0,9003,,, +26793,"NAD27 / Minnesota South",9003,4267,12203,9802,1,0,4497,8821,43,9110,8822,-94,9110,8823,43.47,9110,8824,45.13,9110,8826,2000000,9003,8827,0,9003,,, +26794,"NAD27 / Mississippi East",9003,4267,12301,9807,1,0,4497,8801,29.4,9110,8802,-88.5,9110,8805,0.99996,9201,8806,500000,9003,8807,0,9003,,,,,, +26795,"NAD27 / Mississippi West",9003,4267,12302,9807,1,0,4497,8801,30.3,9110,8802,-90.2,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +26796,"NAD27 / Missouri East",9003,4267,12401,9807,1,0,4497,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +26797,"NAD27 / Missouri Central",9003,4267,12402,9807,1,0,4497,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9003,8807,0,9003,,,,,, +26798,"NAD27 / Missouri West",9003,4267,12403,9807,1,0,4497,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +26799,"NAD27 / California zone VII",9003,4267,10408,9802,1,0,4497,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,4160926.74,9003,,, +26801,"NAD Michigan / Michigan East",9003,4268,12101,9807,1,0,4497,8801,41.3,9110,8802,-83.4,9110,8805,0.999942857,9201,8806,500000,9003,8807,0,9003,,,,,, +26802,"NAD Michigan / Michigan Old Central",9003,4268,12102,9807,1,0,4497,8801,41.3,9110,8802,-85.45,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +26803,"NAD Michigan / Michigan West",9003,4268,12103,9807,1,0,4497,8801,41.3,9110,8802,-88.45,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +26811,"NAD Michigan / Michigan North",9003,4268,12111,9802,1,0,4497,8821,44.47,9110,8822,-87,9110,8823,45.29,9110,8824,47.05,9110,8826,2000000,9003,8827,0,9003,,, +26812,"NAD Michigan / Michigan Central",9003,4268,12112,9802,1,0,4497,8821,43.19,9110,8822,-84.2,9110,8823,44.11,9110,8824,45.42,9110,8826,2000000,9003,8827,0,9003,,, +26813,"NAD Michigan / Michigan South",9003,4268,12113,9802,1,0,4497,8821,41.3,9110,8822,-84.2,9110,8823,42.06,9110,8824,43.4,9110,8826,2000000,9003,8827,0,9003,,, +26814,"NAD83 / Maine East (ftUS)",9001,4269,11833,9807,1,1,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26815,"NAD83 / Maine West (ftUS)",9001,4269,11834,9807,1,1,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26819,"NAD83 / Minnesota North (ftUS)",9001,4269,12234,9802,1,1,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26820,"NAD83 / Minnesota Central (ftUS)",9001,4269,12235,9802,1,1,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26821,"NAD83 / Minnesota South (ftUS)",9001,4269,12236,9802,1,1,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26822,"NAD83 / Nebraska (ftUS)",9001,4269,15396,9802,1,1,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26823,"NAD83 / West Virginia North (ftUS)",9001,4269,14733,9802,1,1,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9001,8827,0,9001,,, +26824,"NAD83 / West Virginia South (ftUS)",9001,4269,14734,9802,1,1,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9001,8827,0,9001,,, +26825,"NAD83(HARN) / Maine East (ftUS)",9001,4152,11833,9807,1,1,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26826,"NAD83(HARN) / Maine West (ftUS)",9001,4152,11834,9807,1,1,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26830,"NAD83(HARN) / Minnesota North (ftUS)",9001,4152,12234,9802,1,1,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26831,"NAD83(HARN) / Minnesota Central (ftUS)",9001,4152,12235,9802,1,1,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26832,"NAD83(HARN) / Minnesota South (ftUS)",9001,4152,12236,9802,1,1,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26833,"NAD83(HARN) / Nebraska (ftUS)",9001,4152,15396,9802,1,1,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26834,"NAD83(HARN) / West Virginia North (ftUS)",9001,4152,14733,9802,1,1,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9001,8827,0,9001,,, +26835,"NAD83(HARN) / West Virginia South (ftUS)",9001,4152,14734,9802,1,1,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9001,8827,0,9001,,, +26836,"NAD83(NSRS2007) / Maine East (ftUS)",9001,4759,11833,9807,1,1,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26837,"NAD83(NSRS2007) / Maine West (ftUS)",9001,4759,11834,9807,1,1,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26841,"NAD83(NSRS2007) / Minnesota North (ftUS)",9001,4759,12234,9802,1,1,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26842,"NAD83(NSRS2007) / Minnesota Central (ftUS)",9001,4759,12235,9802,1,1,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26843,"NAD83(NSRS2007) / Minnesota South (ftUS)",9001,4759,12236,9802,1,1,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26844,"NAD83(NSRS2007) / Nebraska (ftUS)",9001,4759,15396,9802,1,1,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26845,"NAD83(NSRS2007) / West Virginia North (ftUS)",9001,4759,14733,9802,1,1,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9001,8827,0,9001,,, +26846,"NAD83(NSRS2007) / West Virginia South (ftUS)",9001,4759,14734,9802,1,1,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9001,8827,0,9001,,, +26847,"NAD83 / Maine East (ftUS)",9003,4269,11833,9807,1,0,4497,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26848,"NAD83 / Maine West (ftUS)",9003,4269,11834,9807,1,0,4497,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26849,"NAD83 / Minnesota North (ftUS)",9003,4269,12234,9802,1,0,4497,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26850,"NAD83 / Minnesota Central (ftUS)",9003,4269,12235,9802,1,0,4497,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26851,"NAD83 / Minnesota South (ftUS)",9003,4269,12236,9802,1,0,4497,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26852,"NAD83 / Nebraska (ftUS)",9003,4269,15396,9802,1,0,4497,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26853,"NAD83 / West Virginia North (ftUS)",9003,4269,14735,9802,1,0,4497,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9003,8827,0,9003,,, +26854,"NAD83 / West Virginia South (ftUS)",9003,4269,14736,9802,1,0,4497,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9003,8827,0,9003,,, +26855,"NAD83(HARN) / Maine East (ftUS)",9003,4152,11833,9807,1,0,4497,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26856,"NAD83(HARN) / Maine West (ftUS)",9003,4152,11834,9807,1,0,4497,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26857,"NAD83(HARN) / Minnesota North (ftUS)",9003,4152,12234,9802,1,0,4497,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26858,"NAD83(HARN) / Minnesota Central (ftUS)",9003,4152,12235,9802,1,0,4497,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26859,"NAD83(HARN) / Minnesota South (ftUS)",9003,4152,12236,9802,1,0,4497,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26860,"NAD83(HARN) / Nebraska (ftUS)",9003,4152,15396,9802,1,0,4497,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26861,"NAD83(HARN) / West Virginia North (ftUS)",9003,4152,14735,9802,1,0,4497,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9003,8827,0,9003,,, +26862,"NAD83(HARN) / West Virginia South (ftUS)",9003,4152,14736,9802,1,0,4497,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9003,8827,0,9003,,, +26863,"NAD83(NSRS2007) / Maine East (ftUS)",9003,4759,11833,9807,1,0,4497,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,984250,9003,8807,0,9003,,,,,, +26864,"NAD83(NSRS2007) / Maine West (ftUS)",9003,4759,11834,9807,1,0,4497,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,2952750,9003,8807,0,9003,,,,,, +26865,"NAD83(NSRS2007) / Minnesota North (ftUS)",9003,4759,12234,9802,1,0,4497,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26866,"NAD83(NSRS2007) / Minnesota Central (ftUS)",9003,4759,12235,9802,1,0,4497,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26867,"NAD83(NSRS2007) / Minnesota South (ftUS)",9003,4759,12236,9802,1,0,4497,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,2624666.6667,9003,8827,328083.3333,9003,,, +26868,"NAD83(NSRS2007) / Nebraska (ftUS)",9003,4759,15396,9802,1,0,4497,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,1640416.6667,9003,8827,0,9003,,, +26869,"NAD83(NSRS2007) / West Virginia North (ftUS)",9003,4759,14735,9802,1,0,4497,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,1968500,9003,8827,0,9003,,, +26870,"NAD83(NSRS2007) / West Virginia South (ftUS)",9003,4759,14736,9802,1,0,4497,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,1968500,9003,8827,0,9003,,, +26891,"NAD83(CSRS) / MTM zone 11",9001,4617,17711,9807,1,0,4400,8801,0,9110,8802,-82.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26892,"NAD83(CSRS) / MTM zone 12",9001,4617,17712,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26893,"NAD83(CSRS) / MTM zone 13",9001,4617,17713,9807,1,0,4400,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26894,"NAD83(CSRS) / MTM zone 14",9001,4617,17714,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26895,"NAD83(CSRS) / MTM zone 15",9001,4617,17715,9807,1,0,4400,8801,0,9102,8802,-90,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26896,"NAD83(CSRS) / MTM zone 16",9001,4617,17716,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26897,"NAD83(CSRS) / MTM zone 17",9001,4617,17717,9807,1,0,4400,8801,0,9102,8802,-96,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26898,"NAD83(CSRS) / MTM zone 1",9001,4617,17701,9807,1,0,4496,8801,0,9102,8802,-53,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26899,"NAD83(CSRS) / MTM zone 2",9001,4617,17702,9807,1,0,4496,8801,0,9102,8802,-56,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +26901,"NAD83 / UTM zone 1N",9001,4269,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26902,"NAD83 / UTM zone 2N",9001,4269,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26903,"NAD83 / UTM zone 3N",9001,4269,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26904,"NAD83 / UTM zone 4N",9001,4269,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26905,"NAD83 / UTM zone 5N",9001,4269,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26906,"NAD83 / UTM zone 6N",9001,4269,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26907,"NAD83 / UTM zone 7N",9001,4269,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26908,"NAD83 / UTM zone 8N",9001,4269,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26909,"NAD83 / UTM zone 9N",9001,4269,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26910,"NAD83 / UTM zone 10N",9001,4269,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26911,"NAD83 / UTM zone 11N",9001,4269,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26912,"NAD83 / UTM zone 12N",9001,4269,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26913,"NAD83 / UTM zone 13N",9001,4269,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26914,"NAD83 / UTM zone 14N",9001,4269,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26915,"NAD83 / UTM zone 15N",9001,4269,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26916,"NAD83 / UTM zone 16N",9001,4269,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26917,"NAD83 / UTM zone 17N",9001,4269,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26918,"NAD83 / UTM zone 18N",9001,4269,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26919,"NAD83 / UTM zone 19N",9001,4269,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26920,"NAD83 / UTM zone 20N",9001,4269,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26921,"NAD83 / UTM zone 21N",9001,4269,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26922,"NAD83 / UTM zone 22N",9001,4269,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26923,"NAD83 / UTM zone 23N",9001,4269,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +26929,"NAD83 / Alabama East",9001,4269,10131,9807,1,0,4499,8801,30.3,9110,8802,-85.5,9110,8805,0.99996,9201,8806,200000,9001,8807,0,9001,,,,,, +26930,"NAD83 / Alabama West",9001,4269,10132,9807,1,0,4499,8801,30,9110,8802,-87.3,9110,8805,0.999933333,9201,8806,600000,9001,8807,0,9001,,,,,, +26931,"NAD83 / Alaska zone 1",9001,4269,15031,9812,1,0,4499,8806,5000000,9001,8807,-5000000,9001,8811,57,9110,8812,-133.4,9110,8813,323.07483685,9110,8814,323.07483685,9110,8815,0.9999,9201 +26932,"NAD83 / Alaska zone 2",9001,4269,15032,9807,1,0,4499,8801,54,9102,8802,-142,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26933,"NAD83 / Alaska zone 3",9001,4269,15033,9807,1,0,4499,8801,54,9102,8802,-146,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26934,"NAD83 / Alaska zone 4",9001,4269,15034,9807,1,0,4499,8801,54,9102,8802,-150,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26935,"NAD83 / Alaska zone 5",9001,4269,15035,9807,1,0,4499,8801,54,9102,8802,-154,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26936,"NAD83 / Alaska zone 6",9001,4269,15036,9807,1,0,4499,8801,54,9102,8802,-158,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26937,"NAD83 / Alaska zone 7",9001,4269,15037,9807,1,0,4499,8801,54,9102,8802,-162,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26938,"NAD83 / Alaska zone 8",9001,4269,15038,9807,1,0,4499,8801,54,9102,8802,-166,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26939,"NAD83 / Alaska zone 9",9001,4269,15039,9807,1,0,4499,8801,54,9102,8802,-170,9102,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +26940,"NAD83 / Alaska zone 10",9001,4269,15040,9802,1,0,4499,8821,51,9110,8822,-176,9110,8823,53.5,9110,8824,51.5,9110,8826,1000000,9001,8827,0,9001,,, +26941,"NAD83 / California zone 1",9001,4269,10431,9802,1,0,4499,8821,39.2,9110,8822,-122,9110,8823,41.4,9110,8824,40,9110,8826,2000000,9001,8827,500000,9001,,, +26942,"NAD83 / California zone 2",9001,4269,10432,9802,1,0,4499,8821,37.4,9110,8822,-122,9110,8823,39.5,9110,8824,38.2,9110,8826,2000000,9001,8827,500000,9001,,, +26943,"NAD83 / California zone 3",9001,4269,10433,9802,1,0,4499,8821,36.3,9110,8822,-120.3,9110,8823,38.26,9110,8824,37.04,9110,8826,2000000,9001,8827,500000,9001,,, +26944,"NAD83 / California zone 4",9001,4269,10434,9802,1,0,4499,8821,35.2,9110,8822,-119,9110,8823,37.15,9110,8824,36,9110,8826,2000000,9001,8827,500000,9001,,, +26945,"NAD83 / California zone 5",9001,4269,10435,9802,1,0,4499,8821,33.3,9110,8822,-118,9110,8823,35.28,9110,8824,34.02,9110,8826,2000000,9001,8827,500000,9001,,, +26946,"NAD83 / California zone 6",9001,4269,10436,9802,1,0,4499,8821,32.1,9110,8822,-116.15,9110,8823,33.53,9110,8824,32.47,9110,8826,2000000,9001,8827,500000,9001,,, +26948,"NAD83 / Arizona East",9001,4269,10231,9807,1,0,4499,8801,31,9110,8802,-110.1,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +26949,"NAD83 / Arizona Central",9001,4269,10232,9807,1,0,4499,8801,31,9110,8802,-111.55,9110,8805,0.9999,9201,8806,213360,9001,8807,0,9001,,,,,, +26950,"NAD83 / Arizona West",9001,4269,10233,9807,1,0,4499,8801,31,9110,8802,-113.45,9110,8805,0.999933333,9201,8806,213360,9001,8807,0,9001,,,,,, +26951,"NAD83 / Arkansas North",9001,4269,10331,9802,1,0,4499,8821,34.2,9110,8822,-92,9110,8823,36.14,9110,8824,34.56,9110,8826,400000,9001,8827,0,9001,,, +26952,"NAD83 / Arkansas South",9001,4269,10332,9802,1,0,4499,8821,32.4,9110,8822,-92,9110,8823,34.46,9110,8824,33.18,9110,8826,400000,9001,8827,400000,9001,,, +26953,"NAD83 / Colorado North",9001,4269,10531,9802,1,0,4499,8821,39.2,9110,8822,-105.3,9110,8823,40.47,9110,8824,39.43,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +26954,"NAD83 / Colorado Central",9001,4269,10532,9802,1,0,4499,8821,37.5,9110,8822,-105.3,9110,8823,39.45,9110,8824,38.27,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +26955,"NAD83 / Colorado South",9001,4269,10533,9802,1,0,4499,8821,36.4,9110,8822,-105.3,9110,8823,38.26,9110,8824,37.14,9110,8826,914401.8289,9001,8827,304800.6096,9001,,, +26956,"NAD83 / Connecticut",9001,4269,10630,9802,1,0,4499,8821,40.5,9110,8822,-72.45,9110,8823,41.52,9110,8824,41.12,9110,8826,304800.6096,9001,8827,152400.3048,9001,,, +26957,"NAD83 / Delaware",9001,4269,10730,9807,1,0,4499,8801,38,9110,8802,-75.25,9110,8805,0.999995,9201,8806,200000,9001,8807,0,9001,,,,,, +26958,"NAD83 / Florida East",9001,4269,10931,9807,1,0,4499,8801,24.2,9110,8802,-81,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +26959,"NAD83 / Florida West",9001,4269,10932,9807,1,0,4499,8801,24.2,9110,8802,-82,9110,8805,0.999941177,9201,8806,200000,9001,8807,0,9001,,,,,, +26960,"NAD83 / Florida North",9001,4269,10933,9802,1,0,4499,8821,29,9110,8822,-84.3,9110,8823,30.45,9110,8824,29.35,9110,8826,600000,9001,8827,0,9001,,, +26961,"NAD83 / Hawaii zone 1",9001,4269,15131,9807,1,0,4499,8801,18.5,9110,8802,-155.3,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +26962,"NAD83 / Hawaii zone 2",9001,4269,15132,9807,1,0,4499,8801,20.2,9110,8802,-156.4,9110,8805,0.999966667,9201,8806,500000,9001,8807,0,9001,,,,,, +26963,"NAD83 / Hawaii zone 3",9001,4269,15133,9807,1,0,4499,8801,21.1,9110,8802,-158,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +26964,"NAD83 / Hawaii zone 4",9001,4269,15134,9807,1,0,4499,8801,21.5,9110,8802,-159.3,9110,8805,0.99999,9201,8806,500000,9001,8807,0,9001,,,,,, +26965,"NAD83 / Hawaii zone 5",9001,4269,15135,9807,1,0,4499,8801,21.4,9110,8802,-160.1,9110,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +26966,"NAD83 / Georgia East",9001,4269,11031,9807,1,0,4499,8801,30,9110,8802,-82.1,9110,8805,0.9999,9201,8806,200000,9001,8807,0,9001,,,,,, +26967,"NAD83 / Georgia West",9001,4269,11032,9807,1,0,4499,8801,30,9110,8802,-84.1,9110,8805,0.9999,9201,8806,700000,9001,8807,0,9001,,,,,, +26968,"NAD83 / Idaho East",9001,4269,11131,9807,1,0,4499,8801,41.4,9110,8802,-112.1,9110,8805,0.999947368,9201,8806,200000,9001,8807,0,9001,,,,,, +26969,"NAD83 / Idaho Central",9001,4269,11132,9807,1,0,4499,8801,41.4,9110,8802,-114,9110,8805,0.999947368,9201,8806,500000,9001,8807,0,9001,,,,,, +26970,"NAD83 / Idaho West",9001,4269,11133,9807,1,0,4499,8801,41.4,9110,8802,-115.45,9110,8805,0.999933333,9201,8806,800000,9001,8807,0,9001,,,,,, +26971,"NAD83 / Illinois East",9001,4269,11231,9807,1,0,4499,8801,36.4,9110,8802,-88.2,9110,8805,0.999975,9201,8806,300000,9001,8807,0,9001,,,,,, +26972,"NAD83 / Illinois West",9001,4269,11232,9807,1,0,4499,8801,36.4,9110,8802,-90.1,9110,8805,0.999941177,9201,8806,700000,9001,8807,0,9001,,,,,, +26973,"NAD83 / Indiana East",9001,4269,11331,9807,1,0,4499,8801,37.3,9110,8802,-85.4,9110,8805,0.999966667,9201,8806,100000,9001,8807,250000,9001,,,,,, +26974,"NAD83 / Indiana West",9001,4269,11332,9807,1,0,4499,8801,37.3,9110,8802,-87.05,9110,8805,0.999966667,9201,8806,900000,9001,8807,250000,9001,,,,,, +26975,"NAD83 / Iowa North",9001,4269,11431,9802,1,0,4499,8821,41.3,9110,8822,-93.3,9110,8823,43.16,9110,8824,42.04,9110,8826,1500000,9001,8827,1000000,9001,,, +26976,"NAD83 / Iowa South",9001,4269,11432,9802,1,0,4499,8821,40,9110,8822,-93.3,9110,8823,41.47,9110,8824,40.37,9110,8826,500000,9001,8827,0,9001,,, +26977,"NAD83 / Kansas North",9001,4269,11531,9802,1,0,4499,8821,38.2,9110,8822,-98,9110,8823,39.47,9110,8824,38.43,9110,8826,400000,9001,8827,0,9001,,, +26978,"NAD83 / Kansas South",9001,4269,11532,9802,1,0,4499,8821,36.4,9110,8822,-98.3,9110,8823,38.34,9110,8824,37.16,9110,8826,400000,9001,8827,400000,9001,,, +26979,"NAD83 / Kentucky North",9001,4269,11631,9802,1,1,4499,8821,37.3,9110,8822,-84.15,9110,8823,37.58,9110,8824,37.58,9110,8826,500000,9001,8827,0,9001,,, +26980,"NAD83 / Kentucky South",9001,4269,11632,9802,1,0,4499,8821,36.2,9110,8822,-85.45,9110,8823,37.56,9110,8824,36.44,9110,8826,500000,9001,8827,500000,9001,,, +26981,"NAD83 / Louisiana North",9001,4269,11731,9802,1,0,4499,8821,30.3,9110,8822,-92.3,9110,8823,32.4,9110,8824,31.1,9110,8826,1000000,9001,8827,0,9001,,, +26982,"NAD83 / Louisiana South",9001,4269,11732,9802,1,0,4499,8821,28.3,9110,8822,-91.2,9110,8823,30.42,9110,8824,29.18,9110,8826,1000000,9001,8827,0,9001,,, +26983,"NAD83 / Maine East",9001,4269,11831,9807,1,0,4499,8801,43.4,9110,8802,-68.3,9110,8805,0.9999,9201,8806,300000,9001,8807,0,9001,,,,,, +26984,"NAD83 / Maine West",9001,4269,11832,9807,1,0,4499,8801,42.5,9110,8802,-70.1,9110,8805,0.999966667,9201,8806,900000,9001,8807,0,9001,,,,,, +26985,"NAD83 / Maryland",9001,4269,11930,9802,1,0,4499,8821,37.4,9110,8822,-77,9110,8823,39.27,9110,8824,38.18,9110,8826,400000,9001,8827,0,9001,,, +26986,"NAD83 / Massachusetts Mainland",9001,4269,12031,9802,1,0,4499,8821,41,9110,8822,-71.3,9110,8823,42.41,9110,8824,41.43,9110,8826,200000,9001,8827,750000,9001,,, +26987,"NAD83 / Massachusetts Island",9001,4269,12032,9802,1,0,4499,8821,41,9110,8822,-70.3,9110,8823,41.29,9110,8824,41.17,9110,8826,500000,9001,8827,0,9001,,, +26988,"NAD83 / Michigan North",9001,4269,12141,9802,1,0,4499,8821,44.47,9110,8822,-87,9110,8823,47.05,9110,8824,45.29,9110,8826,8000000,9001,8827,0,9001,,, +26989,"NAD83 / Michigan Central",9001,4269,12142,9802,1,0,4499,8821,43.19,9110,8822,-84.22,9110,8823,45.42,9110,8824,44.11,9110,8826,6000000,9001,8827,0,9001,,, +26990,"NAD83 / Michigan South",9001,4269,12143,9802,1,0,4499,8821,41.3,9110,8822,-84.22,9110,8823,43.4,9110,8824,42.06,9110,8826,4000000,9001,8827,0,9001,,, +26991,"NAD83 / Minnesota North",9001,4269,12231,9802,1,0,4499,8821,46.3,9110,8822,-93.06,9110,8823,48.38,9110,8824,47.02,9110,8826,800000,9001,8827,100000,9001,,, +26992,"NAD83 / Minnesota Central",9001,4269,12232,9802,1,0,4499,8821,45,9110,8822,-94.15,9110,8823,47.03,9110,8824,45.37,9110,8826,800000,9001,8827,100000,9001,,, +26993,"NAD83 / Minnesota South",9001,4269,12233,9802,1,0,4499,8821,43,9110,8822,-94,9110,8823,45.13,9110,8824,43.47,9110,8826,800000,9001,8827,100000,9001,,, +26994,"NAD83 / Mississippi East",9001,4269,12331,9807,1,0,4499,8801,29.3,9110,8802,-88.5,9110,8805,0.99995,9201,8806,300000,9001,8807,0,9001,,,,,, +26995,"NAD83 / Mississippi West",9001,4269,12332,9807,1,0,4499,8801,29.3,9110,8802,-90.2,9110,8805,0.99995,9201,8806,700000,9001,8807,0,9001,,,,,, +26996,"NAD83 / Missouri East",9001,4269,12431,9807,1,0,4499,8801,35.5,9110,8802,-90.3,9110,8805,0.999933333,9201,8806,250000,9001,8807,0,9001,,,,,, +26997,"NAD83 / Missouri Central",9001,4269,12432,9807,1,0,4499,8801,35.5,9110,8802,-92.3,9110,8805,0.999933333,9201,8806,500000,9001,8807,0,9001,,,,,, +26998,"NAD83 / Missouri West",9001,4269,12433,9807,1,0,4499,8801,36.1,9110,8802,-94.3,9110,8805,0.999941177,9201,8806,850000,9001,8807,0,9001,,,,,, +27037,"Nahrwan 1967 / UTM zone 37N",9001,4270,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27038,"Nahrwan 1967 / UTM zone 38N",9001,4270,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27039,"Nahrwan 1967 / UTM zone 39N",9001,4270,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27040,"Nahrwan 1967 / UTM zone 40N",9001,4270,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27120,"Naparima 1972 / UTM zone 20N",9001,4271,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27200,"NZGD49 / New Zealand Map Grid",9001,4272,19917,9811,1,0,4400,8801,-41,9102,8802,173,9102,8806,2510000,9001,8807,6023150,9001,,,,,,,,, +27205,"NZGD49 / Mount Eden Circuit",9001,4272,17901,9807,1,0,4500,8801,-36.5247515,9110,8802,174.45516217,9110,8805,0.9999,9201,8806,300000,9001,8807,700000,9001,,,,,, +27206,"NZGD49 / Bay of Plenty Circuit",9001,4272,17902,9807,1,0,4500,8801,-37.45404993,9110,8802,176.27583101,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27207,"NZGD49 / Poverty Bay Circuit",9001,4272,17903,9807,1,0,4500,8801,-38.372893,9110,8802,177.53082906,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27208,"NZGD49 / Hawkes Bay Circuit",9001,4272,17904,9807,1,0,4500,8801,-39.39033455,9110,8802,176.40252499,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27209,"NZGD49 / Taranaki Circuit",9001,4272,17905,9807,1,0,4500,8801,-39.08087299,9110,8802,174.13408423,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27210,"NZGD49 / Tuhirangi Circuit",9001,4272,17906,9807,1,0,4500,8801,-39.30448934,9110,8802,175.38241325,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27211,"NZGD49 / Wanganui Circuit",9001,4272,17907,9807,1,0,4500,8801,-40.14310097,9110,8802,175.29171586,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27212,"NZGD49 / Wairarapa Circuit",9001,4272,17908,9807,1,0,4500,8801,-40.55319175,9110,8802,175.38504588,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27213,"NZGD49 / Wellington Circuit",9001,4272,17909,9807,1,0,4500,8801,-41.18047507,9110,8802,174.46358432,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27214,"NZGD49 / Collingwood Circuit",9001,4272,17910,9807,1,0,4500,8801,-40.42531326,9110,8802,172.40193674,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27215,"NZGD49 / Nelson Circuit",9001,4272,17911,9807,1,0,4500,8801,-41.1628361,9110,8802,173.17575405,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27216,"NZGD49 / Karamea Circuit",9001,4272,17912,9807,1,0,4500,8801,-41.17236815,9110,8802,172.06325015,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27217,"NZGD49 / Buller Circuit",9001,4272,17913,9807,1,0,4500,8801,-41.48388903,9110,8802,171.34525362,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27218,"NZGD49 / Grey Circuit",9001,4272,17914,9807,1,0,4500,8801,-42.20012994,9110,8802,171.32591767,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27219,"NZGD49 / Amuri Circuit",9001,4272,17915,9807,1,0,4500,8801,-42.41208197,9110,8802,173.00364802,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27220,"NZGD49 / Marlborough Circuit",9001,4272,17916,9807,1,0,4500,8801,-41.3240152,9110,8802,173.48074668,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27221,"NZGD49 / Hokitika Circuit",9001,4272,17917,9807,1,0,4500,8801,-42.53107605,9110,8802,170.58479766,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27222,"NZGD49 / Okarito Circuit",9001,4272,17918,9807,1,0,4500,8801,-43.06364613,9110,8802,170.1539333,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27223,"NZGD49 / Jacksons Bay Circuit",9001,4272,17919,9807,1,0,4500,8801,-43.58400904,9110,8802,168.36225612,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27224,"NZGD49 / Mount Pleasant Circuit",9001,4272,17920,9807,1,0,4500,8801,-43.35262953,9110,8802,172.43378969,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27225,"NZGD49 / Gawler Circuit",9001,4272,17921,9807,1,0,4500,8801,-43.44553616,9110,8802,171.21386945,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27226,"NZGD49 / Timaru Circuit",9001,4272,17922,9807,1,0,4500,8801,-44.24079933,9110,8802,171.0326103,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27227,"NZGD49 / Lindis Peak Circuit",9001,4272,17923,9807,1,0,4500,8801,-44.44069647,9110,8802,169.28039183,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27228,"NZGD49 / Mount Nicholas Circuit",9001,4272,17924,9807,1,0,4500,8801,-45.07584493,9110,8802,168.23551083,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27229,"NZGD49 / Mount York Circuit",9001,4272,17925,9807,1,0,4500,8801,-45.33494142,9110,8802,167.44199024,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27230,"NZGD49 / Observation Point Circuit",9001,4272,17926,9807,1,0,4500,8801,-45.48583078,9110,8802,170.37429426,9110,8805,1,9201,8806,300000,9001,8807,700000,9001,,,,,, +27231,"NZGD49 / North Taieri Circuit",9001,4272,17927,9807,1,0,4500,8801,-45.51414481,9110,8802,170.16573208,9110,8805,0.99996,9201,8806,300000,9001,8807,700000,9001,,,,,, +27232,"NZGD49 / Bluff Circuit",9001,4272,17928,9807,1,0,4500,8801,-46.36000346,9110,8802,168.20343392,9110,8805,1,9201,8806,300002.66,9001,8807,699999.58,9001,,,,,, +27258,"NZGD49 / UTM zone 58S",9001,4272,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +27259,"NZGD49 / UTM zone 59S",9001,4272,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +27260,"NZGD49 / UTM zone 60S",9001,4272,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +27291,"NZGD49 / North Island Grid",9040,4272,18141,9807,1,0,4409,8801,-39,9110,8802,175.3,9110,8805,1,9201,8806,300000,9040,8807,400000,9040,,,,,, +27292,"NZGD49 / South Island Grid",9040,4272,18142,9807,1,0,4409,8801,-44,9110,8802,171.3,9110,8805,1,9201,8806,500000,9040,8807,500000,9040,,,,,, +27391,"NGO 1948 (Oslo) / NGO zone I",9001,4817,18221,9807,1,0,4531,8801,58,9110,8802,-4.4,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27392,"NGO 1948 (Oslo) / NGO zone II",9001,4817,18222,9807,1,0,4531,8801,58,9110,8802,-2.2,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27393,"NGO 1948 (Oslo) / NGO zone III",9001,4817,18223,9807,1,0,4531,8801,58,9110,8802,0,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27394,"NGO 1948 (Oslo) / NGO zone IV",9001,4817,18224,9807,1,0,4531,8801,58,9110,8802,2.3,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27395,"NGO 1948 (Oslo) / NGO zone V",9001,4817,18225,9807,1,0,4531,8801,58,9110,8802,6.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27396,"NGO 1948 (Oslo) / NGO zone VI",9001,4817,18226,9807,1,0,4531,8801,58,9110,8802,10.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27397,"NGO 1948 (Oslo) / NGO zone VII",9001,4817,18227,9807,1,0,4531,8801,58,9110,8802,14.1,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27398,"NGO 1948 (Oslo) / NGO zone VIII",9001,4817,18228,9807,1,0,4531,8801,58,9110,8802,18.2,9110,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +27429,"Datum 73 / UTM zone 29N",9001,4274,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +27492,"Datum 73 / Modified Portuguese Grid",9001,4274,19974,9807,1,1,4530,8801,39.4,9110,8802,-8.0754862,9110,8805,1,9201,8806,180.598,9001,8807,-86.99,9001,,,,,, +27493,"Datum 73 / Modified Portuguese Grid",9001,4274,19974,9807,1,0,4499,8801,39.4,9110,8802,-8.0754862,9110,8805,1,9201,8806,180.598,9001,8807,-86.99,9001,,,,,, +27500,"ATF (Paris) / Nord de Guerre",9001,4901,19903,9801,1,0,4499,8801,55,9105,8802,6,9105,8805,0.99950908,9201,8806,500000,9001,8807,300000,9001,,,,,, +27561,"NTF (Paris) / Lambert Nord France",9001,4807,18091,9801,1,0,4499,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,200000,9001,,,,,, +27562,"NTF (Paris) / Lambert Centre France",9001,4807,18092,9801,1,0,4499,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,200000,9001,,,,,, +27563,"NTF (Paris) / Lambert Sud France",9001,4807,18093,9801,1,0,4499,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,200000,9001,,,,,, +27564,"NTF (Paris) / Lambert Corse",9001,4807,18094,9801,1,0,4499,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,185861.369,9001,,,,,, +27571,"NTF (Paris) / Lambert zone I",9001,4807,18081,9801,1,0,4499,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,1200000,9001,,,,,, +27572,"NTF (Paris) / Lambert zone II",9001,4807,18082,9801,1,0,4499,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,2200000,9001,,,,,, +27573,"NTF (Paris) / Lambert zone III",9001,4807,18083,9801,1,0,4499,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,3200000,9001,,,,,, +27574,"NTF (Paris) / Lambert zone IV",9001,4807,18084,9801,1,0,4499,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,4185861.369,9001,,,,,, +27581,"NTF (Paris) / France I",9001,4807,18081,9801,1,1,4499,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,1200000,9001,,,,,, +27582,"NTF (Paris) / France II",9001,4807,18082,9801,1,1,4499,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,2200000,9001,,,,,, +27583,"NTF (Paris) / France III",9001,4807,18083,9801,1,1,4499,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,3200000,9001,,,,,, +27584,"NTF (Paris) / France IV",9001,4807,18084,9801,1,1,4499,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,4185861.369,9001,,,,,, +27591,"NTF (Paris) / Nord France",9001,4807,18091,9801,1,1,4499,8801,55,9105,8802,0,9105,8805,0.999877341,9201,8806,600000,9001,8807,200000,9001,,,,,, +27592,"NTF (Paris) / Centre France",9001,4807,18092,9801,1,1,4499,8801,52,9105,8802,0,9105,8805,0.99987742,9201,8806,600000,9001,8807,200000,9001,,,,,, +27593,"NTF (Paris) / Sud France",9001,4807,18093,9801,1,1,4499,8801,49,9105,8802,0,9105,8805,0.999877499,9201,8806,600000,9001,8807,200000,9001,,,,,, +27594,"NTF (Paris) / Corse",9001,4807,18094,9801,1,1,4499,8801,46.85,9105,8802,0,9105,8805,0.99994471,9201,8806,234.358,9001,8807,185861.369,9001,,,,,, +27700,"OSGB 1936 / British National Grid",9001,4277,19916,9807,1,0,4400,8801,49,9102,8802,-2,9102,8805,0.9996012717,9201,8806,400000,9001,8807,-100000,9001,,,,,, +28191,"Palestine 1923 / Palestine Grid",9001,4281,18201,9806,1,0,4400,8801,31.4402749,9110,8802,35.124349,9110,8806,170251.555,9001,8807,126867.909,9001,,,,,,,,, +28192,"Palestine 1923 / Palestine Belt",9001,4281,18202,9807,1,0,4400,8801,31.4402749,9110,8802,35.124349,9110,8805,1,9201,8806,170251.555,9001,8807,1126867.909,9001,,,,,, +28193,"Palestine 1923 / Israeli CS Grid",9001,4281,18203,9806,1,0,4400,8801,31.4402749,9110,8802,35.124349,9110,8806,170251.555,9001,8807,1126867.909,9001,,,,,,,,, +28232,"Pointe Noire / UTM zone 32S",9001,4282,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28348,"GDA94 / MGA zone 48",9001,4283,17348,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28349,"GDA94 / MGA zone 49",9001,4283,17349,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28350,"GDA94 / MGA zone 50",9001,4283,17350,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28351,"GDA94 / MGA zone 51",9001,4283,17351,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28352,"GDA94 / MGA zone 52",9001,4283,17352,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28353,"GDA94 / MGA zone 53",9001,4283,17353,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28354,"GDA94 / MGA zone 54",9001,4283,17354,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28355,"GDA94 / MGA zone 55",9001,4283,17355,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28356,"GDA94 / MGA zone 56",9001,4283,17356,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28357,"GDA94 / MGA zone 57",9001,4283,17357,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28358,"GDA94 / MGA zone 58",9001,4283,17358,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +28402,"Pulkovo 1942 / Gauss-Kruger zone 2",9001,4284,16202,9807,1,1,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +28403,"Pulkovo 1942 / Gauss-Kruger zone 3",9001,4284,16203,9807,1,1,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +28404,"Pulkovo 1942 / Gauss-Kruger zone 4",9001,4284,16204,9807,1,0,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +28405,"Pulkovo 1942 / Gauss-Kruger zone 5",9001,4284,16205,9807,1,0,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +28406,"Pulkovo 1942 / Gauss-Kruger zone 6",9001,4284,16206,9807,1,0,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +28407,"Pulkovo 1942 / Gauss-Kruger zone 7",9001,4284,16207,9807,1,0,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +28408,"Pulkovo 1942 / Gauss-Kruger zone 8",9001,4284,16208,9807,1,0,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +28409,"Pulkovo 1942 / Gauss-Kruger zone 9",9001,4284,16209,9807,1,0,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,9500000,9001,8807,0,9001,,,,,, +28410,"Pulkovo 1942 / Gauss-Kruger zone 10",9001,4284,16210,9807,1,0,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,10500000,9001,8807,0,9001,,,,,, +28411,"Pulkovo 1942 / Gauss-Kruger zone 11",9001,4284,16211,9807,1,0,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,11500000,9001,8807,0,9001,,,,,, +28412,"Pulkovo 1942 / Gauss-Kruger zone 12",9001,4284,16212,9807,1,0,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,12500000,9001,8807,0,9001,,,,,, +28413,"Pulkovo 1942 / Gauss-Kruger zone 13",9001,4284,16213,9807,1,0,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,13500000,9001,8807,0,9001,,,,,, +28414,"Pulkovo 1942 / Gauss-Kruger zone 14",9001,4284,16214,9807,1,0,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,14500000,9001,8807,0,9001,,,,,, +28415,"Pulkovo 1942 / Gauss-Kruger zone 15",9001,4284,16215,9807,1,0,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,15500000,9001,8807,0,9001,,,,,, +28416,"Pulkovo 1942 / Gauss-Kruger zone 16",9001,4284,16216,9807,1,0,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,16500000,9001,8807,0,9001,,,,,, +28417,"Pulkovo 1942 / Gauss-Kruger zone 17",9001,4284,16217,9807,1,0,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,17500000,9001,8807,0,9001,,,,,, +28418,"Pulkovo 1942 / Gauss-Kruger zone 18",9001,4284,16218,9807,1,0,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,18500000,9001,8807,0,9001,,,,,, +28419,"Pulkovo 1942 / Gauss-Kruger zone 19",9001,4284,16219,9807,1,0,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,19500000,9001,8807,0,9001,,,,,, +28420,"Pulkovo 1942 / Gauss-Kruger zone 20",9001,4284,16220,9807,1,0,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,20500000,9001,8807,0,9001,,,,,, +28421,"Pulkovo 1942 / Gauss-Kruger zone 21",9001,4284,16221,9807,1,0,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,21500000,9001,8807,0,9001,,,,,, +28422,"Pulkovo 1942 / Gauss-Kruger zone 22",9001,4284,16222,9807,1,0,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,22500000,9001,8807,0,9001,,,,,, +28423,"Pulkovo 1942 / Gauss-Kruger zone 23",9001,4284,16223,9807,1,0,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,23500000,9001,8807,0,9001,,,,,, +28424,"Pulkovo 1942 / Gauss-Kruger zone 24",9001,4284,16224,9807,1,0,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,24500000,9001,8807,0,9001,,,,,, +28425,"Pulkovo 1942 / Gauss-Kruger zone 25",9001,4284,16225,9807,1,0,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,25500000,9001,8807,0,9001,,,,,, +28426,"Pulkovo 1942 / Gauss-Kruger zone 26",9001,4284,16226,9807,1,0,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,26500000,9001,8807,0,9001,,,,,, +28427,"Pulkovo 1942 / Gauss-Kruger zone 27",9001,4284,16227,9807,1,0,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,27500000,9001,8807,0,9001,,,,,, +28428,"Pulkovo 1942 / Gauss-Kruger zone 28",9001,4284,16228,9807,1,0,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,28500000,9001,8807,0,9001,,,,,, +28429,"Pulkovo 1942 / Gauss-Kruger zone 29",9001,4284,16229,9807,1,0,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,29500000,9001,8807,0,9001,,,,,, +28430,"Pulkovo 1942 / Gauss-Kruger zone 30",9001,4284,16230,9807,1,0,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,30500000,9001,8807,0,9001,,,,,, +28431,"Pulkovo 1942 / Gauss-Kruger zone 31",9001,4284,16231,9807,1,0,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,31500000,9001,8807,0,9001,,,,,, +28432,"Pulkovo 1942 / Gauss-Kruger zone 32",9001,4284,16232,9807,1,0,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,32500000,9001,8807,0,9001,,,,,, +28462,"Pulkovo 1942 / Gauss-Kruger 2N",9001,4284,16302,9807,1,1,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28463,"Pulkovo 1942 / Gauss-Kruger 3N",9001,4284,16303,9807,1,1,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28464,"Pulkovo 1942 / Gauss-Kruger 4N",9001,4284,16304,9807,1,1,4530,8801,0,9102,8802,21,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28465,"Pulkovo 1942 / Gauss-Kruger 5N",9001,4284,16305,9807,1,1,4530,8801,0,9102,8802,27,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28466,"Pulkovo 1942 / Gauss-Kruger 6N",9001,4284,16306,9807,1,1,4530,8801,0,9102,8802,33,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28467,"Pulkovo 1942 / Gauss-Kruger 7N",9001,4284,16307,9807,1,1,4530,8801,0,9102,8802,39,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28468,"Pulkovo 1942 / Gauss-Kruger 8N",9001,4284,16308,9807,1,1,4530,8801,0,9102,8802,45,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28469,"Pulkovo 1942 / Gauss-Kruger 9N",9001,4284,16309,9807,1,1,4530,8801,0,9102,8802,51,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28470,"Pulkovo 1942 / Gauss-Kruger 10N",9001,4284,16310,9807,1,1,4530,8801,0,9102,8802,57,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28471,"Pulkovo 1942 / Gauss-Kruger 11N",9001,4284,16311,9807,1,1,4530,8801,0,9102,8802,63,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28472,"Pulkovo 1942 / Gauss-Kruger 12N",9001,4284,16312,9807,1,1,4530,8801,0,9102,8802,69,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28473,"Pulkovo 1942 / Gauss-Kruger 13N",9001,4284,16313,9807,1,1,4530,8801,0,9102,8802,75,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28474,"Pulkovo 1942 / Gauss-Kruger 14N",9001,4284,16314,9807,1,1,4530,8801,0,9102,8802,81,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28475,"Pulkovo 1942 / Gauss-Kruger 15N",9001,4284,16315,9807,1,1,4530,8801,0,9102,8802,87,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28476,"Pulkovo 1942 / Gauss-Kruger 16N",9001,4284,16316,9807,1,1,4530,8801,0,9102,8802,93,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28477,"Pulkovo 1942 / Gauss-Kruger 17N",9001,4284,16317,9807,1,1,4530,8801,0,9102,8802,99,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28478,"Pulkovo 1942 / Gauss-Kruger 18N",9001,4284,16318,9807,1,1,4530,8801,0,9102,8802,105,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28479,"Pulkovo 1942 / Gauss-Kruger 19N",9001,4284,16319,9807,1,1,4530,8801,0,9102,8802,111,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28480,"Pulkovo 1942 / Gauss-Kruger 20N",9001,4284,16320,9807,1,1,4530,8801,0,9102,8802,117,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28481,"Pulkovo 1942 / Gauss-Kruger 21N",9001,4284,16321,9807,1,1,4530,8801,0,9102,8802,123,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28482,"Pulkovo 1942 / Gauss-Kruger 22N",9001,4284,16322,9807,1,1,4530,8801,0,9102,8802,129,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28483,"Pulkovo 1942 / Gauss-Kruger 23N",9001,4284,16323,9807,1,1,4530,8801,0,9102,8802,135,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28484,"Pulkovo 1942 / Gauss-Kruger 24N",9001,4284,16324,9807,1,1,4530,8801,0,9102,8802,141,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28485,"Pulkovo 1942 / Gauss-Kruger 25N",9001,4284,16325,9807,1,1,4530,8801,0,9102,8802,147,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28486,"Pulkovo 1942 / Gauss-Kruger 26N",9001,4284,16326,9807,1,1,4530,8801,0,9102,8802,153,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28487,"Pulkovo 1942 / Gauss-Kruger 27N",9001,4284,16327,9807,1,1,4530,8801,0,9102,8802,159,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28488,"Pulkovo 1942 / Gauss-Kruger 28N",9001,4284,16328,9807,1,1,4530,8801,0,9102,8802,165,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28489,"Pulkovo 1942 / Gauss-Kruger 29N",9001,4284,16329,9807,1,1,4530,8801,0,9102,8802,171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28490,"Pulkovo 1942 / Gauss-Kruger 30N",9001,4284,16330,9807,1,1,4530,8801,0,9102,8802,177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28491,"Pulkovo 1942 / Gauss-Kruger 31N",9001,4284,16331,9807,1,1,4530,8801,0,9102,8802,-177,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28492,"Pulkovo 1942 / Gauss-Kruger 32N",9001,4284,16332,9807,1,1,4530,8801,0,9102,8802,-171,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +28600,"Qatar 1974 / Qatar National Grid",9001,4285,19919,9807,1,0,4400,8801,24.27,9110,8802,51.13,9110,8805,0.99999,9201,8806,200000,9001,8807,300000,9001,,,,,, +28991,"Amersfoort / RD Old",9001,4289,19913,9809,1,0,4499,8801,52.0922178,9110,8802,5.23155,9110,8805,0.9999079,9201,8806,0,9001,8807,0,9001,,,,,, +28992,"Amersfoort / RD New",9001,4289,19914,9809,1,0,4499,8801,52.0922178,9110,8802,5.23155,9110,8805,0.9999079,9201,8806,155000,9001,8807,463000,9001,,,,,, +29100,"SAD69 / Brazil Polyconic",9001,4291,19941,9818,1,1,4499,8801,0,9102,8802,-54,9102,8806,5000000,9001,8807,10000000,9001,,,,,,,,, +29101,"SAD69 / Brazil Polyconic",9001,4618,19941,9818,1,0,4499,8801,0,9102,8802,-54,9102,8806,5000000,9001,8807,10000000,9001,,,,,,,,, +29118,"SAD69 / UTM zone 18N",9001,4291,16018,9807,1,1,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29119,"SAD69 / UTM zone 19N",9001,4291,16019,9807,1,1,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29120,"SAD69 / UTM zone 20N",9001,4291,16020,9807,1,1,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29121,"SAD69 / UTM zone 21N",9001,4291,16021,9807,1,1,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29122,"SAD69 / UTM zone 22N",9001,4291,16022,9807,1,1,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29168,"SAD69 / UTM zone 18N",9001,4618,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29169,"SAD69 / UTM zone 19N",9001,4618,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29170,"SAD69 / UTM zone 20N",9001,4618,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29171,"SAD69 / UTM zone 21N",9001,4618,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29172,"SAD69 / UTM zone 22N",9001,4618,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29177,"SAD69 / UTM zone 17S",9001,4291,16117,9807,1,1,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29178,"SAD69 / UTM zone 18S",9001,4291,16118,9807,1,1,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29179,"SAD69 / UTM zone 19S",9001,4291,16119,9807,1,1,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29180,"SAD69 / UTM zone 20S",9001,4291,16120,9807,1,1,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29181,"SAD69 / UTM zone 21S",9001,4291,16121,9807,1,1,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29182,"SAD69 / UTM zone 22S",9001,4291,16122,9807,1,1,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29183,"SAD69 / UTM zone 23S",9001,4291,16123,9807,1,1,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29184,"SAD69 / UTM zone 24S",9001,4291,16124,9807,1,1,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29185,"SAD69 / UTM zone 25S",9001,4291,16125,9807,1,1,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29187,"SAD69 / UTM zone 17S",9001,4618,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29188,"SAD69 / UTM zone 18S",9001,4618,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29189,"SAD69 / UTM zone 19S",9001,4618,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29190,"SAD69 / UTM zone 20S",9001,4618,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29191,"SAD69 / UTM zone 21S",9001,4618,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29192,"SAD69 / UTM zone 22S",9001,4618,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29193,"SAD69 / UTM zone 23S",9001,4618,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29194,"SAD69 / UTM zone 24S",9001,4618,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29195,"SAD69 / UTM zone 25S",9001,4618,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29220,"Sapper Hill 1943 / UTM zone 20S",9001,4292,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29221,"Sapper Hill 1943 / UTM zone 21S",9001,4292,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29333,"Schwarzeck / UTM zone 33S",9001,4293,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29371,"Schwarzeck / Lo22/11",9031,4293,17611,9808,1,0,6502,8801,-22,9102,8802,11,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29373,"Schwarzeck / Lo22/13",9031,4293,17613,9808,1,0,6502,8801,-22,9102,8802,13,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29375,"Schwarzeck / Lo22/15",9031,4293,17615,9808,1,0,6502,8801,-22,9102,8802,15,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29377,"Schwarzeck / Lo22/17",9031,4293,17617,9808,1,0,6502,8801,-22,9102,8802,17,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29379,"Schwarzeck / Lo22/19",9031,4293,17619,9808,1,0,6502,8801,-22,9102,8802,19,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29381,"Schwarzeck / Lo22/21",9031,4293,17621,9808,1,0,6502,8801,-22,9102,8802,21,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29383,"Schwarzeck / Lo22/23",9031,4293,17623,9808,1,0,6502,8801,-22,9102,8802,23,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29385,"Schwarzeck / Lo22/25",9031,4293,17625,9808,1,0,6502,8801,-22,9102,8802,25,9102,8805,1,9201,8806,0,9031,8807,0,9031,,,,,, +29635,"Sudan / UTM zone 35N",9001,4296,16035,9807,1,1,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29636,"Sudan / UTM zone 36N",9001,4296,16036,9807,1,1,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29700,"Tananarive (Paris) / Laborde Grid",9001,4810,19911,9815,1,1,4499,8811,-21,9105,8812,49,9105,8813,21,9105,8814,21,9105,8815,0.9995,9201,8816,400000,9001,8817,800000,9001 +29701,"Tananarive (Paris) / Laborde Grid",9001,4810,19861,9813,1,0,4530,8806,400000,9001,8807,800000,9001,8811,-21,9105,8812,49,9105,8813,21,9105,8815,0.9995,9201,,, +29702,"Tananarive (Paris) / Laborde Grid approximation",9001,4810,19911,9815,1,0,4530,8811,-21,9105,8812,49,9105,8813,21,9105,8814,21,9105,8815,0.9995,9201,8816,400000,9001,8817,800000,9001 +29738,"Tananarive / UTM zone 38S",9001,4297,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29739,"Tananarive / UTM zone 39S",9001,4297,16139,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +29849,"Timbalai 1948 / UTM zone 49N",9001,4298,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29850,"Timbalai 1948 / UTM zone 50N",9001,4298,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +29871,"Timbalai 1948 / RSO Borneo (ch)",9042,4298,19956,9815,1,0,4402,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,29352.4763,9042,8817,22014.3572,9042 +29872,"Timbalai 1948 / RSO Borneo (ft)",9041,4298,19957,9815,1,0,4405,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,1937263.44,9041,8817,1452947.58,9041 +29873,"Timbalai 1948 / RSO Borneo (m)",9001,4298,19958,9815,1,0,4400,8811,4,9110,8812,115,9110,8813,53.18569537,9110,8814,53.07483685,9110,8815,0.99984,9201,8816,590476.87,9001,8817,442857.65,9001 +29900,"TM65 / Irish National Grid",9001,4299,19908,9807,1,1,4400,8801,53.3,9110,8802,-8,9110,8805,1.000035,9201,8806,200000,9001,8807,250000,9001,,,,,, +29901,"OSNI 1952 / Irish National Grid",9001,4188,19973,9807,1,0,4400,8801,53.3,9110,8802,-8,9110,8805,1,9201,8806,200000,9001,8807,250000,9001,,,,,, +29902,"TM65 / Irish Grid",9001,4299,19972,9807,1,0,4400,8801,53.3,9110,8802,-8,9110,8805,1.000035,9201,8806,200000,9001,8807,250000,9001,,,,,, +29903,"TM75 / Irish Grid",9001,4300,19972,9807,1,0,4400,8801,53.3,9110,8802,-8,9110,8805,1.000035,9201,8806,200000,9001,8807,250000,9001,,,,,, +30161,"Tokyo / Japan Plane Rectangular CS I",9001,4301,17801,9807,1,0,4530,8801,33,9110,8802,129.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30162,"Tokyo / Japan Plane Rectangular CS II",9001,4301,17802,9807,1,0,4530,8801,33,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30163,"Tokyo / Japan Plane Rectangular CS III",9001,4301,17803,9807,1,0,4530,8801,36,9110,8802,132.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30164,"Tokyo / Japan Plane Rectangular CS IV",9001,4301,17804,9807,1,0,4530,8801,33,9110,8802,133.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30165,"Tokyo / Japan Plane Rectangular CS V",9001,4301,17805,9807,1,0,4530,8801,36,9110,8802,134.2,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30166,"Tokyo / Japan Plane Rectangular CS VI",9001,4301,17806,9807,1,0,4530,8801,36,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30167,"Tokyo / Japan Plane Rectangular CS VII",9001,4301,17807,9807,1,0,4530,8801,36,9110,8802,137.1,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30168,"Tokyo / Japan Plane Rectangular CS VIII",9001,4301,17808,9807,1,0,4530,8801,36,9110,8802,138.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30169,"Tokyo / Japan Plane Rectangular CS IX",9001,4301,17809,9807,1,0,4530,8801,36,9110,8802,139.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30170,"Tokyo / Japan Plane Rectangular CS X",9001,4301,17810,9807,1,0,4530,8801,40,9110,8802,140.5,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30171,"Tokyo / Japan Plane Rectangular CS XI",9001,4301,17811,9807,1,0,4530,8801,44,9110,8802,140.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30172,"Tokyo / Japan Plane Rectangular CS XII",9001,4301,17812,9807,1,0,4530,8801,44,9110,8802,142.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30173,"Tokyo / Japan Plane Rectangular CS XIII",9001,4301,17813,9807,1,0,4530,8801,44,9110,8802,144.15,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30174,"Tokyo / Japan Plane Rectangular CS XIV",9001,4301,17814,9807,1,0,4530,8801,26,9110,8802,142,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30175,"Tokyo / Japan Plane Rectangular CS XV",9001,4301,17815,9807,1,0,4530,8801,26,9110,8802,127.3,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30176,"Tokyo / Japan Plane Rectangular CS XVI",9001,4301,17816,9807,1,0,4530,8801,26,9110,8802,124,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30177,"Tokyo / Japan Plane Rectangular CS XVII",9001,4301,17817,9807,1,0,4530,8801,26,9110,8802,131,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30178,"Tokyo / Japan Plane Rectangular CS XVIII",9001,4301,17818,9807,1,0,4530,8801,20,9110,8802,136,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30179,"Tokyo / Japan Plane Rectangular CS XIX",9001,4301,17819,9807,1,0,4530,8801,26,9110,8802,154,9110,8805,0.9999,9201,8806,0,9001,8807,0,9001,,,,,, +30200,"Trinidad 1903 / Trinidad Grid",9039,4302,19925,9806,1,0,4407,8801,10.263,9110,8802,-61.2,9110,8806,430000,9039,8807,325000,9039,,,,,,,,, +30339,"TC(1948) / UTM zone 39N",9001,4303,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30340,"TC(1948) / UTM zone 40N",9001,4303,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30491,"Voirol 1875 / Nord Algerie (ancienne)",9001,4304,18011,9801,1,0,4499,8801,40,9105,8802,3,9105,8805,0.999625544,9201,8806,500000,9001,8807,300000,9001,,,,,, +30492,"Voirol 1875 / Sud Algerie (ancienne)",9001,4304,18012,9801,1,0,4499,8801,37,9105,8802,3,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +30493,"Voirol 1879 / Nord Algerie (ancienne)",9001,4671,18011,9801,1,0,4499,8801,40,9105,8802,3,9105,8805,0.999625544,9201,8806,500000,9001,8807,300000,9001,,,,,, +30494,"Voirol 1879 / Sud Algerie (ancienne)",9001,4671,18012,9801,1,0,4499,8801,37,9105,8802,3,9105,8805,0.999625769,9201,8806,500000,9001,8807,300000,9001,,,,,, +30729,"Nord Sahara 1959 / UTM zone 29N",9001,4307,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30730,"Nord Sahara 1959 / UTM zone 30N",9001,4307,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30731,"Nord Sahara 1959 / UTM zone 31N",9001,4307,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30732,"Nord Sahara 1959 / UTM zone 32N",9001,4307,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +30791,"Nord Sahara 1959 / Voirol Unifie Nord",9001,4307,18021,9801,1,0,4499,8801,40,9105,8802,3,9105,8805,0.999625544,9201,8806,500135,9001,8807,300090,9001,,,,,, +30792,"Nord Sahara 1959 / Voirol Unifie Sud",9001,4307,18022,9801,1,0,4499,8801,37,9105,8802,3,9105,8805,0.999625769,9201,8806,500135,9001,8807,300090,9001,,,,,, +30800,RT38 2.5 gon W,9001,4308,19929,9807,1,1,4530,8801,0,9110,8802,15.48298,9110,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +31028,"Yoff / UTM zone 28N",9001,4310,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31121,"Zanderij / UTM zone 21N",9001,4311,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31154,"Zanderij / TM 54 NW",9001,4311,17054,9807,1,0,4400,8801,0,9102,8802,-54,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31170,"Zanderij / Suriname Old TM",9001,4311,19954,9807,1,0,4400,8801,0,9110,8802,-55.41,9110,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31171,"Zanderij / Suriname TM",9001,4311,19955,9807,1,0,4400,8801,0,9110,8802,-55.41,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +31251,"MGI (Ferro) / Austria GK West Zone",9001,4805,18001,9807,1,0,4530,8801,0,9102,8802,28,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31252,"MGI (Ferro) / Austria GK Central Zone",9001,4805,18002,9807,1,0,4530,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31253,"MGI (Ferro) / Austria GK East Zone",9001,4805,18003,9807,1,0,4530,8801,0,9102,8802,34,9102,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31254,"MGI / Austria GK West",9001,4312,18004,9807,1,0,4530,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31255,"MGI / Austria GK Central",9001,4312,18005,9807,1,0,4530,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31256,"MGI / Austria GK East",9001,4312,18006,9807,1,0,4530,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,0,9001,8807,-5000000,9001,,,,,, +31257,"MGI / Austria GK M28",9001,4312,18007,9807,1,0,4530,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,150000,9001,8807,-5000000,9001,,,,,, +31258,"MGI / Austria GK M31",9001,4312,18008,9807,1,0,4530,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,450000,9001,8807,-5000000,9001,,,,,, +31259,"MGI / Austria GK M34",9001,4312,18009,9807,1,0,4530,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,750000,9001,8807,-5000000,9001,,,,,, +31265,"MGI / 3-degree Gauss zone 5",9001,4312,16265,9807,1,1,4499,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +31266,"MGI / 3-degree Gauss zone 6",9001,4312,16266,9807,1,1,4499,8801,0,9102,8802,18,9102,8805,1,9201,8806,6500000,9001,8807,0,9001,,,,,, +31267,"MGI / 3-degree Gauss zone 7",9001,4312,16267,9807,1,1,4499,8801,0,9102,8802,21,9102,8805,1,9201,8806,7500000,9001,8807,0,9001,,,,,, +31268,"MGI / 3-degree Gauss zone 8",9001,4312,16268,9807,1,1,4499,8801,0,9102,8802,24,9102,8805,1,9201,8806,8500000,9001,8807,0,9001,,,,,, +31275,"MGI / Balkans zone 5",9001,4312,18275,9807,1,1,4530,8801,0,9102,8802,15,9102,8805,0.9999,9201,8806,5500000,9001,8807,0,9001,,,,,, +31276,"MGI / Balkans zone 6",9001,4312,18276,9807,1,1,4530,8801,0,9102,8802,18,9102,8805,0.9999,9201,8806,6500000,9001,8807,0,9001,,,,,, +31277,"MGI / Balkans zone 7",9001,4312,18277,9807,1,1,4530,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,7500000,9001,8807,0,9001,,,,,, +31278,"MGI / Balkans zone 8",9001,4312,18277,9807,1,1,4530,8801,0,9102,8802,21,9102,8805,0.9999,9201,8806,7500000,9001,8807,0,9001,,,,,, +31279,"MGI / Balkans zone 8",9001,4312,18278,9807,1,1,4530,8801,0,9102,8802,24,9102,8805,0.9999,9201,8806,8500000,9001,8807,0,9001,,,,,, +31281,"MGI (Ferro) / Austria West Zone",9001,4805,18041,9807,1,0,4530,8801,0,9102,8802,28,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31282,"MGI (Ferro) / Austria Central Zone",9001,4805,18042,9807,1,0,4530,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31283,"MGI (Ferro) / Austria East Zone",9001,4805,18043,9807,1,0,4530,8801,0,9102,8802,34,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31284,"MGI / Austria M28",9001,4312,18044,9807,1,0,4530,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +31285,"MGI / Austria M31",9001,4312,18045,9807,1,0,4530,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,450000,9001,8807,0,9001,,,,,, +31286,"MGI / Austria M34",9001,4312,18046,9807,1,0,4530,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,750000,9001,8807,0,9001,,,,,, +31287,"MGI / Austria Lambert",9001,4312,19947,9802,1,0,4530,8821,47.3,9110,8822,13.2,9110,8823,49,9110,8824,46,9110,8826,400000,9001,8827,400000,9001,,, +31288,"MGI (Ferro) / M28",9001,4805,18047,9807,1,0,4530,8801,0,9102,8802,28,9102,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +31289,"MGI (Ferro) / M31",9001,4805,18048,9807,1,0,4530,8801,0,9102,8802,31,9102,8805,1,9201,8806,450000,9001,8807,0,9001,,,,,, +31290,"MGI (Ferro) / M34",9001,4805,18049,9807,1,0,4530,8801,0,9102,8802,34,9102,8805,1,9201,8806,750000,9001,8807,0,9001,,,,,, +31291,"MGI (Ferro) / Austria West Zone",9001,4805,18041,9807,1,1,4499,8801,0,9102,8802,28,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31292,"MGI (Ferro) / Austria Central Zone",9001,4805,18042,9807,1,1,4499,8801,0,9102,8802,31,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31293,"MGI (Ferro) / Austria East Zone",9001,4805,18043,9807,1,1,4499,8801,0,9102,8802,34,9102,8805,1,9201,8806,0,9001,8807,0,9001,,,,,, +31294,"MGI / M28",9001,4312,18044,9807,1,1,4499,8801,0,9110,8802,10.2,9110,8805,1,9201,8806,150000,9001,8807,0,9001,,,,,, +31295,"MGI / M31",9001,4312,18045,9807,1,1,4499,8801,0,9110,8802,13.2,9110,8805,1,9201,8806,450000,9001,8807,0,9001,,,,,, +31296,"MGI / M34",9001,4312,18046,9807,1,1,4499,8801,0,9110,8802,16.2,9110,8805,1,9201,8806,750000,9001,8807,0,9001,,,,,, +31297,"MGI / Austria Lambert",9001,4312,19947,9802,1,1,4499,8821,47.3,9110,8822,13.2,9110,8823,49,9110,8824,46,9110,8826,400000,9001,8827,400000,9001,,, +31300,"Belge 1972 / Belge Lambert 72",9001,4313,19902,9803,1,0,4499,8821,90,9110,8822,4.2124983,9110,8823,49.5,9110,8824,51.1,9110,8826,150000.01256,9001,8827,5400088.4378,9001,,, +31370,"Belge 1972 / Belgian Lambert 72",9001,4313,19961,9802,1,0,4499,8821,90,9110,8822,4.2202952,9110,8823,51.100000204,9110,8824,49.500000204,9110,8826,150000.013,9001,8827,5400088.438,9001,,, +31461,"DHDN / 3-degree Gauss zone 1",9001,4314,16261,9807,1,1,4499,8801,0,9102,8802,3,9102,8805,1,9201,8806,1500000,9001,8807,0,9001,,,,,, +31462,"DHDN / 3-degree Gauss zone 2",9001,4314,16262,9807,1,1,4499,8801,0,9102,8802,6,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +31463,"DHDN / 3-degree Gauss zone 3",9001,4314,16263,9807,1,1,4499,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +31464,"DHDN / 3-degree Gauss zone 4",9001,4314,16264,9807,1,1,4499,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +31465,"DHDN / 3-degree Gauss zone 5",9001,4314,16265,9807,1,1,4499,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +31466,"DHDN / 3-degree Gauss-Kruger zone 2",9001,4314,16262,9807,1,0,4530,8801,0,9102,8802,6,9102,8805,1,9201,8806,2500000,9001,8807,0,9001,,,,,, +31467,"DHDN / 3-degree Gauss-Kruger zone 3",9001,4314,16263,9807,1,0,4530,8801,0,9102,8802,9,9102,8805,1,9201,8806,3500000,9001,8807,0,9001,,,,,, +31468,"DHDN / 3-degree Gauss-Kruger zone 4",9001,4314,16264,9807,1,0,4530,8801,0,9102,8802,12,9102,8805,1,9201,8806,4500000,9001,8807,0,9001,,,,,, +31469,"DHDN / 3-degree Gauss-Kruger zone 5",9001,4314,16265,9807,1,0,4530,8801,0,9102,8802,15,9102,8805,1,9201,8806,5500000,9001,8807,0,9001,,,,,, +31528,"Conakry 1905 / UTM zone 28N",9001,4315,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31529,"Conakry 1905 / UTM zone 29N",9001,4315,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31600,"Dealul Piscului 1930 / Stereo 33",9001,4316,19927,9809,1,0,4499,8801,45.54,9110,8802,25.23328772,9110,8805,0.9996667,9201,8806,500000,9001,8807,500000,9001,,,,,, +31700,"Dealul Piscului 1970/ Stereo 70",9001,4317,19926,9809,1,1,4530,8801,46,9102,8802,25,9102,8805,0.99975,9201,8806,500000,9001,8807,500000,9001,,,,,, +31838,"NGN / UTM zone 38N",9001,4318,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31839,"NGN / UTM zone 39N",9001,4318,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31900,"KUDAMS / KTM",9001,4319,19928,9807,1,1,4400,8801,0,9102,8802,48,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31901,"KUDAMS / KTM",9001,4319,19997,9807,1,0,4400,8801,0,9102,8802,48,9102,8805,1,9201,8806,500000,9001,8807,0,9001,,,,,, +31965,"SIRGAS 2000 / UTM zone 11N",9001,4674,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31966,"SIRGAS 2000 / UTM zone 12N",9001,4674,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31967,"SIRGAS 2000 / UTM zone 13N",9001,4674,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31968,"SIRGAS 2000 / UTM zone 14N",9001,4674,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31969,"SIRGAS 2000 / UTM zone 15N",9001,4674,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31970,"SIRGAS 2000 / UTM zone 16N",9001,4674,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31971,"SIRGAS 2000 / UTM zone 17N",9001,4674,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31972,"SIRGAS 2000 / UTM zone 18N",9001,4674,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31973,"SIRGAS 2000 / UTM zone 19N",9001,4674,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31974,"SIRGAS 2000 / UTM zone 20N",9001,4674,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31975,"SIRGAS 2000 / UTM zone 21N",9001,4674,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31976,"SIRGAS 2000 / UTM zone 22N",9001,4674,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31977,"SIRGAS 2000 / UTM zone 17S",9001,4674,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31978,"SIRGAS 2000 / UTM zone 18S",9001,4674,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31979,"SIRGAS 2000 / UTM zone 19S",9001,4674,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31980,"SIRGAS 2000 / UTM zone 20S",9001,4674,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31981,"SIRGAS 2000 / UTM zone 21S",9001,4674,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31982,"SIRGAS 2000 / UTM zone 22S",9001,4674,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31983,"SIRGAS 2000 / UTM zone 23S",9001,4674,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31984,"SIRGAS 2000 / UTM zone 24S",9001,4674,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31985,"SIRGAS 2000 / UTM zone 25S",9001,4674,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31986,"SIRGAS 1995 / UTM zone 17N",9001,4170,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31987,"SIRGAS 1995 / UTM zone 18N",9001,4170,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31988,"SIRGAS 1995 / UTM zone 19N",9001,4170,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31989,"SIRGAS 1995 / UTM zone 20N",9001,4170,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31990,"SIRGAS 1995 / UTM zone 21N",9001,4170,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31991,"SIRGAS 1995 / UTM zone 22N",9001,4170,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +31992,"SIRGAS 1995 / UTM zone 17S",9001,4170,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31993,"SIRGAS 1995 / UTM zone 18S",9001,4170,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31994,"SIRGAS 1995 / UTM zone 19S",9001,4170,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31995,"SIRGAS 1995 / UTM zone 20S",9001,4170,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31996,"SIRGAS 1995 / UTM zone 21S",9001,4170,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31997,"SIRGAS 1995 / UTM zone 22S",9001,4170,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31998,"SIRGAS 1995 / UTM zone 23S",9001,4170,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +31999,"SIRGAS 1995 / UTM zone 24S",9001,4170,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32000,"SIRGAS 1995 / UTM zone 25S",9001,4170,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32001,"NAD27 / Montana North",9003,4267,12501,9802,1,0,4497,8821,47,9110,8822,-109.3,9110,8823,48.43,9110,8824,47.51,9110,8826,2000000,9003,8827,0,9003,,, +32002,"NAD27 / Montana Central",9003,4267,12502,9802,1,0,4497,8821,45.5,9110,8822,-109.3,9110,8823,47.53,9110,8824,46.27,9110,8826,2000000,9003,8827,0,9003,,, +32003,"NAD27 / Montana South",9003,4267,12503,9802,1,0,4497,8821,44,9110,8822,-109.3,9110,8823,46.24,9110,8824,44.52,9110,8826,2000000,9003,8827,0,9003,,, +32005,"NAD27 / Nebraska North",9003,4267,12601,9802,1,0,4497,8821,41.2,9110,8822,-100,9110,8823,41.51,9110,8824,42.49,9110,8826,2000000,9003,8827,0,9003,,, +32006,"NAD27 / Nebraska South",9003,4267,12602,9802,1,0,4497,8821,39.4,9110,8822,-99.3,9110,8823,40.17,9110,8824,41.43,9110,8826,2000000,9003,8827,0,9003,,, +32007,"NAD27 / Nevada East",9003,4267,12701,9807,1,0,4497,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +32008,"NAD27 / Nevada Central",9003,4267,12702,9807,1,0,4497,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +32009,"NAD27 / Nevada West",9003,4267,12703,9807,1,0,4497,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +32010,"NAD27 / New Hampshire",9003,4267,12800,9807,1,0,4497,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +32011,"NAD27 / New Jersey",9003,4267,12900,9807,1,0,4497,8801,38.5,9110,8802,-74.4,9110,8805,0.999975,9201,8806,2000000,9003,8807,0,9003,,,,,, +32012,"NAD27 / New Mexico East",9003,4267,13001,9807,1,0,4497,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,500000,9003,8807,0,9003,,,,,, +32013,"NAD27 / New Mexico Central",9003,4267,13002,9807,1,0,4497,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9003,8807,0,9003,,,,,, +32014,"NAD27 / New Mexico West",9003,4267,13003,9807,1,0,4497,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,500000,9003,8807,0,9003,,,,,, +32015,"NAD27 / New York East",9003,4267,13101,9807,1,0,4497,8801,40,9110,8802,-74.2,9110,8805,0.999966667,9201,8806,500000,9003,8807,0,9003,,,,,, +32016,"NAD27 / New York Central",9003,4267,13102,9807,1,0,4497,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,500000,9003,8807,0,9003,,,,,, +32017,"NAD27 / New York West",9003,4267,13103,9807,1,0,4497,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,500000,9003,8807,0,9003,,,,,, +32018,"NAD27 / New York Long Island",9003,4267,13104,9802,1,1,4497,8821,40.3,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,1000000,9003,8827,0,9003,,, +32019,"NAD27 / North Carolina",9003,4267,13200,9802,1,0,4497,8821,33.45,9110,8822,-79,9110,8823,34.2,9110,8824,36.1,9110,8826,2000000,9003,8827,0,9003,,, +32020,"NAD27 / North Dakota North",9003,4267,13301,9802,1,0,4497,8821,47,9110,8822,-100.3,9110,8823,47.26,9110,8824,48.44,9110,8826,2000000,9003,8827,0,9003,,, +32021,"NAD27 / North Dakota South",9003,4267,13302,9802,1,0,4497,8821,45.4,9110,8822,-100.3,9110,8823,46.11,9110,8824,47.29,9110,8826,2000000,9003,8827,0,9003,,, +32022,"NAD27 / Ohio North",9003,4267,13401,9802,1,0,4497,8821,39.4,9110,8822,-82.3,9110,8823,40.26,9110,8824,41.42,9110,8826,2000000,9003,8827,0,9003,,, +32023,"NAD27 / Ohio South",9003,4267,13402,9802,1,0,4497,8821,38,9110,8822,-82.3,9110,8823,38.44,9110,8824,40.02,9110,8826,2000000,9003,8827,0,9003,,, +32024,"NAD27 / Oklahoma North",9003,4267,13501,9802,1,0,4497,8821,35,9110,8822,-98,9110,8823,35.34,9110,8824,36.46,9110,8826,2000000,9003,8827,0,9003,,, +32025,"NAD27 / Oklahoma South",9003,4267,13502,9802,1,0,4497,8821,33.2,9110,8822,-98,9110,8823,33.56,9110,8824,35.14,9110,8826,2000000,9003,8827,0,9003,,, +32026,"NAD27 / Oregon North",9003,4267,13601,9802,1,0,4497,8821,43.4,9110,8822,-120.3,9110,8823,44.2,9110,8824,46,9110,8826,2000000,9003,8827,0,9003,,, +32027,"NAD27 / Oregon South",9003,4267,13602,9802,1,0,4497,8821,41.4,9110,8822,-120.3,9110,8823,42.2,9110,8824,44,9110,8826,2000000,9003,8827,0,9003,,, +32028,"NAD27 / Pennsylvania North",9003,4267,13701,9802,1,0,4497,8821,40.1,9110,8822,-77.45,9110,8823,40.53,9110,8824,41.57,9110,8826,2000000,9003,8827,0,9003,,, +32029,"NAD27 / Pennsylvania South",9003,4267,13702,9802,1,1,4497,8821,39.2,9110,8822,-77.45,9110,8823,39.56,9110,8824,40.48,9110,8826,2000000,9003,8827,0,9003,,, +32030,"NAD27 / Rhode Island",9003,4267,13800,9807,1,0,4497,8801,41.05,9110,8802,-71.3,9110,8805,0.9999938,9201,8806,500000,9003,8807,0,9003,,,,,, +32031,"NAD27 / South Carolina North",9003,4267,13901,9802,1,0,4497,8821,33,9110,8822,-81,9110,8823,33.46,9110,8824,34.58,9110,8826,2000000,9003,8827,0,9003,,, +32033,"NAD27 / South Carolina South",9003,4267,13902,9802,1,0,4497,8821,31.5,9110,8822,-81,9110,8823,32.2,9110,8824,33.4,9110,8826,2000000,9003,8827,0,9003,,, +32034,"NAD27 / South Dakota North",9003,4267,14001,9802,1,0,4497,8821,43.5,9110,8822,-100,9110,8823,44.25,9110,8824,45.41,9110,8826,2000000,9003,8827,0,9003,,, +32035,"NAD27 / South Dakota South",9003,4267,14002,9802,1,0,4497,8821,42.2,9110,8822,-100.2,9110,8823,42.5,9110,8824,44.24,9110,8826,2000000,9003,8827,0,9003,,, +32036,"NAD27 / Tennessee",9003,4267,14100,9802,1,1,4497,8821,34.4,9110,8822,-86,9110,8823,35.15,9110,8824,36.25,9110,8826,100000,9003,8827,0,9003,,, +32037,"NAD27 / Texas North",9003,4267,14201,9802,1,0,4497,8821,34,9110,8822,-101.3,9110,8823,34.39,9110,8824,36.11,9110,8826,2000000,9003,8827,0,9003,,, +32038,"NAD27 / Texas North Central",9003,4267,14202,9802,1,0,4497,8821,31.4,9110,8822,-97.3,9110,8823,32.08,9110,8824,33.58,9110,8826,2000000,9003,8827,0,9003,,, +32039,"NAD27 / Texas Central",9003,4267,14203,9802,1,0,4497,8821,29.4,9110,8822,-100.2,9110,8823,30.07,9110,8824,31.53,9110,8826,2000000,9003,8827,0,9003,,, +32040,"NAD27 / Texas South Central",9003,4267,14204,9802,1,0,4497,8821,27.5,9110,8822,-99,9110,8823,28.23,9110,8824,30.17,9110,8826,2000000,9003,8827,0,9003,,, +32041,"NAD27 / Texas South",9003,4267,14205,9802,1,0,4497,8821,25.4,9110,8822,-98.3,9110,8823,26.1,9110,8824,27.5,9110,8826,2000000,9003,8827,0,9003,,, +32042,"NAD27 / Utah North",9003,4267,14301,9802,1,0,4497,8821,40.2,9110,8822,-111.3,9110,8823,40.43,9110,8824,41.47,9110,8826,2000000,9003,8827,0,9003,,, +32043,"NAD27 / Utah Central",9003,4267,14302,9802,1,0,4497,8821,38.2,9110,8822,-111.3,9110,8823,39.01,9110,8824,40.39,9110,8826,2000000,9003,8827,0,9003,,, +32044,"NAD27 / Utah South",9003,4267,14303,9802,1,0,4497,8821,36.4,9110,8822,-111.3,9110,8823,37.13,9110,8824,38.21,9110,8826,2000000,9003,8827,0,9003,,, +32045,"NAD27 / Vermont",9003,4267,14400,9807,1,0,4497,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9003,8807,0,9003,,,,,, +32046,"NAD27 / Virginia North",9003,4267,14501,9802,1,0,4497,8821,37.4,9110,8822,-78.3,9110,8823,38.02,9110,8824,39.12,9110,8826,2000000,9003,8827,0,9003,,, +32047,"NAD27 / Virginia South",9003,4267,14502,9802,1,0,4497,8821,36.2,9110,8822,-78.3,9110,8823,36.46,9110,8824,37.58,9110,8826,2000000,9003,8827,0,9003,,, +32048,"NAD27 / Washington North",9003,4267,14601,9802,1,0,4497,8821,47,9110,8822,-120.5,9110,8823,47.3,9110,8824,48.44,9110,8826,2000000,9003,8827,0,9003,,, +32049,"NAD27 / Washington South",9003,4267,14602,9802,1,0,4497,8821,45.2,9110,8822,-120.3,9110,8823,45.5,9110,8824,47.2,9110,8826,2000000,9003,8827,0,9003,,, +32050,"NAD27 / West Virginia North",9003,4267,14701,9802,1,0,4497,8821,38.3,9110,8822,-79.3,9110,8823,39,9110,8824,40.15,9110,8826,2000000,9003,8827,0,9003,,, +32051,"NAD27 / West Virginia South",9003,4267,14702,9802,1,0,4497,8821,37,9110,8822,-81,9110,8823,37.29,9110,8824,38.53,9110,8826,2000000,9003,8827,0,9003,,, +32052,"NAD27 / Wisconsin North",9003,4267,14801,9802,1,0,4497,8821,45.1,9110,8822,-90,9110,8823,45.34,9110,8824,46.46,9110,8826,2000000,9003,8827,0,9003,,, +32053,"NAD27 / Wisconsin Central",9003,4267,14802,9802,1,0,4497,8821,43.5,9110,8822,-90,9110,8823,44.15,9110,8824,45.3,9110,8826,2000000,9003,8827,0,9003,,, +32054,"NAD27 / Wisconsin South",9003,4267,14803,9802,1,0,4497,8821,42,9110,8822,-90,9110,8823,42.44,9110,8824,44.04,9110,8826,2000000,9003,8827,0,9003,,, +32055,"NAD27 / Wyoming East",9003,4267,14901,9807,1,0,4497,8801,40.4,9110,8802,-105.1,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +32056,"NAD27 / Wyoming East Central",9003,4267,14902,9807,1,0,4497,8801,40.4,9110,8802,-107.2,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +32057,"NAD27 / Wyoming West Central",9003,4267,14903,9807,1,0,4497,8801,40.4,9110,8802,-108.45,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +32058,"NAD27 / Wyoming West",9003,4267,14904,9807,1,0,4497,8801,40.4,9110,8802,-110.05,9110,8805,0.999941177,9201,8806,500000,9003,8807,0,9003,,,,,, +32061,"NAD27 / Guatemala Norte",9001,4267,18211,9801,1,1,4499,8801,16.49,9110,8802,-90.2,9110,8805,0.99992226,9201,8806,500000,9001,8807,292209.579,9001,,,,,, +32062,"NAD27 / Guatemala Sur",9001,4267,18212,9801,1,1,4499,8801,14.54,9110,8802,-90.2,9110,8805,0.99989906,9201,8806,500000,9001,8807,325992.681,9001,,,,,, +32064,"NAD27 / BLM 14N (ftUS)",9003,4267,15914,9807,1,0,4497,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32065,"NAD27 / BLM 15N (ftUS)",9003,4267,15915,9807,1,0,4497,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32066,"NAD27 / BLM 16N (ftUS)",9003,4267,15916,9807,1,0,4497,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32067,"NAD27 / BLM 17N (ftUS)",9003,4267,15917,9807,1,0,4497,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32074,"NAD27 / BLM 14N (feet)",9003,4267,15914,9807,1,1,4497,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32075,"NAD27 / BLM 15N (feet)",9003,4267,15915,9807,1,1,4497,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32076,"NAD27 / BLM 16N (feet)",9003,4267,15916,9807,1,1,4497,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32077,"NAD27 / BLM 17N (feet)",9003,4267,15917,9807,1,1,4497,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32081,"NAD27 / MTM zone 1",9001,4267,17701,9807,1,0,4400,8801,0,9102,8802,-53,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32082,"NAD27 / MTM zone 2",9001,4267,17702,9807,1,0,4400,8801,0,9102,8802,-56,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32083,"NAD27 / MTM zone 3",9001,4267,17703,9807,1,0,4400,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32084,"NAD27 / MTM zone 4",9001,4267,17704,9807,1,0,4400,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32085,"NAD27 / MTM zone 5",9001,4267,17705,9807,1,0,4400,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32086,"NAD27 / MTM zone 6",9001,4267,17706,9807,1,0,4400,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32098,"NAD27 / Quebec Lambert",9001,4267,19944,9802,1,0,4499,8821,44,9110,8822,-68.3,9110,8823,60,9110,8824,46,9110,8826,0,9001,8827,0,9001,,, +32099,"NAD27 / Louisiana Offshore",9003,4267,11703,9802,1,0,4497,8821,25.4,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,2000000,9003,8827,0,9003,,, +32100,"NAD83 / Montana",9001,4269,12530,9802,1,0,4499,8821,44.15,9110,8822,-109.3,9110,8823,49,9110,8824,45,9110,8826,600000,9001,8827,0,9001,,, +32104,"NAD83 / Nebraska",9001,4269,12630,9802,1,0,4499,8821,39.5,9110,8822,-100,9110,8823,43,9110,8824,40,9110,8826,500000,9001,8827,0,9001,,, +32107,"NAD83 / Nevada East",9001,4269,12731,9807,1,0,4499,8801,34.45,9110,8802,-115.35,9110,8805,0.9999,9201,8806,200000,9001,8807,8000000,9001,,,,,, +32108,"NAD83 / Nevada Central",9001,4269,12732,9807,1,0,4499,8801,34.45,9110,8802,-116.4,9110,8805,0.9999,9201,8806,500000,9001,8807,6000000,9001,,,,,, +32109,"NAD83 / Nevada West",9001,4269,12733,9807,1,0,4499,8801,34.45,9110,8802,-118.35,9110,8805,0.9999,9201,8806,800000,9001,8807,4000000,9001,,,,,, +32110,"NAD83 / New Hampshire",9001,4269,12830,9807,1,0,4499,8801,42.3,9110,8802,-71.4,9110,8805,0.999966667,9201,8806,300000,9001,8807,0,9001,,,,,, +32111,"NAD83 / New Jersey",9001,4269,12930,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +32112,"NAD83 / New Mexico East",9001,4269,13031,9807,1,0,4499,8801,31,9110,8802,-104.2,9110,8805,0.999909091,9201,8806,165000,9001,8807,0,9001,,,,,, +32113,"NAD83 / New Mexico Central",9001,4269,13032,9807,1,0,4499,8801,31,9110,8802,-106.15,9110,8805,0.9999,9201,8806,500000,9001,8807,0,9001,,,,,, +32114,"NAD83 / New Mexico West",9001,4269,13033,9807,1,0,4499,8801,31,9110,8802,-107.5,9110,8805,0.999916667,9201,8806,830000,9001,8807,0,9001,,,,,, +32115,"NAD83 / New York East",9001,4269,13131,9807,1,0,4499,8801,38.5,9110,8802,-74.3,9110,8805,0.9999,9201,8806,150000,9001,8807,0,9001,,,,,, +32116,"NAD83 / New York Central",9001,4269,13132,9807,1,0,4499,8801,40,9110,8802,-76.35,9110,8805,0.9999375,9201,8806,250000,9001,8807,0,9001,,,,,, +32117,"NAD83 / New York West",9001,4269,13133,9807,1,0,4499,8801,40,9110,8802,-78.35,9110,8805,0.9999375,9201,8806,350000,9001,8807,0,9001,,,,,, +32118,"NAD83 / New York Long Island",9001,4269,13134,9802,1,0,4499,8821,40.1,9110,8822,-74,9110,8823,41.02,9110,8824,40.4,9110,8826,300000,9001,8827,0,9001,,, +32119,"NAD83 / North Carolina",9001,4269,13230,9802,1,0,4499,8821,33.45,9110,8822,-79,9110,8823,36.1,9110,8824,34.2,9110,8826,609601.22,9001,8827,0,9001,,, +32120,"NAD83 / North Dakota North",9001,4269,13331,9802,1,0,4499,8821,47,9110,8822,-100.3,9110,8823,48.44,9110,8824,47.26,9110,8826,600000,9001,8827,0,9001,,, +32121,"NAD83 / North Dakota South",9001,4269,13332,9802,1,0,4499,8821,45.4,9110,8822,-100.3,9110,8823,47.29,9110,8824,46.11,9110,8826,600000,9001,8827,0,9001,,, +32122,"NAD83 / Ohio North",9001,4269,13431,9802,1,0,4499,8821,39.4,9110,8822,-82.3,9110,8823,41.42,9110,8824,40.26,9110,8826,600000,9001,8827,0,9001,,, +32123,"NAD83 / Ohio South",9001,4269,13432,9802,1,0,4499,8821,38,9110,8822,-82.3,9110,8823,40.02,9110,8824,38.44,9110,8826,600000,9001,8827,0,9001,,, +32124,"NAD83 / Oklahoma North",9001,4269,13531,9802,1,0,4499,8821,35,9110,8822,-98,9110,8823,36.46,9110,8824,35.34,9110,8826,600000,9001,8827,0,9001,,, +32125,"NAD83 / Oklahoma South",9001,4269,13532,9802,1,0,4499,8821,33.2,9110,8822,-98,9110,8823,35.14,9110,8824,33.56,9110,8826,600000,9001,8827,0,9001,,, +32126,"NAD83 / Oregon North",9001,4269,13631,9802,1,0,4499,8821,43.4,9110,8822,-120.3,9110,8823,46,9110,8824,44.2,9110,8826,2500000,9001,8827,0,9001,,, +32127,"NAD83 / Oregon South",9001,4269,13632,9802,1,0,4499,8821,41.4,9110,8822,-120.3,9110,8823,44,9110,8824,42.2,9110,8826,1500000,9001,8827,0,9001,,, +32128,"NAD83 / Pennsylvania North",9001,4269,13731,9802,1,0,4499,8821,40.1,9110,8822,-77.45,9110,8823,41.57,9110,8824,40.53,9110,8826,600000,9001,8827,0,9001,,, +32129,"NAD83 / Pennsylvania South",9001,4269,13732,9802,1,0,4499,8821,39.2,9110,8822,-77.45,9110,8823,40.58,9110,8824,39.56,9110,8826,600000,9001,8827,0,9001,,, +32130,"NAD83 / Rhode Island",9001,4269,13830,9807,1,0,4499,8801,41.05,9110,8802,-71.3,9110,8805,0.99999375,9201,8806,100000,9001,8807,0,9001,,,,,, +32133,"NAD83 / South Carolina",9001,4269,13930,9802,1,0,4499,8821,31.5,9110,8822,-81,9110,8823,34.5,9110,8824,32.3,9110,8826,609600,9001,8827,0,9001,,, +32134,"NAD83 / South Dakota North",9001,4269,14031,9802,1,0,4499,8821,43.5,9110,8822,-100,9110,8823,45.41,9110,8824,44.25,9110,8826,600000,9001,8827,0,9001,,, +32135,"NAD83 / South Dakota South",9001,4269,14032,9802,1,0,4499,8821,42.2,9110,8822,-100.2,9110,8823,44.24,9110,8824,42.5,9110,8826,600000,9001,8827,0,9001,,, +32136,"NAD83 / Tennessee",9001,4269,14130,9802,1,0,4499,8821,34.2,9110,8822,-86,9110,8823,36.25,9110,8824,35.15,9110,8826,600000,9001,8827,0,9001,,, +32137,"NAD83 / Texas North",9001,4269,14231,9802,1,0,4499,8821,34,9110,8822,-101.3,9110,8823,36.11,9110,8824,34.39,9110,8826,200000,9001,8827,1000000,9001,,, +32138,"NAD83 / Texas North Central",9001,4269,14232,9802,1,0,4499,8821,31.4,9110,8822,-98.3,9110,8823,33.58,9110,8824,32.08,9110,8826,600000,9001,8827,2000000,9001,,, +32139,"NAD83 / Texas Central",9001,4269,14233,9802,1,0,4499,8821,29.4,9110,8822,-100.2,9110,8823,31.53,9110,8824,30.07,9110,8826,700000,9001,8827,3000000,9001,,, +32140,"NAD83 / Texas South Central",9001,4269,14234,9802,1,0,4499,8821,27.5,9110,8822,-99,9110,8823,30.17,9110,8824,28.23,9110,8826,600000,9001,8827,4000000,9001,,, +32141,"NAD83 / Texas South",9001,4269,14235,9802,1,0,4499,8821,25.4,9110,8822,-98.3,9110,8823,27.5,9110,8824,26.1,9110,8826,300000,9001,8827,5000000,9001,,, +32142,"NAD83 / Utah North",9001,4269,14331,9802,1,0,4499,8821,40.2,9110,8822,-111.3,9110,8823,41.47,9110,8824,40.43,9110,8826,500000,9001,8827,1000000,9001,,, +32143,"NAD83 / Utah Central",9001,4269,14332,9802,1,0,4499,8821,38.2,9110,8822,-111.3,9110,8823,40.39,9110,8824,39.01,9110,8826,500000,9001,8827,2000000,9001,,, +32144,"NAD83 / Utah South",9001,4269,14333,9802,1,0,4499,8821,36.4,9110,8822,-111.3,9110,8823,38.21,9110,8824,37.13,9110,8826,500000,9001,8827,3000000,9001,,, +32145,"NAD83 / Vermont",9001,4269,14430,9807,1,0,4499,8801,42.3,9110,8802,-72.3,9110,8805,0.999964286,9201,8806,500000,9001,8807,0,9001,,,,,, +32146,"NAD83 / Virginia North",9001,4269,14531,9802,1,0,4499,8821,37.4,9110,8822,-78.3,9110,8823,39.12,9110,8824,38.02,9110,8826,3500000,9001,8827,2000000,9001,,, +32147,"NAD83 / Virginia South",9001,4269,14532,9802,1,0,4499,8821,36.2,9110,8822,-78.3,9110,8823,37.58,9110,8824,36.46,9110,8826,3500000,9001,8827,1000000,9001,,, +32148,"NAD83 / Washington North",9001,4269,14631,9802,1,0,4499,8821,47,9110,8822,-120.5,9110,8823,48.44,9110,8824,47.3,9110,8826,500000,9001,8827,0,9001,,, +32149,"NAD83 / Washington South",9001,4269,14632,9802,1,0,4499,8821,45.2,9110,8822,-120.3,9110,8823,47.2,9110,8824,45.5,9110,8826,500000,9001,8827,0,9001,,, +32150,"NAD83 / West Virginia North",9001,4269,14731,9802,1,0,4499,8821,38.3,9110,8822,-79.3,9110,8823,40.15,9110,8824,39,9110,8826,600000,9001,8827,0,9001,,, +32151,"NAD83 / West Virginia South",9001,4269,14732,9802,1,0,4499,8821,37,9110,8822,-81,9110,8823,38.53,9110,8824,37.29,9110,8826,600000,9001,8827,0,9001,,, +32152,"NAD83 / Wisconsin North",9001,4269,14831,9802,1,0,4499,8821,45.1,9110,8822,-90,9110,8823,46.46,9110,8824,45.34,9110,8826,600000,9001,8827,0,9001,,, +32153,"NAD83 / Wisconsin Central",9001,4269,14832,9802,1,0,4499,8821,43.5,9110,8822,-90,9110,8823,45.3,9110,8824,44.15,9110,8826,600000,9001,8827,0,9001,,, +32154,"NAD83 / Wisconsin South",9001,4269,14833,9802,1,0,4499,8821,42,9110,8822,-90,9110,8823,44.04,9110,8824,42.44,9110,8826,600000,9001,8827,0,9001,,, +32155,"NAD83 / Wyoming East",9001,4269,14931,9807,1,0,4499,8801,40.3,9110,8802,-105.1,9110,8805,0.9999375,9201,8806,200000,9001,8807,0,9001,,,,,, +32156,"NAD83 / Wyoming East Central",9001,4269,14932,9807,1,0,4499,8801,40.3,9110,8802,-107.2,9110,8805,0.9999375,9201,8806,400000,9001,8807,100000,9001,,,,,, +32157,"NAD83 / Wyoming West Central",9001,4269,14933,9807,1,0,4499,8801,40.3,9110,8802,-108.45,9110,8805,0.9999375,9201,8806,600000,9001,8807,0,9001,,,,,, +32158,"NAD83 / Wyoming West",9001,4269,14934,9807,1,0,4499,8801,40.3,9110,8802,-110.05,9110,8805,0.9999375,9201,8806,800000,9001,8807,100000,9001,,,,,, +32161,"NAD83 / Puerto Rico & Virgin Is.",9001,4269,15230,9802,1,0,4499,8821,17.5,9110,8822,-66.26,9110,8823,18.26,9110,8824,18.02,9110,8826,200000,9001,8827,200000,9001,,, +32164,"NAD83 / BLM 14N (ftUS)",9003,4269,15914,9807,1,0,4497,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32165,"NAD83 / BLM 15N (ftUS)",9003,4269,15915,9807,1,0,4497,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32166,"NAD83 / BLM 16N (ftUS)",9003,4269,15916,9807,1,0,4497,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32167,"NAD83 / BLM 17N (ftUS)",9003,4269,15917,9807,1,0,4497,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32180,"NAD83 / SCoPQ zone 2",9001,4269,17700,9807,1,1,4499,8801,0,9110,8802,-55.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32181,"NAD83 / MTM zone 1",9001,4269,17701,9807,1,0,4496,8801,0,9102,8802,-53,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32182,"NAD83 / MTM zone 2",9001,4269,17702,9807,1,0,4496,8801,0,9102,8802,-56,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32183,"NAD83 / MTM zone 3",9001,4269,17703,9807,1,0,4496,8801,0,9110,8802,-58.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32184,"NAD83 / MTM zone 4",9001,4269,17704,9807,1,0,4496,8801,0,9110,8802,-61.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32185,"NAD83 / MTM zone 5",9001,4269,17705,9807,1,0,4496,8801,0,9110,8802,-64.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32186,"NAD83 / MTM zone 6",9001,4269,17706,9807,1,0,4496,8801,0,9110,8802,-67.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32187,"NAD83 / MTM zone 7",9001,4269,17707,9807,1,0,4496,8801,0,9110,8802,-70.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32188,"NAD83 / MTM zone 8",9001,4269,17708,9807,1,0,4496,8801,0,9110,8802,-73.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32189,"NAD83 / MTM zone 9",9001,4269,17709,9807,1,0,4496,8801,0,9110,8802,-76.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32190,"NAD83 / MTM zone 10",9001,4269,17710,9807,1,0,4496,8801,0,9110,8802,-79.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32191,"NAD83 / MTM zone 11",9001,4269,17711,9807,1,0,4400,8801,0,9110,8802,-82.3,9110,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32192,"NAD83 / MTM zone 12",9001,4269,17712,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32193,"NAD83 / MTM zone 13",9001,4269,17713,9807,1,0,4400,8801,0,9102,8802,-84,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32194,"NAD83 / MTM zone 14",9001,4269,17714,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32195,"NAD83 / MTM zone 15",9001,4269,17715,9807,1,0,4400,8801,0,9102,8802,-90,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32196,"NAD83 / MTM zone 16",9001,4269,17716,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32197,"NAD83 / MTM zone 17",9001,4269,17717,9807,1,0,4400,8801,0,9102,8802,-96,9102,8805,0.9999,9201,8806,304800,9001,8807,0,9001,,,,,, +32198,"NAD83 / Quebec Lambert",9001,4269,19944,9802,1,0,4499,8821,44,9110,8822,-68.3,9110,8823,60,9110,8824,46,9110,8826,0,9001,8827,0,9001,,, +32199,"NAD83 / Louisiana Offshore",9001,4269,11733,9802,1,0,4499,8821,25.3,9110,8822,-91.2,9110,8823,27.5,9110,8824,26.1,9110,8826,1000000,9001,8827,0,9001,,, +32201,"WGS 72 / UTM zone 1N",9001,4322,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32202,"WGS 72 / UTM zone 2N",9001,4322,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32203,"WGS 72 / UTM zone 3N",9001,4322,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32204,"WGS 72 / UTM zone 4N",9001,4322,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32205,"WGS 72 / UTM zone 5N",9001,4322,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32206,"WGS 72 / UTM zone 6N",9001,4322,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32207,"WGS 72 / UTM zone 7N",9001,4322,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32208,"WGS 72 / UTM zone 8N",9001,4322,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32209,"WGS 72 / UTM zone 9N",9001,4322,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32210,"WGS 72 / UTM zone 10N",9001,4322,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32211,"WGS 72 / UTM zone 11N",9001,4322,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32212,"WGS 72 / UTM zone 12N",9001,4322,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32213,"WGS 72 / UTM zone 13N",9001,4322,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32214,"WGS 72 / UTM zone 14N",9001,4322,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32215,"WGS 72 / UTM zone 15N",9001,4322,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32216,"WGS 72 / UTM zone 16N",9001,4322,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32217,"WGS 72 / UTM zone 17N",9001,4322,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32218,"WGS 72 / UTM zone 18N",9001,4322,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32219,"WGS 72 / UTM zone 19N",9001,4322,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32220,"WGS 72 / UTM zone 20N",9001,4322,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32221,"WGS 72 / UTM zone 21N",9001,4322,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32222,"WGS 72 / UTM zone 22N",9001,4322,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32223,"WGS 72 / UTM zone 23N",9001,4322,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32224,"WGS 72 / UTM zone 24N",9001,4322,16024,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32225,"WGS 72 / UTM zone 25N",9001,4322,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32226,"WGS 72 / UTM zone 26N",9001,4322,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32227,"WGS 72 / UTM zone 27N",9001,4322,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32228,"WGS 72 / UTM zone 28N",9001,4322,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32229,"WGS 72 / UTM zone 29N",9001,4322,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32230,"WGS 72 / UTM zone 30N",9001,4322,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32231,"WGS 72 / UTM zone 31N",9001,4322,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32232,"WGS 72 / UTM zone 32N",9001,4322,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32233,"WGS 72 / UTM zone 33N",9001,4322,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32234,"WGS 72 / UTM zone 34N",9001,4322,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32235,"WGS 72 / UTM zone 35N",9001,4322,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32236,"WGS 72 / UTM zone 36N",9001,4322,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32237,"WGS 72 / UTM zone 37N",9001,4322,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32238,"WGS 72 / UTM zone 38N",9001,4322,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32239,"WGS 72 / UTM zone 39N",9001,4322,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32240,"WGS 72 / UTM zone 40N",9001,4322,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32241,"WGS 72 / UTM zone 41N",9001,4322,16041,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32242,"WGS 72 / UTM zone 42N",9001,4322,16042,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32243,"WGS 72 / UTM zone 43N",9001,4322,16043,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32244,"WGS 72 / UTM zone 44N",9001,4322,16044,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32245,"WGS 72 / UTM zone 45N",9001,4322,16045,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32246,"WGS 72 / UTM zone 46N",9001,4322,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32247,"WGS 72 / UTM zone 47N",9001,4322,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32248,"WGS 72 / UTM zone 48N",9001,4322,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32249,"WGS 72 / UTM zone 49N",9001,4322,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32250,"WGS 72 / UTM zone 50N",9001,4322,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32251,"WGS 72 / UTM zone 51N",9001,4322,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32252,"WGS 72 / UTM zone 52N",9001,4322,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32253,"WGS 72 / UTM zone 53N",9001,4322,16053,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32254,"WGS 72 / UTM zone 54N",9001,4322,16054,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32255,"WGS 72 / UTM zone 55N",9001,4322,16055,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32256,"WGS 72 / UTM zone 56N",9001,4322,16056,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32257,"WGS 72 / UTM zone 57N",9001,4322,16057,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32258,"WGS 72 / UTM zone 58N",9001,4322,16058,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32259,"WGS 72 / UTM zone 59N",9001,4322,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32260,"WGS 72 / UTM zone 60N",9001,4322,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32301,"WGS 72 / UTM zone 1S",9001,4322,16101,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32302,"WGS 72 / UTM zone 2S",9001,4322,16102,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32303,"WGS 72 / UTM zone 3S",9001,4322,16103,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32304,"WGS 72 / UTM zone 4S",9001,4322,16104,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32305,"WGS 72 / UTM zone 5S",9001,4322,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32306,"WGS 72 / UTM zone 6S",9001,4322,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32307,"WGS 72 / UTM zone 7S",9001,4322,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32308,"WGS 72 / UTM zone 8S",9001,4322,16108,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32309,"WGS 72 / UTM zone 9S",9001,4322,16109,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32310,"WGS 72 / UTM zone 10S",9001,4322,16110,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32311,"WGS 72 / UTM zone 11S",9001,4322,16111,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32312,"WGS 72 / UTM zone 12S",9001,4322,16112,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32313,"WGS 72 / UTM zone 13S",9001,4322,16113,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32314,"WGS 72 / UTM zone 14S",9001,4322,16114,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32315,"WGS 72 / UTM zone 15S",9001,4322,16115,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32316,"WGS 72 / UTM zone 16S",9001,4322,16116,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32317,"WGS 72 / UTM zone 17S",9001,4322,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32318,"WGS 72 / UTM zone 18S",9001,4322,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32319,"WGS 72 / UTM zone 19S",9001,4322,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32320,"WGS 72 / UTM zone 20S",9001,4322,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32321,"WGS 72 / UTM zone 21S",9001,4322,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32322,"WGS 72 / UTM zone 22S",9001,4322,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32323,"WGS 72 / UTM zone 23S",9001,4322,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32324,"WGS 72 / UTM zone 24S",9001,4322,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32325,"WGS 72 / UTM zone 25S",9001,4322,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32326,"WGS 72 / UTM zone 26S",9001,4322,16126,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32327,"WGS 72 / UTM zone 27S",9001,4322,16127,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32328,"WGS 72 / UTM zone 28S",9001,4322,16128,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32329,"WGS 72 / UTM zone 29S",9001,4322,16129,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32330,"WGS 72 / UTM zone 30S",9001,4322,16130,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32331,"WGS 72 / UTM zone 31S",9001,4322,16131,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32332,"WGS 72 / UTM zone 32S",9001,4322,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32333,"WGS 72 / UTM zone 33S",9001,4322,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32334,"WGS 72 / UTM zone 34S",9001,4322,16134,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32335,"WGS 72 / UTM zone 35S",9001,4322,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32336,"WGS 72 / UTM zone 36S",9001,4322,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32337,"WGS 72 / UTM zone 37S",9001,4322,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32338,"WGS 72 / UTM zone 38S",9001,4322,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32339,"WGS 72 / UTM zone 39S",9001,4322,16139,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32340,"WGS 72 / UTM zone 40S",9001,4322,16140,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32341,"WGS 72 / UTM zone 41S",9001,4322,16141,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32342,"WGS 72 / UTM zone 42S",9001,4322,16142,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32343,"WGS 72 / UTM zone 43S",9001,4322,16143,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32344,"WGS 72 / UTM zone 44S",9001,4322,16144,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32345,"WGS 72 / UTM zone 45S",9001,4322,16145,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32346,"WGS 72 / UTM zone 46S",9001,4322,16146,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32347,"WGS 72 / UTM zone 47S",9001,4322,16147,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32348,"WGS 72 / UTM zone 48S",9001,4322,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32349,"WGS 72 / UTM zone 49S",9001,4322,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32350,"WGS 72 / UTM zone 50S",9001,4322,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32351,"WGS 72 / UTM zone 51S",9001,4322,16151,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32352,"WGS 72 / UTM zone 52S",9001,4322,16152,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32353,"WGS 72 / UTM zone 53S",9001,4322,16153,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32354,"WGS 72 / UTM zone 54S",9001,4322,16154,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32355,"WGS 72 / UTM zone 55S",9001,4322,16155,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32356,"WGS 72 / UTM zone 56S",9001,4322,16156,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32357,"WGS 72 / UTM zone 57S",9001,4322,16157,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32358,"WGS 72 / UTM zone 58S",9001,4322,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32359,"WGS 72 / UTM zone 59S",9001,4322,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32360,"WGS 72 / UTM zone 60S",9001,4322,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32401,"WGS 72BE / UTM zone 1N",9001,4324,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32402,"WGS 72BE / UTM zone 2N",9001,4324,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32403,"WGS 72BE / UTM zone 3N",9001,4324,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32404,"WGS 72BE / UTM zone 4N",9001,4324,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32405,"WGS 72BE / UTM zone 5N",9001,4324,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32406,"WGS 72BE / UTM zone 6N",9001,4324,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32407,"WGS 72BE / UTM zone 7N",9001,4324,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32408,"WGS 72BE / UTM zone 8N",9001,4324,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32409,"WGS 72BE / UTM zone 9N",9001,4324,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32410,"WGS 72BE / UTM zone 10N",9001,4324,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32411,"WGS 72BE / UTM zone 11N",9001,4324,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32412,"WGS 72BE / UTM zone 12N",9001,4324,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32413,"WGS 72BE / UTM zone 13N",9001,4324,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32414,"WGS 72BE / UTM zone 14N",9001,4324,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32415,"WGS 72BE / UTM zone 15N",9001,4324,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32416,"WGS 72BE / UTM zone 16N",9001,4324,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32417,"WGS 72BE / UTM zone 17N",9001,4324,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32418,"WGS 72BE / UTM zone 18N",9001,4324,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32419,"WGS 72BE / UTM zone 19N",9001,4324,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32420,"WGS 72BE / UTM zone 20N",9001,4324,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32421,"WGS 72BE / UTM zone 21N",9001,4324,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32422,"WGS 72BE / UTM zone 22N",9001,4324,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32423,"WGS 72BE / UTM zone 23N",9001,4324,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32424,"WGS 72BE / UTM zone 24N",9001,4324,16024,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32425,"WGS 72BE / UTM zone 25N",9001,4324,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32426,"WGS 72BE / UTM zone 26N",9001,4324,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32427,"WGS 72BE / UTM zone 27N",9001,4324,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32428,"WGS 72BE / UTM zone 28N",9001,4324,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32429,"WGS 72BE / UTM zone 29N",9001,4324,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32430,"WGS 72BE / UTM zone 30N",9001,4324,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32431,"WGS 72BE / UTM zone 31N",9001,4324,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32432,"WGS 72BE / UTM zone 32N",9001,4324,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32433,"WGS 72BE / UTM zone 33N",9001,4324,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32434,"WGS 72BE / UTM zone 34N",9001,4324,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32435,"WGS 72BE / UTM zone 35N",9001,4324,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32436,"WGS 72BE / UTM zone 36N",9001,4324,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32437,"WGS 72BE / UTM zone 37N",9001,4324,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32438,"WGS 72BE / UTM zone 38N",9001,4324,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32439,"WGS 72BE / UTM zone 39N",9001,4324,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32440,"WGS 72BE / UTM zone 40N",9001,4324,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32441,"WGS 72BE / UTM zone 41N",9001,4324,16041,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32442,"WGS 72BE / UTM zone 42N",9001,4324,16042,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32443,"WGS 72BE / UTM zone 43N",9001,4324,16043,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32444,"WGS 72BE / UTM zone 44N",9001,4324,16044,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32445,"WGS 72BE / UTM zone 45N",9001,4324,16045,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32446,"WGS 72BE / UTM zone 46N",9001,4324,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32447,"WGS 72BE / UTM zone 47N",9001,4324,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32448,"WGS 72BE / UTM zone 48N",9001,4324,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32449,"WGS 72BE / UTM zone 49N",9001,4324,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32450,"WGS 72BE / UTM zone 50N",9001,4324,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32451,"WGS 72BE / UTM zone 51N",9001,4324,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32452,"WGS 72BE / UTM zone 52N",9001,4324,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32453,"WGS 72BE / UTM zone 53N",9001,4324,16053,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32454,"WGS 72BE / UTM zone 54N",9001,4324,16054,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32455,"WGS 72BE / UTM zone 55N",9001,4324,16055,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32456,"WGS 72BE / UTM zone 56N",9001,4324,16056,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32457,"WGS 72BE / UTM zone 57N",9001,4324,16057,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32458,"WGS 72BE / UTM zone 58N",9001,4324,16058,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32459,"WGS 72BE / UTM zone 59N",9001,4324,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32460,"WGS 72BE / UTM zone 60N",9001,4324,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32501,"WGS 72BE / UTM zone 1S",9001,4324,16101,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32502,"WGS 72BE / UTM zone 2S",9001,4324,16102,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32503,"WGS 72BE / UTM zone 3S",9001,4324,16103,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32504,"WGS 72BE / UTM zone 4S",9001,4324,16104,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32505,"WGS 72BE / UTM zone 5S",9001,4324,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32506,"WGS 72BE / UTM zone 6S",9001,4324,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32507,"WGS 72BE / UTM zone 7S",9001,4324,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32508,"WGS 72BE / UTM zone 8S",9001,4324,16108,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32509,"WGS 72BE / UTM zone 9S",9001,4324,16109,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32510,"WGS 72BE / UTM zone 10S",9001,4324,16110,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32511,"WGS 72BE / UTM zone 11S",9001,4324,16111,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32512,"WGS 72BE / UTM zone 12S",9001,4324,16112,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32513,"WGS 72BE / UTM zone 13S",9001,4324,16113,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32514,"WGS 72BE / UTM zone 14S",9001,4324,16114,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32515,"WGS 72BE / UTM zone 15S",9001,4324,16115,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32516,"WGS 72BE / UTM zone 16S",9001,4324,16116,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32517,"WGS 72BE / UTM zone 17S",9001,4324,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32518,"WGS 72BE / UTM zone 18S",9001,4324,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32519,"WGS 72BE / UTM zone 19S",9001,4324,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32520,"WGS 72BE / UTM zone 20S",9001,4324,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32521,"WGS 72BE / UTM zone 21S",9001,4324,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32522,"WGS 72BE / UTM zone 22S",9001,4324,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32523,"WGS 72BE / UTM zone 23S",9001,4324,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32524,"WGS 72BE / UTM zone 24S",9001,4324,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32525,"WGS 72BE / UTM zone 25S",9001,4324,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32526,"WGS 72BE / UTM zone 26S",9001,4324,16126,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32527,"WGS 72BE / UTM zone 27S",9001,4324,16127,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32528,"WGS 72BE / UTM zone 28S",9001,4324,16128,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32529,"WGS 72BE / UTM zone 29S",9001,4324,16129,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32530,"WGS 72BE / UTM zone 30S",9001,4324,16130,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32531,"WGS 72BE / UTM zone 31S",9001,4324,16131,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32532,"WGS 72BE / UTM zone 32S",9001,4324,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32533,"WGS 72BE / UTM zone 33S",9001,4324,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32534,"WGS 72BE / UTM zone 34S",9001,4324,16134,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32535,"WGS 72BE / UTM zone 35S",9001,4324,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32536,"WGS 72BE / UTM zone 36S",9001,4324,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32537,"WGS 72BE / UTM zone 37S",9001,4324,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32538,"WGS 72BE / UTM zone 38S",9001,4324,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32539,"WGS 72BE / UTM zone 39S",9001,4324,16139,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32540,"WGS 72BE / UTM zone 40S",9001,4324,16140,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32541,"WGS 72BE / UTM zone 41S",9001,4324,16141,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32542,"WGS 72BE / UTM zone 42S",9001,4324,16142,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32543,"WGS 72BE / UTM zone 43S",9001,4324,16143,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32544,"WGS 72BE / UTM zone 44S",9001,4324,16144,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32545,"WGS 72BE / UTM zone 45S",9001,4324,16145,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32546,"WGS 72BE / UTM zone 46S",9001,4324,16146,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32547,"WGS 72BE / UTM zone 47S",9001,4324,16147,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32548,"WGS 72BE / UTM zone 48S",9001,4324,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32549,"WGS 72BE / UTM zone 49S",9001,4324,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32550,"WGS 72BE / UTM zone 50S",9001,4324,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32551,"WGS 72BE / UTM zone 51S",9001,4324,16151,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32552,"WGS 72BE / UTM zone 52S",9001,4324,16152,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32553,"WGS 72BE / UTM zone 53S",9001,4324,16153,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32554,"WGS 72BE / UTM zone 54S",9001,4324,16154,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32555,"WGS 72BE / UTM zone 55S",9001,4324,16155,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32556,"WGS 72BE / UTM zone 56S",9001,4324,16156,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32557,"WGS 72BE / UTM zone 57S",9001,4324,16157,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32558,"WGS 72BE / UTM zone 58S",9001,4324,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32559,"WGS 72BE / UTM zone 59S",9001,4324,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32560,"WGS 72BE / UTM zone 60S",9001,4324,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32600,"WGS 84 / UTM grid system (northern hemisphere)",9001,4326,16000,9824,1,0,4400,8801,0,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,8830,-180,9102,8831,6,9102,,, +32601,"WGS 84 / UTM zone 1N",9001,4326,16001,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32602,"WGS 84 / UTM zone 2N",9001,4326,16002,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32603,"WGS 84 / UTM zone 3N",9001,4326,16003,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32604,"WGS 84 / UTM zone 4N",9001,4326,16004,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32605,"WGS 84 / UTM zone 5N",9001,4326,16005,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32606,"WGS 84 / UTM zone 6N",9001,4326,16006,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32607,"WGS 84 / UTM zone 7N",9001,4326,16007,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32608,"WGS 84 / UTM zone 8N",9001,4326,16008,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32609,"WGS 84 / UTM zone 9N",9001,4326,16009,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32610,"WGS 84 / UTM zone 10N",9001,4326,16010,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32611,"WGS 84 / UTM zone 11N",9001,4326,16011,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32612,"WGS 84 / UTM zone 12N",9001,4326,16012,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32613,"WGS 84 / UTM zone 13N",9001,4326,16013,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32614,"WGS 84 / UTM zone 14N",9001,4326,16014,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32615,"WGS 84 / UTM zone 15N",9001,4326,16015,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32616,"WGS 84 / UTM zone 16N",9001,4326,16016,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32617,"WGS 84 / UTM zone 17N",9001,4326,16017,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32618,"WGS 84 / UTM zone 18N",9001,4326,16018,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32619,"WGS 84 / UTM zone 19N",9001,4326,16019,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32620,"WGS 84 / UTM zone 20N",9001,4326,16020,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32621,"WGS 84 / UTM zone 21N",9001,4326,16021,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32622,"WGS 84 / UTM zone 22N",9001,4326,16022,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32623,"WGS 84 / UTM zone 23N",9001,4326,16023,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32624,"WGS 84 / UTM zone 24N",9001,4326,16024,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32625,"WGS 84 / UTM zone 25N",9001,4326,16025,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32626,"WGS 84 / UTM zone 26N",9001,4326,16026,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32627,"WGS 84 / UTM zone 27N",9001,4326,16027,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32628,"WGS 84 / UTM zone 28N",9001,4326,16028,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32629,"WGS 84 / UTM zone 29N",9001,4326,16029,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32630,"WGS 84 / UTM zone 30N",9001,4326,16030,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32631,"WGS 84 / UTM zone 31N",9001,4326,16031,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32632,"WGS 84 / UTM zone 32N",9001,4326,16032,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32633,"WGS 84 / UTM zone 33N",9001,4326,16033,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32634,"WGS 84 / UTM zone 34N",9001,4326,16034,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32635,"WGS 84 / UTM zone 35N",9001,4326,16035,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32636,"WGS 84 / UTM zone 36N",9001,4326,16036,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32637,"WGS 84 / UTM zone 37N",9001,4326,16037,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32638,"WGS 84 / UTM zone 38N",9001,4326,16038,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32639,"WGS 84 / UTM zone 39N",9001,4326,16039,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32640,"WGS 84 / UTM zone 40N",9001,4326,16040,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32641,"WGS 84 / UTM zone 41N",9001,4326,16041,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32642,"WGS 84 / UTM zone 42N",9001,4326,16042,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32643,"WGS 84 / UTM zone 43N",9001,4326,16043,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32644,"WGS 84 / UTM zone 44N",9001,4326,16044,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32645,"WGS 84 / UTM zone 45N",9001,4326,16045,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32646,"WGS 84 / UTM zone 46N",9001,4326,16046,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32647,"WGS 84 / UTM zone 47N",9001,4326,16047,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32648,"WGS 84 / UTM zone 48N",9001,4326,16048,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32649,"WGS 84 / UTM zone 49N",9001,4326,16049,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32650,"WGS 84 / UTM zone 50N",9001,4326,16050,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32651,"WGS 84 / UTM zone 51N",9001,4326,16051,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32652,"WGS 84 / UTM zone 52N",9001,4326,16052,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32653,"WGS 84 / UTM zone 53N",9001,4326,16053,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32654,"WGS 84 / UTM zone 54N",9001,4326,16054,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32655,"WGS 84 / UTM zone 55N",9001,4326,16055,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32656,"WGS 84 / UTM zone 56N",9001,4326,16056,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32657,"WGS 84 / UTM zone 57N",9001,4326,16057,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32658,"WGS 84 / UTM zone 58N",9001,4326,16058,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32659,"WGS 84 / UTM zone 59N",9001,4326,16059,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32660,"WGS 84 / UTM zone 60N",9001,4326,16060,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,0,9001,,,,,, +32661,"WGS 84 / UPS North (N,E)",9001,4326,16061,9810,1,0,4493,8801,90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +32662,"WGS 84 / Plate Carree",9001,4326,19968,9823,1,1,4499,8801,0,9102,8802,0,9102,8806,0,9001,8807,0,9001,,,,,,,,, +32663,"WGS 84 / World Equidistant Cylindrical",9001,4326,19846,9842,1,1,4499,8801,0,9102,8806,0,9001,8807,0,9001,8822,0,9102,,,,,,,,, +32664,"WGS 84 / BLM 14N (ftUS)",9003,4326,15914,9807,1,0,4497,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32665,"WGS 84 / BLM 15N (ftUS)",9003,4326,15915,9807,1,0,4497,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32666,"WGS 84 / BLM 16N (ftUS)",9003,4326,15916,9807,1,0,4497,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32667,"WGS 84 / BLM 17N (ftUS)",9003,4326,15917,9807,1,0,4497,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,1640416.67,9003,8807,0,9003,,,,,, +32700,"WGS 84 / UTM grid system (southern hemisphere)",9001,4326,16100,9824,1,0,4400,8801,0,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,8830,-180,9102,8831,6,9102,,, +32701,"WGS 84 / UTM zone 1S",9001,4326,16101,9807,1,0,4400,8801,0,9102,8802,-177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32702,"WGS 84 / UTM zone 2S",9001,4326,16102,9807,1,0,4400,8801,0,9102,8802,-171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32703,"WGS 84 / UTM zone 3S",9001,4326,16103,9807,1,0,4400,8801,0,9102,8802,-165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32704,"WGS 84 / UTM zone 4S",9001,4326,16104,9807,1,0,4400,8801,0,9102,8802,-159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32705,"WGS 84 / UTM zone 5S",9001,4326,16105,9807,1,0,4400,8801,0,9102,8802,-153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32706,"WGS 84 / UTM zone 6S",9001,4326,16106,9807,1,0,4400,8801,0,9102,8802,-147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32707,"WGS 84 / UTM zone 7S",9001,4326,16107,9807,1,0,4400,8801,0,9102,8802,-141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32708,"WGS 84 / UTM zone 8S",9001,4326,16108,9807,1,0,4400,8801,0,9102,8802,-135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32709,"WGS 84 / UTM zone 9S",9001,4326,16109,9807,1,0,4400,8801,0,9102,8802,-129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32710,"WGS 84 / UTM zone 10S",9001,4326,16110,9807,1,0,4400,8801,0,9102,8802,-123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32711,"WGS 84 / UTM zone 11S",9001,4326,16111,9807,1,0,4400,8801,0,9102,8802,-117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32712,"WGS 84 / UTM zone 12S",9001,4326,16112,9807,1,0,4400,8801,0,9102,8802,-111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32713,"WGS 84 / UTM zone 13S",9001,4326,16113,9807,1,0,4400,8801,0,9102,8802,-105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32714,"WGS 84 / UTM zone 14S",9001,4326,16114,9807,1,0,4400,8801,0,9102,8802,-99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32715,"WGS 84 / UTM zone 15S",9001,4326,16115,9807,1,0,4400,8801,0,9102,8802,-93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32716,"WGS 84 / UTM zone 16S",9001,4326,16116,9807,1,0,4400,8801,0,9102,8802,-87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32717,"WGS 84 / UTM zone 17S",9001,4326,16117,9807,1,0,4400,8801,0,9102,8802,-81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32718,"WGS 84 / UTM zone 18S",9001,4326,16118,9807,1,0,4400,8801,0,9102,8802,-75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32719,"WGS 84 / UTM zone 19S",9001,4326,16119,9807,1,0,4400,8801,0,9102,8802,-69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32720,"WGS 84 / UTM zone 20S",9001,4326,16120,9807,1,0,4400,8801,0,9102,8802,-63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32721,"WGS 84 / UTM zone 21S",9001,4326,16121,9807,1,0,4400,8801,0,9102,8802,-57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32722,"WGS 84 / UTM zone 22S",9001,4326,16122,9807,1,0,4400,8801,0,9102,8802,-51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32723,"WGS 84 / UTM zone 23S",9001,4326,16123,9807,1,0,4400,8801,0,9102,8802,-45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32724,"WGS 84 / UTM zone 24S",9001,4326,16124,9807,1,0,4400,8801,0,9102,8802,-39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32725,"WGS 84 / UTM zone 25S",9001,4326,16125,9807,1,0,4400,8801,0,9102,8802,-33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32726,"WGS 84 / UTM zone 26S",9001,4326,16126,9807,1,0,4400,8801,0,9102,8802,-27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32727,"WGS 84 / UTM zone 27S",9001,4326,16127,9807,1,0,4400,8801,0,9102,8802,-21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32728,"WGS 84 / UTM zone 28S",9001,4326,16128,9807,1,0,4400,8801,0,9102,8802,-15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32729,"WGS 84 / UTM zone 29S",9001,4326,16129,9807,1,0,4400,8801,0,9102,8802,-9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32730,"WGS 84 / UTM zone 30S",9001,4326,16130,9807,1,0,4400,8801,0,9102,8802,-3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32731,"WGS 84 / UTM zone 31S",9001,4326,16131,9807,1,0,4400,8801,0,9102,8802,3,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32732,"WGS 84 / UTM zone 32S",9001,4326,16132,9807,1,0,4400,8801,0,9102,8802,9,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32733,"WGS 84 / UTM zone 33S",9001,4326,16133,9807,1,0,4400,8801,0,9102,8802,15,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32734,"WGS 84 / UTM zone 34S",9001,4326,16134,9807,1,0,4400,8801,0,9102,8802,21,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32735,"WGS 84 / UTM zone 35S",9001,4326,16135,9807,1,0,4400,8801,0,9102,8802,27,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32736,"WGS 84 / UTM zone 36S",9001,4326,16136,9807,1,0,4400,8801,0,9102,8802,33,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32737,"WGS 84 / UTM zone 37S",9001,4326,16137,9807,1,0,4400,8801,0,9102,8802,39,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32738,"WGS 84 / UTM zone 38S",9001,4326,16138,9807,1,0,4400,8801,0,9102,8802,45,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32739,"WGS 84 / UTM zone 39S",9001,4326,16139,9807,1,0,4400,8801,0,9102,8802,51,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32740,"WGS 84 / UTM zone 40S",9001,4326,16140,9807,1,0,4400,8801,0,9102,8802,57,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32741,"WGS 84 / UTM zone 41S",9001,4326,16141,9807,1,0,4400,8801,0,9102,8802,63,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32742,"WGS 84 / UTM zone 42S",9001,4326,16142,9807,1,0,4400,8801,0,9102,8802,69,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32743,"WGS 84 / UTM zone 43S",9001,4326,16143,9807,1,0,4400,8801,0,9102,8802,75,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32744,"WGS 84 / UTM zone 44S",9001,4326,16144,9807,1,0,4400,8801,0,9102,8802,81,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32745,"WGS 84 / UTM zone 45S",9001,4326,16145,9807,1,0,4400,8801,0,9102,8802,87,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32746,"WGS 84 / UTM zone 46S",9001,4326,16146,9807,1,0,4400,8801,0,9102,8802,93,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32747,"WGS 84 / UTM zone 47S",9001,4326,16147,9807,1,0,4400,8801,0,9102,8802,99,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32748,"WGS 84 / UTM zone 48S",9001,4326,16148,9807,1,0,4400,8801,0,9102,8802,105,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32749,"WGS 84 / UTM zone 49S",9001,4326,16149,9807,1,0,4400,8801,0,9102,8802,111,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32750,"WGS 84 / UTM zone 50S",9001,4326,16150,9807,1,0,4400,8801,0,9102,8802,117,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32751,"WGS 84 / UTM zone 51S",9001,4326,16151,9807,1,0,4400,8801,0,9102,8802,123,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32752,"WGS 84 / UTM zone 52S",9001,4326,16152,9807,1,0,4400,8801,0,9102,8802,129,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32753,"WGS 84 / UTM zone 53S",9001,4326,16153,9807,1,0,4400,8801,0,9102,8802,135,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32754,"WGS 84 / UTM zone 54S",9001,4326,16154,9807,1,0,4400,8801,0,9102,8802,141,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32755,"WGS 84 / UTM zone 55S",9001,4326,16155,9807,1,0,4400,8801,0,9102,8802,147,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32756,"WGS 84 / UTM zone 56S",9001,4326,16156,9807,1,0,4400,8801,0,9102,8802,153,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32757,"WGS 84 / UTM zone 57S",9001,4326,16157,9807,1,0,4400,8801,0,9102,8802,159,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32758,"WGS 84 / UTM zone 58S",9001,4326,16158,9807,1,0,4400,8801,0,9102,8802,165,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32759,"WGS 84 / UTM zone 59S",9001,4326,16159,9807,1,0,4400,8801,0,9102,8802,171,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32760,"WGS 84 / UTM zone 60S",9001,4326,16160,9807,1,0,4400,8801,0,9102,8802,177,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, +32761,"WGS 84 / UPS South (N,E)",9001,4326,16161,9810,1,0,4494,8801,-90,9102,8802,0,9102,8805,0.994,9201,8806,2000000,9001,8807,2000000,9001,,,,,, +32766,"WGS 84 / TM 36 SE",9001,4326,16636,9807,1,0,4400,8801,0,9102,8802,36,9102,8805,0.9996,9201,8806,500000,9001,8807,10000000,9001,,,,,, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.FindFeature/DotSpatial.Plugins.FindFeature.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WebMap/BruTile.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/trailer.dxf =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/trailer.dxf (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/trailer.dxf (revision 2866) @@ -0,0 +1,2162 @@ + 0 +ENDSEC + 0 +SECTION + 2 +OBJECTS + 0 +DICTIONARY + 5 +C +330 +0 +100 +AcDbDictionary +281 + 1 + 3 +ACAD_GROUP +350 +D + 3 +ACAD_LAYOUT +350 +1A + 3 +ACAD_MLEADERSTYLE +350 +43 + 3 +ACAD_MLINESTYLE +350 +17 + 3 +ACAD_PLOTSETTINGS +350 +19 + 3 +ACAD_PLOTSTYLENAME +350 +E + 3 +ACAD_TABLESTYLE +350 +42 + 3 +ACAD_VISUALSTYLE +350 +2A + 0 +DICTIONARY + 5 +D +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 0 +DICTIONARY + 5 +1A +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 3 +Layout1 +350 +1E + 3 +Layout2 +350 +26 + 3 +Model +350 +22 + 0 +DICTIONARY + 5 +43 +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 0 +DICTIONARY + 5 +17 +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 3 +Standard +350 +18 + 0 +DICTIONARY + 5 +19 +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 0 +ACDBDICTIONARYWDFLT + 5 +E +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 3 +Normal +350 +F +100 +AcDbDictionaryWithDefault +340 +F + 0 +DICTIONARY + 5 +42 +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 0 +DICTIONARY + 5 +2A +102 +{ACAD_REACTORS +330 +C +102 +} +330 +C +100 +AcDbDictionary +281 + 1 + 3 +2dWireframe +350 +2F + 3 +3D Hidden +350 +31 + 3 +3dWireframe +350 +30 + 3 +Basic +350 +32 + 3 +Brighten +350 +36 + 3 +ColorChange +350 +3A + 3 +Conceptual +350 +34 + 3 +Dim +350 +35 + 3 +Facepattern +350 +39 + 3 +Flat +350 +2B + 3 +FlatWithEdges +350 +2C + 3 +Gouraud +350 +2D + 3 +GouraudWithEdges +350 +2E + 3 +Linepattern +350 +38 + 3 +Realistic +350 +33 + 3 +Thicken +350 +37 + 0 +LAYOUT + 5 +1E +102 +{ACAD_REACTORS +330 +1A +102 +} +330 +1A +100 +AcDbPlotSettings + 1 + + 2 +none_device + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 + 688 + 72 + 0 + 73 + 0 + 74 + 5 + 7 + + 75 + 16 + 76 + 0 + 77 + 2 + 78 + 300 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Layout1 + 70 + 1 + 71 + 1 + 10 +0.0 + 20 +0.0 + 11 +12.0 + 21 +9.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +1.000000000000000E+20 + 24 +1.000000000000000E+20 + 34 +1.000000000000000E+20 + 15 +-1.000000000000000E+20 + 25 +-1.000000000000000E+20 + 35 +-1.000000000000000E+20 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 + 0 +330 +1B + 0 +LAYOUT + 5 +26 +102 +{ACAD_REACTORS +330 +1A +102 +} +330 +1A +100 +AcDbPlotSettings + 1 + + 2 +none_device + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 + 688 + 72 + 0 + 73 + 0 + 74 + 5 + 7 + + 75 + 16 + 76 + 0 + 77 + 2 + 78 + 300 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Layout2 + 70 + 1 + 71 + 2 + 10 +0.0 + 20 +0.0 + 11 +0.0 + 21 +0.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +0.0 + 24 +0.0 + 34 +0.0 + 15 +0.0 + 25 +0.0 + 35 +0.0 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 + 0 +330 +23 + 0 +LAYOUT + 5 +22 +102 +{ACAD_REACTORS +330 +1A +102 +} +330 +1A +100 +AcDbPlotSettings + 1 + + 2 +none_device + 4 + + 6 + + 40 +0.0 + 41 +0.0 + 42 +0.0 + 43 +0.0 + 44 +0.0 + 45 +0.0 + 46 +0.0 + 47 +0.0 + 48 +0.0 + 49 +0.0 +140 +0.0 +141 +0.0 +142 +1.0 +143 +1.0 + 70 + 1712 + 72 + 0 + 73 + 0 + 74 + 0 + 7 + + 75 + 0 + 76 + 0 + 77 + 2 + 78 + 300 +147 +1.0 +148 +0.0 +149 +0.0 +100 +AcDbLayout + 1 +Model + 70 + 1 + 71 + 0 + 10 +0.0 + 20 +0.0 + 11 +12.0 + 21 +9.0 + 12 +0.0 + 22 +0.0 + 32 +0.0 + 14 +30.0 + 24 +49.75 + 34 +0.0 + 15 +130.5 + 25 +163.1318914119703 + 35 +0.0 +146 +0.0 + 13 +0.0 + 23 +0.0 + 33 +0.0 + 16 +1.0 + 26 +0.0 + 36 +0.0 + 17 +0.0 + 27 +1.0 + 37 +0.0 + 76 + 0 +330 +1F +331 +29 + 0 +MLINESTYLE + 5 +18 +102 +{ACAD_REACTORS +330 +17 +102 +} +330 +17 +100 +AcDbMlineStyle + 2 +Standard + 70 + 0 + 3 + + 62 + 256 + 51 +90.0 + 52 +90.0 + 71 + 2 + 49 +0.5 + 62 + 256 + 6 +BYLAYER + 49 +-0.5 + 62 + 256 + 6 +BYLAYER + 0 +ACDBPLACEHOLDER + 5 +F +102 +{ACAD_REACTORS +330 +E +102 +} +330 +E + 0 +VISUALSTYLE + 5 +2F +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +2dWireframe + 70 + 4 + 71 + 0 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 0 + 66 + 257 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 0 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +31 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +3D Hidden + 70 + 6 + 71 + 1 + 72 + 2 + 73 + 2 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 2 + 91 + 2 + 64 + 7 + 65 + 257 + 75 + 2 +175 + 1 + 42 +40.0 + 92 + 0 + 66 + 257 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 3 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 0 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +30 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +3dWireframe + 70 + 5 + 71 + 0 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 0 + 66 + 257 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 0 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +32 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Basic + 70 + 7 + 71 + 1 + 72 + 0 + 73 + 1 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 0 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +36 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Brighten + 70 + 12 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +50.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +3A +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +ColorChange + 70 + 16 + 71 + 2 + 72 + 2 + 73 + 3 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 8 +421 + 8421504 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 8 +424 + 8421504 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +34 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Conceptual + 70 + 9 + 71 + 3 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 2 + 91 + 2 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +40.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 3 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 0 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +35 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Dim + 70 + 11 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +-50.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +39 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Facepattern + 70 + 15 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +2B +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Flat + 70 + 0 + 71 + 2 + 72 + 1 + 73 + 1 + 90 + 2 + 40 +-0.6 + 41 +30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 0 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 13 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +2C +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +FlatWithEdges + 70 + 1 + 71 + 2 + 72 + 1 + 73 + 1 + 90 + 2 + 40 +-0.6 + 41 +30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 0 + 66 + 257 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 13 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +2D +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Gouraud + 70 + 2 + 71 + 2 + 72 + 2 + 73 + 1 + 90 + 2 + 40 +-0.6 + 41 +30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 0 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 0 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 13 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +2E +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +GouraudWithEdges + 70 + 3 + 71 + 2 + 72 + 2 + 73 + 1 + 90 + 2 + 40 +-0.6 + 41 +30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 0 + 66 + 257 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 13 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +38 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Linepattern + 70 + 14 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 7 +175 + 7 + 42 +1.0 + 92 + 8 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +33 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Realistic + 70 + 8 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 0 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 8 + 66 + 8 +424 + 7895160 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 13 + 44 +0.0 +173 + 0 +291 + 0 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +VISUALSTYLE + 5 +37 +102 +{ACAD_REACTORS +330 +2A +102 +} +330 +2A +100 +AcDbVisualStyle + 2 +Thicken + 70 + 13 + 71 + 2 + 72 + 2 + 73 + 0 + 90 + 0 + 40 +-0.6 + 41 +-30.0 + 62 + 5 + 63 + 7 +421 + 16777215 + 74 + 1 + 91 + 4 + 64 + 7 + 65 + 257 + 75 + 1 +175 + 1 + 42 +1.0 + 92 + 12 + 66 + 7 + 43 +1.0 + 76 + 1 + 77 + 6 + 78 + 2 + 67 + 7 + 79 + 5 +170 + 0 +171 + 0 +290 + 0 +174 + 0 + 93 + 1 + 44 +0.0 +173 + 0 +291 + 1 + 45 +0.0 +1001 +ACAD +1000 +AcDbSavedByObjectVersion +1070 + 0 + 0 +ENDSEC + 0 +EOF Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ToolManager/DotSpatial.Plugins.ToolManager.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/ICSharpCode.SharpDevelop.Dom.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/Product_WixUI_Deltares.wxs =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/Product_WixUI_Deltares.wxs (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/WixUI/Product_WixUI_Deltares.wxs (revision 2866) @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + 1 + + 1 + + LicenseAccepted = "1" + + + + + + 1 + + 1 + + + + 1 + 1 + 1 + + + + + + + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ToolManager/DotSpatial.Plugins.ToolManager.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/ogr_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleMap/DotSpatial.Plugins.SimpleMap.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/libexpat.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.Forms.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.Forms.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Data.Forms.xml (revision 2866) @@ -0,0 +1,1701 @@ + + + + DotSpatial.Data.Forms + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The current element was not defined. Before attempting to read the element, first assign the value of the current XML Element to read.. + + + + + Looks up a localized string similar to Invalid Value.. + + + + + Looks up a localized string similar to box. Either fix the value to represent a double precision floating point value or choose cancel.. + + + + + Looks up a localized string similar to There is an invalid entry in the. + + + + + Looks up a localized string similar to The value you entered could not be parsed into a %S. Make sure the value is in the valid range.. + + + + + Extend the data manager with some convenient dialog spawning options. + + + + + This opens a file, but populates the dialog filter with only vector formats. + + An IFeatureSet with the data from the file specified in a dialog, or null if nothing load. + + + + This uses an open dialog filter with only vector extensions but where multi-select is + enabled, hence allowing multiple vectors to be returned in this list. + + The enumerable or vectors. + + + + This opens a file, but populates the dialog filter with only raster formats. + + for now an IDataSet + + + + This uses an open dialog filter with only image extensions for supported image formats, + but where multi-select is enabled, and so allowing multiple images to be returned at once. + + + + + + This launches an open file dialog and attempts to load the specified file. + + + + + This launches an open file dialog that allows loading of several files at once + and returns the datasets in a list. + + An enumerable of all the files that were opened. + + + + This opens a file, but populates the dialog filter with only raster formats. + + An IRaster with the data from the file specified in an open file dialog + + + + This uses an open dialog filter with only raster extensions but where multi-select is + enabled, hence allowing multiple rasters to be returned in this list. + + An enumerable or rasters. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + DirectoryItems can be either Files or Folders + + + + + Creates a new instance of DirectoryItem + + + + + Creates a new instance of a directory item based on the specified path. + + + + + + This method instructs this item to draw itself onto the specified graphics surface. + + A PaintEventArgs that contains the Graphics object needed for drawing. + + + + This supplies the basic drawing for this one element where the graphics object has been transformed + based on the position of this item. + + A PaintEventArgs that contains the Graphics object needed for drawing. + + + + Gets or sets the background color for this item. + + + + + Gets or sets the rectangle in + + + + + Gets a rectangle in control coordinates showing the size of this control + + + + + Gets or sets the custom icon that is used if the ItemType is set to custom + + + + + Gets or sets the font for this directory item + + + + + Gets or sets the color that should be used for drawing the fonts. + + + + + Gets the icon that should be used + + + + + Gets or sets whether this specific item should be drawn highlighted + + + + + Gets or sets a boolean that controls whether or not a black dotted rectangle + will surround this item. + + + + + Gets or sets whether this specific item should be drawn highlighted + + + + + Gets or set the ItemType for this particular directory item. + + + + + Gets or sets the complete path for this directory item. + + + + + Gets or sets a boolean governing whether or not an icon should be drawn. + + + + + Gets or sets the string text for this directory item. + + + + + Gets or set the integer top of this item + + + + + Gets or sets the width of this control + + + + + Gets or sets the height of this control + + + + + DirectoryView + + + + + ScrollingControl that provides autoscroll and custom draw that won't crash mono + + + + + Creates a new instance of ScrollingControl + + + + + Occurs when scrolling vertically + + + + + + + Occurs when scrolling horizontally + + + + + + + Gets a rectangle in document coordinates for hte specified rectangle in client coordinates + + + + + + + Translates a rectangle from document coordinates to coordinates relative to the client control + + + + + + + Recalculates the size and visibility of the scroll bars based on the current document. + + + + + Prevent flicker by preventing this + + + + + + On Paint only paints the specified clip rectangle, but paints + it from the page buffer. + + + + + + Occurs during custom drawing when erasing things + + + + + + Occurs during custom drawing + + + + + + Disposes the unmanaged memory objects and optionally disposes + the managed memory objects + + + + + + Fires the Initialized event + + + + + + + + + + + + Occurs after the base drawing content has been rendered to the page. + + + + + Gets or sets the background color to use for this control + + + + + + + + + + Gets the rectangular region of the control in page coordinates. + + + + + Gets or sets the rectangle for the entire content, whether on the page buffer or not. X and Y for this + are always 0. + + + + + Gets or sets whether or not the page for this control has been drawn. + + + + + Gets or sets a boolean indicating whether or not horizontal scrolling is enabled + + + + + Gets or sets the page image being used as a buffer. This is useful + for content changes that need to be made rapidly. First refresh + a small region of this page, and then invalidate the client rectangle. + + + + + Gets or sets a boolean that indicates whether or not the scrolling + should be reset on every resize or not. + + + + + Gets or sets a boolean indicating whether the vertical scroll should be permitted + + + + + Designer variable + + + + + Creates a new instance of DirectoryView + + + + + Draws + + + + + + Handles the situation where the mouse has been pressed down. + + + + + + Updates the buffer in order to correctly re-draw this item, if it is on the page, and then invalidates + the area where this will be drawn. + + The directory item to invalidate + + + + Removes the existing Directory Items from the control + + + + + Causes the control to refresh the current content. + + + + + Systematically clears any currently selected items. + + + + + Gets or sets the selected item. In cases of a multiple select, this is the + last member added to the selection. + + + + + Gets or sets the string path that should be itemized in the view. + + + + + Gets or sets the collection of DirectoryItems to draw in this control + + + + + Gets or sets the Font to be used for all of the items in this view. + + + + + A Dialog that allows users to enter an X, Y, Z or M extent. + + + + + Initializes a new instance of the ExtentDialog class. + + + + + Resets all the values to 0. + + + + + Prevents closing as "OK" if there are invalid double values. + + CancelEventArgs that allow canceling close. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the extent specified by this form. + + + + + extension method for feature set + + + + + Displays a dialog, allowing the users to open a raster. + + + + + FileItem + + + + + Creates a new instance of FileItem + + + + + Creates a new insteance of a FileItem associated with the specified path. + + Gets or sets a string path + + + + Gets or sets the FileInfo + + + + + FolderItem + + + + + Creates a new instance of FolderItem + + + + + Creates a new instance of FolderItem, but already pointing to the specified path + + The string path that this FolderItem should be identified with + + + + Gets or sets the directory info + + + + + HighlightEventArgs + + + + + Creates a new instance of HighlightEventArgs + + + + + Gets or sets whether or not the control is now highlighted + + + + + Implementing this interface will allow the plugin developer to + intercept the different log levels. + + + + + The Complete exception is passed here. To get the stack + trace, be sure to call ex.ToString(). + + The exception that was thrown by DotSpatial. + + + + This event will allow the registering of an entrance into a public Method of a "tools" related + action to register its entrance into a function as well as logging the parameter names + and a type specific indicator of their value. + + The string name of the method + The list of calling parameters + + + + This event will allow the registering of the exit from each public method + + The Method name of the method being left + + + + A status message was sent. Complex methods that have a few major steps will + call a status message to show which step the process is in. Loops will call + the progress method instead. + + The string message that was posted. + + + + This method allows a user to recieve messages that were shown to the user, as well as + their choice on those message boxes. + + A MessageBox after it has resolved. + A DialogResult from showing a message + + + + This method allows the logger to recieve information about input boxes that were shown + as well as the values enterred into them and the result. + + The string message that appeared on the InputBox + The ystem.Windows.Forms.DialogResult describing if the value was cancelled + The string containing the value entered. + + + + Gets a string description for this logger. + + + + + Gets or Sets an integer key to keep track of this logger. + When you add this logger to a LogManager, it will attempt to keep track of the + logger by using the key it was given. If that key is already in use, this + will be set to the next available integer. + + + + + This component allows customization of how log messages are sent + + + + + To begin logging, create an implementation of the ILogHandler interface, + or use the DefaultLogger class that is already implemented in this project. + Then, call this function to add that logger to the list of active loggers. + This function will return an integer key that you can use to keep track + of your specific logger. + + + + + The key specified here is the key that was returned by the AddLogger method. + + The integer key of the logger to remove. + True if the logger was successfully removed, or false if the key could not be found + key is null + + + + Adds all the loggers from directories. + + + + + + The Complete exception is passed here. To get the stack + trace, be sure to call ex.ToString(). + + The exception that was thrown by DotSpatial. + + + + This event will allow the registering of an entrance into a public Method of a "tools" related + action to register its entrance into a function as well as logging the parameter names + and a type specific indicator of their value. + + The string name of the method + The List<string> of Parameter names and string form values + + + + This event will allow the registering of the exit from each public method + + The Method name of the method being left + + + + A status message was sent. Complex methods that have a few major steps will + call a status message to show which step the process is in. Loops will call + the progress method instead. + + The string message that was posted. + + + + This is called by each of the LogMessageBox methods automatically, but if the user wants to use + a custom messagebox and then log the message and result directly this is the technique. + + The string text of the message that needs to be logged. + The dialog result from the shown messagebox. + + + + This method echoes information about input boxes to all the loggers. + + The string message that appeared on the InputBox + The ystem.Windows.Forms.DialogResult describing if the value was cancelled + The string containing the value entered. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to display on this form. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to display on this form. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A boolean indicating whether or not to display a help button on the messagebox + A DialogResult showing the user input from this messagebox. + + + + frmInputBox + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of frmInputBox + + + + + Creates a new instance of frmInputBox + + Sets the text of the message to show. + + + + Creates a new instance of frmInputBox + + The string message to show. + The string caption to allow. + + + + Creates a new instance of frmInputBox + + The string message to show. + The string caption to allow. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + + + + Creates a new instance of frmInputBox + + The string message to show. + The string caption to allow. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to appear on this messagebox. + + + + Creates a new instance of frmInputBox + + Specifies the Form to set as the owner of this dialog. + Sets the text of the message to show. + + + + Creates a new instance of frmInputBox + + Specifies the Form to set as the owner of this dialog. + The string message to show. + The string caption to allow. + + + + Creates a new instance of frmInputBox + + Specifies the Form to set as the owner of this dialog. + The string message to show. + The string caption to allow. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + + + + Creates a new instance of frmInputBox + + Specifies the Form to set as the owner of this dialog. + The string message to show. + The string caption to allow. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to appear on this messagebox. + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + The string result that was entered for this text box. + + + + + Gets or sets the type of validation to force on the value before the OK option is permitted. + + + + + ItemTypes + + + + + The specified element is a folder + + + + + The specified element is an image + + + + + The specified element is a vector line file format + + + + + The specified element is a vector line point format + + + + + The specified element is a vector polygon format + + + + + The specified element is a raster format + + + + + The specified element is a custom format, so the custom icon is used + + + + + This component allows customization of how log messages are sent + + + + + Required designer variable. + + + + + This ensures that there will always be some kind of log manager. + When a new LogManager is created, this static is set to be that instance. + Controlling the DefaultLogManager will control which log manager + is actively in use. + + + + + Creates a new instance of the LogManager. + + + + + To begin logging, create an implementation of the ILogHandler interface, + or use the DefaultLogger class that is already implemented in this project. + Then, call this function to add that logger to the list of active loggers. + This function will return an integer key that you can use to keep track + of your specific logger. + + + + + The key specified here is the key that was returned by the AddLogger method. + + The integer key of the logger to remove. + True if the logger was successfully removed, or false if the key could not be found + key is null + + + + Adds all the loggers from directories. + + + + + + The Complete exception is passed here. To get the stack + trace, be sure to call ex.ToString(). + + The exception that was thrown by DotSpatial. + + + + This event will allow the registering of an entrance into a public Method of a "tools" related + action to register its entrance into a function as well as logging the parameter names + and a type specific indicator of their value. + + The string name of the method + The List<string> of Parameter names and string form values + + + + This event will allow the registering of the exit from each public method + + The Method name of the method being left + + + + A status message was sent. Complex methods that have a few major steps will + call a status message to show which step the process is in. Loops will call + the progress method instead. + + The string message that was posted. + + + + A progress message, generally as part of a long loop was sent. It is a bad + idea to log these to a file as there may be thousands of them. + + The status part of the progress message with no percent information + The integer percent from 0 to 100 + The complete message, showing both status and completion percent + + + + This is called by each of the LogMessageBox methods automatically, but if the user wants to use + a custom messagebox and then log the message and result directly this is the technique. + + The string text of the message that needs to be logged. + The dialog result from the shown messagebox. + + + + This method echoes information about input boxes to all the loggers. + + The string message that appeared on the InputBox + The ystem.Windows.Forms.DialogResult describing if the value was cancelled + The string containing the value entered. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + An implementation of the IWin32Window that will own the modal form dialog box. + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A DialogResult showing the user input from this messagebox. + + + + Shows a MessageBox, logs the text of the text and the result chosen by the user. + + The text to display in the MessageBox + The text to display in the title bar of the MessageBox + One of the MessageBoxButtons that describes which button to display in the MessageBox + One of the MessageBoxIcons that describes which icon to display in the MessageBox + One of the MessageBoxDefaultButtons that describes the default button for the MessageBox + One of the MessageBoxOptions that describes which display and association options to use for the MessageBox. You may pass 0 if you wish to use the defaults. + A boolean indicating whether or not to display a help button on the messagebox + A DialogResult showing the user input from this messagebox. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to display on this form. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Displays an InputBox form given the specified text string. The result is returned byref. + A DialogResult is returned to show whether the user cancelled the form without providing input. + + The window that owns this modal dialog. + The string text to use as an input prompt. + The string to use in the title bar of the InputBox. + A DotSpatial.Data.ValidationType enumeration specifying acceptable validation to return OK. + Specifies an icon to display on this form. + The string result that was typed into the dialog. + A DialogResult showing the outcome. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + + + + + + Gets or sets the list of string directories that may contain dlls with ILogManagers + + + + + NavigateEventArgs + + + + + Creates a new instance of NavigateEventArgs + + + + + Gets the string path that is being navigated to + + + + + frmOpenDataDialog + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Creates a new instance of frmOpenDataDialog + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + The OpenFileElement can be added directly to a form and supports all of the + basic dialog options that are important for browsing vector/raster/image + data. + + + + + Extension method for raster + + + + + Displays a dialog, allowing the users to open a raster. + + + + + SelectEventArgs + + + + + Creates a new instance of SelectEventArgs + + + + + Gets whether or not the new state of the item is selected + + + + + Gets the modifiers that existed when this event is fired. + use like if (Modifiers and Keys.Shift){} + + + + + Extension method for shapefile + + + + + This will use this object to open a shapefile, but launches an open file dialog for the user + to select the file to open. + + A new Shapefile created from the file chosen by the open file dialog. + + + + This handles the methodology of progress messaging in one place to make it easier to update. + + + + + Constructs a Time-Based progress meter that shows progress against an expected time. + + + + + + + + Intializes a new progress meter, but doesn't support the IProgressHandler unless one is specified. + + + + + A progress meter can't actually do anything without a progressHandler, which actually displays the status. + + An IProgressHandler that will actually handle the status messages sent by this meter. + + + + A progress meter that simply keeps track of progress and is capable of sending progress messages. + This assumes a MaxValue of 100 unless it is changed later. + + Any valid IProgressHandler that will display progress messages + A base message to use as the basic status for this progress handler. + + + + A progress meter that simply keeps track of progress and is capable of sending progress messages. + + Any valid implementation if IProgressHandler that will handle the progress function + The message without any progress information. + Percent shoudl show a range between the MinValue and MaxValue. MinValue is assumed to be 0. + + + + Resets the progress meter to the 0 value. This sets the status message to "Ready.". + + + + + Sends a progress message to the IProgressHandler interface with the current message and progres + + + + + Gets or sets the string that does not include any mention of progress percentage, but specifies what is occuring. + + + + + Gets or sets the current integer progress level from 0 to 100. If a new update is less than or equal to the previous + value, then no progress will be displayed by the ProgressMeter. Values less than 0 are set to 0. Values greater than + 100 are set to 100. + + + + + Gets or sets the current value relative to the specified MaxValue in order to update the progress. + Setting this will also update OldProgress if there is an integer change in the percentage, and send + a progress message to the IProgressHandler interface. + + + + + The value that defines when the meter should show as 100% complete. + EndValue can be less than StartValue, but values closer to EndValue + will show as being closer to 100%. + + + + + Gets or sets whether the progress meter should send messages to the IProgressHandler. + By default Silent is false, but setting this to true will disable the messaging portion. + + + + + The minimum value defines when the meter should show as 0% complete. + + + + + An integer value that is 1 by default. Ordinarilly this will send a progress message only when the integer progress + has changed by 1 percentage point. For example, if StepPercent were set to 5, then a progress update would only + be sent out at 5%, 10% and so on. This helps reduce overhead in cases where showing status messages is actually + the majority of the processing time for the function. + + + + + Gets or sets the previous integer progress level from 0 to 100. If a new update is less than or equal to the previous + value, then no progress will be displayed by the ProgressMeter. Values less than 0 are set to 0. Values greater than + 100 are set to 100. + + + + + Gets or sets the progress handler for this meter + + + + + TryXmlDocument + + + + + Creates a new instance of TryXmlDocument + + + + + This changes CurrentNode to the child node with the specified name. + If there are no child nodes, or the child node is not found, this returns false. + If the navigation is successful, this returns true. + + + + + + + Attempts to navigate to the parent. + + + + + + Opens the specified + + + + + Attempts to read the string for the specified value. This will first test to see if the + attribute exists and encloses the test in a try block. If it fails or the node does not + exist, the default value is returned. + + The string name for the attribute to read from the CurrentElement. + A string specifying the value + CurrentElement Not Specified + + + + Attempts to read the color from a text representation of an argb integer value. + + The name of the attribute to read from the CurrentElement + A Color structure + CurrentElement Not Specified + + + + Attempts to read the boolean value from the specified attribute, translating it from + a text equivalent. + + The string name of the attribute to read from the CurrentElement + A boolean value based on parsing the text. + CurrentElement Not Specified + + + + Attempts to read the integer value from the specified attribute, translating it from + a text equivalent via parsing. + + The string name of the attribute to read from the CurrentElement + An integer parsed from the inner text of the specified attribute on the CurrentElement + CurrentElement Not Specified + + + + Attempts to read the double value from the specified attribute, translating it from + a text equivalent via parsing. + + The string name of the attribute to read from the CurrentElement + A double value parsed from the inner text of the specified attribute on the CurrentElement + CurrentElement Not Specified + + + + Gets or sets the fileName for this document. + + + + + Gets or sets the XmlDocument that this class uses for data access. + + + + + Gets or sets the current node that should be referenced for reading attributes. + + + + + TryXmlDocumentException + + + + + Creates a new instance of TryXmlDocumentException + + + + + Logs this exception + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.CSharpCodeCompletion.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.CSharpCodeCompletion.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.CSharpCodeCompletion.xml (revision 2866) @@ -0,0 +1,138 @@ + + + + DotSpatial.Plugins.ScriptRunner.CSharpCodeCompletion + + + + + Represents an item in the code completion window. + + + + + Converts a member to text. + Returns the declaration of the member as C# or VB code, e.g. + "public void MemberName(string parameter)" + + + + + + + + + + Many SharpDevelop.Dom methods take a file name, which is really just a unique identifier + for a file - Dom methods don't try to access code files on disk, so the file does not have + to exist. + SharpDevelop itself uses internal names of the kind "[randomId]/Class1.cs" to support + code-completion in unsaved files. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Inits this instance. + + + + + Shutdowns this instance. + + + + + Sets as VB. + + + + + Sets as CS. + + + + + Designer variable used to keep track of non-visual components. + + + + + Disposes resources used by the form. + + true if managed resources should be disposed; otherwise, false. + + + + This method is required for Windows Forms designer support. + Do not change the method contents inside the source code editor. The Forms designer might + not be able to load this method if it was changed manually. + + + + + + The text associated with this control. + + + + Called when entry should be inserted. Forward to the insertion action of the completion data. + + + + + Find the expression the cursor is at. + Also determines the context (using statement, "new"-expression etc.) the + cursor is at. + + + + + Return true to handle the keypress, return false to let the text area handle the keypress + + + + + ICSharpCode.SharpDevelop.Dom was created by extracting code from ICSharpCode.SharpDevelop.dll. + There are a few static method calls that refer to GUI code or the code for keeping the parse + information. These calls have to be implemented by the application hosting + ICSharpCode.SharpDevelop.Dom by settings static fields with a delegate to their method + implementation. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.override.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.override.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/pcs.override.csv (revision 2866) @@ -0,0 +1,19 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","UOM_CODE","SOURCE_GEOGCRS_CODE","COORD_OP_CODE","COORD_OP_METHOD_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","PARAMETER_CODE_1","PARAMETER_VALUE_1","PARAMETER_UOM_1","PARAMETER_CODE_2","PARAMETER_VALUE_2","PARAMETER_UOM_2","PARAMETER_CODE_3","PARAMETER_VALUE_3","PARAMETER_UOM_3","PARAMETER_CODE_4","PARAMETER_VALUE_4","PARAMETER_UOM_4","PARAMETER_CODE_5","PARAMETER_VALUE_5","PARAMETER_UOM_5","PARAMETER_CODE_6","PARAMETER_VALUE_6","PARAMETER_UOM_6","PARAMETER_CODE_7","PARAMETER_VALUE_7","PARAMETER_UOM_7" +# +# NOTICE: The master version of this file is in the libgeotiff subversion at: +# +# https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/pcs.override.csv +# +# Do *not* change other copies without upstreaming the results to libgeotiff. +# +# +# +# Adjust central meridian to be relative to prime meridian. +# +26591,"Monte Mario (Rome) / Italy zone 1",9001,4806,18121,9807,1,1,4499,8801,0,9102,8802,-3.45233333333333,9102,8805,0.9996,9201,8806,1500000,9001,8807,0,9001,,,,,, +26592,"Monte Mario (Rome) / Italy zone 2",9001,4806,18122,9807,1,1,4499,8801,0,9102,8802,2.54766666666666,9102,8805,0.9996,9201,8806,2520000,9001,8807,0,9001,,,,,, +# +# 26799 is deprecated, because of the error in the false northing. However, +# we "fix" the original to reduce problems folks would otherwise encounter. +# +26799,"NAD27 / California zone VII",9003,4267,10408,9802,1,0,4497,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,4160926.74,9003,,, Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/BruTile.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/ro/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.TableEditor/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.TableEditor/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.TableEditor/Readme.txt (revision 2866) @@ -0,0 +1 @@ +Basic Attribute Table. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/setup_banner.jpg =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/SmartThreadPool.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/msvcr100.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/geoccs.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/geoccs.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/geoccs.csv (revision 2866) @@ -0,0 +1,115 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","GREENWICH_DATUM","UOM_CODE","ELLIPSOID_CODE","PRIME_MERIDIAN_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE" +3822,TWD97,1026,Taiwan Datum 1997,1026,9001,7019,8901,1,0,6500 +3887,IGRS,1029,Iraqi Geospatial Reference System,1029,9001,7019,8901,1,0,6500 +4000,MOLDREF99,1032,MOLDREF99,1032,9001,7019,8901,1,0,6500 +4039,RGRDC 2005,1033,Reseau Geodesique de la RDC 2005,1033,9001,7019,8901,1,0,6500 +4073,SREF98,1034,Serbian Reference Network 1998,1034,9001,7019,8901,1,0,6500 +4079,REGCAN95,1035,Red Geodesica de Canarias 1995,1035,9001,7019,8901,1,0,6500 +4328,"WGS 84 (geocentric)",6326,World Geodetic System 1984,6326,9001,7030,8901,1,1,6500 +4330,"ITRF88 (geocentric)",6647,International Terrestrial Reference Frame 1988,6647,9001,7019,8901,1,1,6500 +4331,"ITRF89 (geocentric)",6648,International Terrestrial Reference Frame 1989,6648,9001,7019,8901,1,1,6500 +4332,"ITRF90 (geocentric)",6649,International Terrestrial Reference Frame 1990,6649,9001,7019,8901,1,1,6500 +4333,"ITRF91 (geocentric)",6650,International Terrestrial Reference Frame 1991,6650,9001,7019,8901,1,1,6500 +4334,"ITRF92 (geocentric)",6651,International Terrestrial Reference Frame 1992,6651,9001,7019,8901,1,1,6500 +4335,"ITRF93 (geocentric)",6652,International Terrestrial Reference Frame 1993,6652,9001,7019,8901,1,1,6500 +4336,"ITRF94 (geocentric)",6653,International Terrestrial Reference Frame 1994,6653,9001,7019,8901,1,1,6500 +4337,"ITRF96 (geocentric)",6654,International Terrestrial Reference Frame 1996,6654,9001,7019,8901,1,1,6500 +4338,"ITRF97 (geocentric)",6655,International Terrestrial Reference Frame 1997,6655,9001,7019,8901,1,1,6500 +4340,"Australian Antarctic (geocentric)",6176,Australian Antarctic Datum 1998,6176,9001,7019,8901,1,1,6500 +4342,"EST97 (geocentric)",6180,Estonia 1997,6180,9001,7019,8901,1,1,6500 +4344,"CHTRF95 (geocentric)",6151,Swiss Terrestrial Reference Frame 1995,6151,9001,7019,8901,1,1,6500 +4346,"ETRS89 (geocentric)",6258,European Terrestrial Reference System 1989,6258,9001,7019,8901,1,1,6500 +4348,"GDA94 (geocentric)",6283,Geocentric Datum of Australia 1994,6283,9001,7019,8901,1,1,6500 +4350,"Hartebeesthoek94 (geocentric)",6148,Hartebeesthoek94,6148,9001,7030,8901,1,1,6500 +4352,"IRENET95 (geocentric)",6173,IRENET95,6173,9001,7019,8901,1,1,6500 +4354,"JGD2000 (geocentric)",6612,Japanese Geodetic Datum 2000,6612,9001,7019,8901,1,1,6500 +4356,"LKS94 (ETRS89) (geocentric)",6126,"Lithuania 1994 (ETRS89)",6126,9001,7019,8901,1,1,6500 +4358,"Moznet (geocentric)",6130,"Moznet (ITRF94)",6130,9001,7030,8901,1,1,6500 +4360,"NAD83(CSRS) (geocentric)",6140,NAD83 Canadian Spatial Reference System,6140,9001,7019,8901,1,1,6500 +4362,"NAD83(HARN) (geocentric)",6152,"NAD83 (High Accuracy Reference Network)",6152,9001,7019,8901,1,1,6500 +4364,"NZGD2000 (geocentric)",6167,New Zealand Geodetic Datum 2000,6167,9001,7019,8901,1,1,6500 +4366,"POSGAR 98 (geocentric)",6190,Posiciones Geodesicas Argentinas 1998,6190,9001,7019,8901,1,1,6500 +4368,"REGVEN (geocentric)",6189,Red Geodesica Venezolana,6189,9001,7019,8901,1,1,6500 +4370,"RGF93 (geocentric)",6171,Reseau Geodesique Francais 1993,6171,9001,7019,8901,1,1,6500 +4372,"RGFG95 (geocentric)",6624,Reseau Geodesique Francais Guyane 1995,6624,9001,7019,8901,1,1,6500 +4374,"RGR92 (geocentric)",6627,Reseau Geodesique de la Reunion 1992,6627,9001,7019,8901,1,1,6500 +4376,"SIRGAS (geocentric)",6170,Sistema de Referencia Geocentrico para America del Sur 1995,6170,9001,7019,8901,1,1,6500 +4378,"SWEREF99 (geocentric)",6619,SWEREF99,6619,9001,7019,8901,1,1,6500 +4380,"Yemen NGN96 (geocentric)",6163,Yemen National Geodetic Network 1996,6163,9001,7030,8901,1,1,6500 +4382,"RGNC 1991 (geocentric)",6645,Reseau Geodesique Nouvelle Caledonie 1991,6645,9001,7022,8901,1,1,6500 +4384,"RRAF 1991 (geocentric)",6640,Reseau de Reference des Antilles Francaises 1991,6640,9001,7030,8901,1,1,6500 +4385,"ITRF2000 (geocentric)",6656,International Terrestrial Reference Frame 2000,6656,9001,7019,8901,1,1,6500 +4387,"ISN93 (geocentric)",6659,Islands Network 1993,6659,9001,7019,8901,1,1,6500 +4389,"LKS92 (geocentric)",6661,Latvia 1992,6661,9001,7019,8901,1,1,6500 +4465,RGSPM06,1038,Reseau Geodesique de Saint Pierre et Miquelon 2006,1038,9001,7019,8901,1,0,6500 +4468,RGM04,1036,Reseau Geodesique de Mayotte 2004,1036,9001,7019,8901,1,0,6500 +4473,Cadastre 1997,1037,Cadastre 1997,1037,9001,7022,8901,1,0,6500 +4479,China Geodetic Coordinate System 2000,1043,China 2000,1043,9001,1024,8901,1,0,6500 +4481,Mexican Datum of 1993,1042,Mexican Datum of 1993,1042,9001,7019,8901,1,0,6500 +4556,RRAF 1991,1047,Reseau de Reference des Antilles Francaises 1991,1047,9001,7019,8901,1,0,6500 +4882,Slovenia 1996,6765,Slovenia Geodetic Datum 1996,6765,9001,7019,8901,1,0,6500 +4884,RSRGD2000,6764,Ross Sea Region Geodetic Datum 2000,6764,9001,7019,8901,1,0,6500 +4886,BDA2000,6762,Bermuda 2000,6762,9001,7030,8901,1,0,6500 +4888,HTRS96,6761,Croatian Terrestrial Reference System,6761,9001,7019,8901,1,0,6500 +4890,WGS 66,6760,World Geodetic System 1966,6760,9001,7025,8901,1,0,6500 +4892,"NAD83(NSRS2007)",6759,"NAD83 (National Spatial Reference System 2007)",6759,9001,7019,8901,1,0,6500 +4894,JAD2001,6758,Jamaica 2001,6758,9001,7030,8901,1,0,6500 +4896,ITRF2005,6896,International Terrestrial Reference Frame 2005,6896,9001,7019,8901,1,0,6500 +4897,DGN95,6755,Datum Geodesi Nasional 1995,6755,9001,7030,8901,1,0,6500 +4899,LGD2006,6754,Libyan Geodetic Datum 2006,6754,9001,7022,8901,1,0,6500 +4906,RGNC91-93,6749,Reseau Geodesique de Nouvelle Caledonie 91-93,6749,9001,7019,8901,1,0,6500 +4908,GR96,6747,Greenland 1996,6747,9001,7019,8901,1,0,6500 +4910,ITRF88,6647,International Terrestrial Reference Frame 1988,6647,9001,7019,8901,1,0,6500 +4911,ITRF89,6648,International Terrestrial Reference Frame 1989,6648,9001,7019,8901,1,0,6500 +4912,ITRF90,6649,International Terrestrial Reference Frame 1990,6649,9001,7019,8901,1,0,6500 +4913,ITRF91,6650,International Terrestrial Reference Frame 1991,6650,9001,7019,8901,1,0,6500 +4914,ITRF92,6651,International Terrestrial Reference Frame 1992,6651,9001,7019,8901,1,0,6500 +4915,ITRF93,6652,International Terrestrial Reference Frame 1993,6652,9001,7019,8901,1,0,6500 +4916,ITRF94,6653,International Terrestrial Reference Frame 1994,6653,9001,7019,8901,1,0,6500 +4917,ITRF96,6654,International Terrestrial Reference Frame 1996,6654,9001,7019,8901,1,0,6500 +4918,ITRF97,6655,International Terrestrial Reference Frame 1997,6655,9001,7019,8901,1,0,6500 +4919,ITRF2000,6656,International Terrestrial Reference Frame 2000,6656,9001,7019,8901,1,0,6500 +4920,GDM2000,6742,Geodetic Datum of Malaysia 2000,6742,9001,7019,8901,1,0,6500 +4922,PZ-90,6740,Parametrop Zemp 1990,6740,9001,7054,8901,1,0,6500 +4924,Mauritania 1999,6702,Mauritania 1999,6702,9001,7019,8901,1,0,6500 +4926,Korea 2000,6737,Geocentric datum of Korea,6737,9001,7019,8901,1,0,6500 +4928,POSGAR 94,6694,Posiciones Geodesicas Argentinas 1994,6694,9001,7030,8901,1,0,6500 +4930,Australian Antarctic,6176,Australian Antarctic Datum 1998,6176,9001,7019,8901,1,0,6500 +4932,CHTRF95,6151,Swiss Terrestrial Reference Frame 1995,6151,9001,7019,8901,1,0,6500 +4934,EST97,6180,Estonia 1997,6180,9001,7019,8901,1,0,6500 +4936,ETRS89,6258,European Terrestrial Reference System 1989,6258,9001,7019,8901,1,0,6500 +4938,GDA94,6283,Geocentric Datum of Australia 1994,6283,9001,7019,8901,1,0,6500 +4940,Hartebeesthoek94,6148,Hartebeesthoek94,6148,9001,7030,8901,1,0,6500 +4942,IRENET95,6173,IRENET95,6173,9001,7019,8901,1,0,6500 +4944,ISN93,6659,Islands Network 1993,6659,9001,7019,8901,1,0,6500 +4946,JGD2000,6612,Japanese Geodetic Datum 2000,6612,9001,7019,8901,1,0,6500 +4948,LKS92,6661,Latvia 1992,6661,9001,7019,8901,1,0,6500 +4950,LKS94,6126,"Lithuania 1994 (ETRS89)",6126,9001,7019,8901,1,0,6500 +4952,Moznet,6130,"Moznet (ITRF94)",6130,9001,7030,8901,1,0,6500 +4954,"NAD83(CSRS)",6140,NAD83 Canadian Spatial Reference System,6140,9001,7019,8901,1,0,6500 +4956,"NAD83(HARN)",6152,"NAD83 (High Accuracy Reference Network)",6152,9001,7019,8901,1,0,6500 +4958,NZGD2000,6167,New Zealand Geodetic Datum 2000,6167,9001,7019,8901,1,0,6500 +4960,POSGAR 98,6190,Posiciones Geodesicas Argentinas 1998,6190,9001,7019,8901,1,0,6500 +4962,REGVEN,6189,Red Geodesica Venezolana,6189,9001,7019,8901,1,0,6500 +4964,RGF93,6171,Reseau Geodesique Francais 1993,6171,9001,7019,8901,1,0,6500 +4966,RGFG95,6624,Reseau Geodesique Francais Guyane 1995,6624,9001,7019,8901,1,0,6500 +4968,RGNC 1991,6645,Reseau Geodesique Nouvelle Caledonie 1991,6645,9001,7022,8901,1,1,6500 +4970,RGR92,6627,Reseau Geodesique de la Reunion 1992,6627,9001,7019,8901,1,0,6500 +4972,RRAF 1991,6640,Reseau de Reference des Antilles Francaises 1991,6640,9001,7030,8901,1,1,6500 +4974,SIRGAS 1995,6170,Sistema de Referencia Geocentrico para America del Sur 1995,6170,9001,7019,8901,1,0,6500 +4976,SWEREF99,6619,SWEREF99,6619,9001,7019,8901,1,0,6500 +4978,WGS 84,6326,World Geodetic System 1984,6326,9001,7030,8901,1,0,6500 +4980,Yemen NGN96,6163,Yemen National Geodetic Network 1996,6163,9001,7030,8901,1,0,6500 +4982,IGM95,6670,Istituto Geografico Militaire 1995,6670,9001,7030,8901,1,0,6500 +4984,WGS 72,6322,World Geodetic System 1972,6322,9001,7043,8901,1,0,6500 +4986,WGS 72BE,6324,WGS 72 Transit Broadcast Ephemeris,6324,9001,7043,8901,1,0,6500 +4988,SIRGAS 2000,6674,Sistema de Referencia Geocentrico para las AmericaS 2000,6674,9001,7019,8901,1,0,6500 +4990,Lao 1993,6677,Lao 1993,6677,9001,7024,8901,1,0,6500 +4992,Lao 1997,6678,Lao National Datum 1997,6678,9001,7024,8901,1,0,6500 +4994,PRS92,6683,Philippine Reference System 1992,6683,9001,7008,8901,1,0,6500 +4996,MAGNA-SIRGAS,6686,Marco Geocentrico Nacional de Referencia,6686,9001,7019,8901,1,0,6500 +4998,RGPF,6687,Reseau Geodesique de la Polynesie Francaise,6687,9001,7019,8901,1,0,6500 +5011,PTRA08,1041,Autonomous Regions of Portugal 2008,1041,9001,7019,8901,1,0,6500 +5244,GDBD2009,1056,Geocentric Datum Brunei Darussalam 2009,1056,9001,7019,8901,1,0,6500 +5250,TUREF,1057,Turkish National Reference Frame,1057,9001,7019,8901,1,0,6500 +5262,DRUKREF 03,1058,Bhutan National Geodetic Datum,1058,9001,7019,8901,1,0,6500 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/proj.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.About/DotSpatial.Plugins.About.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/th/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.About/DotSpatial.Plugins.About.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/ogr_wrap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/DotSpatial.Plugins.ScriptRunner.CSharpCodeCompletion.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/vi-VN/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-CN/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Analysis.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Analysis.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Analysis.xml (revision 2866) @@ -0,0 +1,478 @@ + + + + DotSpatial.Analysis + + + + + Used to represent a line segment. + + + + + Gets or sets the x1. + + + The x1. + + + + + Gets or sets the x2. + + + The x2. + + + + + Gets or sets the M. + + + The M. + + + + + Gets or sets the Q. + + + The Q. + + + + + A class that makes adding a buffer to a feature set very simpple. + + + + + A static function to compute the buffer and return the result to the Execute function. + + The feature set that will be buffered. + The distance of the buffer. + The resulting feature set that will show the buffer. + Optional parameter to report progress and cancel if needed. + + + + + A class for supporting methods to generate random points. + + + + + Erase features from one feature set where they are intersected by another feature set. + + Features which will be erased in part or whole. + Features which represent areas to erase. + Optional parameter to report progress and cancel entire process if needed. + A point feature set with the randomly created features. + + + + Add the features from SourceFeatures to the TargetFeatures feature set. + + Feature set to which features will be added. + Source of features to add to the target feature set. + A point feature set with the randomly created features. + + + + A class for supporting methods to generate random points. + + + + + Creates a specified number of random point features inside multiple polygon features in a feature set. + + Random points will be generated inside all features in this feature set. + The number of points to be randomly generated. + FeatureSet, the points should be added to. + Optional parameter to report progress and cancel entire process if needed. + A point feature set with the randomly created features. + + + + Creates a specified number of random point features inside a single polygon feature. + + Random points will be generated inside this polygon feature. + The number of points to be randomly generated. + A point feature set with the randomly created features. + + + + Clip input raster with polygon. + + + + + Finds the X-coordinate of the first scanline + + The polygon + The input raster + the X-coordinate of the first scanline + + + + Finds the first raster column corresponding to the left-most edge of the poly + + the polygon + the input raster + The raster column corresponding to the left-most edge of the poly + (if raster starts before left edge of the poly) + or the first raster column (if raster starts after left edge of the poly) + If the poly sits to the left of the raster then the first column of the raster is returned. + + + + Finds the last raster column corresponding to the right-most edge of the poly + + the polygon + the input raster + The raster column corresponding to the right-most edge of the poly + (if raster ends after the right edge of the poly) + or the last raster column (if raster ends before right edge of the poly) + + + + Clips a raster with a polygon feature + + The input raster file + The clipping polygon feature + The output raster file + Progress handler for reporting progress status and cancelling the operation + The output clipped raster object + + + + Clips a raster with a polygon feature + + The clipping polygon feature + The input raster object + the output raster file name + Progress handler for reporting progress status and cancelling the operation + We assume there is only one part in the polygon. + Traverses the raster with a vertical scan line from left to right, bottom to top + + + + + Parses the intersections. Moves bottom to top. + + The intersections. + The x current. + The column. + The output. + The input. + + + + Gets the Y intersections. + + The borders. + The line-scan x-value. + + + + + Gets the borders of the specified feature except vertical lines. + + The feature. + + + + + Finds the x-coordinate of the first raster column to process + + The lowest left coordinate of the polygon. + The lowest left coordinate of the raster. + Size of the cell. + + + + Finds the index of the first raster column to process + + The lowest left coordinate of the polygon. + The lowest left coordinate of the raster. + Size of the cell. + + + + Finds the index of the first raster row to process + + The lowest left coordinate of the polygon. + The lowest left coordinate of the raster. + Size of the cell. + + + + Finds the y-coordinate of the first raster row to process + + The lowest left coordinate of the polygon. + The lowest left coordinate of the raster. + Size of the cell. + + + + Initializes a new instance of the FileLogger class which is an implementation of ILogger designed to save content to a file. + + + + + An exception was thrown, so this will post the stack trace and message to debug. + + The exception to log. + + + + This handles the situation where a public method has been entered. + + The method name. + The list of parameters. + + + + This handles the situation where a public method has been left. + + The method name of the function being left. + + + + Handles the situation where a status message has been posted. + + The status message text. + + + + This is not really used because this saves data to a file. + + A basic string to help categorize the message, usually just the message with no percentage information. + The string percent to appear in a progress message. + The string message combining both the key and the percent information. + + + + Handles the situation where a simple message box where only a message was specified + was shown to the user. It also shows the result that the user pressed. + + The message text. + The boolean result. + + + + This method allows the logger to receive information about input boxes that were shown + as well as the values entered into them and the result. + + The string message that appeared on the input box. + The System.Windows.Forms.DialogResult describing if the value was cancelled. + The string containing the value entered. + + + + Gets or sets the string file to append debug messages to. + + + + + Gets a description of this logger. + + + + + Gets or sets the integer key that allows us to retrieve this logger from the Manager when we wish to remove it. + + + + + A class for creating "ranges" of raster values. + + + + + Initializes a new instance of the RasterBin class. + + + + + This uses the BaseValue and BinSize properties in order to categorize the values + according to the source. The cells in the bin will receive a value that is equal + to the midpoint between the range. So a range from 0 to 10 will all have the value + of 5. Values with no data continue to be marked as NoData. + + The source raster. + The output filename. + The progress handler for messages. + The IRaster of binned values from the original source. + + + + Gets or sets the "origin" of the bins. Bins may occur above or below this, + in increments of "BinSize". The default is 0. + + + + + Gets or sets the double value separating the bins for the raster. The default is 10. + + + + + This class resamples the given raster cells. + + + + + This will resample the cells. + If the cell size is zero, this will default to the shorter of the width or height + divided by 256. + + The input raster. + The new cell height. + The new cell width. + The destination file name. + Resampled raster name. + + + + This will resample the cells. + If the cell size is zero, this will default to the shorter of the width or height + divided by 256. + + the input raster. + The new cell height or null. + The new cell width or null. + The string name of the output raster. + An interface for handling the progress messages. + The resampled raster. + + + + A class for supporting methods to calculate the slope. + + + + + Executes the slope generation raster. + + The input altitude raster. + The double precision multiplicative scaling factor for elevation values. + A boolean parameter that clarifies the nature of the slope values. If this is true, the values represent percent slope. + The progress handler. + The output slope raster, or null if the process was unsuccessful. + + + + VectorToRaster uses the help of GDI+ to create a bitmap, draws the features to + the bitmap, and then converts the color coded cells to a raster format. + This is limited to bitmaps that are within the 8, 000 x 8, 0000 size limits. + + + + + Creates a new raster with the specified cell size. If the cell size + is zero, this will default to the shorter of the width or height + divided by 256. If the cell size produces a raster that is greater + than 8, 000 pixels in either dimension, it will be re-sized to + create an 8, 000 length or width raster. + + The featureset to convert to a raster. + The double extent of the cell. + The integer field index of the file. + The fileName of the raster to create. + The resulting IRaster generated by the ToRaster operation. + + + + Creates a new raster with the specified cell size. If the cell size + is zero, this will default to the shorter of the width or height + divided by 256. If the cell size produces a raster that is greater + than 8, 000 pixels in either dimension, it will be re-sized to + create an 8, 000 length or width raster. + + The featureset to convert to a raster. + The double extent of the cell. + The integer field index of the file. + The fileName of the raster to create. + The optional GDAL driver code to use if using GDAL + for a format that is not discernable from the file extension. An empty string + is usually perfectly acceptable here. + For GDAL rasters, they can be created with optional parameters + passed in as a string array. In most cases an empty string is perfectly acceptable. + An interface for handling the progress messages. + Generates a raster from the vectors. + + + + Creates a new raster with the specified cell size. If the cell size + is zero, this will default to the shorter of the width or height + divided by 256. If the cell size produces a raster that is greater + than 8, 000 pixels in either dimension, it will be re-sized to + create an 8, 000 length or width raster. + + The featureset to convert to a raster. + Force the raster to this specified extent. + The double extent of the cell. + The integer field index of the file. + The fileName of the raster to create. + The optional GDAL driver code to use if using GDAL + for a format that is not discernable from the file extension. An empty string + is usually perfectly acceptable here. + For GDAL rasters, they can be created with optional parameters + passed in as a string array. In most cases an empty string is perfectly acceptable. + An interface for handling the progress messages. + Generates a raster from the vectors. + + + + This class provides an application programming interface to access the Voronoi calculations that are wrapped by a tool. + + + + + The Voronoi Graph calculation creates a delaunay tesselation where + each point is effectively converted into triangles. + + The points to use for creating the tesselation. + The generated line featureset. + + + + The Voronoi Graph calculation creates the lines that form a voronoi diagram. + + The points to use for creating the tesselation. + An IFeatureSet that is the resulting set of lines in the diagram. + + + + The Voronoi Graph calculation creates the lines that form a voronoi diagram. + + The points to use for creating the tesselation. + The normal polygons have sharp angles that extend like stars. + Cropping will ensure that the original featureset extent plus a small extra buffer amount + is the outer extent of the polygons. Errors seem to occur if the exact extent is used. + The IFeatureSet containing the lines that were formed in the diagram. + + + + The Voronoi Graph calculation creates the lines that form a voronoi diagram. + + The points to use for creating the tesselation. + The output featureset. + The normal polygons have sharp angles that extend like stars. + Cropping will ensure that the original featureset extent plus a small extra buffer amount + is the outer extent of the polygons. Errors seem to occur if the exact extent is used. + + + + The original algorithm simply allows edges that have one defined point and + another "NAN" point. Simply excluding the not a number coordinates fails + to preserve the known direction of the ray. We only need to extend this + long enough to encounter the bounding box, not infinity. + + The VoronoiGraph with the edge list. + The polygon bounding the datapoints. + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.Contourer/NetTopologySuite.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57agencies.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57agencies.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57agencies.csv (revision 2866) @@ -0,0 +1,249 @@ +#AgencyID,Token,Code,AgencyName +1,AE,530,Ministry of Communications, United Arab Emirates +2,AR,1,Servicio de Hidrografia Naval, Argentina +3,AU,10,Hydrographic Service, Royal Australian Navy, Australia +4,BH,20,Hydrographic Section, Survey Directorate, Bahrain +5,BE,30,Antwerpse Zeediensten Hydrografie, Belgium +6,B1,31,Dienst der Kust Hydrografie, Belgium +7,BR,40,Diretoria de Hidrografia e Navegacao, Brazil +8,CA,50,Canadian Hydrographic Service, Canada +9,CL,60,Servicio Hidrogr fico y Oceanogr fico de la Armada, Chile +10,CN,70,Maritime Safety Administration, China +11,C1,71,Navigation Guarantee Department, China +12,C2,72,Hong Kong Hydrographic Service +13,HR,80,Drzavni Hidrografski Institut, Croatia +14,CU,90,Instituto Cubano de Hidrografia, Cuba +15,CY,100,Department of Lands & Surveys, Hydrographic Unit, Cyprus +16,DK,110,Kort-Og Matrikelstyrelsen, Denmark +17,D1,111,Farvandsvaesenet, Denmark +18,DO,120,Departamento Hidrografico, Marina de Guerra, Dominican Rep. +19,DZ,610,Service Hydrographique des forces navales, Algeria +20,EC,130,Instituto Oceanografico de la Armada, Ecuador +21,EG,140,Shobat al Misaha al Baharia, Egypt +22,FJ,150,Fiji Hydrographic Service, Fiji +23,FI,160,Merenkulkuhallitus, Merikarttaosasto, Finland +24,FR,170,Service Hydrographique et Oceanographique de la Marine, France +25,DE,180,Bundesamt fuer Seeschiffahrt und Hydrographie, Germany +26,GR,190,Hellenic Navy Hydrographic Service, Greece +27,GT,200,Departamento de Sistemas Hidraulicos, Guatemala +28,G1,201,Instituto Geogr fico Militar, Guatemala +29,IS,210,Sjomaelingar Islands, Iceland +30,IN,220,Naval Hydrographic Office, India +31,ID,230,Dinas Hidro-Oseanografi (Dishidros), Indonesia +32,IR,240,Ports and Shipping Organization, Iran +33,IT,250,Istituto Idrografico della Marina, Italy +34,JP,260,Japan Hydrographic Department, Japan +35,KR,270,Hydrographic Department of the DPRK, Korea (DPR of) +36,KP,280,Office of Hydrographic Affairs, Korea (Rep. of) +37,MY,290,Royal Malaysian Navy Hydrographic Department, Malaysia +38,MC,300,Departement des Travaux Publics et des Affaires Sociales, Monaco +39,NL,310,Dienst der Hydrografie Koninklijke Marine, Netherlands +40,NZ,320,Royal New Zealand Navy Hydrographic Office, New Zealand +41,NG,330,Nigerian Navy Hydrographic Office, Nigeria +42,NO,340,Norwegian Hydrographic Service, Norway +43,N1,341,Electronic Chart Centre, Norway +44,OM,350,National Hydrographic Organization, Oman +45,PK,360,Pakistan Hydrographic Department, Pakistan +46,PG,370,Department of Transport, Maritime Division, Papua New Guinea +47,PE,380,Direccion de Hidrografia y Navegacion de la Marina, Peru +48,PH,390,Coast & Geodetic Survey Dept., Philippines +49,PL,400,Biuro Hydrograficzne Marynarki Wojennej, Poland +50,PT,410,Instituto Hidrografico, Portugal +51,RU,420,Head Department of Navigation & Oceanography, Russian Federation +52,SG,430,Hydrographic Department, Singapore +53,ZA,440,South African Navy Hydrographic Office, South Afrika (Rep. of) +54,ES,450,Instituto Hidrogr fico de la Marina, Spain +55,LK,460,National Aquatic Resources Agency, Sri Lanka +56,SR,470,Ministry of Transports, Maritime Affairs, Suriname +57,SE,480,Sjoekarteavdelningen, Sweden +58,SY,490,General Directorate of Ports, Syria +59,TH,500,Krom Utoksastr, Thailand +60,TT,510,Trinidad & Tobago Hydrographic Unit, Trinidad & Tobago +61,TR,520,Seyir, Hidrografi ve Osinografi Dairesi Baskanligi, Turkey +62,GB,540,Hydrographic Office, UK +63,US,550,Office of Coast Survey, USA +64,U1,551,National Imagery and Mapping Agency, USA +65,U2,552,Naval Oceanography Command, USA +66,U3,553,US Army Corps of Engineers +67,UY,560,Servicio de Oceanografia, Hidrografia y Meteorologia de la Armada, Uruguay +68,VE,570,Direccion de Hidrografia y Navegacion, Venezuela +69,YU,580,Hydrographic Institute of the Navy, Yugoslavia +70,ZR,590,Direction de la Marine et des Voies Navigables, Zaire +71,AL,600,Sherbimi Hidrografik Shqiptar, Albania +72,AO,620,Not known, Angola +73,AG,630,Department of Marine Services and Merchant Shipping, Antigua and Barbuda +74,AW,640,Not known, Aruba +75,BS,650,Department of Lands and Surveys, Bahamas +76,BD,660,Department of Hydrography, Bangladesh +77,BB,670,Barbados Port Authority, Barbados +78,BZ,680,Not known, Belize +79,BJ,690,Direction Generale du Port Autonome de Cotonou, Benin +80,BO,700,Servicio de Hidrografia Naval, Bolivia +81,BN,710,Department of Marine, Brunei Darussalam +82,BG,720,Hidrografska Sluzhba Pri Ministerstvo Na Otbranata, Bulgaria +83,KH,730,Service de l'Hydraulique et des Voies Navigables, Cambodia +84,CM,740,Office National des Ports du Cameroun, Cameroon +85,CV,750,Direccao Geral da Marinha Mercante, Cape Verde +86,CO,760,Ministerio de Defensa Nacional, Armada Nacional, Direccion General Maritima, Colombia +87,KM,770,Not known, Comoros +88,CG,780,Direction du Port de Pointe-Noire, Congo +89,CK,790,Department of Trade Labour and Transport, Cook Islands +90,CR,800,Ministerio de Obras Publicas y Transportes, Costa Rica +91,CI,810,Direction G_n_rale du Port Autonome d'Abidjan, Cote-d'Ivoire +92,DJ,820,Ministere du Port et des Affaires Maritimes, Djibuti +93,DM,830,Not known, Dominica +94,SV,840,Instituto Geografico Nacional, El Salvador +95,GQ,850,Not known, Equatorial Guinea +96,ER,860,Port and Maritime Transport Authority, Eritrea +97,EE,870,Tuletorni - Huedrograafiatalitus, Estonia +98,ET,880,Ministry of Transport and Communications, Ethiopia +99,GA,890,Service de la Signalisation Maritime, Gabon +100,GM,900,Gambia Ports Authority, Gambia +101,GH,910,Ghana Ports and Harbours Authority, Ghana +102,GD,920,Grenada Ports Authority, Grenada +103,GN,930,Minist_re des Transports et Travaux Publics, Guinea +104,GW,940,Servicos da Marinha, Guinea-Bissau +105,GY,950,Transport and Harbours Department, Guyana +106,HT,960,Service Maritime et de Navigation d'Haiti, Haiti +107,HN,970,Departamento de Geologia e Hidrografia, Honduras +108,IQ,980,Marine Department, Iraq +109,IE,990,Department of the Marine, Ireland +110,IL,1000,Administration of Shipping and Ports, Israel +111,JM,1010,Harbour Master's Department, Jamaica +112,JO,1020,The Ports Corporation, Jordan +113,KE,1030,Survey of Kenya, Kenya +114,KI,1040,Ministry of Transport and Communications, Kiribati +115,KW,1050,Ministry of Communications, Kuwait +116,LV,1060,Latvijas Hidrografijas Dienests, Latvia +117,LB,1070,Service du Transport Maritime, Lebanon +118,LR,1080,Ministry of Lands, Mines and Energy, Liberia +119,LY,1090,Not known, Libyan Arab Jamahiriya +120,LT,1100,Klaipeda State Seaport Authority, Lithuania +121,MG,1110,Foiben-Taosarintanin'i Madagasikara, Madagascar +122,MW,1120,Hydrographic Survey Unit, Malawi +123,MV,1130,Department of Information and Broadcasting, Maldives +124,MT,1140,Malta Maritime Authority Ports Directorate, Malta +125,MH,1150,Ministry of Resources and Development, Marshall Islands +126,MR,1160,Ministere de la Defense Nationale, Mauritania +127,MU,1170,Ministry of Housing, Lands and Town and Country Planning, Mauritius +128,MX,1180,Direccion General de Oceanografia Naval, Mexiko +129,FM,1190,Not known, Micronesia (Federated State of) +130,MA,1200,Service Hydrographique et Oceanographique de la Marine Royale, Morocco +131,MZ,1210,Instituto Nacional de Hidrografia e Navegacao, Mozambique +132,MM,1220,Naval Hydrographic Office, Myanmar +133,NA,1230,Not known, Namibia +134,NR,1240,Nauru Phosphate Corporation, Nauru +135,NI,1250,Secretaria de Planificacion y Presupuesto de la Presidencia de la Republica, Instituto Nicaraguense de Estudios Territoriales, Nicaragua +136,PW,1260,Bureau of Domestic Affairs, Palau +137,PA,1270,Instituto Geografico Nacional, Panama +138,PY,1280,Direccion de Hidrografia y Navegacion, Paraguay +139,QA,1290,Ministry of Municipal Affairs and Agriculture, Qatar +140,RO,1300,Directia Hidrografica Maritima, Romania +141,KN,1310,St. Christopher Air and Sea Ports Authority, Hydrographic Service, Saint Kitts and Nevis +142,LC,1320,Ministry of Planning, Personnel Establishment and Training, Saint Lucia +143,VC,1330,Ministry of Communications and Works, Saint Vincent and Grenadines +144,WS,1340,Ministry of Transport, Marine and Shipping Division, Samoa +145,ST,1350,Not known, Sao Tombe and Principe +146,SA,1360,Military Survey Department, Hydrographic Section, Saudi Arabia +147,SN,1370,Ministere de l'Equipement, des Transports et de la Mer, Senegal +148,SC,1380,Hydrographic and Topographic Brigade, Seychelles +149,SL,1390,Department of Transport and Communications, Sierra Leone +150,SI,1400,Not known, Slovenia +151,SB,1410,Solomon Islands Hydrographic Unit, Solomon Islands +152,SO,1420,Somali Hydrographic Office, Marine Department, Ministry of Marine Transports and Ports, Somalia +153,SD,1430,Survey Department, Sudan +154,TZ,1440,Tanzania Harbours Authority, Tanzania +155,TG,1450,University of Benin, Togo +156,TK,1460,Not known, Tokelau +157,TN,1470,Service Hydrographique et Oceanographique, Armee de Mer, Ministere de la Defense Nationale, Tunisia +158,TV,1480,Ministry of Labour, Works and Communications, Tuvalu +159,UA,1490,National Agency of Marine Research and Technology, Ukraine +160,VU,1500,Vanuatu Hydrographic Unit, Vanuata +161,VN,1510,Not known, Vietnam +162,YE,1520,Ministry of Communications, Yemen Ports and Shipping Corporation, Yemen Ports Authority, Yemen +163,QM,1600,Antarctic Treaty Consultative Committee +164,QN,1610,International Radio Consultative Committee +165,QO,1620,Comite International Radio-Maritime +166,QP,1630,IHO Data Centre for Digital Bathymetry +167,QQ,1640,Digital Geographic Information Working Group +168,QR,1650,European Communities Commission +169,QS,1660,European Harbour Masters Association +170,QT,1670,Food and Agriculture Organization +171,QU,1680,Federation Internationale des Geometres +172,QV,1690,International Atomic Energy Agency +173,QW,1700,International Association of Geodesy +174,QX,1710,International Association of Institutes of Navigation +175,QY,1720,International Association of Lighthouse Authorities +176,QZ,1730,International Association of Ports and Harbours +177,XA,1740,International Cartographic Association +178,XB,1750,International Cable Protection Committee +179,XC,1760,International Chamber of Shipping +180,XD,1770,International Commission for the Scientific Exploration of the Mediterranean +181,XE,1780,International Council of Scientific Unions +182,XF,1790,International Electrotechnical Commission +183,XG,1800,International Geographical Union +184,AA,1810,International Hydrographic Organization +185,XH,1820,International Maritime Academy +186,XI,1830,International Maritime Organization +187,XJ,1840,International Maritime Satellite Organization +188,XK,1850,Intergovernmental Oceanographic Commission +189,XL,1860,International Organization for Standardization +190,XM,1870,International Society for Photogrammetry and Remote Sensing +191,XN,1880,International Telecommunication Union +192,XO,1890,International Union of Geodesy and Geophysics +193,XP,1900,International Union of Surveying and Mapping +194,XQ,1910,Oil Companies International Marine Forum +195,XR,1920,Pan American Institute of Geography and History +196,XS,1930,Radio Technical Commission for Maritime Services +197,XT,1940,Scientific Commission on Antarctic Research +198,XU,1950,The Hydrographic Society +199,XV,1960,World Meteorological Organization +200,XW,1970,United Nations, Office for Ocean Affairs and Law of the Sea +201,PM,2020,PRIMAR - European ENC Coordinating Centre +202,1A,6682,ARAMCO +203,1B,0,UKHO test and sample datasets +204,1C,7196,CARIS +205,1D,7453,Amt fuer Geoinformationswesen der Bundeswehr +206,1E,7710,TerraNautical Data, Inc. +207,1F,7967,Force Technology, Danish Maritime Institute +208,1G,7968,_sterreichische Donau-Technik-GmbH +209,1H,7969,Vituki Water Resources Research Centre Hungary +210,1I,7970,Navionics S.p.A. +211,1K,7972,Kingway Technology Co +212,1L,7973,Laser-Scan Ltd +213,1M,7974,Channel of Moscow +214,1N,7975,Nautical Data International, Inc. +215,1O,7976,Offshore Charts Ltd. +216,1P,7977,Port Of London +217,1Q,7978,Quality Positioning Services +218,1R,7979,Rijkswaterstaat +219,1S,7980,Austrian Supreme Shippig Authority +220,1T,7981,UKHO - private production +221,1U,7982,ENC Center, National Taiwan Ocean University +222,1V,7983,The Volga-Baltic State Territorial Department for Waterways Management and Navigation +223,1W,7984,Wasser- und Schiffahrtsverwaltung des Bundes - Wasser- und Schiffahrtsdirektion S_d-West +224,1X,7985,Noorderzon Software +225,2A,10794,Azienda Regionale Navigazione Interna (ARNI) +226,2C,11308,IIC Technologies +227,2I,12056,Innovative Navigation GmbH +228,2M,12060,MARIN (Maritime Research Institute Netherlands) +229,2P,12063,PLOVPUT Beograd +230,2R,12065,Port of Rotterdam +231,2S,12079,Ssangyong Information & Communications Corp. +232,2T,12093,Transas Marine +233,2W,12096,Austrian Waterways Authority +234,3R,16203,A.F.D.J. R.A. Galati +235,3S,16204,Science Applications International Corp. +236,4R,20315,MD Atlantic Technologies +237,3T,16205,Tresco Navigation Systems +238,5M,24422,Hydrographic Office of Sarawak Marine Department +239,5T,24455,TEC Asociados +240,6C,27756,Guoy Consultancy Sdn Bhd +241,7C,31868,SevenCs AG & Co KG +242,7R,32651,The Federal Service of Geodesy and Cartography of Russia +243,7S,32652,Centre Sevzapgeoinform (SZGI) +244,7T,32653,Terra Corp +245,8A,35466,HSA Systems Pty Ltd +246,9A,39578,CherSoft Ltd +247,9T,40877,Tresco Engineering bvba +248,0_,65534,unknown producer Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/DotSpatial.Plugins.BruTileLayer.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Controls.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/en-US/DotSpatial.Symbology.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.XML =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.XML (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ExtensionManager/DotSpatial.Plugins.ExtensionManager.XML (revision 2866) @@ -0,0 +1,298 @@ + + + + DotSpatial.Plugins.ExtensionManager + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Add or remove feeds to be autoupdated when app starts. + + The app manager. + URL of feed. + + + + Return a list of feeds to autoupdate when app starts. + + The app manager. + + + + Check if a specific URL is in the autoupdate list. + + The app manager. + The feed to check. + + + + An AppFunction + + + + + + + + + + + + + + Gets or sets the Manager that the dialog uses to control Apps. + + + + + Initializes a new instance of the Packages class. + + + + + Installs the specified package. + + The name. + + + + + Updates the specified package and dependencies. + + The package. + + + + Gets the PackageRepository. + + + + + Gets the repository location. + + + + + Gets the package manger. + + + + + A Dialog that allows the user to manage extensions. + + + + + Appends a label and some text to the text box on the online tab. + + + The label for your text. eg. "Label": + + The text to be diplayed. + + + + + Appends a label and some text to the text box on the installed tab. + + + The label for your text. eg. "Label": + + The text to be diplayed. + + + + + Sets a feed to be used with auto-updating. + + + The feed that should be used for auto updates + + + + + Refreashes and displays the online packages and Updates. + + + + + + + + Searches the online feed selected for the specified search term + in uxSearchText. + + + + + + + + Initialized icons and their event handlers. + + + + + + + + Populates the installed extensions list based on the selected category. + + + + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + Looks up a localized resource of type System.Drawing.Bitmap. + + + + + If a user doesn't have a DockManager or other required extensions, help them locate one. + + + + + Gets the AppManager that is responsible for activating and deactivating plugins as well as coordinating + all of the other properties. + + + + + performs auto updates from the default feed. + + + + + autoUpdate any packages found in current feed. + + + + + Checks for updates for the main application. + + + + + Gets updates for the installed packages. + + + + + Finds all available updates. + + + + + Checks if the user is running as an admin. + + + + + Checks if the user is running as an admin. + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/spatialite.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/plugins/gdal_BAG.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.LiDAR/pdal_swig_cs.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.SimpleMap/DotSpatial.Plugins.SimpleMap.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/osr_csharp.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/DotSpatial.Plugins.ShapeEditor.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/lt/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Plugins/DotSpatial.Plugins.ShapeEditor/DotSpatial.Plugins.ShapeEditor.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/libmysql.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x86/ssleay32.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/zh-MO/DotSpatial.Modeling.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/EulaDeltares.rtf =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/EulaDeltares.rtf (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/EulaDeltares.rtf (revision 2866) @@ -0,0 +1,146 @@ +{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fswiss\fprq2\fcharset0 Tahoma;}{\f2\fswiss\fprq2\fcharset0 Helvetica LT Std;}{\f3\fnil\fcharset0 Calibri;}} +{\colortbl ;\red0\green139\blue191;\red0\green0\blue255;} +{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\li720\qc\cf1\lang2057\b\f0\fs24 SOFTWARE LICENSE AGREEMENT\par +\pard\li720\cf0\lang1033\b0\f1\fs20\par +\expndtw-2 If you require a printed version of this Software License Agreement, e.g. prior to accepting these terms and conditions, please open the PDF-file.\par +\pard\li720\qj\b\par +\pard\li720\cf1\lang2057\expndtw0\f0 Read this software license agreement carefully\par +\cf0\lang1033\expndtw-2\f1\par +\b0 This is a legal agreement between the prospective user, either an individual or an entity, (hereafter: \ldblquote Licensee\rdblquote ) and Deltares (hereafter \ldblquote Deltares\rdblquote ) to license the computer program subject to this contracting-procedure (hereafter \ldblquote Computer Program\rdblquote ).\par + \par +By clicking on the checkbox with \cf1\lang2057\expndtw0\b\f0\rdblquote I Agree\rdblquote\cf0\lang1033\expndtw-2\b0\f1 and pressing the \cf1\lang2057\expndtw0\b\f0\ldblquote Ok\rdblquote -\cf0\lang1033\expndtw-2\b0\f1 button:\par +\par +\pard\fi-360\li1440 1.\tab you expressly declare being authorized to act on behalf of Licensee for the purposes of accepting this software license agreement (hereafter \ldblquote License Agreement\rdblquote );\par +2.\tab Licensee expressly accepts this License Agreement and accepts to be legally bound by the terms and conditions contained therein. \par +\pard\li1440\par +\pard\li720 If you are not authorized to act on behalf of Licensee to agree upon this License Agreement or if Licensee does not agree with the License Agreement, please do not click the \cf1\lang2057\expndtw0\b\f0\ldblquote Ok\rdblquote\cf0\lang1033\expndtw-2\b0\f1 - button and exit this program by clicking the \cf1\lang2057\expndtw0\b\f0\ldblquote Cancel\rdblquote\cf0\lang1033\expndtw-2\b0\f1 - button.\expndtw0\par +\pard\li1080\b\par +\pard\li720\cf1\lang2057\f0 Agree as Follows with \b0 General terms of delivery for software licensing and software services by Stichting Deltares:\par +\b\par +\pard\fi-426\li1146\ri59\tx709\tx4820\fs16 1.\tab General\par +\cf0\b0\fs14 1.1\tab These general terms (hereinafter: Terms) form an integral part of all offers by Stichting Deltares (hereinafter: Deltares) to provide user rights to software products and related documentation (hereafter: the Program) and/or related services and apply to all agreements between Deltares and licensees to its software products and/or related services (hereafter: User).\par +1.2\tab Deltares software is fit for use by skilled persons only, who have experience in the relevant field and who have sufficient knowledge of the properties, possibilities, limitations and the purpose of the Program. The User should study the relevant manual prior to using the Program. \par +1.3\tab Deltares has the right to involve third parties in the execution of the agreement.\par +1.4\tab Additions, alterations or deviations of or to these Terms or to an agreement between the parties must be in written form signed by the parties.\par +1.5\tab If these Terms require a written notice, then this can also include notices in digital form, i.e. per fax or e-mail, unless the context indicates otherwise. The party that chooses to make use of an electronic medium has the burden of proof if the other party states that the electronically communicated statement was not received or not received correctly.\par +\par +\cf1\b\fs16 2.\tab Make Program available\par +\cf0\b0\fs14 2.1\tab Deltares makes a Program available to User by sending User the Program including available documentation, a data carrier, or by providing user with a written notice that the Program is available for downloading by User.\par +2.2\tab Deltares makes available to User the version of the Program that is the most recent at the moment of making the Program available.\f2\fs24 \f0\fs14\par +2.3\tab Exceeding a delivery period shall not entitle User to claim damages.\par +\par +\cf1\b\fs16 3.\tab Licences and intellectual property\par +\cf0\b0\fs14 3.1\tab Unless stipulated otherwise in the offer, Deltares grants User a non-exclusive, non-transferable right to use the Program, for an indefinite period of time and against payment of a one-time fee. \par +3.2\tab The right of use is limited to User\rquote s own use of the Program and to the number of agreed users as stipulated in the offer. User is not authorised to grant any sublicences to the Program to third parties, or in any other way to facilitate the use by third parties.\par +3.3\tab User does not have the right to modify the Program.\par +3.4\tab Except as allowed by applicable law, but in that case limited to the extent required by that law, User may not, and may not authorize any third party to reverse engineer, decompile or disassemble the Program in whole or in part nor create any derivative works from the Program.\par +3.5\tab Deltares is entitled to take technical measures to prevent unauthorized use of the Program. User shall not remove or have removed or circumvent such technical provisions or devices intended for the prevention of unauthorized use of the Program.\par +3.6\tab User acknowledges that the Program is confidential in nature and may contain trade secrets of Deltares. User will keep confidential all information from Deltares of which he may reasonably suspect that it is confidential information and will not disclose such information to third parties.\par +3.7\tab To the best of Deltares\rquote knowledge and belief, the Program does not infringe any third party copyright or any other intellectual property. Any responsibility or liability of Deltares for claims, costs, expenses and/or consequential losses or damages resulting from or arising out of any infringement of intellectual property rights is excluded.\par +3.8\tab In case of (i) an apparent risk or (ii) it is alleged or proven in legal proceedings that use of the Program infringes upon any intellectual property rights of third parties, Deltares has the right, in consultation with User, but at its sole discretion, to:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab take legal action for its own account; in this event, User is obliged to allow Deltares to join or intervene in the existing proceedings;\par +b.\tab reach a settlement for its own account;\par +c.\tab within the limits of the purpose of the Program, carry out repairs and/or alterations at its own expense until the alleged or proven infringement ceases to exist and replace free of charge the copies of files and/or documentation causing the infringement; or\par +d.\tab terminate the agreement and return the licence-fee to User without any other right to compensation for User.\par +\pard\fi-426\li1146\ri59\tx709\tx4820\tab If any of the situations as referred to above in (a) through (c) occur, Deltares has the right to impose certain (temporary) user-restrictions upon User so that the infringement, at least temporarily, does no longer exist, such without any rights to compensation for User.\par +\par +\cf1\b\fs16 4.\tab Maintenance and support\par +\cf0\b0\fs14\tab In the event maintenance and support is agreed upon, then the following applies:\par +4.1\tab Deltares at all times has the right, within the purpose of the Program, to modify later versions of Program with regard to its appearance, programming, arithmetical and/or functional properties at its sole discretion.\par +4.2\tab Maintenance and support of the Program consists of:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab replacing the version of the Program in use by User by the most recent version, or, in case this is made explicit in the proposal, offering a new version for a reduced price; \par +b.\tab subject to article 5.2, restoring any errors in the Program that prevent the normal operation of the Program; \par +c.\tab updating available documentation and providing such updated documentation to User; \par +d.\tab within reasonable limits, providing support to User\rquote s users concerning the operation of the Program.\par +\pard\fi-426\li1146\ri59\tx709\tx4820\tab Maintenance and support does not include (assistance in) actions aimed at resolving technical engineering problems.\par +4.3\tab Notwithstanding article 4.4, User is not obliged to follow the Deltares policy regarding new versions of the Program.\par +4.4\tab Deltares is not obliged to provide maintenance and support with regard to versions older than one (1) year if more recent versions are available.\par +4.5\tab Deltares is not obliged to provide maintenance and support concerning the Program if User uses the Program in combination with hardware and/or operating systems that do not comply with the system requirements as indicated by Deltares.\par +4.6\tab With each installation of a new version of the Program, User shall uninstall all files that are (to be) replaced. Consequently, User shall never have two (2) or more versions of the Program in use without the written consent of Deltares.\par +4.7\tab Deltares is under no obligation to notify User of modifications to the Program. Normally, modifications are apparent from the documentation (if available) supplied with a new version.\par +\par +\cf1\b\fs16 5.\tab Guarantees\par +\cf0\b0\fs14 5.1\tab For up to three (3) months after the date of delivery, Deltares guarantees the functioning of the Program in conformity with the accompanying documentation, if available.\par +5.2\tab If errors in the Program or the documentation that prevent the normal use of the Program become apparent during the term of guarantee or during the term of maintenance, and User has immediately informed Deltares thereof, Deltares shall, in consultation with User, but at its sole discretion:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab either at its own expense carry out repairs until the error is solved in such a way that normal use of the Program is possible and/or replace, free of charge, (part of) the Program and/or documentation containing the error with the repaired one; or\par +b.\tab terminate the agreement unilaterally and return the licence-fee to User, without any other rights to compensation for User.\par +\pard\fi-426\li1146\ri59\tx709\tx4820 5.3\tab The guarantee as stated in articles 5.1 and 5.2 is the only guarantee Deltares gives on the Program. Any other guarantee is explicitly excluded. Deltares specifically does not guarantee that under all circumstances correct results can be obtained with the Program and/or that the Program is fit for solving a technical engineering problem.\par +5.4\tab In the event that, before the end of the term of guarantee as stated in article 5.1, a revised version of the Program is provided on the basis of article 5.2 or 5.5, Deltares gives a guarantee on the new version until the latest of either the expiration of the original guarantee or one month after delivery of the revised version.\par +5.5\tab If, according to Deltares, it becomes apparent that use of the Program may cause damage, Deltares, in consultation with User, but at its sole discretion, has the right to:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab either, within the limits of the Program\rquote s purpose, at its own expense carry out repairs and/or alterations until the risk of damage ceases to exist and/or replace free of charge (parts of) the Program or documentation;\par +b.\tab impose on User temporary or permanent restrictions concerning the use of the Program, so that the risk of damage no longer exists; \par +c.\tab terminate the agreement and return the licence-fee to User without any other rights to compensation for User.\par +\pard\fi-426\li1146\ri59\tx709\tx4820 5.6\tab All guarantees are void if User (i) has altered the Program in any way, (ii) uses or has used the Program in combination with hardware and/or operating systems that do not comply with the system requirements as indicated by Deltares, or (iii) has failed to notify Deltares in writing of defects in the Program within one (1) week of their discovery or (iv) has not paid the amounts due.\par +\cf1\b\fs16\par +\par +6.\tab Liability\par +\cf0\b0\fs14 6.1\tab User is at all times solely responsible for the use of the Program and the interpretation and use of the results obtained with the Program, and for the consequences that arise from using these results. Deltares is not liable for damage or other expenses of any kind by User or third parties (partially or wholly) due to the use of the Program and the interpretation and the use of the results generated by the Program. This includes without limitation damage or expenses that are (partially or wholly) the result of or connected with:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab defects in the Program;\par +b. \tab the temporary or permanent inability to use the Program, partly or completely, as a result of or in connection with defects in the Program or alleged or legally proven infringements upon any rights of third parties as a consequence of the use of the Program by User.\par +\pard\fi-426\li1146\ri59\tx709\tx4820 6.2\tab User indemnifies Deltares against any third party claim for compensation regarding damages and expenses resulting from the use of the Program by User, the interpretation of the results and/or the use of these results.\par +6.3\tab Deltares\rquote liability arising out of default, contract, negligence, tort, breach of any statutory duty or otherwise shall be limited to direct damages, with a maximum of the total amount paid by the User excluding \lquote BTW\rquote (Dutch VAT) in the six (6) months prior to Deltares\rquote default. Direct damages in this context refers exclusively to:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab reasonable costs incurred by User to have the performance of Deltares comply with the terms of the agreement (this form of damage will not be compensated if the agreement is terminated by User); \par +b. \tab reasonable costs incurred to establish the cause and the amount of the damage, insofar this is related to direct damage as described within these Terms;\par +c.\tab reasonable costs incurred to prevent or reduce damages, insofar User shows that such costs have actually led to limitation of direct damages pursuant to these Terms.\par +\pard\fi-426\li1146\ri59\tx709\tx4820 6.4\tab Deltares shall not be liable for indirect damages, including, but not limited to, loss of profit and revenues.\par +6.5\tab Deltares\rquote liability as a result of default only arises after User has given Deltares notice of default. The notice of default shall be in writing, leaving Deltares a reasonable time to restore any shortcomings. \par +\par +\cf1\b\fs16 7.\tab Application Service Providing (ASP)\par +\cf0\b0\fs14 7.1\tab If Deltares and User agreed upon use of the functionality of the Program by User on the basis of ASP (= Application Service Provision) at a distance by means of a WAN-connection (WAN = Wide Area Network), Deltares will sent to User a username and password that provide access to the functionality of the Program.\par +7.2\tab In the case of an agreement concerning the ASP service, articles 2.1 en 3.1 do not apply. All other Terms apply equally, unless the nature of the stipulation implies otherwise.\par +7.3\tab Deltares will provide reasonable efforts to make functionality of the Program available for User during Deltares office hours (8:30 a.m. to 4:30 p.m. Central European Time-zone). User will immediately notify Deltares in case functionality is not available. If non availability exceeds, or threatens to exceed, the duration of a calendar week, parties can make further arrangements concerning the use of the Program.\par +7.4\tab Deltares will never be liable for User\rquote s problems regarding telecommunication facilities, for loss of or damage to data or for the consequences of the unavailability of the ASP service.\par +\par +\cf1\b\fs16 8.\tab Training \par +\cf0\b0\fs14\tab In case training is agreed upon, the following applies:\par +8.1\tab Cancellation of participation by User shall take place in writing. Cancellation by User until six weeks before the start of the training is free of charge. In case of cancellation between three and six weeks before the start of the training, User shall pay 50% of the agreed training fee, after three weeks before the start of the training User shall pay the full training fee. \par +8.2\tab Deltares reserves the right to cancel a course. In that case Deltares shall reimburse the paid training fee.\par +8.3\tab If Deltares makes available any material related to training to User, User obtains a non-exclusive and non-transferrable right for its own use of the material. User is not authorised to copy or modify the material.\par +\par +\cf1\b\fs16 9. \tab Invoices and payment\par +\cf0\b0\fs14 9.1 \tab User shall pay invoices within thirty (30) days after the invoice date. In the event User exceeds the payment period, User shall pay both the statutory commercial interest and collection costs without notice of default being required. In case of non-payment, Deltares may suspend maintenance and support and may require security for future deliveries or services. \par +9.2 \tab Any complaint raised by User regarding (the amount of) an invoice does not suspend the obligation to pay.\par +9.3 \tab Deltares may require User to pay in advance.\par +\par +\cf1\b\fs16 10.\tab Rates\par +\cf0\b0\fs14 10.1 \tab The fees and rates stated in the offers and agreements are in Euros, exclusive of BTW and other government levies, and also exclusive of dispatch costs, transport costs, travel costs, packaging costs, installation costs, communication costs, cost of agents and brokers and other costs to enable the use of the Program to User unless the offer explicitly states otherwise.\par +10.2 \tab For its right to use the Program, User pays Deltares a one-time fee.\par +10.3 \tab In case of ASP service a one-time connection fee is charged. Additionally, subscription fees and user-hours are charged periodically.\par +10.4\tab Deltares determines annually the annual price for maintenance and support on the basis of a percentage of the then current list-price of the Program.\par +10.5\tab Deltares determines the rates for training on an individual basis in relation to the extent of the training and the nature of the Program.\par +10.6 \tab Deltares can change the prices annually. Upon request User shall receive the then current price list.\par +\par +\cf1\b\fs16 11.\tab Transfer of rights\par +\cf0\b0\fs14 11.1\tab User is not allowed to transfer any agreement subject to this Terms, nor any of its rights and obligations arising therefrom, to a third party without prior written approval of Deltares.\par +\pard\li720\ri59\tx709\tx4820\par +\pard\fi-426\li1146\ri59\tx709\tx4820\cf1\b\fs16 12.\tab Term and termination\par +\cf0\b0\fs14 12.1\tab An agreement under this Terms is effective from the moment Deltares has received from User the returned offer duly signed for acceptance. If the returned and signed offer deviates from the original offer, the agreement becomes effective at the date of the written confirmation of Deltares of the deviating offer that User signed.\par +12.2\tab In the event maintenance and support is agreed upon, this is for a period of one (1) year. Each year, the maintenance and support agreement is tacitly extended for a period of one (1) year, unless one of the parties terminates the agreement by means of a registered letter to the other party at the latest one (1) month before the expiration date of the agreement. Termination for convenience before the end of the term of the maintenance and support agreement is not possible.\par +12.3\tab Aside from what is determined elsewhere in these Terms, a party has the right to terminate the agreement for cause per registered letter:\par +\pard\fi-220\li1380\ri59\tx660\tx4820 a.\tab if the other party defaults in its performance of obligations arising from the agreement and continues to do so after proper default notice, in which the other party is given a reasonable term to fulfil its obligations.\par +b.\tab without any prior notice or notice of default being required, in the event that the other party applies for a suspension of payment or is granted a suspension of payment; files for bankruptcy or is declared insolvent; is liquidated or ceases to exist for reasons other than a merger (in which case article 11.2 applies); a considerable extent of the other party\rquote s property or of the Program is seized, or if the other party is considered to be unable to fulfil the obligations arising from the agreement.\par +\pard\fi-426\li1146\ri59\tx709\tx4820 12.4\tab In the event of termination of the agreement in accordance with article 12.3, all invoiced but yet unpaid sums shall immediately be due and payable.\par +12.5\tab In the event of termination of the agreement User shall immediately (i) cease all use of the Program, (ii) delete (all copies of) the Program from the hardware and (iii) return (all copies of) the Program and the accompanying documentation to Deltares.\par +\par +\cf1\b\fs16 13.\tab Disputes and applicable law\par +\cf0\b0\fs14 13.1\tab Dutch law applies to all offers and agreements of which these Terms form part.\par +13.2\tab All disputes arising from offers, agreements or subsequent agreements will in first instance be brought before the competent court in The Hague, including the presiding judge in injunction proceedings (\lquote Kort Geding\rquote ).\par +\par +\tab\par +\tab\par +\tab\cf1\b Stichting Deltares\par +\tab Boussinesqweg 1\par +\tab P.O. Box 177\par +\tab 2600 MH Delft, the Netherlands\par +\pard\fi-426\li1146\ri59\tx990\tx4820\tab Tel: \tab +31 (0) 88 335 82 73\par +\tab Fax: \tab +31 (0) 88 355 85 82\par +\tab e-mail: \tab info@deltares.nl\par +\tab{\field{\*\fldinst{HYPERLINK "www.deltares.com"}}{\fldrslt{\ul\cf2 www.deltares.com}}}\f0\fs14\par +\pard\fi-426\li1146\ri59\tx709\tx4820\tab Chamber of Commerce no. 41146461\par +\pard\li720\cf0\b0\f1\fs20\par +\lang1033\par +\b\par +\b0\par +\pard\li720\sa200\sl276\slmult1\lang9\f3\fs22\par +} + \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Extensions.xml =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Extensions.xml (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Extensions.xml (revision 2866) @@ -0,0 +1,236 @@ + + + + DotSpatial.Extensions + + + + + Information about the assembly containing the extension + + + + + The type of the referenced class + + + + + Gets the reference assembly. + + + + + Gets the reference file. + + + + + Author of the plugin. + + This setter should be overriden by a derived class (if needed). + + + + Build date. + + + + + Short description of the plugin. + + This setter should be overriden by a derived class (if needed). + + + + Name of the plugin. + + This setter should be overriden by a derived class (if needed). + + + + Plugin version. + + This setter should be overriden by a derived class (if needed). + + + + Gets the name of the assembly and class. + + + + + The IExtension interface represents the shared content between all providers and plugins. This simply acts like + an on-off switch for enabling or disabling the extension. + + + + + Activates this extension + + + + + Deactivates this extension + + + + + Gets or sets a boolean that is true if the extension is active and running. + + + + + Gets a value indicating whether [deactivation is allowed]. + + + true if [deactivation is allowed]; otherwise, false. + + + + + Gets the author. + + + + + Gets the build date. + + + + + Gets the description. + + + + + Gets the name. + + + + + Gets the version. + + + + + Gets the Assembly Qualified FullName. + + + + + Specifies the activation priority order + + + + + Extension methods for IExtension + + + + + Tries to activate the extension. + + The extension. + + + + + Gets the file type description. + + + + + Gets the extension, which by convention will be lower case. + + + + + Opens the specified file name. + + Name of the file. + + + + + Used to specify a sample .dspx project that the user can download as a package and open. + + + + + Gets the absolute path to project file. This includes the directory, filename, and extension + + + + + Gets the name to display to the user when they are selecting a project. + + + + + Gets the description of the project + + + + + Saves the specified file. + + Name of the file. + The control graph. + + + + Extensions of this type are activiated before other extensions and may be used to help satisfy required imports. + + + + + Activates this extension + + + + + Specifies the activation priority order + + + + + An interface that allows the creation of a splash screen extension, which will be loaded before other extensions. + + + + + Show the Splash Screen. + + + + + + + A SplashScreenCommand enum value. + The argument to pass to the command. See SplashScreenCommand for details reguarding each individual command. + + + + Deactivates this instance. + + + + + The type of splash screen command + Supported operation is to change the display text. + + + + + Displays a string on the splash screen. + + + + + Searches "Application Extensions" for and activates "*SplashScreen*.dll" + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/Readme.txt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/Readme.txt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.WFSClient/Readme.txt (revision 2866) @@ -0,0 +1 @@ +WFS support. \ No newline at end of file Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/ro/DotSpatial.Projections.Forms.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/epsg.wkt =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/epsg.wkt (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/epsg.wkt (revision 2866) @@ -0,0 +1,2 @@ +include esri_extra.wkt +include cubewerx_extra.wkt Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/DotSpatial.Serialization.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Resources/DAM_icon.ico =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/Mono.Cecil.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_ECW_JP2ECW.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Plugins.ScriptRunner/nl/DotSpatial.Plugins.ScriptRunner.resources.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/ogr_csharp.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/spatialite.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/x64/plugins/gdal_BAG.dll =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/compdcs.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/compdcs.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/compdcs.csv (revision 2866) @@ -0,0 +1,33 @@ +"COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","CMPD_HORIZCRS_CODE","CMPD_VERTCRS_CODE","SHOW_CRS","DEPRECATED" +3901,"KKJ / Finland Uniform Coordinate System + N60 height",2393,5717,1,0 +3902,"ETRS89 / TM35FIN(N,E) + N60 height",5048,5717,1,0 +3903,"ETRS89 / TM35FIN(N,E) + N2000 height",5048,3900,1,0 +4097,"ETRS89 / DKTM1 + DVR90 height",4093,5799,1,0 +4098,"ETRS89 / DKTM2 + DVR90 height",4094,5799,1,0 +4099,"ETRS89 / DKTM3 + DVR90 height",4095,5799,1,0 +4100,"ETRS89 / DKTM4 + DVR90 height",4096,5799,1,0 +5318,"ETRS89 / Faroe TM + FVR09 height",5316,5317,1,0 +7400,"NTF (Paris) + NGF IGN69 height",4807,5720,1,0 +7401,"NTF (Paris) / France II + NGF Lallemand",27582,5719,1,1 +7402,"NTF (Paris) / France II + NGF IGN69",27582,5720,1,1 +7403,"NTF (Paris) / France III + NGF IGN69",27583,5720,1,1 +7404,"RT90 + RH70 height",4124,5718,1,0 +7405,"OSGB 1936 / British National Grid + ODN height",27700,5701,1,0 +7406,"NAD27 + NGVD29 height",4267,5702,1,0 +7407,"NAD27 / Texas North + NGVD29 height",32037,5702,1,0 +7408,"RD/NAP",4289,5709,1,1 +7409,"ETRS89 + EVRF2000 height",4258,5730,1,0 +7410,PSHD93,4134,5724,1,0 +7411,"NTF (Paris) / Lambert zone II + NGF Lallemand height",27572,5719,1,0 +7412,"NTF (Paris) / Lambert zone II + NGF IGN69",27572,5719,1,1 +7413,"NTF (Paris) / Lambert zone III + NGF IGN69",27573,5719,1,1 +7414,"Tokyo + JSLD height",4301,5723,1,0 +7415,"Amersfoort / RD New + NAP height",28992,5709,1,0 +7416,"ETRS89 / UTM zone 32N + DVR90 height",25832,5799,1,0 +7417,"ETRS89 / UTM zone 33N + DVR90 height",25833,5799,1,0 +7418,"ETRS89 / Kp2000 Jutland + DVR90 height",2196,5799,1,0 +7419,"ETRS89 / Kp2000 Zealand + DVR90 height",2197,5799,1,0 +7420,"ETRS89 / Kp2000 Bornholm + DVR90 height",2198,5799,1,0 +7421,"NTF (Paris) / Lambert zone II + NGF IGN69 height",27572,5720,1,0 +7422,"NTF (Paris) / Lambert zone III + NGF IGN69 height",27573,5720,1,0 +7423,"ETRS89 + EVRF2007 height",4258,5621,1,0 Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial.BrutileLayer/DotSpatial.Plugins.BruTileLayer.pdb =================================================================== diff -u Binary files differ Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57attributes.csv (revision 2866) @@ -0,0 +1,198 @@ +"Code","Attribute","Acronym","Attributetype","Class" +1,Agency responsible for production,AGENCY,A,F +2,Beacon shape,BCNSHP,E,F +3,Building shape,BUISHP,E,F +4,Buoy shape,BOYSHP,E,F +5,Buried depth,BURDEP,F,F +6,Call sign,CALSGN,S,F +7,Category of airport/airfield,CATAIR,L,F +8,Category of anchorage,CATACH,L,F +9,Category of bridge,CATBRG,L,F +10,Category of built-up area,CATBUA,E,F +11,Category of cable,CATCBL,E,F +12,Category of canal,CATCAN,E,F +13,Category of cardinal mark,CATCAM,E,F +14,Category of checkpoint,CATCHP,E,F +15,Category of coastline,CATCOA,E,F +16,Category of control point,CATCTR,E,F +17,Category of conveyor,CATCON,E,F +18,Category of coverage,CATCOV,E,F +19,Category of crane,CATCRN,E,F +20,Category of dam,CATDAM,E,F +21,Category of distance mark,CATDIS,E,F +22,Category of dock,CATDOC,E,F +23,Category of dumping ground,CATDPG,L,F +24,Category of fence/wall,CATFNC,E,F +25,Category of ferry,CATFRY,E,F +26,Category of fishing facility,CATFIF,E,F +27,Category of fog signal,CATFOG,E,F +28,Category of fortified structure,CATFOR,E,F +29,Category of gate,CATGAT,E,F +30,Category of harbour facility,CATHAF,L,F +31,Category of hulk,CATHLK,L,F +32,Category of ice,CATICE,E,F +33,Category of installation buoy,CATINB,E,F +34,Category of land region,CATLND,L,F +35,Category of landmark,CATLMK,L,F +36,Category of lateral mark,CATLAM,E,F +37,Category of light,CATLIT,L,F +38,Category of marine farm/culture,CATMFA,E,F +39,Category of military practice area,CATMPA,L,F +40,Category of mooring/warping facility,CATMOR,E,F +41,Category of navigation line,CATNAV,E,F +42,Category of obstruction,CATOBS,E,F +43,Category of offshore platform,CATOFP,L,F +44,Category of oil barrier,CATOLB,E,F +45,Category of pile,CATPLE,E,F +46,Category of pilot boarding place,CATPIL,E,F +47,Category of pipeline / pipe,CATPIP,L,F +48,Category of production area,CATPRA,E,F +49,Category of pylon,CATPYL,E,F +50,Category of quality of data,CATQUA,E,F +51,Category of radar station,CATRAS,E,F +52,Category of radar transponder beacon,CATRTB,E,F +53,Category of radio station,CATROS,L,F +54,Category of recommended track,CATTRK,E,F +55,Category of rescue station,CATRSC,L,F +56,Category of restricted area,CATREA,L,F +57,Category of road,CATROD,E,F +58,Category of runway,CATRUN,E,F +59,Category of sea area,CATSEA,E,F +60,Category of shoreline construction,CATSLC,E,F +61,"Category of signal station, traffic",CATSIT,L,F +62,"Category of signal station, warning",CATSIW,L,F +63,Category of silo/tank,CATSIL,E,F +64,Category of slope,CATSLO,E,F +65,Category of small craft facility,CATSCF,L,F +66,Category of special purpose mark,CATSPM,L,F +67,Category of Traffic Separation Scheme,CATTSS,E,F +68,Category of vegetation,CATVEG,L,F +69,Category of water turbulence,CATWAT,E,F +70,Category of weed/kelp,CATWED,E,F +71,Category of wreck,CATWRK,E,F +72,Category of zone of confidence data,CATZOC,E,F +73,Character spacing,$SPACE,E,$ +74,Character specification,$CHARS,A,$ +75,Colour,COLOUR,L,F +76,Colour pattern,COLPAT,L,F +77,Communication channel,COMCHA,A,F +78,Compass size,$CSIZE,F,$ +79,Compilation date,CPDATE,A,F +80,Compilation scale,CSCALE,I,F +81,Condition,CONDTN,E,F +82,"Conspicuous, Radar",CONRAD,E,F +83,"Conspicuous, visual",CONVIS,E,F +84,Current velocity,CURVEL,F,F +85,Date end,DATEND,A,F +86,Date start,DATSTA,A,F +87,Depth range value 1,DRVAL1,F,F +88,Depth range value 2,DRVAL2,F,F +89,Depth units,DUNITS,E,F +90,Elevation,ELEVAT,F,F +91,Estimated range of transmission,ESTRNG,F,F +92,Exhibition condition of light,EXCLIT,E,F +93,Exposition of sounding,EXPSOU,E,F +94,Function,FUNCTN,L,F +95,Height,HEIGHT,F,F +96,Height/length units,HUNITS,E,F +97,Horizontal accuracy,HORACC,F,F +98,Horizontal clearance,HORCLR,F,F +99,Horizontal length,HORLEN,F,F +100,Horizontal width,HORWID,F,F +101,Ice factor,ICEFAC,F,F +102,Information,INFORM,S,F +103,Jurisdiction,JRSDTN,E,F +104,Justification - horizontal,$JUSTH,E,$ +105,Justification - vertical,$JUSTV,E,$ +106,Lifting capacity,LIFCAP,F,F +107,Light characteristic,LITCHR,E,F +108,Light visibility,LITVIS,L,F +109,Marks navigational - System of,MARSYS,E,F +110,Multiplicity of lights,MLTYLT,I,F +111,Nationality,NATION,A,F +112,Nature of construction,NATCON,L,F +113,Nature of surface,NATSUR,L,F +114,Nature of surface - qualifying terms,NATQUA,L,F +115,Notice to Mariners date,NMDATE,A,F +116,Object name,OBJNAM,S,F +117,Orientation,ORIENT,F,F +118,Periodic date end,PEREND,A,F +119,Periodic date start,PERSTA,A,F +120,Pictorial representation,PICREP,S,F +121,Pilot district,PILDST,S,F +122,Producing country,PRCTRY,A,F +123,Product,PRODCT,L,F +124,Publication reference,PUBREF,S,F +125,Quality of sounding measurement,QUASOU,L,F +126,Radar wave length,RADWAL,A,F +127,Radius,RADIUS,F,F +128,Recording date,RECDAT,A,F +129,Recording indication,RECIND,A,F +130,Reference year for magnetic variation,RYRMGV,A,F +131,Restriction,RESTRN,L,F +132,Scale maximum,SCAMAX,I,F +133,Scale minimum,SCAMIN,I,F +134,Scale value one,SCVAL1,I,F +135,Scale value two,SCVAL2,I,F +136,Sector limit one,SECTR1,F,F +137,Sector limit two,SECTR2,F,F +138,Shift parameters,SHIPAM,A,F +139,Signal frequency,SIGFRQ,I,F +140,Signal generation,SIGGEN,E,F +141,Signal group,SIGGRP,A,F +142,Signal period,SIGPER,F,F +143,Signal sequence,SIGSEQ,A,F +144,Sounding accuracy,SOUACC,F,F +145,Sounding distance - maximum,SDISMX,I,F +146,Sounding distance - minimum,SDISMN,I,F +147,Source date,SORDAT,A,F +148,Source indication,SORIND,A,F +149,Status,STATUS,L,F +150,Survey authority,SURATH,S,F +151,Survey date - end,SUREND,A,F +152,Survey date - start,SURSTA,A,F +153,Survey type,SURTYP,L,F +154,Symbol scaling factor,$SCALE,F,$ +155,Symbolization code,$SCODE,A,$ +156,Technique of sounding measurement,TECSOU,L,F +157,Text string,$TXSTR,S,$ +158,Textual description,TXTDSC,S,F +159,Tidal stream - panel values,TS_TSP,A,F +160,"Tidal stream, current - time series values",TS_TSV,A,F +161,Tide - accuracy of water level,T_ACWL,E,F +162,Tide - high and low water values,T_HWLW,A,F +163,Tide - method of tidal prediction,T_MTOD,E,F +164,Tide - time and height differences,T_THDF,A,F +165,"Tide, current - time interval of values",T_TINT,I,F +166,Tide - time series values,T_TSVL,A,F +167,Tide - value of harmonic constituents,T_VAHC,A,F +168,Time end,TIMEND,A,F +169,Time start,TIMSTA,A,F +170,Tint,$TINTS,E,$ +171,Topmark/daymark shape,TOPSHP,E,F +172,Traffic flow,TRAFIC,E,F +173,Value of annual change in magnetic variation,VALACM,F,F +174,Value of depth contour,VALDCO,F,F +175,Value of local magnetic anomaly,VALLMA,F,F +176,Value of magnetic variation,VALMAG,F,F +177,Value of maximum range,VALMXR,F,F +178,Value of nominal range,VALNMR,F,F +179,Value of sounding,VALSOU,F,F +180,Vertical accuracy,VERACC,F,F +181,Vertical clearance,VERCLR,F,F +182,"Vertical clearance, closed",VERCCL,F,F +183,"Vertical clearance, open",VERCOP,F,F +184,"Vertical clearance, safe",VERCSA,F,F +185,Vertical datum,VERDAT,E,F +186,Vertical length,VERLEN,F,F +187,Water level effect,WATLEV,E,F +188,Category of Tidal stream,CAT_TS,E,F +189,Positional accuracy units,PUNITS,E,F +300,Information in national language,NINFOM,S,N +301,Object name in national language,NOBJNM,S,N +302,Pilot district in national language,NPLDST,S,N +303,Text string in national language,$NTXST,S,N +304,Textual description in national language,NTXTDS,S,N +400,Horizontal datum,HORDAT,E,S +401,Positional Accuracy,POSACC,F,S +402,Quality of position,QUAPOS,E,S Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_iw.csv =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_iw.csv (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/lib/DotSpatial/Windows Extensions/DotSpatial.Data.Rasters.GdalExtension/gdal/data/s57objectclasses_iw.csv (revision 2866) @@ -0,0 +1,217 @@ +"Code","ObjectClass","Acronym","Attribute_A","Attribute_B","Attribute_C","Class","Primitives" +1,Administration area (Named),ADMARE,JRSDTN;NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +2,Airport / airfield,AIRARE,CATAIR;CONDTN;CONVIS;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +3,Anchor berth,ACHBRT,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RADIUS;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +4,Anchorage area,ACHARE,CATACH;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +5,"Beacon, cardinal",BCNCAR,BCNSHP;CATCAM;COLOUR;COLPAT;CONDTN;CONVIS;CONRAD;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +6,"Beacon, isolated danger",BCNISD,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +7,"Beacon, lateral",BCNLAT,BCNSHP;CATLAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +8,"Beacon, safe water",BCNSAW,BCNSHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +9,"Beacon, special purpose/general",BCNSPP,BCNSHP;CATSPM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +10,Berth,BERTHS,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;SOUACC;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +11,Bridge,BRIDGE,CATBRG;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;VERACC;VERCCL;VERCLR;VERCOP;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +12,"Building, single",BUISGL,BUISHP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +13,Built-up area,BUAARE,CATBUA;CONDTN;CONRAD;CONVIS;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +14,"Buoy, cardinal",BOYCAR,BOYSHP;CATCAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +15,"Buoy, installation",BOYINB,BOYSHP;CATINB;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;PRODCT;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +16,"Buoy, isolated danger",BOYISD,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +17,"Buoy, lateral",BOYLAT,BOYSHP;CATLAM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +18,"Buoy, safe water",BOYSAW,BOYSHP;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +19,"Buoy, special purpose/general",BOYSPP,BOYSHP;CATSPM;COLOUR;COLPAT;CONRAD;DATEND;DATSTA;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +20,Cable area,CBLARE,CATCBL;DATEND;DATSTA;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +21,"Cable, overhead",CBLOHD,CATCBL;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ICEFAC;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;VERCSA;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +22,"Cable, submarine",CBLSUB,BURDEP;CATCBL;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;STATUS;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +23,Canal,CANALS,CATCAN;CONDTN;DATEND;DATSTA;HORACC;HORCLR;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +24,Canal bank,CANBNK,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +25,Cargo transshipment area,CTSARE,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +26,Causeway,CAUSWY,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +27,Caution area,CTNARE,DATEND;DATSTA;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +28,Checkpoint,CHKPNT,CATCHP;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +29,Coastguard station,CGUSTA,DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +30,Coastline,COALNE,CATCOA;COLOUR;CONRAD;CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +31,Contiguous zone,CONZNE,DATEND;DATSTA;NATION;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +32,Continental shelf area,COSARE,NATION;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +33,Control point,CTRPNT,CATCTR;DATEND;DATSTA;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +34,Conveyor,CONVYR,CATCON;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;LIFCAP;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +35,Crane,CRANES,CATCRN;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;HEIGHT;LIFCAP;NOBJNM;OBJNAM;ORIENT;RADIUS;STATUS;VERACC;VERCLR;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +36,Current - non - gravitational,CURENT,CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +37,Custom zone,CUSZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +38,Dam,DAMCON,CATDAM;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +39,Daymark,DAYMAR,CATSPM;COLOUR;COLPAT;DATEND;DATSTA;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +40,Deep water route centerline,DWRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +41,Deep water route part,DWRTPT,DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +42,Depth area,DEPARE,DRVAL1;DRVAL2;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +43,Depth contour,DEPCNT,VALDCO;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +44,Distance mark,DISMAR,CATDIS;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +45,Dock area,DOCARE,CATDOC;CONDTN;DATEND;DATSTA;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +46,Dredged area,DRGARE,DRVAL1;DRVAL2;NOBJNM;OBJNAM;QUASOU;RESTRN;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +47,Dry dock,DRYDOC,CONDTN;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;DRVAL1;QUASOU;SOUACC;VERDAT;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +48,Dumping ground,DMPGRD,CATDPG;NOBJNM;OBJNAM;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +49,Dyke,DYKCON,CONDTN;CONRAD;DATEND;DATSTA;HEIGHT;NATCON;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +50,Exclusive Economic Zone,EXEZNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +51,Fairway,FAIRWY,DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;ORIENT;QUASOU;RESTRN;SOUACC;STATUS;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +52,Fence/wall,FNCLNE,CATFNC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +53,Ferry route,FERYRT,CATFRY;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +54,Fishery zone,FSHZNE,NATION;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +55,Fishing facility,FSHFAC,CATFIF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +56,Fishing ground,FSHGRD,NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +57,Floating dock,FLODOC,COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;DRVAL1;HORACC;HORCLR;HORLEN;HORWID;LIFCAP;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +58,Fog signal,FOGSIG,CATFOG;DATEND;DATSTA;NOBJNM;OBJNAM;SIGFRQ;SIGGEN;SIGGRP;SIGPER;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +59,Fortified structure,FORSTC,CATFOR;CONDTN;CONRAD;CONVIS;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +60,Free port area,FRPARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +61,Gate,GATCON,CATGAT;CONDTN;DRVAL1;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +62,Gridiron,GRIDRN,HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +63,Harbour area (administrative),HRBARE,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +64,Harbour facility,HRBFAC,CATHAF;CONDTN;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +65,Hulk,HULKES,CATHLK;COLOUR;COLPAT;CONRAD;CONVIS;HORACC;HORLEN;HORWID;NOBJNM;OBJNAM;VERACC;VERLEN;CONDTN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +66,Ice area,ICEARE,CATICE;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +67,Incineration area,ICNARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +68,Inshore traffic zone,ISTZNE,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +69,Lake,LAKARE,ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +70,Lake shore,LAKSHR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +71,Land area,LNDARE,CONDTN;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +72,Land elevation,LNDELV,CONVIS;ELEVAT;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +73,Land region,LNDRGN,CATLND;NATQUA;NATSUR;NOBJNM;OBJNAM;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +74,Landmark,LNDMRK,CATLMK;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;FUNCTN;HEIGHT;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +75,Light,LIGHTS,CATLIT;COLOUR;DATEND;DATSTA;EXCLIT;HEIGHT;LITCHR;LITVIS;MARSYS;MLTYLT;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SECTR1;SECTR2;SIGGRP;SIGPER;SIGSEQ;STATUS;VERACC;VALNMR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +76,Light float,LITFLT,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;MARSYS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +77,Light vessel,LITVES,COLOUR;COLPAT;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +78,Local magnetic anomaly,LOCMAG,NOBJNM;OBJNAM;VALLMA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +79,Lock basin,LOKBSN,DATEND;DATSTA;HORACC;HORCLR;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +80,Log pond,LOGPON,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +81,Magnetic variation,MAGVAR,DATEND;DATSTA;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +82,Marine farm/culture,MARCUL,CATMFA;DATEND;DATSTA;EXPSOU;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;RESTRN;SOUACC;STATUS;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +83,Military practice area,MIPARE,CATMPA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +84,Mooring/warping facility,MORFAC,BOYSHP;CATMOR;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +85,Navigation line,NAVLNE,CATNAV;DATEND;DATSTA;ORIENT;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +86,Obstruction,OBSTRN,CATOBS;CONDTN;EXPSOU;HEIGHT;NATCON;NATQUA;NOBJNM;OBJNAM;PRODCT;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;NATSUR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +87,Offshore platform,OFSPLF,CATOFP;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +88,Offshore production area,OSPARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +89,Oil barrier,OILBAR,CATOLB;CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +90,Pile,PILPNT,CATPLE;COLOUR;COLPAT;CONDTN;CONVIS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +91,Pilot boarding place,PILBOP,CATPIL;COMCHA;DATEND;DATSTA;NOBJNM;NPLDST;OBJNAM;PEREND;PERSTA;PILDST;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +92,Pipeline area,PIPARE,CONDTN;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;RESTRN;STATUS;CATPIP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +93,"Pipeline, overhead",PIPOHD,CATPIP;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERCLR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +94,"Pipeline, submarine/on land",PIPSOL,BURDEP;CATPIP;CONDTN;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERLEN;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +95,Pontoon,PONTON,CONDTN;CONRAD;CONVIS;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +96,Precautionary area,PRCARE,DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +97,Production / storage area,PRDARE,CATPRA;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ELEVAT;HEIGHT;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +98,Pylon/bridge support,PYLONS,CATPYL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;NATCON;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +99,Radar line,RADLNE,NOBJNM;OBJNAM;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +100,Radar range,RADRNG,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +101,Radar reflector,RADRFL,HEIGHT;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +102,Radar station,RADSTA,CATRAS;DATEND;DATSTA;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;VALMXR;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +103,Radar transponder beacon,RTPBCN,CATRTB;DATEND;DATSTA;NOBJNM;OBJNAM;RADWAL;SECTR1;SECTR2;SIGGRP;SIGSEQ;STATUS;VALMXR;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +104,Radio calling-in point,RDOCAL,COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;STATUS;TRAFIC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +105,Radio station,RDOSTA,CALSGN;CATROS;COMCHA;DATEND;DATSTA;ESTRNG;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;SIGFRQ;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +106,Railway,RAILWY,CONDTN;HEIGHT;NOBJNM;OBJNAM;STATUS;VERACC;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +107,Rapids,RAPIDS,NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +108,Recommended route centerline,RCRTCL,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +109,Recommended track,RECTRC,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +110,Recommended Traffic Lane Part,RCTLPT,DATEND;DATSTA;ORIENT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +111,Rescue station,RSCSTA,CATRSC;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;SCAMAX;SCAMIN;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +112,Restricted area,RESARE,CATREA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +113,Retro-reflector,RETRFL,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +114,River,RIVERS,NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +115,River bank,RIVBNK,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +116,Road,ROADWY,CATROD;CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +117,Runway,RUNWAY,CATRUN;CONDTN;CONVIS;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +118,Sand waves,SNDWAV,VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +119,Sea area / named water area,SEAARE,CATSEA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +120,Sea-plane landing area,SPLARE,NOBJNM;OBJNAM;PEREND;PERSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;VALDCO;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +121,Seabed area,SBDARE,COLOUR;NATQUA;NATSUR;WATLEV;OBJNAM;NOBJNM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +122,Shoreline Construction,SLCONS,CATSLC;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HEIGHT;HORACC;HORCLR;HORLEN;HORWID;NATCON;NOBJNM;OBJNAM;STATUS;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +123,"Signal station, traffic",SISTAT,CATSIT;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +124,"Signal station, warning",SISTAW,CATSIW;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +125,Silo / tank,SILTNK,BUISHP;CATSIL;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;ELEVAT;HEIGHT;NATCON;NOBJNM;OBJNAM;PRODCT;STATUS;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +126,Slope topline,SLOTOP,CATSLO;COLOUR;CONRAD;CONVIS;ELEVAT;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;VERACC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +127,Sloping ground,SLOGRD,CATSLO;COLOUR;CONRAD;CONVIS;NATCON;NATQUA;NATSUR;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +128,Small craft facility,SMCFAC,CATSCF;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +129,Sounding,SOUNDG,EXPSOU;NOBJNM;OBJNAM;QUASOU;SOUACC;TECSOU;VERDAT;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +130,Spring,SPRING,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +131,Square,SQUARE,CONDTN;NATCON;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +132,Straight territorial sea baseline,STSLNE,NATION;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +133,Submarine transit lane,SUBTLN,NOBJNM;OBJNAM;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +134,Swept Area,SWPARE,DRVAL1;QUASOU;SOUACC;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +135,Territorial sea area,TESARE,NATION;RESTRN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +136,Tidal stream - harmonic prediction,TS_PRH,NOBJNM;OBJNAM;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +137,Tidal stream - non-harmonic prediction,TS_PNH,NOBJNM;OBJNAM;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +138,Tidal stream panel data,TS_PAD,NOBJNM;OBJNAM;TS_TSP;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +139,Tidal stream - time series,TS_TIS,NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;T_TINT;TS_TSV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +140,Tide - harmonic prediction,T_HMON,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_VAHC;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +141,Tide - non-harmonic prediction,T_NHMN,NOBJNM;OBJNAM;T_ACWL;T_MTOD;T_THDF;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +142,Tidal stream - time series,T_TIMS,NOBJNM;OBJNAM;T_HWLW;T_TINT;T_TSVL;TIMEND;TIMSTA;STATUS;T_ACWL;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +143,Tideway,TIDEWY,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line;Area; +144,Top mark,TOPMAR,COLOUR;COLPAT;HEIGHT;MARSYS;STATUS;TOPSHP;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +145,Traffic Separation Line,TSELNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +146,Traffic Separation Scheme Boundary,TSSBND,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Line; +147,Traffic Separation Scheme Crossing,TSSCRS,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +148,Traffic Separation Scheme Lane part,TSSLPT,CATTSS;DATEND;DATSTA;ORIENT;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +149,Traffic Separation Scheme Roundabout,TSSRON,CATTSS;DATEND;DATSTA;RESTRN;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +150,Traffic Separation Zone,TSEZNE,CATTSS;DATEND;DATSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +151,Tunnel,TUNNEL,BURDEP;CONDTN;HORACC;HORCLR;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +152,Two-way route part,TWRTPT,CATTRK;DATEND;DATSTA;DRVAL1;DRVAL2;ORIENT;QUASOU;SOUACC;STATUS;TECSOU;TRAFIC;VERDAT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +153,Underwater rock / awash rock,UWTROC,EXPSOU;NATSUR;NATQUA;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERDAT;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point; +154,Unsurveyed area,UNSARE,,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Area; +155,Vegetation,VEGATN,CATVEG;CONVIS;ELEVAT;HEIGHT;NOBJNM;OBJNAM;VERACC;VERDAT;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +156,Water turbulence,WATTUR,CATWAT;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line;Area; +157,Waterfall,WATFAL,CONVIS;NOBJNM;OBJNAM;VERACC;VERLEN;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Line; +158,Weed/Kelp,WEDKLP,CATWED;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +159,Wreck,WRECKS,CATWRK;CONRAD;CONVIS;EXPSOU;HEIGHT;NOBJNM;OBJNAM;QUASOU;SOUACC;STATUS;TECSOU;VALSOU;VERACC;VERDAT;VERLEN;WATLEV;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +160,Tidal stream - flood/ebb,TS_FEB,CAT_TS;CURVEL;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,G,Point;Area; +300,Accuracy of data,M_ACCY,HORACC;POSACC;SOUACC;VERACC;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +301,Compilation scale of data,M_CSCL,CSCALE;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +302,Coverage,M_COVR,CATCOV;,INFORM;NINFOM;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +303,Horizontal datum of data,M_HDAT,HORDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +304,Horizontal datum shift parameters,M_HOPA,HORDAT;SHIPAM;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +305,Nautical publication information,M_NPUB,,INFORM;NINFOM;NTXTDS;PICREP;PUBREF;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +306,Navigational system of marks,M_NSYS,MARSYS;ORIENT;,INFORM;NINFOM;NTXTDS;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +307,Production information,M_PROD,AGENCY;CPDATE;NATION;NMDATE;PRCTRY;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +308,Quality of data,M_QUAL,CATQUA;CATZOC;DRVAL1;DRVAL2;POSACC;SOUACC;SUREND;SURSTA;TECSOU;VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +309,Sounding datum,M_SDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +310,Survey reliability,M_SREL,QUAPOS;QUASOU;SCVAL1;SCVAL2;SDISMN;SDISMX;SURATH;SUREND;SURSTA;SURTYP;TECSOU;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +311,Units of measurement of data,M_UNIT,DUNITS;HUNITS;PUNITS;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +312,Vertical datum of data,M_VDAT,VERDAT;,INFORM;NINFOM;NTXTDS;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,M,Area; +400,Aggregation,C_AGGR,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +401,Association,C_ASSO,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +402,Stacked on/stacked under,C_STAC,,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,C, +500,Cartographic area,$AREAS,COLOUR;ORIENT;$SCODE;$TINTS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +501,Cartographic line,$LINES,$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +502,Cartographic symbol,$CSYMB,ORIENT;$SCALE;$SCODE;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +503,Compass,$COMPS,$CSIZE;RYRMGV;VALACM;VALMAG;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +504,Text,$TEXTS,$CHARS;COLOUR;$JUSTH;$JUSTV;$NTXST;$SPACE;$TXSTR;,INFORM;NINFOM;NTXTDS;PICREP;SCAMAX;SCAMIN;TXTDSC;,RECDAT;RECIND;SORDAT;SORIND;,$, +17000,Anchor berth,achbrt,catach;clsdng;comctn;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;RADIUS;restrn;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Area; +17001,Anchorage area,achare,catach;clsdng;comctn;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;restrn;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Area; +17002,Canal bank,canbnk,catbnk;CONRAD;DATEND;DATSTA;NATSUR;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Line; +17003,Depth area,depare,DRVAL1;DRVAL2;eleva1;eleva2;wtwdis;QUASOU;SOUACC;verdat;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Line;Area; +17004,Distance mark,dismar,catdis;DATEND;DATSTA;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17005,Restricted area,resare,CATREA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;restrn;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17006,River bank,rivbnk,catbnk;CONRAD;NATSUR;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Line; +17007,Signal station traffic,sistat,catsit;COMCHA;DATEND;DATSTA;dirimp;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17008,Signal station warning,sistaw,catsiw;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17009,Top Mark,topmar,COLOUR;COLPAT;HEIGHT;marsys;STATUS;TOPSHP;VERACC;verdat;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17010,Berth berths,berths,catbrt;clsdng;comctn;DATEND;DATSTA;DRVAL1;NOBJNM;OBJNAM;PEREND;PERSTA;QUASOU;SOUACC;STATUS;trshgd;verdat;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Line;Area; +17011,"Bridge","bridge",catbrg;comctn;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;HORACC;HORCLR;NATCON;NOBJNM;OBJNAM;TIMEND;TIMSTA;VERACC;VERCCL;VERCLR;VERCOP;verdat;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Line;Area; +17012,Cable overhead,cblohd,CATCBL;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;ICEFAC;NOBJNM;OBJNAM;STATUS;VERACC;VERCLR;VERCSA;verdat;,INFORM;NINFOM;NTXTDS;SCAMIN;TXTDSC;updmsg;RECDAT;RECIND;,SORDAT;SORIND;,G,Line; +17013,Ferry route,feryrt,catfry;comctn;DATEND;DATSTA;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;TIMEND;TIMSTA;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Line;Area; +17014,Harbour Area,hrbare,cathbr;comctn;NOBJNM;OBJNAM;STATUS;unlocd;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17015,Harbour Facilities,hrbfac,cathaf;CONDTN;DATEND;DATSTA;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;,INFORM;NINFOM;NTXTDS;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Area; +17016,Lock Basin,lokbsn,HORACC;horcll;horclw;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;,INFORM;NINFOM;NTXTDS;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17017,Radio calling-in point,rdocal,catcom;comctn;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;ORIENT;PEREND;PERSTA;STATUS;TRAFIC;dirimp;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Line; +17018,Navigational system of marks,m_nsys,marsys;ORIENT;,INFORM;NINFOM;NTXTDS;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17050,Notice mark,notmrk,catnmk;fnctnm;dirimp;disipd;disipu;disbk1;disbk2;addmrk;marsys;ORIENT;CONDTN;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17051,Waterway axis,wtwaxs,catccl;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Line; +17052,Waterway profile,wtwprf,wtwdis;HEIGHT;verdat;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Line; +17053,Bridge area,brgare,comctn;NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17054,Bunker station,bunsta,bunves;catbun;comctn;NOBJNM;OBJNAM;TIMEND;TIMSTA;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17055,Communication Area,comare,catcom;COMCHA;DATEND;DATSTA;NOBJNM;OBJNAM;STATUS;TIMEND;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17056,Harbour Basin,hrbbsn,HORACC;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17057,Lock area,lokare,comctn;NOBJNM;OBJNAM;STATUS;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17058,Lock basin part,lkbspt,HORACC;horcll;horclw;HORLEN;HORWID;NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17059,Port Area,prtare,comctn;NOBJNM;OBJNAM;STATUS;unlocd;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Area; +17060,Beacon water-way,bcnwtw,BCNSHP;catwwm;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;dirimp;ELEVAT;HEIGHT;marsys;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERACC;verdat;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17061,Buoy water-way,boywtw,BOYSHP;catwwm;COLOUR;COLPAT;CONDTN;CONRAD;CONVIS;DATEND;DATSTA;marsys;NATCON;NOBJNM;OBJNAM;PEREND;PERSTA;STATUS;VERLEN;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17062,Refuse dump,refdmp,catrfd;comctn;NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17063,Route planning point,rtplpt,NOBJNM;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point; +17064,Terminal,termnl,cattml;comctn;NOBJNM;OBJNAM;STATUS;TIMEND;TIMSTA;trshgd;unlocd;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Area; +17065,Turning basin,trnbsn,HORCLR;NOBJNM;STATUS;OBJNAM;,INFORM;NINFOM;NTXTDS;PICREP;SCAMIN;TXTDSC;updmsg;,SORDAT;SORIND;,G,Point;Area; Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Associates.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Associates.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Associates.wxi (revision 2866) @@ -0,0 +1,8 @@ + + + + + + + + Index: DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Features.wxi =================================================================== diff -u --- DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Features.wxi (revision 0) +++ DamClients/DamUI/tags/19.1 EndOfDevelopment/setup/Features.wxi (revision 2866) @@ -0,0 +1,10 @@ + + + + + + + + + +