Sha256: 8f0f5430a26988dd6d7b8c11a04fc10def97419f6ad62fdb115755c6cf634d87

Contents?: true

Size: 645 Bytes

Versions: 4

Compression:

Stored size: 645 Bytes

Contents

class Armg::WktSerializer
  DEFAULT_WKB_GENERATOR_OPTIONS = {
    type_format: :ewkb,
    little_endian: true,
  }

  DEFAULT_WKT_PARSER_OPTIONS = {
    support_ewkt: true
  }

  def initialize(factory: nil, wkb_generator_options: {}, wkt_parser_options: {})
    @wkb_generator = RGeo::WKRep::WKBGenerator.new(
      DEFAULT_WKB_GENERATOR_OPTIONS.merge(wkb_generator_options))
    @wkt_parser = RGeo::WKRep::WKTParser.new(factory,
      DEFAULT_WKT_PARSER_OPTIONS.merge(wkt_parser_options))
  end

  def serialize(wkt)
    obj = @wkt_parser.parse(wkt)
    srid = Armg::Utils.pack_srid(obj.srid)
    srid + @wkb_generator.generate(obj)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
armg-0.7.1 lib/armg/wkt_serializer.rb
armg-0.7.0 lib/armg/wkt_serializer.rb
armg-0.6.1 lib/armg/wkt_serializer.rb
armg-0.6.0 lib/armg/wkt_serializer.rb