module ADIWG::Mdtranslator::Readers::Fgdc::TransverseMercatorProjection

Public Class Methods

unpack(xParams, hProjection, hResponseObj) click to toggle source
# File lib/adiwg/mdtranslator/readers/fgdc/modules/mapProjections/projection_transverseMercator.rb, line 18
def self.unpack(xParams, hProjection, hResponseObj)

   # map projection 4.1.2.1.21 (transmer) - Transverse Mercator
   unless xParams.empty?
      paramCount = 0

      # -> ReferenceSystemParameters.projection.scaleFactorAtCentralMeridian
      paramCount += ProjectionCommon.unpackSFCM(xParams, hProjection)

      # -> ReferenceSystemParameters.projection.longitudeOfCentralMeridian
      paramCount += ProjectionCommon.unpackLongCM(xParams, hProjection)

      # -> ReferenceSystemParameters.projection.latitudeOfProjectionOrigin
      paramCount += ProjectionCommon.unpackLatPO(xParams, hProjection)

      # -> ReferenceSystemParameters.projection.falseEasting
      # -> ReferenceSystemParameters.projection.falseNorthing
      paramCount += ProjectionCommon.unpackFalseNE(xParams, hProjection)

      if paramCount == 5
         return hProjection
      else
         hResponseObj[:readerExecutionMessages] <<
            'WARNING: FGDC reader: Transverse Mercator projection is missing one or more parameters'
      end
   end

   return nil

end