aboutsummaryrefslogtreecommitdiff
path: root/src/projections/bacon.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/projections/bacon.cpp')
-rw-r--r--src/projections/bacon.cpp29
1 files changed, 15 insertions, 14 deletions
diff --git a/src/projections/bacon.cpp b/src/projections/bacon.cpp
index 5db2d854..3efd4dbe 100644
--- a/src/projections/bacon.cpp
+++ b/src/projections/bacon.cpp
@@ -23,20 +23,21 @@ PROJ_HEAD(bacon, "Bacon Globular") "\n\tMisc Sph, no inv";
static PJ_XY bacon_s_forward (PJ_LP lp, PJ *P) { /* Spheroidal, forward */
PJ_XY xy = {0.0,0.0};
struct pj_opaque *Q = static_cast<struct pj_opaque*>(P->opaque);
- double ax, f;
-
- xy.y = Q->bacn ? M_HALFPI * sin(lp.phi) : lp.phi;
- if ((ax = fabs(lp.lam)) >= EPS) {
- if (Q->ortl && ax >= M_HALFPI)
- xy.x = sqrt(HLFPI2 - lp.phi * lp.phi + EPS) + ax - M_HALFPI;
- else {
- f = 0.5 * (HLFPI2 / ax + ax);
- xy.x = ax - f + sqrt(f * f - xy.y * xy.y);
- }
- if (lp.lam < 0.) xy.x = - xy.x;
- } else
- xy.x = 0.;
- return (xy);
+ double ax, f;
+
+ xy.y = Q->bacn ? M_HALFPI * sin(lp.phi) : lp.phi;
+ ax = fabs(lp.lam);
+ if (ax >= EPS) {
+ if (Q->ortl && ax >= M_HALFPI)
+ xy.x = sqrt(HLFPI2 - lp.phi * lp.phi + EPS) + ax - M_HALFPI;
+ else {
+ f = 0.5 * (HLFPI2 / ax + ax);
+ xy.x = ax - f + sqrt(f * f - xy.y * xy.y);
+ }
+ if (lp.lam < 0.) xy.x = - xy.x;
+ } else
+ xy.x = 0.;
+ return (xy);
}