Method: Magick::KernelInfo#scale

Defined in:
ext/RMagick/rmkinfo.c

#scale(scale, flags) ⇒ Object

Scales the given kernel list by the given amount, with or without normalization of the sum of the kernel values (as per given flags).

Ruby usage:

- @verbatim KernelInfo#scale(scale, flags) @endverbatim

Parameters:

  • scale

    scale to use

  • flags

    one of Magick::NormalizeValue, Magick::CorrelateNormalizeValue, and/or Magick::PercentValue

  • self

    this object



134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
# File 'ext/RMagick/rmkinfo.c', line 134

VALUE
KernelInfo_scale(VALUE self, VALUE scale, VALUE flags)
{
    GeometryFlags geoflags;

    if (!FIXNUM_P(scale))
        Check_Type(scale, T_FLOAT);

    if (rb_obj_is_instance_of(flags, Class_GeometryFlags))
        VALUE_TO_ENUM(flags, geoflags, GeometryFlags);
    else
        rb_raise(rb_eArgError, "expected Integer or Magick::GeometryFlags to specify flags");

    ScaleKernelInfo((KernelInfo*)DATA_PTR(self), NUM2DBL(scale), geoflags);
    return Qnil;
}