13 #ifndef piecewise_four_digit_creator_test_suite_hpp
14 #define piecewise_four_digit_creator_test_suite_hpp
30 template<
typename data__>
80 std::cout <<
"figure(" << figno <<
");" << std::endl;
83 std::cout <<
"cp_x=[";
84 for (pp=0; pp<ns; ++pp)
88 for (i=0; i<=bez.degree(); ++i)
90 std::cout << bez.get_control_point(i).x();
96 std::cout << std::endl;
98 std::cout <<
"];" << std::endl;
100 std::cout <<
"cp_y=[";
101 for (pp=0; pp<ns; ++pp)
105 for (i=0; i<=bez.degree(); ++i)
107 std::cout << bez.get_control_point(i).y();
113 std::cout << std::endl;
115 std::cout <<
"];" << std::endl;
117 std::cout <<
"cp_z=[";
118 for (pp=0; pp<ns; ++pp)
122 for (i=0; i<=bez.degree(); ++i)
124 std::cout << bez.get_control_point(i).z();
130 std::cout << std::endl;
132 std::cout <<
"];" << std::endl;
135 std::vector<data__> t(129);
136 for (i=0; i<static_cast<index_type>(t.size()); ++i)
138 t[i]=tmin+(tmax-tmin)*static_cast<data__>(i)/(t.size()-1);
142 std::cout <<
"surf_x=[";
143 for (i=0; i<static_cast<index_type>(t.size()); ++i)
145 std::cout << pc.
f(t[i]).x();
146 if (i<static_cast<index_type>(t.size()-1))
149 std::cout <<
"];" << std::endl;
151 std::cout <<
"surf_y=[";
152 for (i=0; i<static_cast<index_type>(t.size()); ++i)
154 std::cout << pc.
f(t[i]).y();
155 if (i<static_cast<index_type>(t.size()-1))
158 std::cout <<
"];" << std::endl;
160 std::cout <<
"surf_z=[";
161 for (i=0; i<static_cast<index_type>(t.size()); ++i)
163 std::cout << pc.
f(t[i]).z();
164 if (i<static_cast<index_type>(t.size()-1))
167 std::cout <<
"];" << std::endl;
169 std::cout <<
"setenv('GNUTERM', 'x11');" << std::endl;
170 std::cout <<
"plot(surf_x, surf_y, '-k');" << std::endl;
171 std::cout <<
"hold on;" << std::endl;
172 std::cout <<
"plot(cp_x', cp_y', '-ok', 'MarkerFaceColor', [0 0 0]);" << std::endl;
173 std::cout <<
"hold off;" << std::endl;
174 std::cout <<
"axis equal;" << std::endl;
179 point_creator_type af;
181 data_type th, cam, cam_loc;
199 std::string name, name_ref;
203 name_ref=
"NACA "+std::to_string(static_cast<int>(std::round(cam)))
204 +std::to_string(static_cast<int>(std::round(cam_loc)))
205 +std::to_string(static_cast<int>(std::round(th)));
207 TEST_ASSERT(name==name_ref);
210 piecewise_curve_type af_pwc;
piecewise_curve_type::point_type point_type
Definition: piecewise_four_digit_creator_test_suite.hpp:36
bool set_camber(const data_type &cam, const data_type &cam_loc)
Definition: piecewise_four_digit_creator.hpp:135
data_type get_maximum_camber() const
Definition: piecewise_four_digit_creator.hpp:140
eli::geom::curve::piecewise< eli::geom::curve::bezier, data__, 3 > piecewise_curve_type
Definition: piecewise_four_digit_creator_test_suite.hpp:34
piecewise_curve_type::data_type data_type
Definition: piecewise_four_digit_creator_test_suite.hpp:37
piecewise_four_digit_creator_test_suite()
Definition: piecewise_four_digit_creator_test_suite.hpp:62
data_type get_thickness() const
Definition: piecewise_four_digit_creator.hpp:130
tol__ tolerance_type
Definition: piecewise.hpp:278
data__ data_type
Definition: piecewise.hpp:276
data_type get_parameter_min() const
Definition: piecewise.hpp:366
curve_type::index_type index_type
Definition: piecewise.hpp:271
piecewise_curve_type::index_type index_type
Definition: piecewise_four_digit_creator_test_suite.hpp:38
index_type number_segments() const
Definition: piecewise.hpp:419
bool set_thickness(const data_type &t)
Definition: piecewise_four_digit_creator.hpp:125
Definition: piecewise.hpp:244
curve__< data__, dim__, tol__ > curve_type
Definition: piecewise.hpp:270
void create_airfoil_test()
Definition: piecewise_four_digit_creator_test_suite.hpp:177
std::string get_name() const
Definition: piecewise_four_digit_creator.hpp:155
data_type get_maximum_camber_location() const
Definition: piecewise_four_digit_creator.hpp:145
void octave_print(int figno, const piecewise_curve_type &pc) const
Definition: piecewise_four_digit_creator_test_suite.hpp:71
void AddTests(const long double &)
Definition: piecewise_four_digit_creator_test_suite.hpp:55
tolerance_type tol
Definition: piecewise_four_digit_creator_test_suite.hpp:42
void AddTests(const float &)
Definition: piecewise_four_digit_creator_test_suite.hpp:45
void set_sharp_trailing_edge(bool fl)
Definition: piecewise_four_digit_creator.hpp:116
data_type get_parameter_max() const
Definition: piecewise.hpp:374
eli::geom::curve::piecewise_four_digit_creator< data__, 3, tolerance_type > point_creator_type
Definition: piecewise_four_digit_creator_test_suite.hpp:40
Definition: piecewise_four_digit_creator_test_suite.hpp:31
void AddTests(const double &)
Definition: piecewise_four_digit_creator_test_suite.hpp:50
point_type f(const data_type &t) const
Definition: piecewise.hpp:1732
Definition: piecewise_four_digit_creator.hpp:100
piecewise_curve_type::curve_type curve_type
Definition: piecewise_four_digit_creator_test_suite.hpp:35
piecewise_curve_type::tolerance_type tolerance_type
Definition: piecewise_four_digit_creator_test_suite.hpp:39
error_code get(curve_type &curve, const index_type &index) const
Definition: piecewise.hpp:729
curve_type::point_type point_type
Definition: piecewise.hpp:272
~piecewise_four_digit_creator_test_suite()
Definition: piecewise_four_digit_creator_test_suite.hpp:66
virtual bool create(piecewise< bezier, data_type, dim__, tolerance_type > &pc) const
Definition: piecewise_four_digit_creator.hpp:160