Module: ADIWG::Mdtranslator::Readers::Fgdc::PolyconicProjection

Defined in:
lib/adiwg/mdtranslator/readers/fgdc/modules/mapProjections/projection_polyconic.rb

Class Method Summary collapse

Class Method Details

.unpack(xParams, hProjection, hResponseObj) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/adiwg/mdtranslator/readers/fgdc/modules/mapProjections/projection_polyconic.rb', line 19

def self.unpack(xParams, hProjection, hResponseObj)

   # map projection 4.1.2.1.16 (polycon) - Polyconic
   unless xParams.empty?
      paramCount = 0

      # -> 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)

      # verify parameter count
      if paramCount == 4
         return hProjection
      else
         hResponseObj[:readerExecutionMessages] <<
            'WARNING: FGDC reader: Polyconic projection is missing one or more parameters'
      end
   end

   return nil

end