Module: H3::Inspection

Extended by:
Bindings::Base
Included in:
H3
Defined in:
lib/h3/inspection.rb

Overview

Index inspection functions.

Instance Method Summary collapse

Methods included from Bindings::Base

extended

Instance Method Details

#h3_base_cell(h3_index) ⇒ Integer

Derives the base cell number of the given H3 index

Examples:

Derive the base cell number of a H3 index

H3.h3_base_cell(617700440100569087)
20

Parameters:

  • h3_index (Integer)

    A valid H3 index

Returns:

  • (Integer)

    Base cell number



35
# File 'lib/h3/inspection.rb', line 35

attach_function :h3_base_cell, :h3GetBaseCell, [ :h3_index ], :int

#h3_pentagon?(h3_index) ⇒ Boolean

Determine whether the given H3 index is a pentagon.

Examples:

Check if H3 index is a pentagon

H3.h3_pentagon?(585961082523222015)
true

Parameters:

  • h3_index (Integer)

    A valid H3 index.

Returns:

  • (Boolean)

    True if the H3 index is a pentagon.



61
# File 'lib/h3/inspection.rb', line 61

attach_function :h3_pentagon, :h3IsPentagon, [ :h3_index ], :bool

#h3_res_class_3?(h3_index) ⇒ Boolean

Determine whether the given H3 index has a resolution with Class III orientation.

Examples:

Check if H3 index has a class III resolution.

H3.h3_res_class_3?(599686042433355775)
true

Parameters:

  • h3_index (Integer)

    A valid H3 index.

Returns:

  • (Boolean)

    True if the H3 index has a class III resolution.



75
# File 'lib/h3/inspection.rb', line 75

attach_function :h3_res_class_3, :h3IsResClassIII, [ :h3_index ], :bool

#h3_resolution(h3_index) ⇒ Integer

Derive the resolution of a given H3 index

Examples:

Derive the resolution of a H3 index

H3.h3_resolution(617700440100569087)
9

Parameters:

  • h3_index (Integer)

    A valid H3 index

Returns:

  • (Integer)

    Resolution of H3 index



22
# File 'lib/h3/inspection.rb', line 22

attach_function :h3_resolution, :h3GetResolution, [ :h3_index ], :int

#h3_to_string(h3_index) ⇒ String

Derives the hexadecimal string representation for a given H3 index.

Examples:

Derive the given hexadecimal form for the H3 index

H3.h3_to_string(617700169958293503)
"89283470dcbffff"

Parameters:

  • h3_index (Integer)

    A valid H3 index.

Returns:

  • (String)

    H3 index in hexadecimal form.



99
100
101
102
103
# File 'lib/h3/inspection.rb', line 99

def h3_to_string(h3_index)
  h3_str = FFI::MemoryPointer.new(:char, H3_TO_STR_BUF_SIZE)
  Bindings::Private.h3_to_string(h3_index, h3_str, H3_TO_STR_BUF_SIZE)
  h3_str.read_string 
end

#h3_valid?(h3_index) ⇒ Boolean

Determine whether the given H3 index is valid.

Examples:

Check if H3 index is valid

H3.h3_valid?(599686042433355775)
true

Parameters:

  • h3_index (Integer)

    A H3 index.

Returns:

  • (Boolean)

    True if the H3 index is valid.



88
# File 'lib/h3/inspection.rb', line 88

attach_function :h3_valid, :h3IsValid, [ :h3_index ], :bool

#string_to_h3(h3_string) ⇒ Integer

Derives the H3 index for a given hexadecimal string representation.

Examples:

Derive the H3 index from the given hexadecimal form.

H3.string_to_h3("8928308280fffff")
617700169958293503

Parameters:

  • h3_string (String)

    A H3 index in hexadecimal form.

Returns:

  • (Integer)

    H3 index



48
# File 'lib/h3/inspection.rb', line 48

attach_function :string_to_h3, :stringToH3, [ :string ], :h3_index