Class: Magick::RVG::Rect

Inherits:
Shape
  • Object
show all
Defined in:
lib/rvg/embellishable.rb

Overview

class Path

Instance Method Summary collapse

Methods inherited from Shape

#add_primitives

Methods included from Duplicatable

#deep_copy

Methods included from Transformable

#matrix, #rotate, #scale, #skewX, #skewY, #translate

Methods included from Stylable

#styles

Constructor Details

#initialize(width, height, x = 0, y = 0) ⇒ Rect

Define a width x height rectangle. The upper-left corner is at [x, y]. If either width or height is 0, the rectangle is not rendered. Use the RVG::ShapeConstructors#rect method to create Rect objects in a container.


91
92
93
94
95
96
97
98
99
# File 'lib/rvg/embellishable.rb', line 91

def initialize(width, height, x=0, y=0)
    super()
    width, height, x, y = Magick::RVG.convert_to_float(width, height, x, y)
    if width < 0 || height < 0
        raise ArgumentError, "width, height must be >= 0 (#{width}, #{height} given)"
    end
    @args = [x, y, x+width, y+height]
    @primitive = :rectangle
end

Instance Method Details

#round(rx, ry = nil) ⇒ Object

Specify optional rounded corners for a rectangle. The arguments are the x- and y-axis radii. If y is omitted it defaults to x.


103
104
105
106
107
108
109
110
111
# File 'lib/rvg/embellishable.rb', line 103

def round(rx, ry=nil)
    rx, ry = Magick::RVG.convert_to_float(rx, ry || rx)
    if rx < 0 || ry < 0
        raise ArgumentError, "rx, ry must be >= 0 (#{rx}, #{ry} given)"
    end
    @args << rx << ry
    @primitive = :roundrectangle
    self
end