rgbArray: RGB arrays

rgbArrayR 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. The indexing method returns another object of the same type.

Usage

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

## S3 method for class 'rgbArray'
x[i, j, ..., drop = TRUE]

## S3 method for class 'rgbArray'
as.raster(x, ...)

## 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 indexing method, additional indices.

x

An rgbArray object.

i, j

Index vectors, which are passed to the array method.

drop

Whether or not to drop unitary dimensions. rgbArray objects currently always have a dim attribute, so if the result is a vector it will have a remaining single-element dimension equal to its length.

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 and the indexing ([) method return an integer-mode array of class "rgbArray". The as.raster method returns a raster object, valid for 2D arrays only. The as.character method returns a character-mode vector of colour strings with or without dimensions.

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>


RNifti documentation built on June 22, 2024, 10:20 a.m.