fork download
  1. #include <vector>
  2. #include <iostream>
  3. #include <cmath>
  4. #include <limits>
  5. #include <iomanip>
  6.  
  7. namespace so
  8. {
  9. using _data_ = float;
  10.  
  11. namespace cnst
  12. {
  13. constexpr static std::size_t size_point {360};
  14. constexpr static _data_ radius {100};
  15. constexpr static _data_ length_arrow {5};
  16.  
  17. constexpr _data_ get_pi()
  18. {
  19. return (std::atan(1) * 4);
  20. }
  21. } //namespace so::cnst
  22.  
  23. struct _point_
  24. {
  25. _data_ x;
  26. _data_ y;
  27. };
  28. } // namespace so
  29.  
  30. int main()
  31. {
  32. std::cout.setf(std::ios_base::fixed); // setting floating point output precision
  33.  
  34. std::vector<so::_point_> function_(so::cnst::size_point); // 'y = f(x)' function's value and argument
  35. // Filling in function's value and argument. Using 'y^2 = R^2 - x^2' function (a circle with center in origin with radius 'R').
  36. for (std::size_t i_ = 0; i_ < function_.size(); ++i_)
  37. {
  38. function_[i_].x = so::cnst::radius * std::cos(2 * so::cnst::get_pi() / so::cnst::size_point * i_);
  39. function_[i_].y = so::cnst::radius * std::sin(2 * so::cnst::get_pi() / so::cnst::size_point * i_);
  40. }
  41.  
  42. // In simple model, cannot calculate value of derivative in end points (no arrow too, therefore). So these arrays have
  43. // 'function_.size() - 2 )' elements corresponding to 'function_[1] ... function_[function_.size() - 2]' points.
  44. std::vector<so::_data_> derivative_(function_.size() - 2); // derivative's value
  45. std::vector<so::_point_> arrow_(function_.size() - 2); // arrow's end with respect to function's point
  46. // Simple way to calculate derivative. Calculate arrow's end as well.
  47. for (std::size_t i_ = 1; i_ < function_.size() - 1; ++i_)
  48. {
  49. if ((function_[i_ + 1].x - function_[i_ - 1].x) != 0) // derivative is finite
  50. {
  51. derivative_[i_ - 1] = (function_[i_ + 1].y - function_[i_ - 1].y) / (function_[i_ + 1].x - function_[i_ - 1].x);
  52. arrow_[i_ - 1].x = std::copysign(so::cnst::length_arrow * std::cos(std::atan(derivative_[i_ - 1])),
  53. (function_[i_ + 1].x - function_[i_ - 1].x));
  54. arrow_[i_ - 1].y = std::copysign(so::cnst::length_arrow * std::sin(std::atan(derivative_[i_ - 1])),
  55. (function_[i_ + 1].y - function_[i_ - 1].y));
  56. }
  57. else // derivative is infinite; arrow's end 'x = 0', 'y' depends on the sign of the infinite derivative
  58. {
  59. derivative_[i_ - 1] = std::copysign(std::numeric_limits<so::_data_>::infinity(), function_[i_ + 1].y - function_[i_ - 1].y);
  60. arrow_[i_ - 1].x = 0;
  61. arrow_[i_ - 1].y = std::copysign(so::cnst::length_arrow, (function_[i_ + 1].y - function_[i_ - 1].y));
  62. }
  63. }
  64.  
  65. // Output point's number, arrow's coordinates, arrow's length, derivative and the corresponding angle.
  66. // Format: 'number : (x0, y0) - (x1, y1) : length : derivative : angle'
  67. for (std::size_t i_ = 1; i_ < function_.size() - 1; ++i_)
  68. {
  69. std::cout << std::setw(4) << i_ << " | (" << function_[i_].x << ", " << function_[i_].y << ") - ("
  70. << (function_[i_].x + arrow_[i_ - 1].x) << ", " << (function_[i_].y + arrow_[i_ - 1].y) << ") | "
  71. << std::sqrt((arrow_[i_ - 1].x * arrow_[i_ - 1].x) + (arrow_[i_ - 1].y * arrow_[i_ - 1].y)) << " | "
  72. << derivative_[i_ - 1] << " | " << std::atan(derivative_[i_ - 1]) / so::cnst::get_pi() * so::cnst::size_point / 2
  73. << "\n";
  74. }
  75.  
  76. return (0);
  77. }
  78.  
