### Method

# Vips Image relational_const

#### Declaration [src]

    int
    vips_relational_const (
      VipsImage* in,
      VipsImage** out,
      VipsOperationRelational relational,
      const double* c,
      int n,
      ...
    )

#### Description [src]

Perform various relational operations on an image and an array of constants.

The output type is always uchar, with 0 for `FALSE` and 255 for `TRUE`.

If the array of constants has just one element, that constant is used for all image bands. If the array has more than one element and they have the same number of elements as there are bands in the image, then one array element is used for each band. If the arrays have more than one element and the image only has a single band, the result is a many-band image where each band corresponds to one array element.

See also

`vips_boolean()`, `vips_relational()`.

This method is not directly available to language bindings.

#### Parameters

`out`

  Type: `VipsImage`

  Output image.

  The argument will be set by the function.
  The caller of the method takes ownership of the returned data, and is responsible for freeing it.

`relational`

  Type: `VipsOperationRelational`

  Relational operation to perform.

`c`

  Type: An array of `double`

  Array of constants.

  The length of the array is specified in the `n` argument.
  The data is owned by the caller of the method.

`n`

  Type: `int`

  Number of constants in `c`.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.