R: RGB arrays

rgbArray {RNifti} | R Documentation

## RGB arrays

### Description

The `rgbArray` function constructs an integer array whose values are byte-packed representations of 8-bit RGBA colour values. The `channels` attribute (with value 3 or 4) indicates how many channels are being used. The resulting array can be used to construct an RGB(A) NIfTI image, or converted to standard R colour strings using the `as.character` method.

### Usage

    rgbArray(red, green, blue, alpha, max = NULL, dim = NULL, ...)

    ## S3 method for class 'rgbArray'
    as.character(x, flatten = TRUE, ...)

### Arguments

`red` | A numeric vector (or array) of red channel values. If this is the only channel argument, it can also be a character vector of colour values (including alpha, if required), or a numeric array whose last dimension is 2 (for grey + alpha), 3 (for RGB) or 4 (for RGBA).
`green, blue, alpha` | Numeric vectors (or arrays) containing values for the appropriate channel. These will be combined with the `red` values using `cbind`, and hence recycled as necessary. Alpha, or green and blue, can be missing.
`max` | The maximum possible value for any channel. The default is 255 when the data is of integer mode, and 1 otherwise. Values above this, or below zero, will be clipped to the appropriate extreme.
`dim` | An integer vector of dimensions for the final array. The dimensions of `red` are used if this is `NULL`.
`...` | For `rgbArray`, additional attributes to set on the result, such as `pixdim`. These are passed directly to `structure`. For the `as.character` method, this argument is ignored.
`x` | An `rgbArray` object.
`flatten` | Logical value. If `FALSE`, the dimensions of `x` will be retained in the result. The default is `TRUE`, for consistency with the usual behaviour of `as.character`, which strips all attributes.

### Value

`rgbArray` returns an integer-mode array of class `"rgbArray"`. The `as.character` method returns a character-mode vector of colour strings.

### Note

The values of an `"rgbArray"` are not easily interpreted, and may depend on the endianness of the platform. For manipulation or use as colours they should generally be converted to character mode, or the channels extracted using the `channels` function.

### Author(s)

Jon Clayden <code@clayden.org>

[Package RNifti version 1.2.2 Index]