29 namespace ModelFitting {
36 for (
auto& component : component_list) {
37 auto scaled = make_unique<ScaledModelComponent>(
std::move(component), x_scale, y_scale);
38 auto rotated = make_unique<RotatedModelComponent>(
std::move(scaled), rotation_angle);
39 m_component_list.emplace_back(
std::move(rotated));
52 return a + b->getValue(x, y);
double getValue(double x, double y) const
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
ExtendedModel(std::vector< std::unique_ptr< ModelComponent >> &&component_list, std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation_angle, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y)
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
std::vector< std::unique_ptr< ModelComponent > > m_component_list