PRO lambert1,lat,lon,x,y,orglat,orglon,iopt ; ; COMPUTES THE TRANSFORMATION FROM LAT/LON TO X/Y FOR THE ; LAMBERT AZIMUTHAL EQUAL-AREA PROJECTION ; ; SEE "MAP PROJECTIONS USED BY THE U.S. GEOLOGICAL SURVEY" ; GEOLOGICAL SURVEY BULLETIN 1532, PGS 157-173 ; ; FOR THIS ROUTINE, A SPHERICAL EARTH IS ASSUMED FOR THE PROJECTION. ; THE ERROR WILL BE SMALL FOR SMALL-SCALE MAPS. ; FOR IOPT=1 A FIXED, NOMINAL EARTH RADIUS IS USED. ; FOR IOPT=2 THE LOCAL RADIUS OF THE EARTH IS USED BASED ON ; THE 1972 WGS ELLIPSOID MODEL (BULLETIN PG 15). ; ; ; INPUTS: ; LAT (R): LATITUDE +90 TO -90 DEG WITH NORTH POSITIVE ; LON (R): LONGITUDE 0 TO +360 DEG WITH EAST POSITIVE ; OR -180 TO +180 WITH EAST MORE POSITIVE ; ORGLAT (R): ORIGIN PARALLEL +90 TO -90 DEG WITH NORTH POSITIVE ; ORGLON (R): CENTRAL MERIDIAN (LONGITUDE) 0 TO +360 DEG ; OR -180 TO +180 WITH EAST MORE POSITIVE ; IOPT (I): EARTH RADIUS OPTION ; ; OUTPUTS: ; X,Y (R): RECTANGULAR COORDINATES IN KM ; RADEARTH=6378.135D0 ; EQUITORIAL EARTH RADIUS F=298.26D0 ; 1/F WGS 72 MODEL VALUES DTR=3.141592654D0/180.0D0 LON1=(LON+720.0) MOD 360.0 ORGLON1=(ORGLON+720.0) MOD 360.0 ; ; COMPUTE LOCAL RADIUS OF THE EARTH AT CENTER OF IMAGE ; ERADEARTH=6378.0D0 ; USE FIXED NOMINAL VALUE IF IOPT EQ 2 THEN BEGIN ; LOCAL RADIUS ERA=(1.-1./F) ERADEARTH=RADEARTH*ERA/SQRT(ERA*ERA*COS(ORGLAT*DTR)^2+ $ SIN(ORGLAT*DTR)^2) ENDIF ; DENOM=1.0+SIN(ORGLAT*DTR)*SIN(LAT*DTR)+ $ COS(ORGLAT*DTR)*COS(LAT*DTR)*COS(DTR*(LON1-ORGLON1)) IF DENOM GT 0.0 THEN $ AK=SQRT(2.0/DENOM) $ ELSE BEGIN PRINT,'*** DIVISION ERROR IN LAMBERT1 ROUTINE ***' AK=1.0 ENDELSE X=AK*COS(LAT*DTR)*SIN(DTR*(LON1-ORGLON1)) Y=AK*(COS(DTR*ORGLAT)*SIN(DTR*LAT)- $ SIN(DTR*ORGLAT)*COS(DTR*LAT)*COS(DTR*(LON1-ORGLON1))) X=X*ERADEARTH Y=Y*ERADEARTH END