8 #include "sequencetracksegmentduration.h"
40 std::vector<ResourcePtr<math::FCurve<float, float>>>
mCurves;
108 if(!errorState.
check(mCurves.size() == this->getCurveCount(),
"size of curves must be %i", this->getCurveCount()))
111 if(!errorState.
check(mCurveTypes.size() == this->getCurveCount(),
"size of curvetypes must be %i", this->getCurveCount()))
114 for(
int i = 0; i < mCurves.size(); i++)
116 if(!errorState.
check(mCurves[i]->mPoints.size() >= 2,
"curve %i has invalid amount of points", i))
206 #define DEFINE_VECTOR_SEQUENCETRACKSEGMENTCURVE(Type) \
207 RTTI_BEGIN_CLASS(Type, "Bezier curve track segment") \
208 RTTI_PROPERTY("Curves", &Type::mCurves, nap::rtti::EPropertyMetaData::Default) \
209 RTTI_PROPERTY("Curve Types", &Type::mCurveTypes, nap::rtti::EPropertyMetaData::Default) \
210 RTTI_PROPERTY("Duration", &Type::mDuration, nap::rtti::EPropertyMetaData::Default) \
bool check(bool successCondition, T &&errorMessage)
Definition: errorstate.h:36
Definition: sequencetracksegmentcurve.h:35
Definition: sequencetracksegmentcurve.h:22
virtual bool init(utility::ErrorState &errorState) override
void setStartValue(T value)
Definition: errorstate.h:19
std::vector< ResourcePtr< math::FCurve< float, float > > > mCurves
Property: 'Curves' vector holding curves.
Definition: sequencetracksegmentcurve.h:40
std::vector< math::ECurveInterp > mCurveTypes
Property: 'Curve Types' curve types of this segment ( linear, bezier )
Definition: sequencetracksegmentcurve.h:41
T getValue(float pos) const
Definition: templateapp.h:17
void setEndValue(T value)
bool init(utility::ErrorState &errorState) override
Definition: sequencetracksegmentcurve.h:103
Definition: sequencetracksegmentduration.h:14