Class: ChunkyPNG::Dimension
- Inherits:
-
Object
- Object
- ChunkyPNG::Dimension
- Defined in:
- lib/chunky_png/dimension.rb
Overview
Class that represents the dimension of something, e.g. a Canvas.
This class contains some methods to simplify performing dimension related checks.
Instance Attribute Summary collapse
-
#height ⇒ Integer
The height-component of this dimension.
-
#width ⇒ Integer
The width-component of this dimension.
Instance Method Summary collapse
-
#<=>(other) ⇒ -1, ...
Compares the size of 2 dimensions.
-
#area ⇒ Integer
Returns the area of this dimension.
-
#eql?(other) ⇒ true, false
(also: #==)
Checks whether 2 dimensions are identical.
-
#include?(*point_like) ⇒ true, false
Checks whether a point is within bounds of this dimension.
-
#initialize(width, height) ⇒ Dimension
constructor
Initializes a new dimension instance.
-
#to_a ⇒ Array<Integer>
(also: #to_ary)
Casts this dimension into an array.
Constructor Details
#initialize(width, height) ⇒ Dimension
Initializes a new dimension instance.
69 70 71 |
# File 'lib/chunky_png/dimension.rb', line 69 def initialize(width, height) @width, @height = width.to_i, height.to_i end |
Instance Attribute Details
#height ⇒ Integer
Returns The height-component of this dimension.
64 65 66 |
# File 'lib/chunky_png/dimension.rb', line 64 def height @height end |
#width ⇒ Integer
Returns The width-component of this dimension.
61 62 63 |
# File 'lib/chunky_png/dimension.rb', line 61 def width @width end |
Instance Method Details
#<=>(other) ⇒ -1, ...
Compares the size of 2 dimensions.
101 102 103 |
# File 'lib/chunky_png/dimension.rb', line 101 def <=>(other) other.area <=> area end |
#area ⇒ Integer
Returns the area of this dimension.
75 76 77 |
# File 'lib/chunky_png/dimension.rb', line 75 def area width * height end |
#eql?(other) ⇒ true, false Also known as: ==
Checks whether 2 dimensions are identical.
91 92 93 |
# File 'lib/chunky_png/dimension.rb', line 91 def eql?(other) other.width == width && other.height == height end |
#include?(*point_like) ⇒ true, false
Checks whether a point is within bounds of this dimension.
83 84 85 86 |
# 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 ⇒ Array<Integer> Also known as: to_ary
Casts this dimension into an array.
107 108 109 |
# File 'lib/chunky_png/dimension.rb', line 107 def to_a [width, height] end |