| 6903 | /************************************************************************/ |
| 6904 | |
| 6905 | OGRErr OGRSpatialReference::SetEquirectangular2(double dfCenterLat, |
| 6906 | double dfCenterLong, |
| 6907 | double dfStdParallel1, |
| 6908 | double dfFalseEasting, |
| 6909 | double dfFalseNorthing) |
| 6910 | |
| 6911 | { |
| 6912 | TAKE_OPTIONAL_LOCK(); |
| 6913 | |
| 6914 | if (dfCenterLat == 0.0) |
| 6915 | { |
| 6916 | return d->replaceConversionAndUnref( |
| 6917 | proj_create_conversion_equidistant_cylindrical( |
| 6918 | d->getPROJContext(), dfStdParallel1, dfCenterLong, |
| 6919 | dfFalseEasting, dfFalseNorthing, nullptr, 0.0, nullptr, 0.0)); |
| 6920 | } |
| 6921 | |
| 6922 | // Non-standard extension with non-zero latitude of origin |
| 6923 | SetProjection(SRS_PT_EQUIRECTANGULAR); |
| 6924 | SetNormProjParm(SRS_PP_LATITUDE_OF_ORIGIN, dfCenterLat); |
| 6925 | SetNormProjParm(SRS_PP_CENTRAL_MERIDIAN, dfCenterLong); |
| 6926 | SetNormProjParm(SRS_PP_STANDARD_PARALLEL_1, dfStdParallel1); |
| 6927 | SetNormProjParm(SRS_PP_FALSE_EASTING, dfFalseEasting); |
| 6928 | SetNormProjParm(SRS_PP_FALSE_NORTHING, dfFalseNorthing); |
| 6929 | |
| 6930 | return OGRERR_NONE; |
| 6931 | } |
| 6932 | |
| 6933 | /************************************************************************/ |
| 6934 | /* OSRSetEquirectangular2() */ |