//----------------------------------------------------------------------- void PUDynamicAttributeCurved::processControlPoints(void) { if (_controlPoints.empty()) return; std::sort(_controlPoints.begin(), _controlPoints.end(), PUControlPointSorter()); _range = (*getLastValidIterator()).x - (*getFirstValidIterator()).x; if (_interpolationType == IT_SPLINE) { // Add all sorted control points to the spline PUDynamicAttributeCurved::ControlPointList::iterator it; _spline.clear(); for (it = _controlPoints.begin(); it != _controlPoints.end(); ++it) _spline.addPoint(Vec3((*it).x, (*it).y, 0)); } }
void veValueCurved::processControlPoints() { if (_cpList.empty() || _iType != InterpolationType::IT_SPLINE) return; std::sort(_cpList.begin(), _cpList.end(), ControlPointSorter()); _range = (*getLastValidIterator()).x() - (*getFirstValidIterator()).x(); if (_iType == InterpolationType::IT_SPLINE) { // Add all sorted control points to the spline veValueCurved::ControlPointList::iterator it; _spline.clear(); for (it = _cpList.begin(); it != _cpList.end(); ++it) _spline.addPoint(veVec3((*it).x(), (*it).y(), 0.0f)); } }