libsim  Versione 7.1.9

◆ geo_proj_get_val()

subroutine geo_proj_get_val ( type(geo_proj), intent(in)  this,
character(len=*), optional  proj_type,
double precision, optional  lov,
integer, optional  zone,
double precision, optional  xoff,
double precision, optional  yoff,
double precision, optional  longitude_south_pole,
double precision, optional  latitude_south_pole,
double precision, optional  angle_rotation,
double precision, optional  longitude_stretch_pole,
double precision, optional  latitude_stretch_pole,
double precision, optional  stretch_factor,
double precision, optional  latin1,
double precision, optional  latin2,
double precision, optional  lad,
integer, optional  projection_center_flag,
double precision, optional  ellips_smaj_axis,
double precision, optional  ellips_flatt,
integer, optional  ellips_type,
integer, optional  unit 
)
Parametri
[in]thisObject to be queried
proj_typeType of projection
lovLine of view, also known as reference longitude or orientation of the grid (polar projections)
zoneEarth zone (mainly for UTM), sets lov to the correct zone central meridian
xoffOffset on x axis (false easting)
yoffOffset on y axis (false northing)
longitude_south_poleLongitude of the southern pole of projection
latitude_south_poleLatitude of the southern pole of projection
angle_rotationAngle of rotation of projection
longitude_stretch_poleLongitude of the pole of stretching
latitude_stretch_poleLatitude of the pole of stretching
stretch_factorStretching factor
latin1First standard latitude from main pole (Lambert)
latin2Second standard latitude from main pole (Lambert)
ladLatitude at which dx and dy (in m) are specified (Lambert, grib2 only)
projection_center_flagFlag indicating which pole is represented
ellips_smaj_axisEarth semi-major axis
ellips_flattEarth flattening
ellips_typenumber in the interval [1,nellips] indicating a predefined ellipsoid, alternative to the previous arguments
unitunit of measure of the projected coordinate, one of the constants geo_proj_unit_*

Definizione alla linea 603 del file geo_proj_class.F90.

609 ENDIF
610 
611 IF (c_e(this%lov)) THEN
612  print*,"Central Meridian",this%lov
613 ENDIF
614 
615 IF (this%proj_type == 'rotated_ll' .OR. this%proj_type == 'stretched_rotated_ll') THEN
616  print*,"Rotated projection:"
617  print*,"lon of south pole",this%rotated%longitude_south_pole
618  print*,"lat of south pole",this%rotated%latitude_south_pole
619  print*,"angle of rotation",this%rotated%angle_rotation
620 ENDIF
621 
622 IF (this%proj_type == 'stretched_ll' .OR. this%proj_type == 'stretched_rotated_ll') THEN
623  print*,"Stretched projection:"
624  print*,"lon of stretch pole",this%stretched%longitude_stretch_pole
625  print*,"lat of stretch pole",this%stretched%latitude_stretch_pole
626  print*,"stretching factor",this%stretched%stretch_factor
627 ENDIF
628 
629 IF (this%proj_type == 'lambert' .OR. this%proj_type == 'polar_stereographic') THEN
630  print*,"Polar projection:"
631  IF (c_e(this%polar%latin1) .OR. c_e(this%polar%latin2)) THEN
632  print*,"lat of intersections",this%polar%latin1,this%polar%latin2
633  ENDIF
634  IF (c_e(this%polar%lad)) THEN
635  print*,"isometric latitude",this%polar%lad
636  ENDIF
637  IF (iand(this%polar%projection_center_flag, 128) == 0) THEN
638  print*,"North Pole"
639  ELSE
640  print*,"South Pole"
641  ENDIF
642 ENDIF
643 
644 IF (this%proj_type == 'mercator') THEN
645  IF (c_e(this%polar%lad)) THEN
646  print*,"isometric latitude",this%polar%lad
647  ENDIF
648 ENDIF
649 
650 IF (this%ellips%f == 0.0d0) THEN
651  print*,"Spherical Earth:"
652  print*,"Radius (m)",this%ellips%a
653 ELSE
654  print*,"Ellipsoid:"
655  print*,"Flattening",this%ellips%f
656  print*,"Reverse of flattening",1.0d0/this%ellips%f
657  print*,"Semi-major axis (m)",this%ellips%a
658 ENDIF
659 
660 
661 END SUBROUTINE geo_proj_display
662 
663 
666 ELEMENTAL SUBROUTINE geo_proj_proj(this, lon, lat, x, y)
667 TYPE(geo_proj),INTENT(in) :: this
669 DOUBLE PRECISION, INTENT(in) :: lon, lat
671 DOUBLE PRECISION, INTENT(out) :: x, y
672 
673 SELECT CASE(this%proj_type)
674 
675 CASE("regular_ll")
676  CALL proj_regular_ll(lon, lat, x, y)
677 
678 CASE("rotated_ll")
679  CALL proj_rotated_ll(lon, lat, x, y, this%rotated%longitude_south_pole, &
680  this%rotated%latitude_south_pole, this%rotated%angle_rotation)

Generated with Doxygen.