Class that represents the dimension of something, e.g. a {ChunkyPNG::Canvas}.
This class contains some methods to simplify performing dimension related checks.
@return [Regexp] The regexp to parse dimensions from a string. @private
Initializes a new dimension instance. @param [Integer] width The width-component of the new dimension. @param [Integer] height The height-component of the new dimension.
# File lib/chunky_png/dimension.rb, line 69 def initialize(width, height) @width, @height = width.to_i, height.to_i end
Compares the size of 2 dimensions. @param [ChunkyPNG::Dimension] The dimension to compare with. @return [-1, 0, 1] -1 if the other dimension has a larger area, 1 of this
dimension is larger, 0 if both are identical in size.
# File lib/chunky_png/dimension.rb, line 101 def <=>(other) other.area <=> area end
Returns the area of this dimension. @return [Integer] The area in number of pixels.
# File lib/chunky_png/dimension.rb, line 75 def area width * height end
Checks whether 2 dimensions are identical. @param [ChunkyPNG::Dimension] The dimension to compare with. @return [true, false] true iff width and height match.
# File lib/chunky_png/dimension.rb, line 91 def eql?(other) other.width == width && other.height == height end
Checks whether a point is within bounds of this dimension. @param [ChunkyPNG::Point, ...] A point-like to bounds-check. @return [true, false] True iff the x and y coordinate fall in this dimension. @see ChunkyPNG.Point
# File lib/chunky_png/dimension.rb, line 83 def include?(*point_like) point = ChunkyPNG::Point(*point_like) point.x >= 0 && point.x < width && point.y >= 0 && point.y < height end
Casts this dimension into an array. @return [Array<Integer>] [width, height] for this dimension.
# File lib/chunky_png/dimension.rb, line 107 def to_a [width, height] end
Generated with the Darkfish Rdoc Generator 2.