Abstract base class for noise generators. This class defines the interface for noise generation libraries to inherit from. A default get_seamless_noise() implementation is provided for libraries that do not provide seamless noise. This function requests a larger image from get_image(), reverses the quadrants of the image, then uses the strips of extra width to blend over the seams. Inheriting noise classes can optionally override this function to provide a more optimal algorithm. Returns a 2D [Image] noise image. Returns the 1D noise value at the given (x) coordinate. Returns the 2D noise value at the given position. Returns the 2D noise value at the given position. Returns the 3D noise value at the given position. Returns the 3D noise value at the given position. Returns a seamless 2D [Image] noise image.