SourceXtractorPlusPlus  0.8
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TransformedModel.cpp
Go to the documentation of this file.
1 
17 /*
18  * TransformedModel.cpp
19  *
20  * Created on: Jul 6, 2018
21  * Author: mschefer
22  */
23 
24 #include "ModelFitting/utils.h"
25 
28 
29 namespace ModelFitting {
30 
33  std::shared_ptr<BasicParameter> rotation_angle, double width, double height,
36  : ExtendedModel(std::move(component_list), x_scale, y_scale, rotation_angle, width, height, x, y)
37 {
38  for (unsigned int i=0; i<m_component_list.size(); i++) {
39  m_component_list[i] = make_unique<TransformModelComponent>(std::move(m_component_list[i]), transform);
40  }
41 }
42 
45  std::shared_ptr<BasicParameter> rotation_angle, double width, double height,
47  : ExtendedModel(std::move(component_list), x_scale, y_scale, rotation_angle, width, height, x, y)
48 {
49  auto transform = std::make_tuple(1, 0, 0, 1);
50  for (unsigned int i=0; i<m_component_list.size(); i++) {
51  m_component_list[i] = make_unique<TransformModelComponent>(std::move(m_component_list[i]), transform);
52  }
53 }
54 
55 }
56 
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
T make_tuple(T...args)
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
std::vector< std::unique_ptr< ModelComponent > > m_component_list
Definition: ExtendedModel.h:57
T move(T...args)
STL class.
STL class.
TransformedModel(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::tuple< double, double, double, double > transform)
std::pair< double, double > transform(int x, int y, const std::array< double, 4 > &t)