class Geos::MultiPolygon

Public Instance Methods

as_geojson(options = {})
Alias for: to_geojsonable
to_geojsonable(options = {}) click to toggle source
# File lib/geos/multi_polygon.rb, line 6
def to_geojsonable(options = {})
  options = {
    :interior_rings => true
  }.merge(options)

  {
    :type => 'MultiPolygon',
    :coordinates => self.to_a.collect { |polygon|
      coords = [ polygon.exterior_ring.coord_seq.to_a ]

      if options[:interior_rings] && polygon.num_interior_rings > 0
        coords.concat polygon.interior_rings.collect { |r|
          r.coord_seq.to_a
        }
      end

      coords
    }
  }
end
Also aliased as: as_geojson