|
OpenShot Library | libopenshot
0.7.0
|
Go to the documentation of this file.
13 #ifndef OPENSHOT_ANIMATED_CURVE_H
14 #define OPENSHOT_ANIMATED_CURVE_H
41 Point Evaluate(int64_t frame_number,
double x_scale=1.0)
const;
43 std::string
Json()
const;
45 void SetJson(
const std::string value);
51 std::vector<AnimatedCurveNode> nodes;
58 const std::vector<AnimatedCurveNode>&
Nodes()
const {
return nodes; }
59 std::vector<AnimatedCurveNode>&
Nodes() {
return nodes; }
62 float Sample(
float input, int64_t frame_number)
const;
63 std::string
Summary(int64_t frame_number)
const;
65 std::string
Json()
const;
67 void SetJson(
const std::string value);
void SetJson(const std::string value)
Header file for Point class.
float Sample(float input, int64_t frame_number) const
This namespace is the default namespace for all code in the openshot library.
Keyframe BuildCurve(int64_t frame_number, double x_scale=1.0) const
Point Evaluate(int64_t frame_number, double x_scale=1.0) const
Json::Value JsonValue() const
void SetJsonValue(const Json::Value &root)
Header file for the Keyframe class.
HandleType
When BEZIER interpolation is used, the point's left and right handles are used to influence the direc...
A Keyframe is a collection of Point instances, which is used to vary a number or property over time.
std::vector< AnimatedCurveNode > & Nodes()
Json::Value JsonValue() const
@ LINEAR
Linear curves are angular, straight lines between two points.
const std::vector< AnimatedCurveNode > & Nodes() const
InterpolationType interpolation
InterpolationType
This controls how a Keyframe uses this point to interpolate between two points.
std::string Summary(int64_t frame_number) const
Header file for JSON class.
void SetJson(const std::string value)
A Point is the basic building block of a key-frame curve.
void SetJsonValue(const Json::Value &root)