class Google::Maps::Location
Attributes
address[R]
components[R]
latitude[R]
longitude[R]
to_s[R]
Public Class Methods
find(address, language = :en)
click to toggle source
# File lib/google_maps/location.rb, line 22 def self.find(address, language = :en) args = { language: language, address: address } API.query(:geocode_service, args).results.map do |result| Location.new( result.formatted_address, result.geometry.location.lat, result.geometry.location.lng, format_components(result.address_components) ) end end
format_components(address_components)
click to toggle source
# File lib/google_maps/location.rb, line 35 def self.format_components(address_components) address_components.each_with_object({}) do |v, acc| types = v['types'] types.each do |t| acc[t] ||= [] acc[t] << v['long_name'] end end end
new(address, latitude, longitude, components = {})
click to toggle source
# File lib/google_maps/location.rb, line 11 def initialize(address, latitude, longitude, components = {}) @address = address @latitude = latitude @longitude = longitude @components = components end
Public Instance Methods
lat_lng()
click to toggle source
# File lib/google_maps/location.rb, line 18 def lat_lng [latitude, longitude] end