public StaticProjectionStepCompiler(INameNormalizedComparer coordinateOperationNameComparer = null)
 {
     _coordinateOperationNameComparer = coordinateOperationNameComparer ?? CoordinateOperationNameNormalizedComparer.Default;
     _transformationCreatorLookup = new Dictionary<string, Func<ProjectionCompilationParams, ITransformation<GeographicCoordinate, Point2>>>(_coordinateOperationNameComparer) {
         {CoordinateOperationStandardNames.AlbersEqualAreaConic,CreateAlbersEqualArea},
         {CoordinateOperationStandardNames.AzimuthalEquidistant,null},
         {CoordinateOperationStandardNames.CassiniSoldner, CreateCassiniSoldner},
         {CoordinateOperationStandardNames.CylindricalEqualArea,null},
         {CoordinateOperationStandardNames.Eckert4,null},
         {CoordinateOperationStandardNames.Eckert6,null},
         {CoordinateOperationStandardNames.EquidistantConic,null},
         {CoordinateOperationStandardNames.EquidistantCylindrical,CreateEquidistantCylindrical},
         {CoordinateOperationStandardNames.EquidistantCylindricalSpherical,CreateEquidistantCylindrical},
         {CoordinateOperationStandardNames.Equirectangular,null},
         {CoordinateOperationStandardNames.GallStereographic,null},
         {CoordinateOperationStandardNames.Geos,null},
         {CoordinateOperationStandardNames.Gnomonic,null},
         {CoordinateOperationStandardNames.Guam,CreateGuam},
         {CoordinateOperationStandardNames.HotineObliqueMercator,CreateHotineObliqueMercator},
         {CoordinateOperationStandardNames.HyperbolicCassiniSoldner,CreateHyperbolicCassiniSoldner},
         {CoordinateOperationStandardNames.Krovak,CreateKrovak},
         {CoordinateOperationStandardNames.KrovakNorth,CreateKrovak},
         {CoordinateOperationStandardNames.KrovakModifiedNorth,CreateKrovak},
         {CoordinateOperationStandardNames.KrovakModified,CreateKrovak},
         {CoordinateOperationStandardNames.KrovakObliqueConicConformal,null},
         {CoordinateOperationStandardNames.LabordeObliqueMercator,CreateLabordeObliqueMercator},
         {CoordinateOperationStandardNames.LambertAzimuthalEqualArea,CreateLambertAzimuthalEqualArea},
         {CoordinateOperationStandardNames.LambertAzimuthalEqualAreaSpherical,CreateLambertAzimuthalEqualArea},
         {CoordinateOperationStandardNames.LambertConicConformal1Sp,CreateLambertConicConformal},
         {CoordinateOperationStandardNames.LambertConicConformal2Sp,CreateLambertConicConformal},
         {CoordinateOperationStandardNames.LambertConicConformal2SpBelgium,CreateLambertConicConformal},
         {CoordinateOperationStandardNames.LambertConicNearConformal,CreateLambertConicNearConformal},
         {CoordinateOperationStandardNames.LambertCylindricalEqualAreaSpherical, CreateLambertCylindricalEqualAreaSpherical},
         {CoordinateOperationStandardNames.Mercator1Sp,CreateMercator},
         {CoordinateOperationStandardNames.Mercator2Sp,CreateMercator},
         {CoordinateOperationStandardNames.MillerCylindrical,null},
         {CoordinateOperationStandardNames.ModifiedAzimuthalEquidistant,CreateModifiedAzimuthalEquidistant},
         {CoordinateOperationStandardNames.Mollweide,null},
         {CoordinateOperationStandardNames.NewZealandMapGrid,null},
         {CoordinateOperationStandardNames.ObliqueMercator,null},
         {CoordinateOperationStandardNames.ObliqueStereographic,CreateObliqueStereographic},
         {CoordinateOperationStandardNames.Orthographic,null},
         {CoordinateOperationStandardNames.PolarStereographic,CreatePolarStereographic},
         {CoordinateOperationStandardNames.Polyconic,null},
         {CoordinateOperationStandardNames.PopularVisualisationPseudoMercator, CreatePopularVisualisationPseudoMercator},
         {CoordinateOperationStandardNames.Robinson,null},
         {CoordinateOperationStandardNames.RosenmundObliqueMercator,null},
         {CoordinateOperationStandardNames.Sinusoidal,null},
         {CoordinateOperationStandardNames.SwissObliqueCylindrical,null},
         {CoordinateOperationStandardNames.Stereographic,null},
         {CoordinateOperationStandardNames.TransverseMercator,CreateTransverseMercator},
         {CoordinateOperationStandardNames.TransverseMercatorZonedGridSystem,CreateTransverseMercator},
         {CoordinateOperationStandardNames.TransverseMercatorSouthOriented,CreateTransverseMercatorSouth},
         {CoordinateOperationStandardNames.TunisiaMiningGrid,null},
         {CoordinateOperationStandardNames.VanDerGrinten,null}
     };
 }
 public StaticTransformationStepCompiler(INameNormalizedComparer coordinateOperationNameComparer = null)
 {
     _coordinateOperationNameComparer = coordinateOperationNameComparer ?? CoordinateOperationNameNormalizedComparer.Default;
 }