openshot::Coordinate Class Reference

This class represents a Cartesian coordinate (X, Y) used in the Keyframe animation system. More...

`#include <Coordinate.h>`

## Public Member Functions

| Coordinate ()
| The default constructor, which defaults to (0,0) More...
| Coordinate (double x, double y)
| Constructor which also sets the X and Y. 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...

## Public Attributes

double | X
| The X value of the coordinate (usually representing the frame #) More...
double | Y
| The Y value of the coordinate (usually representing the value of the property being animated) More...

## Detailed Description

This class represents a Cartesian coordinate (X, Y) used in the Keyframe animation system.

Animation involves the changing (i.e. interpolation) of numbers over time. A series of Coordinate objects allows us to plot a specific curve or line used during interpolation. In other words, it helps us control how a number changes over time (quickly or slowly).

Please see the following Example Code:

Coordinate c1(2,4);
assert(c1.X == 2.0f);
assert(c1.Y == 4.0f);
openshot::Coordinate::Coordinate
Coordinate()
The default constructor, which defaults to (0,0)
Definition: Coordinate.cpp:37

Definition at line 55 of file Coordinate.h.

## Constructor & Destructor Documentation

## Coordinate() [1/2]

Coordinate::Coordinate | ( |  | ) |

The default constructor, which defaults to (0,0)

Definition at line 37 of file Coordinate.cpp.

## Coordinate() [2/2]

Coordinate::Coordinate | ( | double | x,
|  | double | y
| ) |  |

Constructor which also sets the X and Y.

Parameters

  x | The X coordinate (usually representing the frame #)
  y | The Y coordinate (usually representing the value of the property being animated)

Definition at line 42 of file Coordinate.cpp.

## Member Function Documentation

## Json()

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

Get and Set JSON methods.

Generate JSON string of this object

Definition at line 48 of file Coordinate.cpp.

## JsonValue()

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

Generate Json::Value for this object.

Definition at line 55 of file Coordinate.cpp.

Referenced by Json(), and openshot::Point::JsonValue().

## SetJson()

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

Load JSON string into this object.

Definition at line 72 of file Coordinate.cpp.

## SetJsonValue()

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

Load Json::Value into this object.

Definition at line 89 of file Coordinate.cpp.

Referenced by SetJson(), and openshot::Point::SetJsonValue().

## Member Data Documentation

## X

double openshot::Coordinate::X

The X value of the coordinate (usually representing the frame #)

Definition at line 57 of file Coordinate.h.

Referenced by openshot::ClipBase::add_property_json(), openshot::Keyframe::AddPoint(), openshot::Keyframe::Contains(), openshot::Keyframe::FindIndex(), openshot::Keyframe::GetClosestPoint(), JsonValue(), openshot::Keyframe::PrintPoints(), openshot::Keyframe::RemovePoint(), and SetJsonValue().

## Y

double openshot::Coordinate::Y

The Y value of the coordinate (usually representing the value of the property being animated)

Definition at line 58 of file Coordinate.h.

Referenced by openshot::Keyframe::FindIndex(), openshot::Keyframe::GetMaxPoint(), openshot::Keyframe::GetRepeatFraction(), JsonValue(), openshot::Keyframe::PrintPoints(), openshot::Keyframe::RemovePoint(), and SetJsonValue().

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

- Coordinate.h
- Coordinate.cpp