Interface FillingCurve2D


public interface FillingCurve2D
Interface defining a two-dimensional space-filling curve. It provides method to transform a pair of 2d-coordinates in a single index in the curve. The index value is here called hash value since the intput parameters are discritized coordinates, and information is lost during the discretization.
Author:
F.-X. Pineau
  • Method Summary

    Modifier and Type
    Method
    Description
    long
    hash2i0(long hash)
    Special case of hash2ij(long) in which the discretized coordinate along the vertical axis equals zero.
    long
    hash2ij(long hash)
    Transforms the given space filling curve index (or hash value) into a single value from which it is straightforward to extract the associated 2d-coordinates using methods ij2i(long) and ij2j(long).
    long
    i02hash(int i)
    Special case of ij2hash(int, int) in which the discretized coordinate along the vertical axis equals zero.
    long
    ij2hash(int i, int j)
    Transforms coordinates in a discretized 2d-plane into a space filling curve index.
    int
    ij2i(long ij)
    Extract the discretized horizontal coordinates from the result of the method hash2ij(long).
    int
    ij2j(long ij)
    Extract the discretized vertical coordinates from the result of the method hash2ij(long).
    long
    xy2hash(double x, double y)
    The default implementation (not implemented to stay compatible with Java Version < 8) should be: return ij2hash((int) x, (int) y).
  • Method Details

    • xy2hash

      long xy2hash(double x, double y)
      The default implementation (not implemented to stay compatible with Java Version < 8) should be: return ij2hash((int) x, (int) y).
      Parameters:
      x - coordinate along the horizontal axis
      y - coordinate along the vertical axis
      Returns:
      the space filling curve index (or hash value) associated to the given 2d-coordinates.
    • ij2hash

      long ij2hash(int i, int j)
      Transforms coordinates in a discretized 2d-plane into a space filling curve index. This can be thought of as computing a hash value from 2d-coordinates.
      Parameters:
      i - discretized coordinate along the horizontal axis
      j - discretized coordinate along the vertical axis
      Returns:
      the space filling curve index (or hash value) associated to the given discretized 2d-coordinates.
    • i02hash

      long i02hash(int i)
      Special case of ij2hash(int, int) in which the discretized coordinate along the vertical axis equals zero.
      Parameters:
      i - discretized coordinate along the horizontal axis
      Returns:
      the space filling curve index (or hash value) associated to the given discretized horizontal coordinate, assuming the discretized vertical coordinate equal zero.
    • hash2ij

      long hash2ij(long hash)
      Transforms the given space filling curve index (or hash value) into a single value from which it is straightforward to extract the associated 2d-coordinates using methods ij2i(long) and ij2j(long).
      Parameters:
      hash - the space filling curve index (or hash value)
      Returns:
      a single value from which it is straightforward to extract the associated 2d-coordinates using methods ij2i(long) and ij2j(long).
    • hash2i0

      long hash2i0(long hash)
      Special case of hash2ij(long) in which the discretized coordinate along the vertical axis equals zero.
      Parameters:
      hash - the space filling curve index (or hash value)
      Returns:
      a single value, knowing the vertical coordinate equals zero, from which it is straightforward to extract the associated horizontal coordinate using method ij2i(long).
    • ij2i

      int ij2i(long ij)
      Extract the discretized horizontal coordinates from the result of the method hash2ij(long).
      Parameters:
      ij - result of the method hash2ij(long)
      Returns:
      the discretized horizontal coordinate stored in the given parameter ij
    • ij2j

      int ij2j(long ij)
      Extract the discretized vertical coordinates from the result of the method hash2ij(long).
      Parameters:
      ij - result of the method hash2ij(long)
      Returns:
      the discretized horizontal coordinate stored in the given parameter ij