Success #stdin #stdout 0s 3476KB
stdin
Standard input is empty
stdout
   1 | (99.984772, 1.745241) - (99.897514, 6.744479) | 5.000000 | -57.293919 | -89.000069
   2 | (99.939087, 3.489949) - (99.764587, 8.486903) | 5.000000 | -28.635668 | -87.999954
   3 | (99.862953, 5.233596) - (99.601273, 10.226744) | 5.000000 | -19.081078 | -86.999985
   4 | (99.756409, 6.975647) - (99.407623, 11.963467) | 5.000000 | -14.300612 | -85.999985
   5 | (99.619469, 8.715573) - (99.183693, 13.696547) | 5.000000 | -11.430092 | -85.000015
   6 | (99.452194, 10.452847) - (98.929558, 15.425456) | 5.000000 | -9.514413 | -84.000031
   7 | (99.254616, 12.186934) - (98.645256, 17.149664) | 5.000000 | -8.144166 | -82.999847
   8 | (99.026802, 13.917311) - (98.330940, 18.868652) | 5.000000 | -7.115406 | -82.000038
   9 | (98.768837, 15.643448) - (97.986671, 20.581890) | 5.000000 | -6.313792 | -81.000053
  10 | (98.480774, 17.364819) - (97.612534, 22.288857) | 5.000000 | -5.671266 | -79.999969
  11 | (98.162720, 19.080900) - (97.208687, 23.989038) | 5.000000 | -5.144610 | -79.000114
  12 | (97.814766, 20.791170) - (96.775200, 25.681908) | 5.000000 | -4.704603 | -77.999931
  13 | (97.437004, 22.495104) - (96.312241, 27.366951) | 5.000000 | -4.331437 | -76.999886
  14 | (97.029572, 24.192190) - (95.819969, 29.043671) | 5.000000 | -4.010795 | -76.000046
  15 | (96.592583, 25.881905) - (95.298485, 30.711533) | 5.000000 | -3.732046 | -74.999977
  16 | (96.126167, 27.563736) - (94.747986, 32.370045) | 5.000000 | -3.487421 | -74.000031
  17 | (95.630478, 29.237169) - (94.168625, 34.018696) | 5.000000 | -3.270862 | -73.000046
  18 | (95.105652, 30.901701) - (93.560562, 35.656982) | 5.000000 | -3.077673 | -71.999939
  19 | (94.551857, 32.556812) - (92.924011, 37.284405) | 5.000000 | -2.904204 | -70.999954
  20 | (93.969261, 34.202011) - (92.259163, 38.900475) | 5.000000 | -2.747476 | -69.999985
  21 | (93.358040, 35.836796) - (91.566200, 40.504700) | 5.000000 | -2.605090 | -69.000008
  22 | (92.718384, 37.460659) - (90.845352, 42.096581) | 5.000000 | -2.475088 | -68.000008
  23 | (92.050484, 39.073112) - (90.096832, 43.675636) | 5.000000 | -2.355855 | -67.000023
  24 | (91.354546, 40.673664) - (89.320862, 45.241390) | 5.000000 | -2.246034 | -65.999969
  25 | (90.630775, 42.261826) - (88.517685, 46.793365) | 5.000000 | -2.144505 | -64.999977
  26 | (89.879402, 43.837116) - (87.687553, 48.331089) | 5.000000 | -2.050310 | -64.000069
  27 | (89.100655, 45.399048) - (86.830696, 49.854080) | 5.000000 | -1.962608 | -62.999966
  28 | (88.294754, 46.947159) - (85.947403, 51.361900) | 5.000000 | -1.880730 | -62.000038
  29 | (87.461975, 48.480961) - (85.037933, 52.854061) | 5.000000 | -1.804050 | -61.000034
  30 | (86.602539, 50.000000) - (84.102531, 54.330124) | 5.000000 | -1.732045 | -59.999916
  31 | (85.716728, 51.503807) - (83.141541, 55.789646) | 5.000000 | -1.664282 | -59.000031
  32 | (84.804810, 52.991928) - (82.155220, 57.232170) | 5.000000 | -1.600338 | -58.000057
  33 | (83.867058, 54.463905) - (81.143867, 58.657261) | 5.000000 | -1.539868 | -57.000046
  34 | (82.903763, 55.919289) - (80.107796, 60.064476) | 5.000000 | -1.482561 | -55.999996
  35 | (81.915207, 57.357643) - (79.047325, 61.453403) | 5.000000 | -1.428148 | -54.999996
  36 | (80.901703, 58.778526) - (77.962776, 62.823612) | 5.000000 | -1.376382 | -54.000008
  37 | (79.863556, 60.181499) - (76.854485, 64.174675) | 5.000000 | -1.327046 | -53.000019
  38 | (78.801079, 61.566151) - (75.722763, 65.506195) | 5.000000 | -1.279937 | -51.999893
  39 | (77.714592, 62.932037) - (74.567986, 66.817764) | 5.000000 | -1.234892 | -50.999889
  40 | (76.604446, 64.278755) - (73.390518, 68.108986) | 5.000000 | -1.191759 | -50.000134
  41 | (75.470963, 65.605904) - (72.190674, 69.379456) | 5.000000 | -1.150371 | -49.000072
  42 | (74.314484, 66.913063) - (70.968826, 70.628784) | 5.000000 | -1.110610 | -47.999924
  43 | (73.135368, 68.199837) - (69.725372, 71.856606) | 5.000000 | -1.072368 | -46.999969
  44 | (71.933975, 69.465843) - (68.460686, 73.062546) | 5.000000 | -1.035531 | -46.000011
  45 | (70.710678, 70.710678) - (67.175140, 74.246216) | 5.000000 | -1.000000 | -45.000000
  46 | (69.465843, 71.933975) - (65.869141, 75.407265) | 5.000000 | -0.965688 | -43.999985
  47 | (68.199837, 73.135368) - (64.543068, 76.545357) | 5.000000 | -0.932513 | -42.999943
  48 | (66.913055, 74.314484) - (63.197330, 77.660133) | 5.000000 | -0.900404 | -41.999985
  49 | (65.605904, 75.470955) - (61.832359, 78.751259) | 5.000000 | -0.869289 | -41.000088
  50 | (64.278763, 76.604446) - (60.448544, 79.818390) | 5.000000 | -0.839101 | -40.000038
  51 | (62.932045, 77.714592) - (59.046310, 80.861191) | 5.000000 | -0.809782 | -38.999931
  52 | (61.566151, 78.801071) - (57.626099, 81.879379) | 5.000000 | -0.781288 | -38.000069
  53 | (60.181503, 79.863556) - (56.188332, 82.872643) | 5.000000 | -0.753557 | -37.000118
  54 | (58.778530, 80.901703) - (54.733444, 83.840622) | 5.000000 | -0.726541 | -35.999950
  55 | (57.357643, 81.915207) - (53.261875, 84.783081) | 5.000000 | -0.700204 | -34.999863
  56 | (55.919289, 82.903755) - (51.774101, 85.699722) | 5.000000 | -0.674509 | -34.000000
  57 | (54.463905, 83.867058) - (50.270554, 86.590256) | 5.000000 | -0.649409 | -33.000057
  58 | (52.991928, 84.804810) - (48.751686, 87.454399) | 5.000000 | -0.624868 | -31.999941
  59 | (51.503807, 85.716728) - (47.217972, 88.291924) | 5.000000 | -0.600862 | -31.000044
  60 | (49.999996, 86.602547) - (45.669872, 89.102554) | 5.000000 | -0.577351 | -30.000050
  61 | (48.480957, 87.461975) - (44.107853, 89.886017) | 5.000000 | -0.554306 | -28.999882
  62 | (46.947159, 88.294754) - (42.532421, 90.642113) | 5.000000 | -0.531710 | -28.000017
  63 | (45.399052, 89.100655) - (40.944019, 91.370613) | 5.000000 | -0.509526 | -27.000032
  64 | (43.837116, 89.879402) - (39.343147, 92.071259) | 5.000000 | -0.487733 | -26.000015
  65 | (42.261826, 90.630783) - (37.730286, 92.743874) | 5.000000 | -0.466308 | -24.999994
  66 | (40.673660, 91.354546) - (36.105930, 93.388229) | 5.000000 | -0.445228 | -23.999962
  67 | (39.073120, 92.050484) - (34.470596, 94.004143) | 5.000000 | -0.424475 | -23.000025
  68 | (37.460663, 92.718384) - (32.824741, 94.591415) | 5.000000 | -0.404026 | -21.999966
  69 | (35.836800, 93.358040) - (31.168898, 95.149879) | 5.000000 | -0.383864 | -20.999994
  70 | (34.202015, 93.969261) - (29.503551, 95.679359) | 5.000000 | -0.363970 | -19.999990
  71 | (32.556812, 94.551857) - (27.829220, 96.179695) | 5.000000 | -0.344328 | -19.000002
  72 | (30.901697, 95.105652) - (26.146414, 96.650734) | 5.000000 | -0.324919 | -17.999985
  73 | (29.237179, 95.630470) - (24.455654, 97.092331) | 5.000000 | -0.305731 | -16.999990
  74 | (27.563740, 96.126167) - (22.757433, 97.504356) | 5.000000 | -0.286746 | -16.000055
  75 | (25.881907, 96.592583) - (21.052277, 97.886681) | 5.000000 | -0.267949 | -15.000003
  76 | (24.192190, 97.029572) - (19.340710, 98.239174) | 5.000000 | -0.249327 | -13.999946
  77 | (22.495104, 97.437004) - (17.623255, 98.561768) | 5.000000 | -0.230870 | -13.000098
  78 | (20.791166, 97.814766) - (15.900430, 98.854332) | 5.000000 | -0.212558 | -12.000088
  79 | (19.080906, 98.162720) - (14.172768, 99.116760) | 5.000000 | -0.194379 | -10.999907
  80 | (17.364822, 98.480774) - (12.440784, 99.349014) | 5.000000 | -0.176327 | -10.000012
  81 | (15.643449, 98.768837) - (10.705006, 99.551003) | 5.000000 | -0.158383 | -8.999934
  82 | (13.917311, 99.026802) - (8.965970, 99.722664) | 5.000000 | -0.140540 | -7.999953
  83 | (12.186933, 99.254616) - (7.224203, 99.863976) | 5.000000 | -0.122787 | -7.000144
  84 | (10.452842, 99.452194) - (5.480232, 99.974838) | 5.000000 | -0.105104 | -5.999984
  85 | (8.715580, 99.619469) - (3.734606, 100.055244) | 5.000000 | -0.087489 | -4.999995
  86 | (6.975651, 99.756409) - (1.987831, 100.105194) | 5.000000 | -0.069927 | -4.000009
  87 | (5.233597, 99.862953) - (0.240450, 100.124634) | 5.000000 | -0.052408 | -3.000006
  88 | (3.489949, 99.939087) - (-1.507004, 100.113586) | 5.000000 | -0.034921 | -2.000039
  89 | (1.745238, 99.984772) - (-3.254000, 100.072029) | 5.000000 | -0.017454 | -0.999930
  90 | (-0.000004, 100.000000) - (-5.000004, 100.000000) | 5.000000 | -0.000000 | -0.000000
  91 | (-1.745235, 99.984772) - (-6.744473, 99.897514) | 5.000000 | 0.017454 | 0.999933
  92 | (-3.489946, 99.939087) - (-8.486900, 99.764587) | 5.000000 | 0.034921 | 2.000039
  93 | (-5.233594, 99.862953) - (-10.226742, 99.601273) | 5.000000 | 0.052408 | 3.000005
  94 | (-6.975648, 99.756409) - (-11.963469, 99.407623) | 5.000000 | 0.069927 | 4.000009
  95 | (-8.715577, 99.619469) - (-13.696550, 99.183693) | 5.000000 | 0.087488 | 4.999977
  96 | (-10.452851, 99.452194) - (-15.425461, 98.929550) | 5.000000 | 0.105104 | 5.999986
  97 | (-12.186929, 99.254616) - (-17.149658, 98.645256) | 5.000000 | 0.122788 | 7.000169
  98 | (-13.917308, 99.026802) - (-18.868649, 98.330940) | 5.000000 | 0.140540 | 7.999953
  99 | (-15.643445, 98.768837) - (-20.581888, 97.986671) | 5.000000 | 0.158383 | 8.999936
 100 | (-17.364819, 98.480774) - (-22.288857, 97.612534) | 5.000000 | 0.176327 | 10.000012
 101 | (-19.080902, 98.162720) - (-23.989040, 97.208679) | 5.000000 | 0.194379 | 10.999907
 102 | (-20.791162, 97.814766) - (-25.681900, 96.775200) | 5.000000 | 0.212558 | 12.000088
 103 | (-22.495100, 97.437004) - (-27.366949, 96.312241) | 5.000000 | 0.230870 | 13.000098
 104 | (-24.192186, 97.029572) - (-29.043667, 95.819969) | 5.000000 | 0.249327 | 13.999939
 105 | (-25.881905, 96.592583) - (-30.711533, 95.298485) | 5.000000 | 0.267949 | 15.000003
 106 | (-27.563736, 96.126167) - (-32.370041, 94.747978) | 5.000000 | 0.286747 | 16.000065
 107 | (-29.237175, 95.630470) - (-34.018700, 94.168610) | 5.000000 | 0.305730 | 16.999981
 108 | (-30.901695, 95.105652) - (-35.656982, 93.560577) | 5.000000 | 0.324917 | 17.999846
 109 | (-32.556812, 94.551865) - (-37.284405, 92.924026) | 5.000000 | 0.344328 | 19.000013
 110 | (-34.202011, 93.969261) - (-38.900475, 92.259163) | 5.000000 | 0.363970 | 20.000011
 111 | (-35.836796, 93.358047) - (-40.504700, 91.566208) | 5.000000 | 0.383863 | 20.999971
 112 | (-37.460663, 92.718384) - (-42.096581, 90.845345) | 5.000000 | 0.404028 | 22.000082
 113 | (-39.073116, 92.050484) - (-43.675640, 90.096825) | 5.000000 | 0.424476 | 23.000050
 114 | (-40.673656, 91.354546) - (-45.241383, 89.320862) | 5.000000 | 0.445229 | 24.000000
 115 | (-42.261833, 90.630775) - (-46.793373, 88.517685) | 5.000000 | 0.466308 | 24.999994
 116 | (-43.837112, 89.879402) - (-48.331085, 87.687553) | 5.000000 | 0.487731 | 25.999928
 117 | (-45.399040, 89.100662) - (-49.854073, 86.830711) | 5.000000 | 0.509526 | 27.000004
 118 | (-46.947159, 88.294754) - (-51.361893, 85.947388) | 5.000000 | 0.531711 | 28.000071
 119 | (-48.480953, 87.461975) - (-52.854057, 85.037933) | 5.000000 | 0.554307 | 28.999903
 120 | (-50.000008, 86.602539) - (-54.330132, 84.102531) | 5.000000 | 0.577352 | 30.000080
 121 | (-51.503799, 85.716728) - (-55.789631, 83.141533) | 5.000000 | 0.600863 | 31.000107
 122 | (-52.991932, 84.804802) - (-57.232178, 82.155212) | 5.000000 | 0.624866 | 31.999874
 123 | (-54.463905, 83.867058) - (-58.657261, 81.143867) | 5.000000 | 0.649406 | 32.999916
 124 | (-55.919285, 82.903763) - (-60.064468, 80.107788) | 5.000000 | 0.674511 | 34.000103
 125 | (-57.357643, 81.915199) - (-61.453400, 79.047318) | 5.000000 | 0.700209 | 35.000038
 126 | (-58.778519, 80.901703) - (-62.823608, 77.962784) | 5.000000 | 0.726539 | 35.999878
 127 | (-60.181511, 79.863548) - (-64.174690, 76.854477) | 5.000000 | 0.753554 | 36.999981
 128 | (-61.566143, 78.801079) - (-65.506195, 75.722771) | 5.000000 | 0.781285 | 37.999962
 129 | (-62.932034, 77.714607) - (-66.817764, 74.568008) | 5.000000 | 0.809783 | 38.999950
 130 | (-64.278763, 76.604446) - (-68.108978, 73.390503) | 5.000000 | 0.839103 | 40.000095
 131 | (-65.605896, 75.470963) - (-69.379448, 72.190674) | 5.000000 | 0.869284 | 40.999924
 132 | (-66.913071, 74.314484) - (-70.628792, 70.968826) | 5.000000 | 0.900406 | 42.000076
 133 | (-68.199829, 73.135368) - (-71.856590, 69.725372) | 5.000000 | 0.932518 | 43.000099
 134 | (-69.465828, 71.933990) - (-73.062531, 68.460709) | 5.000000 | 0.965685 | 43.999901
 135 | (-70.710678, 70.710678) - (-74.246216, 67.175140) | 5.000000 | 1.000000 | 45.000000
 136 | (-71.933975, 69.465843) - (-75.407265, 65.869141) | 5.000000 | 1.035531 | 46.000008
 137 | (-73.135376, 68.199829) - (-76.545372, 64.543060) | 5.000000 | 1.072368 | 46.999969
 138 | (-74.314484, 66.913063) - (-77.660133, 63.197338) | 5.000000 | 1.110613 | 48.000015
 139 | (-75.470963, 65.605896) - (-78.751259, 61.832348) | 5.000000 | 1.150368 | 48.999992
 140 | (-76.604446, 64.278763) - (-79.818382, 60.448540) | 5.000000 | 1.191755 | 50.000027
 141 | (-77.714584, 62.932049) - (-80.861183, 59.046318) | 5.000000 | 1.234899 | 51.000046
 142 | (-78.801079, 61.566143) - (-81.879395, 57.626095) | 5.000000 | 1.279937 | 51.999893
 143 | (-79.863548, 60.181511) - (-82.872620, 56.188332) | 5.000000 | 1.327046 | 53.000019
 144 | (-80.901703, 58.778519) - (-83.840630, 54.733433) | 5.000000 | 1.376383 | 54.000015
 145 | (-81.915207, 57.357643) - (-84.783089, 53.261883) | 5.000000 | 1.428149 | 55.000023
 146 | (-82.903748, 55.919300) - (-85.699715, 51.774113) | 5.000000 | 1.482561 | 55.999996
 147 | (-83.867058, 54.463905) - (-86.590256, 50.270554) | 5.000000 | 1.539866 | 57.000008
 148 | (-84.804802, 52.991932) - (-87.454391, 48.751686) | 5.000000 | 1.600342 | 58.000126
 149 | (-85.716728, 51.503799) - (-88.291924, 47.217968) | 5.000000 | 1.664272 | 58.999889
 150 | (-86.602539, 50.000008) - (-89.102547, 45.669884) | 5.000000 | 1.732045 | 59.999916
 151 | (-87.461975, 48.480953) - (-89.886017, 44.107849) | 5.000000 | 1.804055 | 61.000095
 152 | (-88.294754, 46.947159) - (-90.642113, 42.532421) | 5.000000 | 1.880727 | 62.000000
 153 | (-89.100647, 45.399059) - (-91.370598, 40.944027) | 5.000000 | 1.962610 | 62.999992
 154 | (-89.879402, 43.837112) - (-92.071259, 39.343143) | 5.000000 | 2.050303 | 63.999985
 155 | (-90.630775, 42.261833) - (-92.743866, 37.730293) | 5.000000 | 2.144507 | 65.000000
 156 | (-91.354546, 40.673656) - (-93.388229, 36.105930) | 5.000000 | 2.246037 | 66.000000
 157 | (-92.050484, 39.073116) - (-94.004150, 34.470596) | 5.000000 | 2.355841 | 66.999901
 158 | (-92.718384, 37.460670) - (-94.591423, 32.824753) | 5.000000 | 2.475080 | 67.999939
 159 | (-93.358047, 35.836792) - (-95.149887, 31.168890) | 5.000000 | 2.605090 | 69.000008
 160 | (-93.969261, 34.202023) - (-95.679367, 29.503561) | 5.000000 | 2.747473 | 69.999962
 161 | (-94.551865, 32.556812) - (-96.179703, 27.829220) | 5.000000 | 2.904212 | 71.000008
 162 | (-95.105652, 30.901703) - (-96.650726, 26.146418) | 5.000000 | 3.077703 | 72.000107
 163 | (-95.630470, 29.237185) - (-97.092323, 24.455660) | 5.000000 | 3.270864 | 73.000053
 164 | (-96.126167, 27.563736) - (-97.504356, 22.757429) | 5.000000 | 3.487400 | 73.999931
 165 | (-96.592583, 25.881914) - (-97.886681, 21.052284) | 5.000000 | 3.732050 | 74.999992
 166 | (-97.029572, 24.192186) - (-98.239174, 19.340706) | 5.000000 | 4.010797 | 76.000053
 167 | (-97.437004, 22.495111) - (-98.561768, 17.623262) | 5.000000 | 4.331444 | 76.999908
 168 | (-97.814766, 20.791161) - (-98.854332, 15.900423) | 5.000000 | 4.704610 | 77.999947
 169 | (-98.162720, 19.080902) - (-99.116760, 14.172766) | 5.000000 | 5.144579 | 79.000053
 170 | (-98.480774, 17.364830) - (-99.349014, 12.440792) | 5.000000 | 5.671274 | 79.999985
 171 | (-98.768837, 15.643445) - (-99.551003, 10.705002) | 5.000000 | 6.313798 | 81.000061
 172 | (-99.026802, 13.917318) - (-99.722664, 8.965977) | 5.000000 | 7.115414 | 82.000046
 173 | (-99.254616, 12.186928) - (-99.863976, 7.224198) | 5.000000 | 8.144177 | 82.999855
 174 | (-99.452194, 10.452849) - (-99.974838, 5.480240) | 5.000000 | 9.514356 | 83.999992
 175 | (-99.619469, 8.715588) - (-100.055244, 3.734614) | 5.000000 | 11.430101 | 85.000015
 176 | (-99.756409, 6.975647) - (-100.105194, 1.987827) | 5.000000 | 14.300634 | 85.999992
 177 | (-99.862953, 5.233605) - (-100.124634, 0.240457) | 5.000000 | 19.081102 | 86.999992
 178 | (-99.939087, 3.489945) - (-100.113586, -1.507009) | 5.000000 | 28.635698 | 87.999962
 179 | (-99.984772, 1.745246) - (-100.072029, -3.253993) | 5.000000 | 57.293991 | 89.000069
 180 | (-100.000000, -0.000009) - (-100.000000, -5.000009) | 5.000000 | -inf | -90.000000
 181 | (-99.984772, -1.745239) - (-99.897514, -6.744478) | 5.000000 | -57.293602 | -89.000061
 182 | (-99.939087, -3.489939) - (-99.764587, -8.486893) | 5.000000 | -28.635700 | -87.999962
 183 | (-99.862953, -5.233599) - (-99.601273, -10.226747) | 5.000000 | -19.081100 | -86.999992
 184 | (-99.756409, -6.975640) - (-99.407623, -11.963461) | 5.000000 | -14.300632 | -85.999985
 185 | (-99.619469, -8.715581) - (-99.183693, -13.696554) | 5.000000 | -11.430105 | -85.000023
 186 | (-99.452194, -10.452844) - (-98.929550, -15.425453) | 5.000000 | -9.514356 | -83.999992
 187 | (-99.254616, -12.186921) - (-98.645256, -17.149651) | 5.000000 | -8.144173 | -82.999847
 188 | (-99.026802, -13.917311) - (-98.330940, -18.868652) | 5.000000 | -7.115412 | -82.000046
 189 | (-98.768837, -15.643437) - (-97.986671, -20.581881) | 5.000000 | -6.313798 | -81.000061
 190 | (-98.480774, -17.364822) - (-97.612534, -22.288860) | 5.000000 | -5.671274 | -79.999985
 191 | (-98.162720, -19.080894) - (-97.208679, -23.989031) | 5.000000 | -5.144560 | -79.000008
 192 | (-97.814758, -20.791180) - (-96.775192, -25.681917) | 5.000000 | -4.704610 | -77.999947
 193 | (-97.437004, -22.495104) - (-96.312241, -27.366953) | 5.000000 | -4.331455 | -76.999939
 194 | (-97.029572, -24.192181) - (-95.819969, -29.043661) | 5.000000 | -4.010797 | -76.000053
 195 | (-96.592583, -25.881907) - (-95.298485, -30.711536) | 5.000000 | -3.732050 | -74.999992
 196 | (-96.126167, -27.563730) - (-94.747978, -32.370037) | 5.000000 | -3.487401 | -73.999939
 197 | (-95.630470, -29.237179) - (-94.168617, -34.018703) | 5.000000 | -3.270864 | -73.000053
 198 | (-95.105652, -30.901697) - (-93.560577, -35.656982) | 5.000000 | -3.077701 | -72.000092
 199 | (-94.551865, -32.556805) - (-92.924026, -37.284397) | 5.000000 | -2.904211 | -70.999992
 200 | (-93.969261, -34.202015) - (-92.259155, -38.900478) | 5.000000 | -2.747473 | -69.999962
 201 | (-93.358047, -35.836784) - (-91.566208, -40.504688) | 5.000000 | -2.605090 | -69.000008
 202 | (-92.718384, -37.460663) - (-90.845345, -42.096581) | 5.000000 | -2.475080 | -67.999939
 203 | (-92.050484, -39.073109) - (-90.096825, -43.675629) | 5.000000 | -2.355844 | -66.999924
 204 | (-91.354546, -40.673653) - (-89.320869, -45.241383) | 5.000000 | -2.246049 | -66.000114
 205 | (-90.630783, -42.261826) - (-88.517700, -46.793369) | 5.000000 | -2.144516 | -65.000092
 206 | (-89.879410, -43.837105) - (-87.687553, -48.331078) | 5.000000 | -2.050305 | -64.000008
 207 | (-89.100655, -45.399055) - (-86.830704, -49.854088) | 5.000000 | -1.962610 | -62.999992
 208 | (-88.294762, -46.947151) - (-85.947395, -51.361885) | 5.000000 | -1.880721 | -61.999928
 209 | (-87.461967, -48.480968) - (-85.037918, -52.854065) | 5.000000 | -1.804045 | -60.999954
 210 | (-86.602539, -49.999996) - (-84.102539, -54.330124) | 5.000000 | -1.732049 | -59.999977
 211 | (-85.716736, -51.503796) - (-83.141548, -55.789635) | 5.000000 | -1.664284 | -59.000065
 212 | (-84.804810, -52.991928) - (-82.155212, -57.232166) | 5.000000 | -1.600334 | -57.999985
 213 | (-83.867058, -54.463898) - (-81.143860, -58.657249) | 5.000000 | -1.539866 | -57.000008
 214 | (-82.903755, -55.919296) - (-80.107796, -60.064487) | 5.000000 | -1.482563 | -56.000034
 215 | (-81.915207, -57.357639) - (-79.047318, -61.453392) | 5.000000 | -1.428142 | -54.999886
 216 | (-80.901703, -58.778511) - (-77.962776, -62.823593) | 5.000000 | -1.376381 | -53.999981
 217 | (-79.863548, -60.181503) - (-76.854485, -64.174690) | 5.000000 | -1.327052 | -53.000156
 218 | (-78.801086, -61.566139) - (-75.722778, -65.506195) | 5.000000 | -1.279943 | -52.000031
 219 | (-77.714592, -62.932045) - (-74.567986, -66.817772) | 5.000000 | -1.234893 | -50.999912
 220 | (-76.604446, -64.278755) - (-73.390511, -68.108978) | 5.000000 | -1.191755 | -50.000038
 221 | (-75.470955, -65.605911) - (-72.190666, -69.379463) | 5.000000 | -1.150371 | -49.000072
 222 | (-74.314484, -66.913063) - (-70.968826, -70.628784) | 5.000000 | -1.110610 | -47.999939
 223 | (-73.135376, -68.199829) - (-69.725380, -71.856598) | 5.000000 | -1.072368 | -46.999969
 224 | (-71.933975, -69.465843) - (-68.460686, -73.062546) | 5.000000 | -1.035531 | -46.000011
 225 | (-70.710686, -70.710670) - (-67.175156, -74.246201) | 5.000000 | -1.000000 | -45.000000
 226 | (-69.465836, -71.933983) - (-65.869133, -75.407272) | 5.000000 | -0.965688 | -43.999989
 227 | (-68.199837, -73.135368) - (-64.543068, -76.545364) | 5.000000 | -0.932516 | -43.000015
 228 | (-66.913071, -74.314476) - (-63.197350, -77.660133) | 5.000000 | -0.900406 | -42.000076
 229 | (-65.605904, -75.470963) - (-61.832359, -78.751259) | 5.000000 | -0.869288 | -41.000031
 230 | (-64.278755, -76.604454) - (-60.448528, -79.818390) | 5.000000 | -0.839097 | -39.999920
 231 | (-62.932034, -77.714600) - (-59.046299, -80.861198) | 5.000000 | -0.809782 | -38.999912
 232 | (-61.566151, -78.801071) - (-57.626099, -81.879379) | 5.000000 | -0.781286 | -38.000000
 233 | (-60.181515, -79.863541) - (-56.188332, -82.872612) | 5.000000 | -0.753552 | -36.999928
 234 | (-58.778542, -80.901680) - (-54.733459, -83.840607) | 5.000000 | -0.726543 | -36.000034
 235 | (-57.357632, -81.915215) - (-53.261879, -84.783112) | 5.000000 | -0.700212 | -35.000168
 236 | (-55.919289, -82.903763) - (-51.774105, -85.699730) | 5.000000 | -0.674510 | -34.000072
 237 | (-54.463913, -83.867058) - (-50.270557, -86.590248) | 5.000000 | -0.649406 | -32.999950
 238 | (-52.991940, -84.804802) - (-48.751698, -87.454399) | 5.000000 | -0.624869 | -31.999968
 239 | (-51.503830, -85.716721) - (-47.217995, -88.291916) | 5.000000 | -0.600861 | -31.000021
 240 | (-49.999992, -86.602547) - (-45.669865, -89.102547) | 5.000000 | -0.577350 | -30.000002
 241 | (-48.480961, -87.461975) - (-44.107861, -89.886017) | 5.000000 | -0.554308 | -28.999945
 242 | (-46.947163, -88.294754) - (-42.532425, -90.642113) | 5.000000 | -0.531709 | -27.999996
 243 | (-45.399067, -89.100647) - (-40.944035, -91.370598) | 5.000000 | -0.509525 | -26.999973
 244 | (-43.837097, -89.879410) - (-39.343124, -92.071266) | 5.000000 | -0.487732 | -25.999964
 245 | (-42.261818, -90.630783) - (-37.730282, -92.743881) | 5.000000 | -0.466309 | -25.000040
 246 | (-40.673664, -91.354546) - (-36.105938, -93.388229) | 5.000000 | -0.445229 | -24.000013
 247 | (-39.073120, -92.050484) - (-34.470600, -94.004150) | 5.000000 | -0.424477 | -23.000099
 248 | (-37.460678, -92.718384) - (-32.824760, -94.591423) | 5.000000 | -0.404027 | -22.000057
 249 | (-35.836777, -93.358055) - (-31.168873, -95.149895) | 5.000000 | -0.383864 | -20.999975
 250 | (-34.202007, -93.969269) - (-29.503540, -95.679359) | 5.000000 | -0.363968 | -19.999905
 251 | (-32.556816, -94.551857) - (-27.829224, -96.179695) | 5.000000 | -0.344327 | -18.999985
 252 | (-30.901709, -95.105652) - (-26.146427, -96.650742) | 5.000000 | -0.324920 | -18.000023
 253 | (-29.237190, -95.630470) - (-24.455666, -97.092323) | 5.000000 | -0.305730 | -16.999964
 254 | (-27.563721, -96.126175) - (-22.757414, -97.504372) | 5.000000 | -0.286747 | -16.000090
 255 | (-25.881899, -96.592590) - (-21.052269, -97.886681) | 5.000000 | -0.267949 | -14.999979
 256 | (-24.192194, -97.029572) - (-19.340714, -98.239174) | 5.000000 | -0.249326 | -13.999907
 257 | (-22.495117, -97.437004) - (-17.623268, -98.561768) | 5.000000 | -0.230869 | -13.000060
 258 | (-20.791193, -97.814758) - (-15.900455, -98.854317) | 5.000000 | -0.212556 | -11.999969
 259 | (-19.080885, -98.162720) - (-14.172750, -99.116768) | 5.000000 | -0.194381 | -11.000038
 260 | (-17.364813, -98.480782) - (-12.440773, -99.349022) | 5.000000 | -0.176326 | -9.999957
 261 | (-15.643452, -98.768829) - (-10.705009, -99.550987) | 5.000000 | -0.158382 | -8.999871
 262 | (-13.917325, -99.026802) - (-8.965986, -99.722679) | 5.000000 | -0.140543 | -8.000132
 263 | (-12.186959, -99.254616) - (-7.224229, -99.863968) | 5.000000 | -0.122786 | -7.000100
 264 | (-10.452834, -99.452194) - (-5.480224, -99.974831) | 5.000000 | -0.105103 | -5.999924
 265 | (-8.715571, -99.619469) - (-3.734597, -100.055237) | 5.000000 | -0.087487 | -4.999887
 266 | (-6.975655, -99.756401) - (-1.987834, -100.105186) | 5.000000 | -0.069927 | -4.000036
 267 | (-5.233612, -99.862953) - (-0.240465, -100.124649) | 5.000000 | -0.052410 | -3.000151
 268 | (-3.489976, -99.939087) - (1.506978, -100.113586) | 5.000000 | -0.034921 | -2.000025
 269 | (-1.745230, -99.984772) - (3.254009, -100.072029) | 5.000000 | -0.017454 | -0.999923
 270 | (0.000001, -100.000000) - (5.000001, -100.000000) | 5.000000 | 0.000000 | 0.000000
 271 | (1.745232, -99.984772) - (6.744471, -99.897514) | 5.000000 | 0.017454 | 0.999937
 272 | (3.489931, -99.939087) - (8.486885, -99.764587) | 5.000000 | 0.034921 | 2.000025
 273 | (5.233615, -99.862953) - (10.226763, -99.601265) | 5.000000 | 0.052410 | 3.000110
 274 | (6.975657, -99.756401) - (11.963476, -99.407616) | 5.000000 | 0.069927 | 4.000037
 275 | (8.715573, -99.619469) - (13.696548, -99.183701) | 5.000000 | 0.087487 | 4.999887
 276 | (10.452836, -99.452194) - (15.425447, -98.929565) | 5.000000 | 0.105102 | 5.999881
 277 | (12.186913, -99.254623) - (17.149643, -98.645271) | 5.000000 | 0.122786 | 7.000100
 278 | (13.917327, -99.026802) - (18.868666, -98.330925) | 5.000000 | 0.140543 | 8.000147
 279 | (15.643454, -98.768829) - (20.581896, -97.986656) | 5.000000 | 0.158384 | 8.999995
 280 | (17.364815, -98.480774) - (22.288855, -97.612534) | 5.000000 | 0.176326 | 9.999957
 281 | (19.080887, -98.162720) - (23.989023, -97.208679) | 5.000000 | 0.194379 | 10.999943
 282 | (20.791147, -97.814766) - (25.681885, -96.775200) | 5.000000 | 0.212558 | 12.000086
 283 | (22.495121, -97.436996) - (27.366970, -96.312241) | 5.000000 | 0.230868 | 13.000014
 284 | (24.192194, -97.029572) - (29.043674, -95.819969) | 5.000000 | 0.249326 | 13.999915
 285 | (25.881901, -96.592583) - (30.711531, -95.298492) | 5.000000 | 0.267949 | 14.999979
 286 | (27.563721, -96.126175) - (32.370029, -94.747993) | 5.000000 | 0.286744 | 15.999928
 287 | (29.237148, -95.630486) - (34.018673, -94.168633) | 5.000000 | 0.305730 | 16.999947
 288 | (30.901712, -95.105652) - (35.656994, -93.560562) | 5.000000 | 0.324920 | 18.000027
 289 | (32.556820, -94.551857) - (37.284409, -92.924011) | 5.000000 | 0.344330 | 19.000105
 290 | (34.202011, -93.969261) - (38.900475, -92.259155) | 5.000000 | 0.363971 | 20.000023
 291 | (35.836781, -93.358047) - (40.504681, -91.566208) | 5.000000 | 0.383864 | 21.000011
 292 | (37.460636, -92.718391) - (42.096558, -90.845360) | 5.000000 | 0.404025 | 21.999941
 293 | (39.073124, -92.050484) - (43.675652, -90.096832) | 5.000000 | 0.424473 | 22.999920
 294 | (40.673668, -91.354546) - (45.241394, -89.320862) | 5.000000 | 0.445230 | 24.000038
 295 | (42.261818, -90.630783) - (46.793354, -88.517685) | 5.000000 | 0.466309 | 25.000040
 296 | (43.837101, -89.879410) - (48.331070, -87.687553) | 5.000000 | 0.487733 | 26.000040
 297 | (45.399025, -89.100662) - (49.854057, -86.830711) | 5.000000 | 0.509525 | 26.999973
 298 | (46.947166, -88.294754) - (51.361908, -85.947403) | 5.000000 | 0.531706 | 27.999866
 299 | (48.480965, -87.461975) - (52.854065, -85.037926) | 5.000000 | 0.554308 | 28.999973
 300 | (49.999992, -86.602547) - (54.330116, -84.102539) | 5.000000 | 0.577352 | 30.000053
 301 | (51.503788, -85.716743) - (55.789619, -83.141548) | 5.000000 | 0.600863 | 31.000095
 302 | (52.991943, -84.804794) - (57.232182, -82.155197) | 5.000000 | 0.624870 | 32.000027
 303 | (54.463913, -83.867050) - (58.657272, -81.143867) | 5.000000 | 0.649405 | 32.999878
 304 | (55.919289, -82.903763) - (60.064476, -80.107803) | 5.000000 | 0.674508 | 33.999969
 305 | (57.357632, -81.915215) - (61.453388, -79.047325) | 5.000000 | 0.700210 | 35.000080
 306 | (58.778507, -80.901711) - (62.823589, -77.962784) | 5.000000 | 0.726543 | 36.000034
 307 | (60.181515, -79.863541) - (64.174690, -76.854469) | 5.000000 | 0.753554 | 36.999989
 308 | (61.566151, -78.801071) - (65.506203, -75.722763) | 5.000000 | 0.781285 | 37.999962
 309 | (62.932037, -77.714600) - (66.817764, -74.567993) | 5.000000 | 0.809784 | 39.000011
 310 | (64.278755, -76.604446) - (68.108978, -73.390503) | 5.000000 | 0.839100 | 40.000027
 311 | (65.605888, -75.470970) - (69.379440, -72.190681) | 5.000000 | 0.869285 | 40.999935
 312 | (66.913071, -74.314476) - (70.628792, -70.968819) | 5.000000 | 0.900407 | 42.000095
 313 | (68.199837, -73.135361) - (71.856606, -69.725365) | 5.000000 | 0.932516 | 43.000015
 314 | (69.465836, -71.933983) - (73.062538, -68.460693) | 5.000000 | 0.965688 | 43.999981
 315 | (70.710663, -70.710686) - (74.246193, -67.175148) | 5.000000 | 1.000003 | 45.000088
 316 | (71.933960, -69.465851) - (75.407265, -65.869164) | 5.000000 | 1.035524 | 45.999825
 317 | (73.135384, -68.199829) - (76.545380, -64.543060) | 5.000000 | 1.072367 | 46.999958
 318 | (74.314484, -66.913055) - (77.660133, -63.197330) | 5.000000 | 1.110614 | 48.000031
 319 | (75.470955, -65.605911) - (78.751251, -61.832367) | 5.000000 | 1.150366 | 48.999935
 320 | (76.604431, -64.278778) - (79.818367, -60.448551) | 5.000000 | 1.191757 | 50.000069
 321 | (77.714577, -62.932060) - (80.861183, -59.046333) | 5.000000 | 1.234895 | 50.999950
 322 | (78.801086, -61.566139) - (81.879402, -57.626091) | 5.000000 | 1.279938 | 51.999928
 323 | (79.863556, -60.181499) - (82.872627, -56.188316) | 5.000000 | 1.327048 | 53.000069
 324 | (80.901695, -58.778530) - (83.840614, -54.733440) | 5.000000 | 1.376385 | 54.000065
 325 | (81.915192, -57.357658) - (84.783073, -53.261898) | 5.000000 | 1.428149 | 55.000023
 326 | (82.903740, -55.919312) - (85.699699, -51.774120) | 5.000000 | 1.482563 | 56.000034
 327 | (83.867058, -54.463894) - (86.590256, -50.270546) | 5.000000 | 1.539861 | 56.999935
 328 | (84.804810, -52.991928) - (87.454407, -48.751686) | 5.000000 | 1.600335 | 58.000000
 329 | (85.716721, -51.503815) - (88.291916, -47.217979) | 5.000000 | 1.664278 | 58.999977
 330 | (86.602531, -50.000019) - (89.102531, -45.669891) | 5.000000 | 1.732051 | 59.999996
 331 | (87.461975, -48.480946) - (89.886017, -44.107845) | 5.000000 | 1.804052 | 61.000057
 332 | (88.294762, -46.947147) - (90.642128, -42.532413) | 5.000000 | 1.880718 | 61.999889
 333 | (89.100655, -45.399052) - (91.370613, -40.944023) | 5.000000 | 1.962605 | 62.999935
 334 | (89.879402, -43.837124) - (92.071251, -39.343151) | 5.000000 | 2.050310 | 64.000069
 335 | (90.630768, -42.261845) - (92.743858, -37.730305) | 5.000000 | 2.144509 | 65.000023
 336 | (91.354553, -40.673649) - (93.388237, -36.105919) | 5.000000 | 2.246041 | 66.000038
 337 | (92.050484, -39.073105) - (94.004135, -34.470581) | 5.000000 | 2.355854 | 67.000015
 338 | (92.718384, -37.460663) - (94.591423, -32.824745) | 5.000000 | 2.475074 | 67.999893
 339 | (93.358040, -35.836807) - (95.149879, -31.168905) | 5.000000 | 2.605088 | 68.999985
 340 | (93.969254, -34.202038) - (95.679352, -29.503574) | 5.000000 | 2.747477 | 70.000000
 341 | (94.551865, -32.556801) - (96.179703, -27.829208) | 5.000000 | 2.904213 | 71.000008
 342 | (95.105652, -30.901695) - (96.650726, -26.146410) | 5.000000 | 3.077701 | 72.000092
 343 | (95.630470, -29.237175) - (97.092323, -24.455650) | 5.000000 | 3.270866 | 73.000061
 344 | (96.126160, -27.563751) - (97.504349, -22.757444) | 5.000000 | 3.487403 | 73.999947
 345 | (96.592575, -25.881927) - (97.886681, -21.052301) | 5.000000 | 3.732014 | 74.999855
 346 | (97.029579, -24.192177) - (98.239189, -19.340698) | 5.000000 | 4.010788 | 76.000023
 347 | (97.437004, -22.495102) - (98.561752, -17.623251) | 5.000000 | 4.331497 | 77.000061
 348 | (97.814758, -20.791176) - (98.854324, -15.900440) | 5.000000 | 4.704579 | 77.999870
 349 | (98.162720, -19.080915) - (99.116768, -14.172781) | 5.000000 | 5.144520 | 78.999924
 350 | (98.480774, -17.364845) - (99.349007, -12.440805) | 5.000000 | 5.671312 | 80.000053
 351 | (98.768837, -15.643435) - (99.550995, -10.704992) | 5.000000 | 6.313844 | 81.000130
 352 | (99.026802, -13.917309) - (99.722672, -8.965969) | 5.000000 | 7.115363 | 81.999992
 353 | (99.254616, -12.186943) - (99.863968, -7.224213) | 5.000000 | 8.144265 | 82.999931
 354 | (99.452187, -10.452865) - (99.974831, -5.480255) | 5.000000 | 9.514356 | 83.999992
 355 | (99.619469, -8.715603) - (100.055252, -3.734630) | 5.000000 | 11.429895 | 84.999931
 356 | (99.756409, -6.975638) - (100.105186, -1.987818) | 5.000000 | 14.300732 | 86.000015
 357 | (99.862953, -5.233596) - (100.124634, -0.240449) | 5.000000 | 19.080971 | 86.999969
 358 | (99.939087, -3.489960) - (100.113586, 1.506994) | 5.000000 | 28.635506 | 87.999947