Class Intervals

java.lang.Object
net.imglib2.util.Intervals

public class Intervals extends Object
Convenience methods for manipulating Intervals.
Author:
Tobias Pietzsch
  • Constructor Details

    • Intervals

      public Intervals()
  • Method Details

    • createMinSize

      public static FinalInterval createMinSize(long... minsize)
      Create a FinalInterval from a parameter list comprising minimum coordinates and size. For example, to create a 2D interval from (10, 10) to (20, 40) use createMinSize( 10, 10, 11, 31 ).
      Parameters:
      minsize - a list of 2*n parameters to create a n -dimensional interval. The first n parameters specify the minimum of the interval, the next n parameters specify the dimensions of the interval.
      Returns:
      interval with the specified boundaries
    • createMinMax

      public static FinalInterval createMinMax(long... minmax)
      Create a FinalInterval from a parameter list comprising minimum and maximum coordinates. For example, to create a 2D interval from (10, 10) to (20, 40) use createMinMax( 10, 10, 20, 40 ).
      Parameters:
      minmax - a list of 2*n parameters to create a n -dimensional interval. The first n parameters specify the minimum of the interval, the next n parameters specify the maximum of the interval.
      Returns:
      interval with the specified boundaries
    • createMinSizeReal

      @Deprecated public static FinalRealInterval createMinSizeReal(double... minsize)
      Deprecated.
      THIS METHOD WILL BE REMOVED IN A FUTURE RELEASE. It was mistakenly introduced, analogous to createMinSize(long...) for integer intervals. Dimension is not defined for RealInterval and computing the max as min + dim - 1 does not make sense.

      Create a FinalRealInterval from a parameter list comprising minimum coordinates and size. For example, to create a 2D interval from (10, 10) to (20, 40) use createMinSize( 10, 10, 11, 31 ).

      Parameters:
      minsize - a list of 2*n parameters to create a n -dimensional interval. The first n parameters specify the minimum of the interval, the next n parameters specify the dimensions of the interval.
      Returns:
      interval with the specified boundaries
    • createMinMaxReal

      public static FinalRealInterval createMinMaxReal(double... minmax)
      Create a FinalRealInterval from a parameter list comprising minimum and maximum coordinates. For example, to create a 2D interval from (10, 10) to (20, 40) use createMinMax( 10, 10, 20, 40 ).
      Parameters:
      minmax - a list of 2*n parameters to create a n -dimensional interval. The first n parameters specify the minimum of the interval, the next n parameters specify the maximum of the interval.
      Returns:
      interval with the specified boundaries
    • expand

      public static FinalInterval expand(Interval interval, long border)
      Grow/shrink an interval in all dimensions. Create a FinalInterval , which is the input interval plus border pixels on every side, in every dimension.
      Parameters:
      interval - the input interval
      border - how many pixels to add on every side
      Returns:
      expanded interval
    • expand

      public static FinalInterval expand(Interval interval, long... border)
      Grow/shrink an interval in all dimensions. Create a FinalInterval, which is the input interval plus border pixels on every side, in every dimension.
      Parameters:
      interval - the input interval
      border - how many pixels to add on every side
      Returns:
      expanded interval
    • expand

      public static FinalInterval expand(Interval interval, Dimensions border)
      Grow/shrink an interval in all dimensions. Create a FinalInterval, which is the input interval plus border pixels on every side, in every dimension.
      Parameters:
      interval - the input interval
      border - how many pixels to add on every side
      Returns:
      expanded interval
    • expand

      public static FinalInterval expand(Interval interval, long border, int d)
      Grow/shrink an interval in one dimensions. Create a FinalInterval , which is the input interval plus border pixels on every side, in dimension d.
      Parameters:
      interval - the input interval
      border - how many pixels to add on every side
      d - in which dimension
      Returns:
      expanded interval
    • translate

      public static FinalInterval translate(Interval interval, long t, int d)
      Translate an interval in one dimension. Create a FinalInterval , which is the input interval shifted by t in dimension d.
      Parameters:
      interval - the input interval
      t - by how many pixels to shift the interval
      d - in which dimension
      Returns:
      translated interval
    • intersect

      public static FinalInterval intersect(Interval intervalA, Interval intervalB)
      Compute the intersection of two intervals. Create a FinalInterval , which is the intersection of the input intervals (i.e., the area contained in both input intervals).
      Parameters:
      intervalA - input interval
      intervalB - input interval
      Returns:
      intersection of input intervals
    • intersect

      public static FinalRealInterval intersect(RealInterval intervalA, RealInterval intervalB)
      Compute the intersection of two intervals. Create a RealInterval , which is the intersection of the input intervals (i.e., the area contained in both input intervals).
      Parameters:
      intervalA - input interval
      intervalB - input interval
      Returns:
      intersection of input intervals
    • union

      public static FinalInterval union(Interval intervalA, Interval intervalB)
      Compute the smallest interval that contains both input intervals. Create a FinalInterval that represents that interval.
      Parameters:
      intervalA - input interval
      intervalB - input interval
      Returns:
      union of input intervals
    • union

      public static FinalRealInterval union(RealInterval intervalA, RealInterval intervalB)
      Compute the smallest interval that contains both input intervals. Create a RealInterval that represents that interval.
      Parameters:
      intervalA - input interval
      intervalB - input interval
      Returns:
      union of input intervals
    • smallestContainingInterval

      public static Interval smallestContainingInterval(RealInterval ri)
      Compute the smallest Interval containing the specified RealInterval.
      Parameters:
      ri - input interval.
      Returns:
      the smallest integer interval that completely contains the input interval.
    • largestContainedInterval

      public static Interval largestContainedInterval(RealInterval ri)
      Compute the largest Interval that is contained in the specified RealInterval.
      Parameters:
      ri - input interval.
      Returns:
      the largest integer interval that is completely contained in the input interval.
    • isEmpty

      public static boolean isEmpty(Interval interval)
      Check whether the given interval is empty, that is, the maximum is smaller than the minimum in some dimension.
      Parameters:
      interval - interval to check
      Returns:
      true when the interval is empty, that is, the maximum is smaller than the minimum in some dimension.
    • isEmpty

      public static boolean isEmpty(RealInterval interval)
      Check whether the given interval is empty, that is, the maximum is smaller than the minimum in some dimension.
      Parameters:
      interval - interval to check
      Returns:
      true when the interval is empty, that is, the maximum is smaller than the minimum in some dimension.
    • contains

      public static boolean contains(Interval containing, Localizable contained)
      Test whether the containing interval contains the contained point. The interval is closed, that is, boundary points are contained.
      Returns:
      true, iff contained is in containing.
    • contains

      public static boolean contains(RealInterval containing, RealLocalizable contained)
      Test whether the containing interval contains the contained point. The interval is closed, that is, boundary points are contained.
      Returns:
      true, iff contained is in containing.
    • contains

      public static final boolean contains(Interval containing, Interval contained)
      Test whether the containing interval completely contains the contained interval.
    • contains

      public static final boolean contains(RealInterval containing, RealInterval contained)
      Test whether the containing interval completely contains the contained interval.
    • numElements

      public static long numElements(Dimensions interval)
      Compute the number of elements contained in an (integer) Interval .
      Returns:
      number of elements in interval.
    • numElements

      public static long numElements(int... dimensions)
      Compute the number of elements contained in an (integer) interval.
      Parameters:
      dimensions - dimensions of the interval.
      Returns:
      number of elements in the interval.
    • numElements

      public static long numElements(long... dimensions)
      Compute the number of elements contained in an (integer) interval.
      Parameters:
      dimensions - dimensions of the interval.
      Returns:
      number of elements in the interval.
    • equals

      public static boolean equals(Interval a, Interval b)
      Tests weather two intervals are equal in their min / max
    • equalDimensions

      public static boolean equalDimensions(Interval a, Interval b)
      Tests weather two intervals have equal dimensions (same size)
    • dimensionsAsLongArray

      public static long[] dimensionsAsLongArray(Dimensions dimensions)
      Create a long[] with the dimensions of a Dimensions.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly. See Dimensions.dimensions(long[]).

      Parameters:
      dimensions - something which has dimensions
      Returns:
      dimensions as a new long[]
    • dimensionsAsIntArray

      public static int[] dimensionsAsIntArray(Dimensions dimensions)
      Create a int[] with the dimensions of an Interval.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly.

      Parameters:
      dimensions - something which has dimensions
      Returns:
      dimensions as a new int[]
    • minAsLongArray

      public static long[] minAsLongArray(Interval interval)
      Create a long[] with the minimum of an Interval.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly. See Interval.min(long[]).

      Parameters:
      interval - something with interval boundaries
      Returns:
      minimum as a new long[]
    • minAsIntArray

      public static int[] minAsIntArray(Interval interval)
      Create a int[] with the minimum of an Interval.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly.

      Parameters:
      interval - something with interval boundaries
      Returns:
      minimum as a new int[]
    • maxAsLongArray

      public static long[] maxAsLongArray(Interval interval)
      Create a long[] with the maximum of an Interval.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly. See Interval.max(long[]).

      Parameters:
      interval - something with interval boundaries
      Returns:
      maximum as a new long[]
    • maxAsIntArray

      public static int[] maxAsIntArray(Interval interval)
      Create a int[] with the maximum of an Interval.

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly.

      Parameters:
      interval - something with interval boundaries
      Returns:
      maximum as a new int[]
    • maxAsDoubleArray

      public static double[] maxAsDoubleArray(RealInterval interval)
      Create a double[] with the maximum of a RealInterval .

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly. See RealInterval.realMax(double[]).

      Parameters:
      interval - something with interval boundaries
      Returns:
      maximum as a new double[]
    • minAsDoubleArray

      public static double[] minAsDoubleArray(RealInterval interval)
      Create a double[] with the minimum of a RealInterval .

      Keep in mind that creating arrays wildly is not good practice and consider using the interval directly. See RealInterval.realMin(double[]).

      Parameters:
      interval - something with interval boundaries
      Returns:
      minimum as a new double[]