surf2scal Subroutine

public subroutine surf2scal(surf, scal)

Transform a OBJ_SURF object into a SCALE_SURF object

Arguments

Type IntentOptional Attributes Name
type(OBJ_SURF), intent(in) :: surf

object OBJ_SURF

type(SCALE_SURF), intent(out) :: scal

object SCALE_SURF


Calls

proc~~surf2scal~~CallsGraph proc~surf2scal surf2scal proc~c_f_string c_f_string proc~surf2scal->proc~c_f_string proc~unit2iuf unit2IUf proc~surf2scal->proc~unit2iuf proc~empty empty proc~c_f_string->proc~empty

Called by

proc~~surf2scal~~CalledByGraph proc~surf2scal surf2scal proc~open_surffile open_surffile proc~open_surffile->proc~surf2scal proc~write_surf write_surf proc~write_surf->proc~surf2scal proc~read_surf~2 read_surf proc~read_surf~2->proc~open_surffile program~test_surfile test_surfile program~test_surfile->proc~write_surf program~test_surfile->proc~read_surf~2

Source Code

   subroutine surf2scal(surf, scal)
   !! Transform a [[OBJ_SURF]] object into a [[SCALE_SURF]] object
   implicit none
   type(OBJ_SURF),   intent(in ) :: surf !! *object [[OBJ_SURF]]*
   type(SCALE_SURF), intent(out) :: scal !! *object [[SCALE_SURF]]*

      integer(kind=I4) :: i

      call c_f_string(cs = surf%signature,      &  !
                      fs = scal%signature,      &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%xlength_unit,   &  !
                      fs = scal%xlength_unit,   &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%ylength_unit,   &  !
                      fs = scal%ylength_unit,   &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%zlength_unit,   &  !
                      fs = scal%zlength_unit,   &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%xaxis,          &  !
                      fs = scal%xaxis,          &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%yaxis,          &  !
                      fs = scal%yaxis,          &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%zaxis,          &  !
                      fs = scal%zaxis,          &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%dx_unit,        &  !
                      fs = scal%dx_unit,        &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%dy_unit,        &  !
                      fs = scal%dy_unit,        &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%dz_unit,        &  !
                      fs = scal%dz_unit,        &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%object_name,    &  !
                      fs = scal%object_name,    &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%operator_name,  &  !
                      fs = scal%operator_name,  &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%client_zone,    &  !
                      fs = scal%client_zone,    &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%reserved,       &  !
                      fs = scal%reserved,       &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%reservedzone,   &  !
                      fs = scal%reservedzone,   &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%obsolete,       &  !
                      fs = scal%obsolete,       &  !
                 lngth_s = i)                      !

      call c_f_string(cs = surf%obsolete2,      &  !
                      fs = scal%obsolete2,      &  !
                 lngth_s = i)                      !

      scal%dx                    = surf%dx
      scal%dy                    = surf%dy
      scal%dz                    = surf%dz
      scal%xunit_ratio           = surf%xunit_ratio
      scal%yunit_ratio           = surf%yunit_ratio
      scal%zunit_ratio           = surf%zunit_ratio
      scal%XOffset               = surf%XOffset
      scal%YOffset               = surf%YOffset
      scal%ZOffset               = surf%ZOffset
      scal%measurement_duration  = surf%measurement_duration

      scal%zmin      = surf%zmin
      scal%zmax      = surf%zmax
      scal%xres      = surf%xres
      scal%yres      = surf%yres
      scal%nofpoints = surf%nofpoints

      scal%format          = surf%format
      scal%version         = surf%version
      scal%material_code   = surf%material_code
      scal%type            = surf%type
      scal%range           = surf%range
      scal%special_points  = surf%special_points
      scal%absolute        = surf%absolute
      scal%pointsize       = surf%pointsize
      scal%imprint         = surf%imprint
      scal%inversion       = surf%inversion
      scal%leveling        = surf%leveling
      scal%seconds         = surf%seconds
      scal%minutes         = surf%minutes
      scal%hours           = surf%hours
      scal%day             = surf%day
      scal%month           = surf%month
      scal%year            = surf%year
      scal%dayof           = surf%dayof
      scal%comment_size    = surf%comment_size
      scal%private_size    = surf%private_size
      scal%nobjects        = surf%nobjects
      scal%acquisition     = surf%acquisition

      scal%lx = scal%dx * scal%xres * unit2IUf(scal%dx_unit)
      scal%ly = scal%dy * scal%yres * unit2IUf(scal%dy_unit)

   return
   endsubroutine surf2scal