# Reader - fgdc to internal data structure # unpack fgdc map projection - equidistant conic # History: # Stan Smith 2017-10-16 original script require 'nokogiri' require 'adiwg/mdtranslator/internal/internal_metadata_obj' module ADIWG module Mdtranslator module Readers module Fgdc module EquidistantConicProjection def self.unpack(xParams, hProjection, hResponseObj) # map projection 4.1.2.1.4 (equicon) - Equidistant Conic unless xParams.empty? paramCount = 0 hProjection[:projection] = 'equidistantConic' hProjection[:projectionName] = 'Equidistant Conic' # -> ReferenceSystemParameters.projection.standardParallel1 # -> ReferenceSystemParameters.projection.standardParallel2 paramCount += ProjectionCommon.unpackStandParallel(xParams, hProjection, hResponseObj) # -> ReferenceSystemParameters.projection.longitudeOfCentralMeridian paramCount += ProjectionCommon.unpackLongCM(xParams, hProjection, hResponseObj) # -> ReferenceSystemParameters.projection.latitudeOfProjectionOrigin paramCount += ProjectionCommon.unpackLatPO(xParams, hProjection, hResponseObj) # -> ReferenceSystemParameters.projection.falseEasting # -> ReferenceSystemParameters.projection.falseNorthing paramCount += ProjectionCommon.unpackFalseNE(xParams, hProjection, hResponseObj) # verify parameter count if paramCount == 6 return hProjection else hResponseObj[:readerExecutionMessages] << 'equidistant conic projection is missing one or more parameters' return nil end end return nil end end end end end end