openshot::Color Class Reference

This class represents a color (used on the timeline and clips) More...

`#include <Color.h>`

## Public Member Functions

| Color ()
| Default constructor. More...
| Color (openshot::Keyframe Red, openshot::Keyframe Green, openshot::Keyframe Blue, openshot::Keyframe Alpha)
| Constructor which takes 4 existing Keyframe curves. More...
| Color (std::string color_hex)
| Constructor which takes a HEX color code. More...
| Color (unsigned char Red, unsigned char Green, unsigned char Blue, unsigned char Alpha)
| Constructor which takes R,G,B,A. More...
std::string | GetColorHex (int64_t frame_number)
| Get the HEX value of a color at a specific frame. More...
std::string | Json () const
| Get and Set JSON methods. More...
Json::Value | JsonValue () const
| Generate Json::Value for this object. More...
void | SetJson (const std::string value)
| Load JSON string into this object. More...
void | SetJsonValue (const Json::Value root)
| Load Json::Value into this object. More...

## Static Public Member Functions

static long | GetDistance (long R1, long G1, long B1, long R2, long G2, long B2)
| Get the distance between 2 RGB pairs. (0=identical colors, 10=very close colors, 760=very different colors) More...

## Public Attributes

openshot::Keyframe | alpha
| Curve representing the alpha value (0 - 255) More...
openshot::Keyframe | blue
| Curve representing the red value (0 - 255) More...
openshot::Keyframe | green
| Curve representing the green value (0 - 255) More...
openshot::Keyframe | red
| Curve representing the red value (0 - 255) More...

## Detailed Description

This class represents a color (used on the timeline and clips)

Colors are represented by 4 curves, representing red, green, blue, and alpha. The curves can be used to animate colors over time.

Definition at line 45 of file Color.h.

## Constructor & Destructor Documentation

## Color() [1/4]

openshot::Color::Color | ( |  | ) |

inline

Default constructor.

Definition at line 54 of file Color.h.

## Color() [2/4]

Color::Color | ( | std::string | color_hex | ) |

Constructor which takes a HEX color code.

Definition at line 56 of file Color.cpp.

## Color() [3/4]

Color::Color | ( | unsigned char | Red,
|  | unsigned char | Green,
|  | unsigned char | Blue,
|  | unsigned char | Alpha
| ) |  |

Constructor which takes R,G,B,A.

Definition at line 36 of file Color.cpp.

## Color() [4/4]

Color::Color | ( | openshot::Keyframe | Red,
|  | openshot::Keyframe | Green,
|  | openshot::Keyframe | Blue,
|  | openshot::Keyframe | Alpha
| ) |  |

Constructor which takes 4 existing Keyframe curves.

Definition at line 46 of file Color.cpp.

## Member Function Documentation

## GetColorHex()

std::string Color::GetColorHex | ( | int64_t | frame_number | ) |

Get the HEX value of a color at a specific frame.

Definition at line 67 of file Color.cpp.

Referenced by openshot::Timeline::GetFrame(), and openshot::Bars::GetFrame().

## GetDistance()

long Color::GetDistance | ( | long | R1,
|  | long | G1,
|  | long | B1,
|  | long | R2,
|  | long | G2,
|  | long | B2
| ) |  |

static

Get the distance between 2 RGB pairs. (0=identical colors, 10=very close colors, 760=very different colors)

Definition at line 78 of file Color.cpp.

Referenced by openshot::ChromaKey::GetFrame().

## Json()

std::string Color::Json | ( |  | ) | const

Get and Set JSON methods.

Generate JSON string of this object

Definition at line 88 of file Color.cpp.

## JsonValue()

Json::Value Color::JsonValue | ( |  | ) | const

Generate Json::Value for this object.

Definition at line 95 of file Color.cpp.

Referenced by Json(), openshot::Clip::JsonValue(), openshot::Bars::JsonValue(), openshot::ChromaKey::JsonValue(), and openshot::Timeline::JsonValue().

## SetJson()

void Color::SetJson | ( | const std::string | value | ) |

Load JSON string into this object.

Definition at line 109 of file Color.cpp.

## SetJsonValue()

void Color::SetJsonValue | ( | const Json::Value | root | ) |

Load Json::Value into this object.

Definition at line 126 of file Color.cpp.

Referenced by SetJson(), openshot::Clip::SetJsonValue(), openshot::Bars::SetJsonValue(), and openshot::ChromaKey::SetJsonValue().

## Member Data Documentation

## alpha

openshot::Keyframe openshot::Color::alpha

Curve representing the alpha value (0 - 255)

Definition at line 51 of file Color.h.

Referenced by Color(), GetColorHex(), JsonValue(), and SetJsonValue().

## blue

openshot::Keyframe openshot::Color::blue

Curve representing the red value (0 - 255)

Definition at line 50 of file Color.h.

Referenced by Color(), GetColorHex(), openshot::Timeline::GetFrame(), openshot::ChromaKey::GetFrame(), JsonValue(), openshot::Clip::PropertiesJSON(), openshot::Bars::PropertiesJSON(), openshot::ChromaKey::PropertiesJSON(), SetJsonValue(), and openshot::Timeline::Timeline().

## green

openshot::Keyframe openshot::Color::green

Curve representing the green value (0 - 255)

Definition at line 49 of file Color.h.

Referenced by Color(), GetColorHex(), openshot::Timeline::GetFrame(), openshot::ChromaKey::GetFrame(), JsonValue(), openshot::Clip::PropertiesJSON(), openshot::Bars::PropertiesJSON(), openshot::ChromaKey::PropertiesJSON(), SetJsonValue(), and openshot::Timeline::Timeline().

## red

openshot::Keyframe openshot::Color::red

Curve representing the red value (0 - 255)

Definition at line 48 of file Color.h.

Referenced by Color(), GetColorHex(), openshot::Timeline::GetFrame(), openshot::ChromaKey::GetFrame(), JsonValue(), openshot::Clip::PropertiesJSON(), openshot::Bars::PropertiesJSON(), openshot::ChromaKey::PropertiesJSON(), SetJsonValue(), and openshot::Timeline::Timeline().

The documentation for this class was generated from the following files:

- Color.h
- Color.cpp