Class ZOrderCurve3D

  • All Implemented Interfaces:
    FillingCurve3D

    public class ZOrderCurve3D
    extends java.lang.Object
    implements FillingCurve3D
    Implementation of the 3d z-order curve based on lookup tables.
    Author:
    F.-X. Pineau
    • Method Detail

      • ijk2hash

        public long ijk2hash​(int i,
                             int j,
                             int k)
        Description copied from interface: FillingCurve3D
        Transforms coordinates in a discretized 2d-space into a space filling curve index. This can be thought of as computing a hash value from 3d-coordinates.
        Specified by:
        ijk2hash in interface FillingCurve3D
        Parameters:
        i - discretized coordinate along the horizontal axis
        j - discretized coordinate along the vertical axis
        k - discretized coordinate along the depth axis
        Returns:
        the space filling curve index (or hash value) associated to the given discretized 3d-coordinates.
      • i002hash

        public long i002hash​(int i)
        Description copied from interface: FillingCurve3D
        Special case of FillingCurve3D.ijk2hash(int, int, int) in which the discretized coordinate along the vertical axis equals zero.
        Specified by:
        i002hash in interface FillingCurve3D
        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.
      • hash2i00

        public long hash2i00​(long hash)
        Description copied from interface: FillingCurve3D
        Special case of FillingCurve3D.hash2ijk(long) in which the discretized coordinate along the vertical axis equals zero.
        Specified by:
        hash2i00 in interface FillingCurve3D
        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 FillingCurve3D.ijk2i(long).