55 Real bp = 10.0, pp = 0.1, pd = 0.04, wd = 0.01, wp = 50.0;
56 unsigned int nr = 1,
a = 2;
68 EXPECT_EQ(hl1.
nPins(), (
unsigned int)1);
70 EXPECT_EQ(hl1.
nEdgePins(), (
unsigned int)0);
72 EXPECT_EQ(hl1.
nChannels(), (
unsigned int)6);
77 EXPECT_EQ(hl2.
nPins(), (
unsigned int)7);
79 EXPECT_EQ(hl2.
nEdgePins(), (
unsigned int)0);
81 EXPECT_EQ(hl2.
nChannels(), (
unsigned int)18);
86 EXPECT_EQ(hl3.
nPins(), (
unsigned int)19);
88 EXPECT_EQ(hl3.
nEdgePins(), (
unsigned int)6);
90 EXPECT_EQ(hl3.
nChannels(), (
unsigned int)42);
95 EXPECT_EQ(hl4.
nPins(), (
unsigned int)37);
97 EXPECT_EQ(hl4.
nEdgePins(), (
unsigned int)12);
99 EXPECT_EQ(hl4.
nChannels(), (
unsigned int)78);
105 EXPECT_EQ(interior_pins2[0][0], (
unsigned int)0);
106 EXPECT_EQ(interior_pins2[0][1], (
unsigned int)1);
107 EXPECT_EQ(interior_pins2[0][2], (
unsigned int)2);
108 EXPECT_EQ(interior_pins2[1][0], (
unsigned int)0);
109 EXPECT_EQ(interior_pins2[1][1], (
unsigned int)2);
110 EXPECT_EQ(interior_pins2[1][2], (
unsigned int)3);
111 EXPECT_EQ(interior_pins2[2][0], (
unsigned int)0);
112 EXPECT_EQ(interior_pins2[2][1], (
unsigned int)3);
113 EXPECT_EQ(interior_pins2[2][2], (
unsigned int)4);
114 EXPECT_EQ(interior_pins2[3][0], (
unsigned int)0);
115 EXPECT_EQ(interior_pins2[3][1], (
unsigned int)4);
116 EXPECT_EQ(interior_pins2[3][2], (
unsigned int)5);
117 EXPECT_EQ(interior_pins2[4][0], (
unsigned int)0);
118 EXPECT_EQ(interior_pins2[4][1], (
unsigned int)5);
119 EXPECT_EQ(interior_pins2[4][2], (
unsigned int)6);
120 EXPECT_EQ(interior_pins2[5][0], (
unsigned int)0);
121 EXPECT_EQ(interior_pins2[5][1], (
unsigned int)6);
122 EXPECT_EQ(interior_pins2[5][2], (
unsigned int)1);
125 EXPECT_EQ(edge_pins2[0][0], (
unsigned int)1);
126 EXPECT_EQ(edge_pins2[0][1], (
unsigned int)2);
127 EXPECT_EQ(edge_pins2[1][0], (
unsigned int)2);
128 EXPECT_EQ(edge_pins2[1][1], (
unsigned int)3);
129 EXPECT_EQ(edge_pins2[2][0], (
unsigned int)3);
130 EXPECT_EQ(edge_pins2[2][1], (
unsigned int)4);
131 EXPECT_EQ(edge_pins2[3][0], (
unsigned int)4);
132 EXPECT_EQ(edge_pins2[3][1], (
unsigned int)5);
133 EXPECT_EQ(edge_pins2[4][0], (
unsigned int)5);
134 EXPECT_EQ(edge_pins2[4][1], (
unsigned int)6);
135 EXPECT_EQ(edge_pins2[5][0], (
unsigned int)6);
136 EXPECT_EQ(edge_pins2[5][1], (
unsigned int)1);
139 EXPECT_EQ(corner_pins2[0][0], (
unsigned int)1);
140 EXPECT_EQ(corner_pins2[1][0], (
unsigned int)2);
141 EXPECT_EQ(corner_pins2[2][0], (
unsigned int)3);
142 EXPECT_EQ(corner_pins2[3][0], (
unsigned int)4);
143 EXPECT_EQ(corner_pins2[4][0], (
unsigned int)5);
144 EXPECT_EQ(corner_pins2[5][0], (
unsigned int)6);
147 EXPECT_EQ(interior_pins3[0][0], (
unsigned int)0);
148 EXPECT_EQ(interior_pins3[0][1], (
unsigned int)1);
149 EXPECT_EQ(interior_pins3[0][2], (
unsigned int)2);
150 EXPECT_EQ(interior_pins3[1][0], (
unsigned int)0);
151 EXPECT_EQ(interior_pins3[1][1], (
unsigned int)2);
152 EXPECT_EQ(interior_pins3[1][2], (
unsigned int)3);
153 EXPECT_EQ(interior_pins3[2][0], (
unsigned int)0);
154 EXPECT_EQ(interior_pins3[2][1], (
unsigned int)3);
155 EXPECT_EQ(interior_pins3[2][2], (
unsigned int)4);
156 EXPECT_EQ(interior_pins3[3][0], (
unsigned int)0);
157 EXPECT_EQ(interior_pins3[3][1], (
unsigned int)4);
158 EXPECT_EQ(interior_pins3[3][2], (
unsigned int)5);
159 EXPECT_EQ(interior_pins3[4][0], (
unsigned int)0);
160 EXPECT_EQ(interior_pins3[4][1], (
unsigned int)5);
161 EXPECT_EQ(interior_pins3[4][2], (
unsigned int)6);
162 EXPECT_EQ(interior_pins3[5][0], (
unsigned int)0);
163 EXPECT_EQ(interior_pins3[5][1], (
unsigned int)6);
164 EXPECT_EQ(interior_pins3[5][2], (
unsigned int)1);
165 EXPECT_EQ(interior_pins3[6][0], (
unsigned int)1);
166 EXPECT_EQ(interior_pins3[6][1], (
unsigned int)7);
167 EXPECT_EQ(interior_pins3[6][2], (
unsigned int)8);
168 EXPECT_EQ(interior_pins3[7][0], (
unsigned int)8);
169 EXPECT_EQ(interior_pins3[7][1], (
unsigned int)2);
170 EXPECT_EQ(interior_pins3[7][2], (
unsigned int)1);
171 EXPECT_EQ(interior_pins3[8][0], (
unsigned int)2);
172 EXPECT_EQ(interior_pins3[8][1], (
unsigned int)8);
173 EXPECT_EQ(interior_pins3[8][2], (
unsigned int)9);
174 EXPECT_EQ(interior_pins3[9][0], (
unsigned int)2);
175 EXPECT_EQ(interior_pins3[9][1], (
unsigned int)9);
176 EXPECT_EQ(interior_pins3[9][2], (
unsigned int)10);
177 EXPECT_EQ(interior_pins3[10][0], (
unsigned int)10);
178 EXPECT_EQ(interior_pins3[10][1], (
unsigned int)3);
179 EXPECT_EQ(interior_pins3[10][2], (
unsigned int)2);
180 EXPECT_EQ(interior_pins3[11][0], (
unsigned int)3);
181 EXPECT_EQ(interior_pins3[11][1], (
unsigned int)10);
182 EXPECT_EQ(interior_pins3[11][2], (
unsigned int)11);
183 EXPECT_EQ(interior_pins3[12][0], (
unsigned int)3);
184 EXPECT_EQ(interior_pins3[12][1], (
unsigned int)11);
185 EXPECT_EQ(interior_pins3[12][2], (
unsigned int)12);
186 EXPECT_EQ(interior_pins3[13][0], (
unsigned int)12);
187 EXPECT_EQ(interior_pins3[13][1], (
unsigned int)4);
188 EXPECT_EQ(interior_pins3[13][2], (
unsigned int)3);
189 EXPECT_EQ(interior_pins3[14][0], (
unsigned int)4);
190 EXPECT_EQ(interior_pins3[14][1], (
unsigned int)12);
191 EXPECT_EQ(interior_pins3[14][2], (
unsigned int)13);
192 EXPECT_EQ(interior_pins3[15][0], (
unsigned int)4);
193 EXPECT_EQ(interior_pins3[15][1], (
unsigned int)13);
194 EXPECT_EQ(interior_pins3[15][2], (
unsigned int)14);
195 EXPECT_EQ(interior_pins3[16][0], (
unsigned int)14);
196 EXPECT_EQ(interior_pins3[16][1], (
unsigned int)5);
197 EXPECT_EQ(interior_pins3[16][2], (
unsigned int)4);
198 EXPECT_EQ(interior_pins3[17][0], (
unsigned int)5);
199 EXPECT_EQ(interior_pins3[17][1], (
unsigned int)14);
200 EXPECT_EQ(interior_pins3[17][2], (
unsigned int)15);
201 EXPECT_EQ(interior_pins3[18][0], (
unsigned int)5);
202 EXPECT_EQ(interior_pins3[18][1], (
unsigned int)15);
203 EXPECT_EQ(interior_pins3[18][2], (
unsigned int)16);
204 EXPECT_EQ(interior_pins3[19][0], (
unsigned int)16);
205 EXPECT_EQ(interior_pins3[19][1], (
unsigned int)6);
206 EXPECT_EQ(interior_pins3[19][2], (
unsigned int)5);
207 EXPECT_EQ(interior_pins3[20][0], (
unsigned int)6);
208 EXPECT_EQ(interior_pins3[20][1], (
unsigned int)16);
209 EXPECT_EQ(interior_pins3[20][2], (
unsigned int)17);
210 EXPECT_EQ(interior_pins3[21][0], (
unsigned int)6);
211 EXPECT_EQ(interior_pins3[21][1], (
unsigned int)17);
212 EXPECT_EQ(interior_pins3[21][2], (
unsigned int)18);
213 EXPECT_EQ(interior_pins3[22][0], (
unsigned int)18);
214 EXPECT_EQ(interior_pins3[22][1], (
unsigned int)1);
215 EXPECT_EQ(interior_pins3[22][2], (
unsigned int)6);
216 EXPECT_EQ(interior_pins3[23][0], (
unsigned int)1);
217 EXPECT_EQ(interior_pins3[23][1], (
unsigned int)18);
218 EXPECT_EQ(interior_pins3[23][2], (
unsigned int)7);
221 EXPECT_EQ(edge_pins3[0][0], (
unsigned int)7);
222 EXPECT_EQ(edge_pins3[0][1], (
unsigned int)8);
223 EXPECT_EQ(edge_pins3[1][0], (
unsigned int)8);
224 EXPECT_EQ(edge_pins3[1][1], (
unsigned int)9);
225 EXPECT_EQ(edge_pins3[2][0], (
unsigned int)9);
226 EXPECT_EQ(edge_pins3[2][1], (
unsigned int)10);
227 EXPECT_EQ(edge_pins3[3][0], (
unsigned int)10);
228 EXPECT_EQ(edge_pins3[3][1], (
unsigned int)11);
229 EXPECT_EQ(edge_pins3[4][0], (
unsigned int)11);
230 EXPECT_EQ(edge_pins3[4][1], (
unsigned int)12);
231 EXPECT_EQ(edge_pins3[5][0], (
unsigned int)12);
232 EXPECT_EQ(edge_pins3[5][1], (
unsigned int)13);
233 EXPECT_EQ(edge_pins3[6][0], (
unsigned int)13);
234 EXPECT_EQ(edge_pins3[6][1], (
unsigned int)14);
235 EXPECT_EQ(edge_pins3[7][0], (
unsigned int)14);
236 EXPECT_EQ(edge_pins3[7][1], (
unsigned int)15);
237 EXPECT_EQ(edge_pins3[8][0], (
unsigned int)15);
238 EXPECT_EQ(edge_pins3[8][1], (
unsigned int)16);
239 EXPECT_EQ(edge_pins3[9][0], (
unsigned int)16);
240 EXPECT_EQ(edge_pins3[9][1], (
unsigned int)17);
241 EXPECT_EQ(edge_pins3[10][0], (
unsigned int)17);
242 EXPECT_EQ(edge_pins3[10][1], (
unsigned int)18);
243 EXPECT_EQ(edge_pins3[11][0], (
unsigned int)18);
244 EXPECT_EQ(edge_pins3[11][1], (
unsigned int)7);
247 EXPECT_EQ(corner_pins3[0][0], (
unsigned int)7);
248 EXPECT_EQ(corner_pins3[1][0], (
unsigned int)9);
249 EXPECT_EQ(corner_pins3[2][0], (
unsigned int)11);
250 EXPECT_EQ(corner_pins3[3][0], (
unsigned int)13);
251 EXPECT_EQ(corner_pins3[4][0], (
unsigned int)15);
252 EXPECT_EQ(corner_pins3[5][0], (
unsigned int)17);
407 Real bp = 5.0, pp = 0.99, pd = 0.8, wd = 0.0, wp = 50.0;
408 unsigned int nr = 3,
a = 2;
422 Real sin60 = std::sqrt(3.0) / 2.0;
425 EXPECT_EQ(centers.size(), hl15.
nPins());
426 EXPECT_DOUBLE_EQ(centers[0](0), 0.0);
427 EXPECT_DOUBLE_EQ(centers[0](1), 0.0);
428 EXPECT_DOUBLE_EQ(centers[0](2), 0.0);
432 EXPECT_EQ(centers2.size(), hl16.
nPins());
433 EXPECT_DOUBLE_EQ(centers2[0](0), 0.0);
434 EXPECT_DOUBLE_EQ(centers2[0](1), 0.0);
435 EXPECT_DOUBLE_EQ(centers2[1](0), cos60 *
p);
436 EXPECT_DOUBLE_EQ(centers2[1](1), sin60 *
p);
437 EXPECT_DOUBLE_EQ(centers2[2](0), -cos60 *
p);
438 EXPECT_DOUBLE_EQ(centers2[2](1), sin60 *
p);
439 EXPECT_DOUBLE_EQ(centers2[3](0), -
p);
440 EXPECT_DOUBLE_EQ(centers2[3](1), 0.0);
441 EXPECT_DOUBLE_EQ(centers2[4](0), -cos60 *
p);
442 EXPECT_DOUBLE_EQ(centers2[4](1), -sin60 *
p);
443 EXPECT_DOUBLE_EQ(centers2[5](0), cos60 *
p);
444 EXPECT_DOUBLE_EQ(centers2[5](1), -sin60 *
p);
445 EXPECT_DOUBLE_EQ(centers2[6](0),
p);
446 EXPECT_DOUBLE_EQ(centers2[6](1), (
unsigned int)0);
448 for (
const auto i : make_range(hl16.
nPins()))
449 EXPECT_DOUBLE_EQ(centers2[i](2), 0.0);
452 EXPECT_EQ(centers3.size(), hl14.
nPins());
453 EXPECT_DOUBLE_EQ(centers3[0](0), 0.0);
454 EXPECT_DOUBLE_EQ(centers3[0](1), 0.0);
455 EXPECT_DOUBLE_EQ(centers3[1](0), cos60 *
p);
456 EXPECT_DOUBLE_EQ(centers3[1](1), sin60 *
p);
457 EXPECT_DOUBLE_EQ(centers3[2](0), -cos60 *
p);
458 EXPECT_DOUBLE_EQ(centers3[2](1), sin60 *
p);
459 EXPECT_DOUBLE_EQ(centers3[3](0), -
p);
460 EXPECT_DOUBLE_EQ(centers3[3](1), 0.0);
461 EXPECT_DOUBLE_EQ(centers3[4](0), -cos60 *
p);
462 EXPECT_DOUBLE_EQ(centers3[4](1), -sin60 *
p);
463 EXPECT_DOUBLE_EQ(centers3[5](0), cos60 *
p);
464 EXPECT_DOUBLE_EQ(centers3[5](1), -sin60 *
p);
465 EXPECT_DOUBLE_EQ(centers3[6](0),
p);
466 EXPECT_DOUBLE_EQ(centers3[6](1), (
unsigned int)0);
468 EXPECT_DOUBLE_EQ(centers3[7](0),
p);
469 EXPECT_DOUBLE_EQ(centers3[7](1), 2 *
p * sin60);
470 EXPECT_DOUBLE_EQ(centers3[8](0), (
unsigned int)0);
471 EXPECT_DOUBLE_EQ(centers3[8](1), 2 *
p * sin60);
472 EXPECT_DOUBLE_EQ(centers3[9](0), -
p);
473 EXPECT_DOUBLE_EQ(centers3[9](1), 2 *
p * sin60);
474 EXPECT_DOUBLE_EQ(centers3[10](0), -
p -
p * cos60);
475 EXPECT_DOUBLE_EQ(centers3[10](1),
p * sin60);
476 EXPECT_DOUBLE_EQ(centers3[11](0), -2 *
p);
477 EXPECT_DOUBLE_EQ(centers3[11](1), (
unsigned int)0);
478 EXPECT_DOUBLE_EQ(centers3[12](0), -
p -
p * cos60);
479 EXPECT_DOUBLE_EQ(centers3[12](1), -
p * sin60);
480 EXPECT_DOUBLE_EQ(centers3[13](0), -
p);
481 EXPECT_DOUBLE_EQ(centers3[13](1), -2 *
p * sin60);
482 EXPECT_DOUBLE_EQ(centers3[14](0), (
unsigned int)0);
483 EXPECT_DOUBLE_EQ(centers3[14](1), -2 *
p * sin60);
484 EXPECT_DOUBLE_EQ(centers3[15](0),
p);
485 EXPECT_DOUBLE_EQ(centers3[15](1), -2 *
p * sin60);
486 EXPECT_DOUBLE_EQ(centers3[16](0),
p +
p * cos60);
487 EXPECT_DOUBLE_EQ(centers3[16](1), -
p * sin60);
488 EXPECT_DOUBLE_EQ(centers3[17](0), 2 *
p);
489 EXPECT_DOUBLE_EQ(centers3[17](1), 0.0);
490 EXPECT_DOUBLE_EQ(centers3[18](0),
p +
p * cos60);
491 EXPECT_DOUBLE_EQ(centers3[18](1),
p * sin60);
493 for (
const auto i : make_range(hl14.
nPins()))
494 EXPECT_DOUBLE_EQ(centers3[i](2), 0.0);
497 EXPECT_EQ(centers4.size(), hl17.
nPins());
498 EXPECT_DOUBLE_EQ(centers4[0](0), 0.0);
499 EXPECT_DOUBLE_EQ(centers4[0](1), 0.0);
500 EXPECT_DOUBLE_EQ(centers4[1](0), cos60 *
p);
501 EXPECT_DOUBLE_EQ(centers4[1](1), sin60 *
p);
502 EXPECT_DOUBLE_EQ(centers4[2](0), -cos60 *
p);
503 EXPECT_DOUBLE_EQ(centers4[2](1), sin60 *
p);
504 EXPECT_DOUBLE_EQ(centers4[3](0), -
p);
505 EXPECT_DOUBLE_EQ(centers4[3](1), 0.0);
506 EXPECT_DOUBLE_EQ(centers4[4](0), -cos60 *
p);
507 EXPECT_DOUBLE_EQ(centers4[4](1), -sin60 *
p);
508 EXPECT_DOUBLE_EQ(centers4[5](0), cos60 *
p);
509 EXPECT_DOUBLE_EQ(centers4[5](1), -sin60 *
p);
510 EXPECT_DOUBLE_EQ(centers4[6](0),
p);
511 EXPECT_DOUBLE_EQ(centers4[6](1), (
unsigned int)0);
513 EXPECT_DOUBLE_EQ(centers4[7](0),
p);
514 EXPECT_DOUBLE_EQ(centers4[7](1), 2 *
p * sin60);
515 EXPECT_DOUBLE_EQ(centers4[8](0), (
unsigned int)0);
516 EXPECT_DOUBLE_EQ(centers4[8](1), 2 *
p * sin60);
517 EXPECT_DOUBLE_EQ(centers4[9](0), -
p);
518 EXPECT_DOUBLE_EQ(centers4[9](1), 2 *
p * sin60);
519 EXPECT_DOUBLE_EQ(centers4[10](0), -
p -
p * cos60);
520 EXPECT_DOUBLE_EQ(centers4[10](1),
p * sin60);
521 EXPECT_DOUBLE_EQ(centers4[11](0), -2 *
p);
522 EXPECT_DOUBLE_EQ(centers4[11](1), (
unsigned int)0);
523 EXPECT_DOUBLE_EQ(centers4[12](0), -
p -
p * cos60);
524 EXPECT_DOUBLE_EQ(centers4[12](1), -
p * sin60);
525 EXPECT_DOUBLE_EQ(centers4[13](0), -
p);
526 EXPECT_DOUBLE_EQ(centers4[13](1), -2 *
p * sin60);
527 EXPECT_DOUBLE_EQ(centers4[14](0), (
unsigned int)0);
528 EXPECT_DOUBLE_EQ(centers4[14](1), -2 *
p * sin60);
529 EXPECT_DOUBLE_EQ(centers4[15](0),
p);
530 EXPECT_DOUBLE_EQ(centers4[15](1), -2 *
p * sin60);
531 EXPECT_DOUBLE_EQ(centers4[16](0),
p +
p * cos60);
532 EXPECT_DOUBLE_EQ(centers4[16](1), -
p * sin60);
533 EXPECT_DOUBLE_EQ(centers4[17](0), 2 *
p);
534 EXPECT_DOUBLE_EQ(centers4[17](1), 0.0);
535 EXPECT_DOUBLE_EQ(centers4[18](0),
p +
p * cos60);
536 EXPECT_DOUBLE_EQ(centers4[18](1),
p * sin60);
538 EXPECT_DOUBLE_EQ(centers4[19](0),
p +
p * cos60);
539 EXPECT_DOUBLE_EQ(centers4[19](1), 3 *
p * sin60);
540 EXPECT_DOUBLE_EQ(centers4[20](0),
p * cos60);
541 EXPECT_DOUBLE_EQ(centers4[20](1), 3 *
p * sin60);
542 EXPECT_DOUBLE_EQ(centers4[21](0), -
p * cos60);
543 EXPECT_DOUBLE_EQ(centers4[21](1), 3 *
p * sin60);
544 EXPECT_DOUBLE_EQ(centers4[22](0), -
p -
p * cos60);
545 EXPECT_DOUBLE_EQ(centers4[22](1), 3 *
p * sin60);
546 EXPECT_DOUBLE_EQ(centers4[23](0), -2 *
p);
547 EXPECT_DOUBLE_EQ(centers4[23](1), 2 *
p * sin60);
548 EXPECT_DOUBLE_EQ(centers4[24](0), -2 *
p -
p * cos60);
549 EXPECT_DOUBLE_EQ(centers4[24](1),
p * sin60);
550 EXPECT_DOUBLE_EQ(centers4[25](0), -3 *
p);
551 EXPECT_DOUBLE_EQ(centers4[25](1), (
unsigned int)0);
552 EXPECT_DOUBLE_EQ(centers4[26](0), -2 *
p -
p * cos60);
553 EXPECT_DOUBLE_EQ(centers4[26](1), -
p * sin60);
554 EXPECT_DOUBLE_EQ(centers4[27](0), -2 *
p);
555 EXPECT_DOUBLE_EQ(centers4[27](1), -2 *
p * sin60);
556 EXPECT_DOUBLE_EQ(centers4[28](0), -
p -
p * cos60);
557 EXPECT_DOUBLE_EQ(centers4[28](1), -3 *
p * sin60);
558 EXPECT_DOUBLE_EQ(centers4[29](0), -
p * cos60);
559 EXPECT_DOUBLE_EQ(centers4[29](1), -3 *
p * sin60);
560 EXPECT_DOUBLE_EQ(centers4[30](0),
p * cos60);
561 EXPECT_DOUBLE_EQ(centers4[30](1), -3 *
p * sin60);
562 EXPECT_DOUBLE_EQ(centers4[31](0),
p +
p * cos60);
563 EXPECT_DOUBLE_EQ(centers4[31](1), -3 *
p * sin60);
564 EXPECT_DOUBLE_EQ(centers4[32](0), 2 *
p);
565 EXPECT_DOUBLE_EQ(centers4[32](1), -2 *
p * sin60);
566 EXPECT_DOUBLE_EQ(centers4[33](0), 2 *
p +
p * cos60);
567 EXPECT_DOUBLE_EQ(centers4[33](1), -
p * sin60);
568 EXPECT_DOUBLE_EQ(centers4[34](0), 3 *
p);
569 EXPECT_DOUBLE_EQ(centers4[34](1), (
unsigned int)0);
570 EXPECT_DOUBLE_EQ(centers4[35](0), 2 *
p +
p * cos60);
571 EXPECT_DOUBLE_EQ(centers4[35](1),
p * sin60);
572 EXPECT_DOUBLE_EQ(centers4[36](0), 2 *
p);
573 EXPECT_DOUBLE_EQ(centers4[36](1), 2 *
p * sin60);
575 for (
const auto i : make_range(hl17.
nPins()))
576 EXPECT_DOUBLE_EQ(centers4[i](2), 0.0);
581 Real bp = 5.0, pp = 0.99, pd = 0.8, wd = 0.0, wp = 50.0;
582 unsigned int nr = 3,
a = 2;
596 Real sin60 = std::sqrt(3.0) / 2.0;
599 EXPECT_EQ(centers.size(), hl15.
nPins());
600 ABS_DOUBLE_TEST(centers[0](0), 0.0);
601 ABS_DOUBLE_TEST(centers[0](1), 0.0);
602 ABS_DOUBLE_TEST(centers[0](2), 0.0);
606 EXPECT_EQ(centers2.size(), hl16.
nPins());
607 ABS_DOUBLE_TEST(centers2[0](0), 0.0);
608 ABS_DOUBLE_TEST(centers2[0](1), 0.0);
609 ABS_DOUBLE_TEST(centers2[1](0), -cos60 *
p);
610 ABS_DOUBLE_TEST(centers2[1](1), -sin60 *
p);
611 ABS_DOUBLE_TEST(centers2[2](0), cos60 *
p);
612 ABS_DOUBLE_TEST(centers2[2](1), -sin60 *
p);
613 ABS_DOUBLE_TEST(centers2[3](0),
p);
614 ABS_DOUBLE_TEST(centers2[3](1), 0.0);
615 ABS_DOUBLE_TEST(centers2[4](0), cos60 *
p);
616 ABS_DOUBLE_TEST(centers2[4](1), sin60 *
p);
617 ABS_DOUBLE_TEST(centers2[5](0), -cos60 *
p);
618 ABS_DOUBLE_TEST(centers2[5](1), sin60 *
p);
619 ABS_DOUBLE_TEST(centers2[6](0), -
p);
620 ABS_DOUBLE_TEST(centers2[6](1), (
unsigned int)0);
622 for (
const auto i : make_range(hl16.
nPins()))
623 ABS_DOUBLE_TEST(centers2[i](2), 0.0);
626 EXPECT_EQ(centers3.size(), hl14.
nPins());
627 ABS_DOUBLE_TEST(centers3[0](0), 0.0);
628 ABS_DOUBLE_TEST(centers3[0](1), 0.0);
629 ABS_DOUBLE_TEST(centers3[1](0), -cos60 *
p);
630 ABS_DOUBLE_TEST(centers3[1](1), -sin60 *
p);
631 ABS_DOUBLE_TEST(centers3[2](0), cos60 *
p);
632 ABS_DOUBLE_TEST(centers3[2](1), -sin60 *
p);
633 ABS_DOUBLE_TEST(centers3[3](0),
p);
634 ABS_DOUBLE_TEST(centers3[3](1), 0.0);
635 ABS_DOUBLE_TEST(centers3[4](0), cos60 *
p);
636 ABS_DOUBLE_TEST(centers3[4](1), sin60 *
p);
637 ABS_DOUBLE_TEST(centers3[5](0), -cos60 *
p);
638 ABS_DOUBLE_TEST(centers3[5](1), sin60 *
p);
639 ABS_DOUBLE_TEST(centers3[6](0), -
p);
640 ABS_DOUBLE_TEST(centers3[6](1), (
unsigned int)0);
642 ABS_DOUBLE_TEST(centers3[7](0), -
p);
643 ABS_DOUBLE_TEST(centers3[7](1), -2 *
p * sin60);
644 ABS_DOUBLE_TEST(centers3[8](0), (
unsigned int)0);
645 ABS_DOUBLE_TEST(centers3[8](1), -2 *
p * sin60);
646 ABS_DOUBLE_TEST(centers3[9](0),
p);
647 ABS_DOUBLE_TEST(centers3[9](1), -2 *
p * sin60);
648 ABS_DOUBLE_TEST(centers3[10](0),
p +
p * cos60);
649 ABS_DOUBLE_TEST(centers3[10](1), -
p * sin60);
650 ABS_DOUBLE_TEST(centers3[11](0), 2 *
p);
651 ABS_DOUBLE_TEST(centers3[11](1), (
unsigned int)0);
652 ABS_DOUBLE_TEST(centers3[12](0),
p +
p * cos60);
653 ABS_DOUBLE_TEST(centers3[12](1),
p * sin60);
654 ABS_DOUBLE_TEST(centers3[13](0),
p);
655 ABS_DOUBLE_TEST(centers3[13](1), 2 *
p * sin60);
656 ABS_DOUBLE_TEST(centers3[14](0), (
unsigned int)0);
657 ABS_DOUBLE_TEST(centers3[14](1), 2 *
p * sin60);
658 ABS_DOUBLE_TEST(centers3[15](0), -
p);
659 ABS_DOUBLE_TEST(centers3[15](1), 2 *
p * sin60);
660 ABS_DOUBLE_TEST(centers3[16](0), -
p -
p * cos60);
661 ABS_DOUBLE_TEST(centers3[16](1),
p * sin60);
662 ABS_DOUBLE_TEST(centers3[17](0), -2 *
p);
663 ABS_DOUBLE_TEST(centers3[17](1), 0.0);
664 ABS_DOUBLE_TEST(centers3[18](0), -
p -
p * cos60);
665 ABS_DOUBLE_TEST(centers3[18](1), -
p * sin60);
667 for (
const auto i : make_range(hl14.
nPins()))
668 ABS_DOUBLE_TEST(centers3[i](2), 0.0);
671 EXPECT_EQ(centers4.size(), hl17.
nPins());
672 ABS_DOUBLE_TEST(centers4[0](0), 0.0);
673 ABS_DOUBLE_TEST(centers4[0](1), 0.0);
674 ABS_DOUBLE_TEST(centers4[1](0), -cos60 *
p);
675 ABS_DOUBLE_TEST(centers4[1](1), -sin60 *
p);
676 ABS_DOUBLE_TEST(centers4[2](0), cos60 *
p);
677 ABS_DOUBLE_TEST(centers4[2](1), -sin60 *
p);
678 ABS_DOUBLE_TEST(centers4[3](0),
p);
679 ABS_DOUBLE_TEST(centers4[3](1), 0.0);
680 ABS_DOUBLE_TEST(centers4[4](0), cos60 *
p);
681 ABS_DOUBLE_TEST(centers4[4](1), sin60 *
p);
682 ABS_DOUBLE_TEST(centers4[5](0), -cos60 *
p);
683 ABS_DOUBLE_TEST(centers4[5](1), sin60 *
p);
684 ABS_DOUBLE_TEST(centers4[6](0), -
p);
685 ABS_DOUBLE_TEST(centers4[6](1), (
unsigned int)0);
687 ABS_DOUBLE_TEST(centers4[7](0), -
p);
688 ABS_DOUBLE_TEST(centers4[7](1), -2 *
p * sin60);
689 ABS_DOUBLE_TEST(centers4[8](0), (
unsigned int)0);
690 ABS_DOUBLE_TEST(centers4[8](1), -2 *
p * sin60);
691 ABS_DOUBLE_TEST(centers4[9](0),
p);
692 ABS_DOUBLE_TEST(centers4[9](1), -2 *
p * sin60);
693 ABS_DOUBLE_TEST(centers4[10](0),
p +
p * cos60);
694 ABS_DOUBLE_TEST(centers4[10](1), -
p * sin60);
695 ABS_DOUBLE_TEST(centers4[11](0), 2 *
p);
696 ABS_DOUBLE_TEST(centers4[11](1), (
unsigned int)0);
697 ABS_DOUBLE_TEST(centers4[12](0),
p +
p * cos60);
698 ABS_DOUBLE_TEST(centers4[12](1),
p * sin60);
699 ABS_DOUBLE_TEST(centers4[13](0),
p);
700 ABS_DOUBLE_TEST(centers4[13](1), 2 *
p * sin60);
701 ABS_DOUBLE_TEST(centers4[14](0), (
unsigned int)0);
702 ABS_DOUBLE_TEST(centers4[14](1), 2 *
p * sin60);
703 ABS_DOUBLE_TEST(centers4[15](0), -
p);
704 ABS_DOUBLE_TEST(centers4[15](1), 2 *
p * sin60);
705 ABS_DOUBLE_TEST(centers4[16](0), -
p -
p * cos60);
706 ABS_DOUBLE_TEST(centers4[16](1),
p * sin60);
707 ABS_DOUBLE_TEST(centers4[17](0), -2 *
p);
708 ABS_DOUBLE_TEST(centers4[17](1), 0.0);
709 ABS_DOUBLE_TEST(centers4[18](0), -
p -
p * cos60);
710 ABS_DOUBLE_TEST(centers4[18](1), -
p * sin60);
712 ABS_DOUBLE_TEST(centers4[19](0), -
p -
p * cos60);
713 ABS_DOUBLE_TEST(centers4[19](1), -3 *
p * sin60);
714 ABS_DOUBLE_TEST(centers4[20](0), -
p * cos60);
715 ABS_DOUBLE_TEST(centers4[20](1), -3 *
p * sin60);
716 ABS_DOUBLE_TEST(centers4[21](0),
p * cos60);
717 ABS_DOUBLE_TEST(centers4[21](1), -3 *
p * sin60);
718 ABS_DOUBLE_TEST(centers4[22](0),
p +
p * cos60);
719 ABS_DOUBLE_TEST(centers4[22](1), -3 *
p * sin60);
720 ABS_DOUBLE_TEST(centers4[23](0), 2 *
p);
721 ABS_DOUBLE_TEST(centers4[23](1), -2 *
p * sin60);
722 ABS_DOUBLE_TEST(centers4[24](0), 2 *
p +
p * cos60);
723 ABS_DOUBLE_TEST(centers4[24](1), -
p * sin60);
724 ABS_DOUBLE_TEST(centers4[25](0), 3 *
p);
725 ABS_DOUBLE_TEST(centers4[25](1), (
unsigned int)0);
726 ABS_DOUBLE_TEST(centers4[26](0), 2 *
p +
p * cos60);
727 ABS_DOUBLE_TEST(centers4[26](1),
p * sin60);
728 ABS_DOUBLE_TEST(centers4[27](0), 2 *
p);
729 ABS_DOUBLE_TEST(centers4[27](1), 2 *
p * sin60);
730 ABS_DOUBLE_TEST(centers4[28](0),
p +
p * cos60);
731 ABS_DOUBLE_TEST(centers4[28](1), 3 *
p * sin60);
732 ABS_DOUBLE_TEST(centers4[29](0),
p * cos60);
733 ABS_DOUBLE_TEST(centers4[29](1), 3 *
p * sin60);
734 ABS_DOUBLE_TEST(centers4[30](0), -
p * cos60);
735 ABS_DOUBLE_TEST(centers4[30](1), 3 *
p * sin60);
736 ABS_DOUBLE_TEST(centers4[31](0), -
p -
p * cos60);
737 ABS_DOUBLE_TEST(centers4[31](1), 3 *
p * sin60);
738 ABS_DOUBLE_TEST(centers4[32](0), -2 *
p);
739 ABS_DOUBLE_TEST(centers4[32](1), 2 *
p * sin60);
740 ABS_DOUBLE_TEST(centers4[33](0), -2 *
p -
p * cos60);
741 ABS_DOUBLE_TEST(centers4[33](1),
p * sin60);
742 ABS_DOUBLE_TEST(centers4[34](0), -3 *
p);
743 ABS_DOUBLE_TEST(centers4[34](1), (
unsigned int)0);
744 ABS_DOUBLE_TEST(centers4[35](0), -2 *
p -
p * cos60);
745 ABS_DOUBLE_TEST(centers4[35](1), -
p * sin60);
746 ABS_DOUBLE_TEST(centers4[36](0), -2 *
p);
747 ABS_DOUBLE_TEST(centers4[36](1), -2 *
p * sin60);
749 for (
const auto i : make_range(hl17.
nPins()))
750 ABS_DOUBLE_TEST(centers4[i](2), 0.0);
755 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
756 unsigned int nr = 3,
a = 2;
760 Point pt0(0.06, 0.35, 3.5);
761 Point pt1(-0.47, 0.28, 3.5);
762 Point pt2(-0.26, -0.21, 3.5);
763 Point pt3(-0.12, -0.349, 3.5);
764 Point pt4(0.46, -0.27, 3.5);
765 Point pt5(0.37, 0.6, 3.5);
774 Point pt6(0.36, 1.06, -7.0);
775 Point pt7(0.11, 0.98, -7.0);
776 Point pt8(-0.43, 1.27, -7.0);
777 Point pt9(-0.81, 0.93, -7.0);
778 Point pt10(-0.75, 0.47, -7.0);
779 Point pt11(-1.06, 0.28, -7.0);
780 Point pt12(-1.16, -0.13, -7.0);
781 Point pt13(-0.73, -0.41, -7.0);
782 Point pt14(-0.73, -0.81, -7.0);
783 Point pt15(-0.46, -1.18, -7.0);
784 Point pt16(0.05, -0.98, -7.0);
785 Point pt17(0.27, -1.00, -7.0);
786 Point pt18(0.72, -0.98, -7.0);
787 Point pt19(0.75, -0.58, -7.0);
788 Point pt20(1.23, -0.23, -7.0);
789 Point pt21(1.17, 0.09, -7.0);
790 Point pt22(0.78, 0.38, -7.0);
791 Point pt23(0.74, 0.84, -7.0);
812 Point pt24(0.31, 1.44, -0.1);
813 Point pt25(-0.38, 1.61, -0.1);
814 Point pt26(-1.17, 1.52, -0.1);
815 Point pt27(-1.78, 0.38, -0.1);
816 Point pt28(-1.91, -0.42, -0.1);
817 Point pt29(-1.39, -1.24, -0.1);
818 Point pt30(-0.46, -1.74, -0.1);
819 Point pt31(0.18, -1.79, -0.1);
820 Point pt32(1.24, -1.17, -0.1);
821 Point pt33(1.75, -0.57, -0.1);
822 Point pt34(1.51, 0.37, -0.1);
823 Point pt35(1.16, 1.42, -0.1);
838 Point pt36(1.05, 1.75, 1.2);
839 Point pt37(-1.02, 1.72, 1.2);
840 Point pt38(-2.03, -0.05, 1.2);
841 Point pt39(-1.01, -1.59, 1.2);
842 Point pt40(0.89, -1.79, 1.2);
843 Point pt41(1.98, 0.12, 1.2);
855 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
856 unsigned int nr = 3,
a = 2;
859 Point pt0(0.06, 0.35, 0.0);
860 Point pt1(-0.47, 0.28, 0.0);
861 Point pt2(-0.26, -0.21, 0.0);
862 Point pt3(-0.12, -0.349, 0.0);
863 Point pt4(0.46, -0.27, 0.0);
864 Point pt5(0.37, 0.6, 0.0);
879 pt0 = {0.5 * 0.8 * 0.5, 0.5 * 0.8 * std::sqrt(3.0) / 2.0, 0.0};
882 Point pt6(0.36, 1.06, 0.0);
883 Point pt7(0.11, 0.98, 0.0);
884 Point pt8(-0.43, 1.27, 0.0);
885 Point pt9(-0.81, 0.93, 0.0);
886 Point pt10(-0.75, 0.47, 0.0);
887 Point pt11(-1.06, 0.28, 0.0);
888 Point pt12(-1.16, -0.13, 0.0);
889 Point pt13(-0.73, -0.41, 0.0);
890 Point pt14(-0.73, -0.81, 0.0);
891 Point pt15(-0.46, -1.18, 0.0);
892 Point pt16(0.05, -0.98, 0.0);
893 Point pt17(0.27, -1.00, 0.0);
894 Point pt18(0.72, -0.98, 0.0);
895 Point pt19(0.75, -0.58, 0.0);
896 Point pt20(1.23, -0.23, 0.0);
897 Point pt21(1.17, 0.09, 0.0);
898 Point pt22(0.78, 0.38, 0.0);
899 Point pt23(0.74, 0.84, 0.0);
938 Point pt24(0.31, 1.44, 0.0);
939 Point pt25(-0.38, 1.61, 0.0);
940 Point pt26(-1.17, 1.52, 0.0);
941 Point pt27(-1.78, 0.38, 0.0);
942 Point pt28(-1.91, -0.42, 0.0);
943 Point pt29(-1.39, -1.24, 0.0);
944 Point pt30(-0.46, -1.74, 0.0);
945 Point pt31(0.18, -1.79, 0.0);
946 Point pt32(1.24, -1.17, 0.0);
947 Point pt33(1.75, -0.57, 0.0);
948 Point pt34(1.51, 0.37, 0.0);
949 Point pt35(1.16, 1.42, 0.0);
976 Point pt36(1.05, 1.75, 0.0);
977 Point pt37(-1.02, 1.72, 0.0);
978 Point pt38(-2.03, -0.05, 0.0);
979 Point pt39(-1.01, -1.59, 0.0);
980 Point pt40(0.89, -1.79, 0.0);
981 Point pt41(1.98, 0.12, 0.0);
1051 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
1052 unsigned int nr = 2,
a = 2;
1060 EXPECT_EQ(gi[i].first, 0);
1061 EXPECT_EQ(gi[i++].second, 1);
1063 EXPECT_EQ(gi[i].first, 0);
1064 EXPECT_EQ(gi[i++].second, 2);
1066 EXPECT_EQ(gi[i].first, 0);
1067 EXPECT_EQ(gi[i++].second, 3);
1069 EXPECT_EQ(gi[i].first, 0);
1070 EXPECT_EQ(gi[i++].second, 4);
1072 EXPECT_EQ(gi[i].first, 0);
1073 EXPECT_EQ(gi[i++].second, 5);
1075 EXPECT_EQ(gi[i].first, 0);
1076 EXPECT_EQ(gi[i++].second, 6);
1078 EXPECT_EQ(gi[i].first, 1);
1079 EXPECT_EQ(gi[i++].second, 2);
1081 EXPECT_EQ(gi[i].first, 1);
1082 EXPECT_EQ(gi[i++].second, 6);
1084 EXPECT_EQ(gi[i].first, 2);
1085 EXPECT_EQ(gi[i++].second, 3);
1087 EXPECT_EQ(gi[i].first, 3);
1088 EXPECT_EQ(gi[i++].second, 4);
1090 EXPECT_EQ(gi[i].first, 4);
1091 EXPECT_EQ(gi[i++].second, 5);
1093 EXPECT_EQ(gi[i].first, 5);
1094 EXPECT_EQ(gi[i++].second, 6);
1096 EXPECT_EQ(gi[i].first, 1);
1097 EXPECT_EQ(gi[i++].second, -1);
1099 EXPECT_EQ(gi[i].first, 2);
1100 EXPECT_EQ(gi[i++].second, -1);
1102 EXPECT_EQ(gi[i].first, 2);
1103 EXPECT_EQ(gi[i++].second, -2);
1105 EXPECT_EQ(gi[i].first, 3);
1106 EXPECT_EQ(gi[i++].second, -2);
1108 EXPECT_EQ(gi[i].first, 3);
1109 EXPECT_EQ(gi[i++].second, -3);
1111 EXPECT_EQ(gi[i].first, 4);
1112 EXPECT_EQ(gi[i++].second, -3);
1114 EXPECT_EQ(gi[i].first, 4);
1115 EXPECT_EQ(gi[i++].second, -4);
1117 EXPECT_EQ(gi[i].first, 5);
1118 EXPECT_EQ(gi[i++].second, -4);
1120 EXPECT_EQ(gi[i].first, 5);
1121 EXPECT_EQ(gi[i++].second, -5);
1123 EXPECT_EQ(gi[i].first, 6);
1124 EXPECT_EQ(gi[i++].second, -5);
1126 EXPECT_EQ(gi[i].first, 6);
1127 EXPECT_EQ(gi[i++].second, -6);
1129 EXPECT_EQ(gi[i].first, 1);
1130 EXPECT_EQ(gi[i++].second, -6);
1132 for (
unsigned int i = 0; i < hl.
nGaps(); ++i)
1141 EXPECT_EQ(lg[i][0], 0);
1142 EXPECT_EQ(lg[i][1], 6);
1143 EXPECT_EQ(lg[i++][2], 1);
1145 EXPECT_EQ(lg[i][0], 1);
1146 EXPECT_EQ(lg[i][1], 8);
1147 EXPECT_EQ(lg[i++][2], 2);
1149 EXPECT_EQ(lg[i][0], 2);
1150 EXPECT_EQ(lg[i][1], 9);
1151 EXPECT_EQ(lg[i++][2], 3);
1153 EXPECT_EQ(lg[i][0], 3);
1154 EXPECT_EQ(lg[i][1], 10);
1155 EXPECT_EQ(lg[i++][2], 4);
1157 EXPECT_EQ(lg[i][0], 4);
1158 EXPECT_EQ(lg[i][1], 11);
1159 EXPECT_EQ(lg[i++][2], 5);
1161 EXPECT_EQ(lg[i][0], 5);
1162 EXPECT_EQ(lg[i][1], 7);
1163 EXPECT_EQ(lg[i++][2], 0);
1165 EXPECT_EQ(lg[i][0], 6);
1166 EXPECT_EQ(lg[i][1], 13);
1167 EXPECT_EQ(lg[i++][2], 12);
1169 EXPECT_EQ(lg[i][0], 8);
1170 EXPECT_EQ(lg[i][1], 15);
1171 EXPECT_EQ(lg[i++][2], 14);
1173 EXPECT_EQ(lg[i][0], 9);
1174 EXPECT_EQ(lg[i][1], 17);
1175 EXPECT_EQ(lg[i++][2], 16);
1177 EXPECT_EQ(lg[i][0], 10);
1178 EXPECT_EQ(lg[i][1], 19);
1179 EXPECT_EQ(lg[i++][2], 18);
1181 EXPECT_EQ(lg[i][0], 11);
1182 EXPECT_EQ(lg[i][1], 21);
1183 EXPECT_EQ(lg[i++][2], 20);
1185 EXPECT_EQ(lg[i][0], 7);
1186 EXPECT_EQ(lg[i][1], 23);
1187 EXPECT_EQ(lg[i++][2], 22);
1189 EXPECT_EQ(lg[i][0], 23);
1190 EXPECT_EQ(lg[i++][1], 12);
1192 EXPECT_EQ(lg[i][0], 13);
1193 EXPECT_EQ(lg[i++][1], 14);
1195 EXPECT_EQ(lg[i][0], 15);
1196 EXPECT_EQ(lg[i++][1], 16);
1198 EXPECT_EQ(lg[i][0], 17);
1199 EXPECT_EQ(lg[i++][1], 18);
1201 EXPECT_EQ(lg[i][0], 19);
1202 EXPECT_EQ(lg[i++][1], 20);
1204 EXPECT_EQ(lg[i][0], 21);
1205 EXPECT_EQ(lg[i++][1], 22);
1210 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
1211 unsigned int nr = 3,
a = 2;
1219 EXPECT_EQ(gi[i].first, 0);
1220 EXPECT_EQ(gi[i++].second, 1);
1222 EXPECT_EQ(gi[i].first, 0);
1223 EXPECT_EQ(gi[i++].second, 2);
1225 EXPECT_EQ(gi[i].first, 0);
1226 EXPECT_EQ(gi[i++].second, 3);
1228 EXPECT_EQ(gi[i].first, 0);
1229 EXPECT_EQ(gi[i++].second, 4);
1231 EXPECT_EQ(gi[i].first, 0);
1232 EXPECT_EQ(gi[i++].second, 5);
1234 EXPECT_EQ(gi[i].first, 0);
1235 EXPECT_EQ(gi[i++].second, 6);
1237 EXPECT_EQ(gi[i].first, 1);
1238 EXPECT_EQ(gi[i++].second, 2);
1240 EXPECT_EQ(gi[i].first, 1);
1241 EXPECT_EQ(gi[i++].second, 6);
1243 EXPECT_EQ(gi[i].first, 1);
1244 EXPECT_EQ(gi[i++].second, 7);
1246 EXPECT_EQ(gi[i].first, 1);
1247 EXPECT_EQ(gi[i++].second, 8);
1249 EXPECT_EQ(gi[i].first, 1);
1250 EXPECT_EQ(gi[i++].second, 18);
1252 EXPECT_EQ(gi[i].first, 2);
1253 EXPECT_EQ(gi[i++].second, 3);
1255 EXPECT_EQ(gi[i].first, 2);
1256 EXPECT_EQ(gi[i++].second, 8);
1258 EXPECT_EQ(gi[i].first, 2);
1259 EXPECT_EQ(gi[i++].second, 9);
1261 EXPECT_EQ(gi[i].first, 2);
1262 EXPECT_EQ(gi[i++].second, 10);
1264 EXPECT_EQ(gi[i].first, 3);
1265 EXPECT_EQ(gi[i++].second, 4);
1267 EXPECT_EQ(gi[i].first, 3);
1268 EXPECT_EQ(gi[i++].second, 10);
1270 EXPECT_EQ(gi[i].first, 3);
1271 EXPECT_EQ(gi[i++].second, 11);
1273 EXPECT_EQ(gi[i].first, 3);
1274 EXPECT_EQ(gi[i++].second, 12);
1276 EXPECT_EQ(gi[i].first, 4);
1277 EXPECT_EQ(gi[i++].second, 5);
1279 EXPECT_EQ(gi[i].first, 4);
1280 EXPECT_EQ(gi[i++].second, 12);
1282 EXPECT_EQ(gi[i].first, 4);
1283 EXPECT_EQ(gi[i++].second, 13);
1285 EXPECT_EQ(gi[i].first, 4);
1286 EXPECT_EQ(gi[i++].second, 14);
1288 EXPECT_EQ(gi[i].first, 5);
1289 EXPECT_EQ(gi[i++].second, 6);
1291 EXPECT_EQ(gi[i].first, 5);
1292 EXPECT_EQ(gi[i++].second, 14);
1294 EXPECT_EQ(gi[i].first, 5);
1295 EXPECT_EQ(gi[i++].second, 15);
1297 EXPECT_EQ(gi[i].first, 5);
1298 EXPECT_EQ(gi[i++].second, 16);
1300 EXPECT_EQ(gi[i].first, 6);
1301 EXPECT_EQ(gi[i++].second, 16);
1303 EXPECT_EQ(gi[i].first, 6);
1304 EXPECT_EQ(gi[i++].second, 17);
1306 EXPECT_EQ(gi[i].first, 6);
1307 EXPECT_EQ(gi[i++].second, 18);
1309 EXPECT_EQ(gi[i].first, 7);
1310 EXPECT_EQ(gi[i++].second, 8);
1312 EXPECT_EQ(gi[i].first, 7);
1313 EXPECT_EQ(gi[i++].second, 18);
1315 EXPECT_EQ(gi[i].first, 8);
1316 EXPECT_EQ(gi[i++].second, 9);
1318 EXPECT_EQ(gi[i].first, 9);
1319 EXPECT_EQ(gi[i++].second, 10);
1321 EXPECT_EQ(gi[i].first, 10);
1322 EXPECT_EQ(gi[i++].second, 11);
1324 EXPECT_EQ(gi[i].first, 11);
1325 EXPECT_EQ(gi[i++].second, 12);
1327 EXPECT_EQ(gi[i].first, 12);
1328 EXPECT_EQ(gi[i++].second, 13);
1330 EXPECT_EQ(gi[i].first, 13);
1331 EXPECT_EQ(gi[i++].second, 14);
1333 EXPECT_EQ(gi[i].first, 14);
1334 EXPECT_EQ(gi[i++].second, 15);
1336 EXPECT_EQ(gi[i].first, 15);
1337 EXPECT_EQ(gi[i++].second, 16);
1339 EXPECT_EQ(gi[i].first, 16);
1340 EXPECT_EQ(gi[i++].second, 17);
1342 EXPECT_EQ(gi[i].first, 17);
1343 EXPECT_EQ(gi[i++].second, 18);
1345 EXPECT_EQ(gi[i].first, 7);
1346 EXPECT_EQ(gi[i++].second, -1);
1348 EXPECT_EQ(gi[i].first, 8);
1349 EXPECT_EQ(gi[i++].second, -1);
1351 EXPECT_EQ(gi[i].first, 9);
1352 EXPECT_EQ(gi[i++].second, -1);
1354 EXPECT_EQ(gi[i].first, 9);
1355 EXPECT_EQ(gi[i++].second, -2);
1357 EXPECT_EQ(gi[i].first, 10);
1358 EXPECT_EQ(gi[i++].second, -2);
1360 EXPECT_EQ(gi[i].first, 11);
1361 EXPECT_EQ(gi[i++].second, -2);
1363 EXPECT_EQ(gi[i].first, 11);
1364 EXPECT_EQ(gi[i++].second, -3);
1366 EXPECT_EQ(gi[i].first, 12);
1367 EXPECT_EQ(gi[i++].second, -3);
1369 EXPECT_EQ(gi[i].first, 13);
1370 EXPECT_EQ(gi[i++].second, -3);
1372 EXPECT_EQ(gi[i].first, 13);
1373 EXPECT_EQ(gi[i++].second, -4);
1375 EXPECT_EQ(gi[i].first, 14);
1376 EXPECT_EQ(gi[i++].second, -4);
1378 EXPECT_EQ(gi[i].first, 15);
1379 EXPECT_EQ(gi[i++].second, -4);
1381 EXPECT_EQ(gi[i].first, 15);
1382 EXPECT_EQ(gi[i++].second, -5);
1384 EXPECT_EQ(gi[i].first, 16);
1385 EXPECT_EQ(gi[i++].second, -5);
1387 EXPECT_EQ(gi[i].first, 17);
1388 EXPECT_EQ(gi[i++].second, -5);
1390 EXPECT_EQ(gi[i].first, 17);
1391 EXPECT_EQ(gi[i++].second, -6);
1393 EXPECT_EQ(gi[i].first, 18);
1394 EXPECT_EQ(gi[i++].second, -6);
1396 EXPECT_EQ(gi[i].first, 7);
1397 EXPECT_EQ(gi[i++].second, -6);
1399 for (
unsigned int i = 0; i < hl.
nGaps(); ++i)
1401 if (i == 7 || i == 31)
1408 EXPECT_EQ(lg[i][0], 0);
1409 EXPECT_EQ(lg[i][1], 6);
1410 EXPECT_EQ(lg[i++][2], 1);
1412 EXPECT_EQ(lg[i][0], 1);
1413 EXPECT_EQ(lg[i][1], 11);
1414 EXPECT_EQ(lg[i++][2], 2);
1416 EXPECT_EQ(lg[i][0], 2);
1417 EXPECT_EQ(lg[i][1], 15);
1418 EXPECT_EQ(lg[i++][2], 3);
1420 EXPECT_EQ(lg[i][0], 3);
1421 EXPECT_EQ(lg[i][1], 19);
1422 EXPECT_EQ(lg[i++][2], 4);
1424 EXPECT_EQ(lg[i][0], 4);
1425 EXPECT_EQ(lg[i][1], 23);
1426 EXPECT_EQ(lg[i++][2], 5);
1428 EXPECT_EQ(lg[i][0], 5);
1429 EXPECT_EQ(lg[i][1], 7);
1430 EXPECT_EQ(lg[i++][2], 0);
1432 EXPECT_EQ(lg[i][0], 8);
1433 EXPECT_EQ(lg[i][1], 30);
1434 EXPECT_EQ(lg[i++][2], 9);
1436 EXPECT_EQ(lg[i][0], 12);
1437 EXPECT_EQ(lg[i][1], 6);
1438 EXPECT_EQ(lg[i++][2], 9);
1440 EXPECT_EQ(lg[i][0], 12);
1441 EXPECT_EQ(lg[i][1], 32);
1442 EXPECT_EQ(lg[i++][2], 13);
1444 EXPECT_EQ(lg[i][0], 13);
1445 EXPECT_EQ(lg[i][1], 33);
1446 EXPECT_EQ(lg[i++][2], 14);
1448 EXPECT_EQ(lg[i][0], 16);
1449 EXPECT_EQ(lg[i][1], 11);
1450 EXPECT_EQ(lg[i++][2], 14);
1452 EXPECT_EQ(lg[i][0], 16);
1453 EXPECT_EQ(lg[i][1], 34);
1454 EXPECT_EQ(lg[i++][2], 17);
1456 EXPECT_EQ(lg[i][0], 17);
1457 EXPECT_EQ(lg[i][1], 35);
1458 EXPECT_EQ(lg[i++][2], 18);
1460 EXPECT_EQ(lg[i][0], 20);
1461 EXPECT_EQ(lg[i][1], 15);
1462 EXPECT_EQ(lg[i++][2], 18);
1464 EXPECT_EQ(lg[i][0], 20);
1465 EXPECT_EQ(lg[i][1], 36);
1466 EXPECT_EQ(lg[i++][2], 21);
1468 EXPECT_EQ(lg[i][0], 21);
1469 EXPECT_EQ(lg[i][1], 37);
1470 EXPECT_EQ(lg[i++][2], 22);
1472 EXPECT_EQ(lg[i][0], 24);
1473 EXPECT_EQ(lg[i][1], 19);
1474 EXPECT_EQ(lg[i++][2], 22);
1476 EXPECT_EQ(lg[i][0], 24);
1477 EXPECT_EQ(lg[i][1], 38);
1478 EXPECT_EQ(lg[i++][2], 25);
1480 EXPECT_EQ(lg[i][0], 25);
1481 EXPECT_EQ(lg[i][1], 39);
1482 EXPECT_EQ(lg[i++][2], 26);
1484 EXPECT_EQ(lg[i][0], 27);
1485 EXPECT_EQ(lg[i][1], 23);
1486 EXPECT_EQ(lg[i++][2], 26);
1488 EXPECT_EQ(lg[i][0], 27);
1489 EXPECT_EQ(lg[i][1], 40);
1490 EXPECT_EQ(lg[i++][2], 28);
1492 EXPECT_EQ(lg[i][0], 28);
1493 EXPECT_EQ(lg[i][1], 41);
1494 EXPECT_EQ(lg[i++][2], 29);
1496 EXPECT_EQ(lg[i][0], 10);
1497 EXPECT_EQ(lg[i][1], 7);
1498 EXPECT_EQ(lg[i++][2], 29);
1500 EXPECT_EQ(lg[i][0], 10);
1501 EXPECT_EQ(lg[i][1], 31);
1502 EXPECT_EQ(lg[i++][2], 8);
1505 EXPECT_EQ(lg[i][0], 30);
1506 EXPECT_EQ(lg[i][1], 43);
1507 EXPECT_EQ(lg[i++][2], 42);
1509 EXPECT_EQ(lg[i][0], 32);
1510 EXPECT_EQ(lg[i][1], 44);
1511 EXPECT_EQ(lg[i++][2], 43);
1513 EXPECT_EQ(lg[i][0], 33);
1514 EXPECT_EQ(lg[i][1], 46);
1515 EXPECT_EQ(lg[i++][2], 45);
1517 EXPECT_EQ(lg[i][0], 34);
1518 EXPECT_EQ(lg[i][1], 47);
1519 EXPECT_EQ(lg[i++][2], 46);
1521 EXPECT_EQ(lg[i][0], 35);
1522 EXPECT_EQ(lg[i][1], 49);
1523 EXPECT_EQ(lg[i++][2], 48);
1525 EXPECT_EQ(lg[i][0], 36);
1526 EXPECT_EQ(lg[i][1], 50);
1527 EXPECT_EQ(lg[i++][2], 49);
1529 EXPECT_EQ(lg[i][0], 37);
1530 EXPECT_EQ(lg[i][1], 52);
1531 EXPECT_EQ(lg[i++][2], 51);
1533 EXPECT_EQ(lg[i][0], 38);
1534 EXPECT_EQ(lg[i][1], 53);
1535 EXPECT_EQ(lg[i++][2], 52);
1537 EXPECT_EQ(lg[i][0], 39);
1538 EXPECT_EQ(lg[i][1], 55);
1539 EXPECT_EQ(lg[i++][2], 54);
1541 EXPECT_EQ(lg[i][0], 40);
1542 EXPECT_EQ(lg[i][1], 56);
1543 EXPECT_EQ(lg[i++][2], 55);
1545 EXPECT_EQ(lg[i][0], 41);
1546 EXPECT_EQ(lg[i][1], 58);
1547 EXPECT_EQ(lg[i++][2], 57);
1549 EXPECT_EQ(lg[i][0], 31);
1550 EXPECT_EQ(lg[i][1], 59);
1551 EXPECT_EQ(lg[i++][2], 58);
1554 EXPECT_EQ(lg[i][0], 59);
1555 EXPECT_EQ(lg[i++][1], 42);
1557 EXPECT_EQ(lg[i][0], 44);
1558 EXPECT_EQ(lg[i++][1], 45);
1560 EXPECT_EQ(lg[i][0], 47);
1561 EXPECT_EQ(lg[i++][1], 48);
1563 EXPECT_EQ(lg[i][0], 50);
1564 EXPECT_EQ(lg[i++][1], 51);
1566 EXPECT_EQ(lg[i][0], 53);
1567 EXPECT_EQ(lg[i++][1], 54);
1569 EXPECT_EQ(lg[i][0], 56);
1570 EXPECT_EQ(lg[i++][1], 57);
1645 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
1646 unsigned int nr = 2,
a = 2;
1649 Real sin60 = std::sqrt(3.0) / 2.0;
1651 for (
const auto & n : normals)
1652 EXPECT_DOUBLE_EQ(n(2), 0.0);
1654 EXPECT_DOUBLE_EQ(normals[0](0), -sin60);
1655 EXPECT_DOUBLE_EQ(normals[0](1), 0.5);
1657 EXPECT_DOUBLE_EQ(normals[1](0), -sin60);
1658 EXPECT_DOUBLE_EQ(normals[1](1), -0.5);
1660 EXPECT_DOUBLE_EQ(normals[2](0), 0.0);
1661 EXPECT_DOUBLE_EQ(normals[2](1), -1.0);
1663 EXPECT_DOUBLE_EQ(normals[3](0), sin60);
1664 EXPECT_DOUBLE_EQ(normals[3](1), -0.5);
1666 EXPECT_DOUBLE_EQ(normals[4](0), sin60);
1667 EXPECT_DOUBLE_EQ(normals[4](1), 0.5);
1669 EXPECT_DOUBLE_EQ(normals[5](0), 0.0);
1670 EXPECT_DOUBLE_EQ(normals[5](1), 1.0);
1672 EXPECT_DOUBLE_EQ(normals[6](0), 0.0);
1673 EXPECT_DOUBLE_EQ(normals[6](1), -1.0);
1675 EXPECT_DOUBLE_EQ(normals[7](0), -sin60);
1676 EXPECT_DOUBLE_EQ(normals[7](1), -0.5);
1678 EXPECT_DOUBLE_EQ(normals[8](0), sin60);
1679 EXPECT_DOUBLE_EQ(normals[8](1), -0.5);
1681 EXPECT_DOUBLE_EQ(normals[9](0), sin60);
1682 EXPECT_DOUBLE_EQ(normals[9](1), 0.5);
1684 EXPECT_DOUBLE_EQ(normals[10](0), 0.0);
1685 EXPECT_DOUBLE_EQ(normals[10](1), 1.0);
1687 EXPECT_DOUBLE_EQ(normals[11](0), -sin60);
1688 EXPECT_DOUBLE_EQ(normals[11](1), 0.5);
1690 EXPECT_DOUBLE_EQ(normals[12](0), -1.0);
1691 EXPECT_DOUBLE_EQ(normals[12](1), 0.0);
1693 EXPECT_DOUBLE_EQ(normals[13](0), -1.0);
1694 EXPECT_DOUBLE_EQ(normals[13](1), 0.0);
1696 EXPECT_DOUBLE_EQ(normals[14](0), -0.5);
1697 EXPECT_DOUBLE_EQ(normals[14](1), -sin60);
1699 EXPECT_DOUBLE_EQ(normals[15](0), -0.5);
1700 EXPECT_DOUBLE_EQ(normals[15](1), -sin60);
1702 EXPECT_DOUBLE_EQ(normals[16](0), 0.5);
1703 EXPECT_DOUBLE_EQ(normals[16](1), -sin60);
1705 EXPECT_DOUBLE_EQ(normals[17](0), 0.5);
1706 EXPECT_DOUBLE_EQ(normals[17](1), -sin60);
1708 EXPECT_DOUBLE_EQ(normals[18](0), 1.0);
1709 EXPECT_DOUBLE_EQ(normals[18](1), 0.0);
1711 EXPECT_DOUBLE_EQ(normals[19](0), 1.0);
1712 EXPECT_DOUBLE_EQ(normals[19](1), 0.0);
1714 EXPECT_DOUBLE_EQ(normals[20](0), 0.5);
1715 EXPECT_DOUBLE_EQ(normals[20](1), sin60);
1717 EXPECT_DOUBLE_EQ(normals[21](0), 0.5);
1718 EXPECT_DOUBLE_EQ(normals[21](1), sin60);
1720 EXPECT_DOUBLE_EQ(normals[22](0), -0.5);
1721 EXPECT_DOUBLE_EQ(normals[22](1), sin60);
1723 EXPECT_DOUBLE_EQ(normals[23](0), -0.5);
1724 EXPECT_DOUBLE_EQ(normals[23](1), sin60);
1729 Real bp = 4.0, pp = 0.8, pd = 0.6, wd = 0.05, wp = 50.0;
1730 unsigned int nr = 3,
a = 2;
1733 Real sin60 = std::sqrt(3.0) / 2.0;
1735 for (
const auto & n : normals)
1736 EXPECT_DOUBLE_EQ(n(2), 0.0);
1738 EXPECT_DOUBLE_EQ(normals[0](0), -sin60);
1739 EXPECT_DOUBLE_EQ(normals[0](1), 0.5);
1741 EXPECT_DOUBLE_EQ(normals[1](0), -sin60);
1742 EXPECT_DOUBLE_EQ(normals[1](1), -0.5);
1744 EXPECT_DOUBLE_EQ(normals[2](0), 0.0);
1745 EXPECT_DOUBLE_EQ(normals[2](1), -1.0);
1747 EXPECT_DOUBLE_EQ(normals[3](0), sin60);
1748 EXPECT_DOUBLE_EQ(normals[3](1), -0.5);
1750 EXPECT_DOUBLE_EQ(normals[4](0), sin60);
1751 EXPECT_DOUBLE_EQ(normals[4](1), 0.5);
1753 EXPECT_DOUBLE_EQ(normals[5](0), 0.0);
1754 EXPECT_DOUBLE_EQ(normals[5](1), 1.0);
1756 EXPECT_DOUBLE_EQ(normals[6](0), 0.0);
1757 EXPECT_DOUBLE_EQ(normals[6](1), -1.0);
1759 EXPECT_DOUBLE_EQ(normals[7](0), -sin60);
1760 EXPECT_DOUBLE_EQ(normals[7](1), -0.5);
1762 EXPECT_DOUBLE_EQ(normals[8](0), -sin60);
1763 EXPECT_DOUBLE_EQ(normals[8](1), 0.5);
1765 EXPECT_DOUBLE_EQ(normals[9](0), -sin60);
1766 EXPECT_DOUBLE_EQ(normals[9](1), -0.5);
1768 EXPECT_DOUBLE_EQ(normals[10](0), 0.0);
1769 EXPECT_DOUBLE_EQ(normals[10](1), 1.0);
1771 EXPECT_DOUBLE_EQ(normals[11](0), sin60);
1772 EXPECT_DOUBLE_EQ(normals[11](1), -0.5);
1774 EXPECT_DOUBLE_EQ(normals[12](0), -sin60);
1775 EXPECT_DOUBLE_EQ(normals[12](1), 0.5);
1777 EXPECT_DOUBLE_EQ(normals[13](0), -sin60);
1778 EXPECT_DOUBLE_EQ(normals[13](1), -0.5);
1780 EXPECT_DOUBLE_EQ(normals[14](0), 0.0);
1781 EXPECT_DOUBLE_EQ(normals[14](1), -1.0);
1783 EXPECT_DOUBLE_EQ(normals[15](0), sin60);
1784 EXPECT_DOUBLE_EQ(normals[15](1), 0.5);
1786 EXPECT_DOUBLE_EQ(normals[16](0), -sin60);
1787 EXPECT_DOUBLE_EQ(normals[16](1), -0.5);
1789 EXPECT_DOUBLE_EQ(normals[17](0), 0.0);
1790 EXPECT_DOUBLE_EQ(normals[17](1), -1.0);
1792 EXPECT_DOUBLE_EQ(normals[18](0), sin60);
1793 EXPECT_DOUBLE_EQ(normals[18](1), -0.5);
1795 EXPECT_DOUBLE_EQ(normals[19](0), 0.0);
1796 EXPECT_DOUBLE_EQ(normals[19](1), 1.0);
1798 EXPECT_DOUBLE_EQ(normals[20](0), 0.0);
1799 EXPECT_DOUBLE_EQ(normals[20](1), -1.0);
1801 EXPECT_DOUBLE_EQ(normals[21](0), sin60);
1802 EXPECT_DOUBLE_EQ(normals[21](1), -0.5);
1804 EXPECT_DOUBLE_EQ(normals[22](0), sin60);
1805 EXPECT_DOUBLE_EQ(normals[22](1), 0.5);
1807 EXPECT_DOUBLE_EQ(normals[23](0), -sin60);
1808 EXPECT_DOUBLE_EQ(normals[23](1), 0.5);
1810 EXPECT_DOUBLE_EQ(normals[24](0), sin60);
1811 EXPECT_DOUBLE_EQ(normals[24](1), -0.5);
1813 EXPECT_DOUBLE_EQ(normals[25](0), sin60);
1814 EXPECT_DOUBLE_EQ(normals[25](1), 0.5);
1816 EXPECT_DOUBLE_EQ(normals[26](0), 0.0);
1817 EXPECT_DOUBLE_EQ(normals[26](1), 1.0);
1819 EXPECT_DOUBLE_EQ(normals[27](0), sin60);
1820 EXPECT_DOUBLE_EQ(normals[27](1), 0.5);
1822 EXPECT_DOUBLE_EQ(normals[28](0), 0.0);
1823 EXPECT_DOUBLE_EQ(normals[28](1), 1.0);
1825 EXPECT_DOUBLE_EQ(normals[29](0), -sin60);
1826 EXPECT_DOUBLE_EQ(normals[29](1), 0.5);
1828 EXPECT_DOUBLE_EQ(normals[30](0), 0.0);
1829 EXPECT_DOUBLE_EQ(normals[30](1), -1.0);
1831 EXPECT_DOUBLE_EQ(normals[31](0), -sin60);
1832 EXPECT_DOUBLE_EQ(normals[31](1), -0.5);
1834 EXPECT_DOUBLE_EQ(normals[32](0), 0.0);
1835 EXPECT_DOUBLE_EQ(normals[32](1), -1.0);
1837 EXPECT_DOUBLE_EQ(normals[33](0), sin60);
1838 EXPECT_DOUBLE_EQ(normals[33](1), -0.5);
1840 EXPECT_DOUBLE_EQ(normals[34](0), sin60);
1841 EXPECT_DOUBLE_EQ(normals[34](1), -0.5);
1843 EXPECT_DOUBLE_EQ(normals[35](0), sin60);
1844 EXPECT_DOUBLE_EQ(normals[35](1), 0.5);
1846 EXPECT_DOUBLE_EQ(normals[36](0), sin60);
1847 EXPECT_DOUBLE_EQ(normals[36](1), 0.5);
1849 EXPECT_DOUBLE_EQ(normals[37](0), 0.0);
1850 EXPECT_DOUBLE_EQ(normals[37](1), 1.0);
1852 EXPECT_DOUBLE_EQ(normals[38](0), 0.0);
1853 EXPECT_DOUBLE_EQ(normals[38](1), 1.0);
1855 EXPECT_DOUBLE_EQ(normals[39](0), -sin60);
1856 EXPECT_DOUBLE_EQ(normals[39](1), 0.5);
1858 EXPECT_DOUBLE_EQ(normals[40](0), -sin60);
1859 EXPECT_DOUBLE_EQ(normals[40](1), 0.5);
1861 EXPECT_DOUBLE_EQ(normals[41](0), -sin60);
1862 EXPECT_DOUBLE_EQ(normals[41](1), -0.5);
1864 EXPECT_DOUBLE_EQ(normals[42](0), -1.0);
1865 EXPECT_DOUBLE_EQ(normals[42](1), 0.0);
1867 EXPECT_DOUBLE_EQ(normals[43](0), -1.0);
1868 EXPECT_DOUBLE_EQ(normals[43](1), 0.0);
1870 EXPECT_DOUBLE_EQ(normals[44](0), -1.0);
1871 EXPECT_DOUBLE_EQ(normals[44](1), 0.0);
1873 EXPECT_DOUBLE_EQ(normals[45](0), -0.5);
1874 EXPECT_DOUBLE_EQ(normals[45](1), -sin60);
1876 EXPECT_DOUBLE_EQ(normals[46](0), -0.5);
1877 EXPECT_DOUBLE_EQ(normals[46](1), -sin60);
1879 EXPECT_DOUBLE_EQ(normals[47](0), -0.5);
1880 EXPECT_DOUBLE_EQ(normals[47](1), -sin60);
1882 EXPECT_DOUBLE_EQ(normals[48](0), 0.5);
1883 EXPECT_DOUBLE_EQ(normals[48](1), -sin60);
1885 EXPECT_DOUBLE_EQ(normals[49](0), 0.5);
1886 EXPECT_DOUBLE_EQ(normals[49](1), -sin60);
1888 EXPECT_DOUBLE_EQ(normals[50](0), 0.5);
1889 EXPECT_DOUBLE_EQ(normals[50](1), -sin60);
1891 EXPECT_DOUBLE_EQ(normals[51](0), 1.0);
1892 EXPECT_DOUBLE_EQ(normals[51](1), 0.0);
1894 EXPECT_DOUBLE_EQ(normals[52](0), 1.0);
1895 EXPECT_DOUBLE_EQ(normals[52](1), 0.0);
1897 EXPECT_DOUBLE_EQ(normals[53](0), 1.0);
1898 EXPECT_DOUBLE_EQ(normals[53](1), 0.0);
1900 EXPECT_DOUBLE_EQ(normals[54](0), 0.5);
1901 EXPECT_DOUBLE_EQ(normals[54](1), sin60);
1903 EXPECT_DOUBLE_EQ(normals[55](0), 0.5);
1904 EXPECT_DOUBLE_EQ(normals[55](1), sin60);
1906 EXPECT_DOUBLE_EQ(normals[56](0), 0.5);
1907 EXPECT_DOUBLE_EQ(normals[56](1), sin60);
1909 EXPECT_DOUBLE_EQ(normals[57](0), -0.5);
1910 EXPECT_DOUBLE_EQ(normals[57](1), sin60);
1912 EXPECT_DOUBLE_EQ(normals[58](0), -0.5);
1913 EXPECT_DOUBLE_EQ(normals[58](1), sin60);
1915 EXPECT_DOUBLE_EQ(normals[59](0), -0.5);
1916 EXPECT_DOUBLE_EQ(normals[59](1), sin60);