[API](/solutions/geotoolkit/geotoolkit_js/apis/readme) / [geotoolkit](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit) / [util](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util) / [RgbaColor](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util#rgbacolor) / RgbaColor

# Class: RgbaColor

[util](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util).[RgbaColor](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.util#rgbacolor).RgbaColor

Specify RGBA color, which can be defined as a set of the four color
components (Red, Green, Blue, Alpha). Each component must be from 0 to 255.

## Table of contents

Constructors
| [new RgbaColor()](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.util.rgbacolor.rgbacolor.md#new rgbacolor()) | [new RgbaColor(color)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.util.rgbacolor.rgbacolor.md#new rgbacolor(color)) | [new RgbaColor(red, green, blue, alpha)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.util.rgbacolor.rgbacolor.md#new rgbacolor(red, green, blue, alpha)) |
|  --- | --- | --- |


Methods
| [clone](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#clone) | [equalsTo](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#equalsto) | [getAlpha](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getalpha) |
|  --- | --- | --- |
| [getBlue](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getblue) | [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getclassname) | [getGreen](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getgreen) |
| [getRed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getred) | [setAlpha](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#setalpha) | [setBlue](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#setblue) |
| [setColor](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#setcolor) | [setGreen](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#setgreen) | [setRed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#setred) |
| [toCSS](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#tocss) | [toGrayScale](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#tograyscale) | [toHex](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#tohex) |
| [toRgb](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#torgb) | [toRgbaString](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#torgbastring) | [fromObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#fromobject) |
| [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor#getclassname-1) |


## Contents

Constructors
#### new RgbaColor()

• **new RgbaColor**()

#### new RgbaColor(color)

• **new RgbaColor**(`color`)

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `color` | `string` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) | ready-to-use color (string, rgbacolor...) |


#### new RgbaColor(red, green, blue, alpha)

• **new RgbaColor**(`red`, `green`, `blue`, `alpha?`)

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `red` | `number` | red component from 0 to 255 |
| `green` | `number` | green component from 0 to 255 |
| `blue` | `number` | blue component from 0 to 255 |
| `Optional` `alpha` | `number` | alpha component from 0 to 255 |


Methods
#### clone

▸ **clone**(): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Return clone of the color

#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

clone

#### equalsTo

▸ **equalsTo**(`other`): `boolean`

Returns true if colors are identical

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `other` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) | RgbaColor to compare against |


#### Returns

`boolean`

#### getAlpha

▸ **getAlpha**(): `number`

Return the alpha component value.<br>
The value should be in range[0-255]

#### Returns

`number`

#### getBlue

▸ **getBlue**(): `number`

Return the blue component value.<br>
The value should be in range[0-255]

#### Returns

`number`

#### getClassName

▸ **getClassName**(): `string`

#### Returns

`string`

#### getGreen

▸ **getGreen**(): `number`

Return the green component value.<br>
The value should be in range[0-255]

#### Returns

`number`

#### getRed

▸ **getRed**(): `number`

Return the red component value.<br>
The value should be in range[0-255]

#### Returns

`number`

#### setAlpha

▸ **setAlpha**(`val`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Sets the alpha component to the given value.<br>
This function expects the alpha component to be in range[0-1].<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `val` | `number` | value of the alpha component |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

this

#### setBlue

▸ **setBlue**(`val`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Sets the blue component to the given value.<br>
This function expects the blue component to be in range[0-255].<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `val` | `number` | value of the blue component |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

this

#### setColor

▸ **setColor**(`red`, `green`, `blue`, `alpha?`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

set color value

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `red` | `number` | red component from 0 to 255 |
| `green` | `number` | green component from 0 to 255 |
| `blue` | `number` | blue component from 0 to 255 |
| `Optional` `alpha` | `number` | alpha component from 0 to 255 |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

▸ **setColor**(`color`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

set color value

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `color` | `string` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) | red component from 0 to 255 or CSS color as a string |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

▸ **setColor**(`red?`, `green?`, `blue?`, `alpha?`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

#### Parameters

| Name  | Type  |
|  --- | --- |
| `Optional` `red` | `string` | `number` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) |
| `Optional` `green` | `number` |
| `Optional` `blue` | `number` |
| `Optional` `alpha` | `number` |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

#### setGreen

▸ **setGreen**(`val`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Sets the green component to the given value.<br>
This function expects the green component to be in range[0-255].<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `val` | `number` | value of the green component |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

this

#### setRed

▸ **setRed**(`val`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Sets the red component to the given value.<br>
This function expects the red component to be in range[0-255].<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `val` | `number` | value of the red component |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

this

#### toCSS

▸ **toCSS**(): `string`

Return this color in CSS rgba() string format, ex: 'rgba(255, 120, 0, 1.0)'

#### Returns

`string`

#### toGrayScale

▸ **toGrayScale**(`a?`, `r?`, `g?`, `b?`): `string`

Convert this RGBA color to the grayscale color.<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `a` | `number` | Change alpa channel to specified value if any |
| `Optional` `r` | `number` | r weight default is 0.3 |
| `Optional` `g` | `number` | g weight default is 0.59 |
| `Optional` `b` | `number` | b weight default is 0.11 |


#### Returns

`string`

Resulted color in CSS rgba() string format.

#### toHex

▸ **toHex**(`a?`): `string`

Convert this RGBA color to the string hexadecimal format, ex: Red -> '#ff0000'.<br>
Alpha channel is not included by default.

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `a` | `boolean` | Include alpha channel in the hexadecimal output, false by default. |


#### Returns

`string`

Resulted color in hexadecimal

#### toRgb

▸ **toRgb**(`background?`): `string`

Convert this RGBA color to RGB, by pre-multiplying alpha and colors, and compositing with the background color.<br>
By default, the background color is white.
For ex:<ul>
<li>50% opacity White - rgba(255, 255, 255, 0.5) on a black background will become Grey - rgba(127, 127, 127, 1.0)</li>
<li>50% opacity Red - rgba(255, 0, 0, 0.5) on a white background will become Pink - rgba(255, 127, 127, 1.0)</li>
</ul>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `background` | `string` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) | Conversion will be based on this background color, default is white. |


#### Returns

`string`

Resulted color in CSS rgba() string format.

#### toRgbaString

▸ **toRgbaString**(): `string`

Return this color in CSS rgba() string format, ex: 'rgba(255, 120, 0, 1.0)'

#### Returns

`string`

#### fromObject

▸ `Static` **fromObject**(`object`): [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

Create or get RGBA color from object

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `object` | `string` | [`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor) | object can be in format of constructor of RgbaColor |


#### Returns

[`RgbaColor`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rgbacolor.rgbacolor)

#### getClassName

▸ `Static` **getClassName**(): `string`

#### Returns

`string`