Module: GeoDelta

Defined in:
lib/geodelta/core.rb,
lib/geodelta/region.rb,
lib/geodelta/encoder.rb,
lib/geodelta/id_util.rb,
lib/geodelta/version.rb,
lib/geodelta/packer32.rb,
lib/geodelta/packer64.rb,
lib/geodelta/projector.rb,
lib/geodelta/hex_region.rb,
lib/geodelta/hex_geometry.rb,
lib/geodelta/delta_geometry.rb

Defined Under Namespace

Modules: DeltaGeometry, Encoder, HexGeometry, HexRegion, IdUtil, Projector, Region Classes: Packer32, Packer64

Constant Summary collapse

VERSION =
"0.0.2"

Class Method Summary collapse

Class Method Details

.get_center_from_delta_code(code) ⇒ Object



23
24
25
26
# File 'lib/geodelta/core.rb', line 23

def self.get_center_from_delta_code(code)
  ids = GeoDelta::Encoder.decode(code)
  return self.get_center_from_delta_ids(ids)
end

.get_center_from_delta_ids(ids) ⇒ Object



18
19
20
21
# File 'lib/geodelta/core.rb', line 18

def self.get_center_from_delta_ids(ids)
  nx, ny = GeoDelta::DeltaGeometry.get_center(ids)
  return GeoDelta::Projector.nxy_to_latlng(nx, ny)
end

.get_coordinates_from_code(code) ⇒ Object



33
34
35
36
# File 'lib/geodelta/core.rb', line 33

def self.get_coordinates_from_code(code)
  ids = GeoDelta::Encoder.decode(code)
  return self.get_coordinates_from_ids(ids)
end

.get_coordinates_from_ids(ids) ⇒ Object



28
29
30
31
# File 'lib/geodelta/core.rb', line 28

def self.get_coordinates_from_ids(ids)
  return GeoDelta::DeltaGeometry.get_coordinates(ids).
    map { |nx, ny| GeoDelta::Projector.nxy_to_latlng(nx, ny) }
end

.get_delta_code(lat, lng, level) ⇒ Object



13
14
15
16
# File 'lib/geodelta/core.rb', line 13

def self.get_delta_code(lat, lng, level)
  ids = self.get_delta_ids(lat, lng, level)
  return GeoDelta::Encoder.encode(ids)
end

.get_delta_ids(lat, lng, level) ⇒ Object



8
9
10
11
# File 'lib/geodelta/core.rb', line 8

def self.get_delta_ids(lat, lng, level)
  nx, ny = GeoDelta::Projector.latlng_to_nxy(lat, lng)
  return GeoDelta::DeltaGeometry.get_delta_ids(nx, ny, level)
end