Parent

ChunkyPNG::Dimension

Class that represents the dimension of something, e.g. a {ChunkyPNG::Canvas}.

This class contains some methods to simplify performing dimension related checks.

Constants

DIMENSION_REGEXP

@return [Regexp] The regexp to parse dimensions from a string. @private

Attributes

height[RW]

@return [Integer] The height-component of this dimension.

width[RW]

@return [Integer] The width-component of this dimension.

Public Class Methods

new(width, height) click to toggle source

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

Public Instance Methods

<=>(other) click to toggle source

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
==(other) click to toggle source
Alias for: eql?
area() click to toggle source

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
eql?(other) click to toggle source

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
Also aliased as: ==
include?(*point_like) click to toggle source

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
to_a() click to toggle source

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
Also aliased as: to_ary
to_ary() click to toggle source
Alias for: to_a

[Validate]

Generated with the Darkfish Rdoc Generator 2.