Advertisement
Zenn_

i dont think these angles are valid

May 16th, 2019
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 8.09 KB | None | 0 0
  1.             if (isSolid) {
  2.                         if (debug) {
  3.                             std::cout << "-x: " << x << std::endl;
  4.                             std::cout << "y: " << y << std::endl;
  5.                         }
  6.                         //emplace edges and vertices
  7.                         edges.emplace_back(Edge(sf::Vector2f(x      , y     ), sf::Vector2f(x + 1   , y     )));
  8.                         edges.emplace_back(Edge(sf::Vector2f(x + 1  , y     ), sf::Vector2f(x + 1   , y + 1 )));
  9.                         edges.emplace_back(Edge(sf::Vector2f(x + 1  , y + 1 ), sf::Vector2f(x       , y + 1 )));
  10.                         edges.emplace_back(Edge(sf::Vector2f(x      , y + 1 ), sf::Vector2f(x       , y     )));
  11.                    
  12.                         const float posAngle = atan2(pos->position.y, pos->position.x);
  13.                         //                          POSITION                        ANGLE
  14.                         vertices.emplace_back(Vertex(sf::Vector2f(x     , y     ), (posAngle - atan2(y       , x        )) * PIRAD));
  15.                         if (debug) std::cout << "1: " << vertices.end()->angle << '\n';
  16.                         vertices.emplace_back(Vertex(sf::Vector2f(x + 1 , y     ), (posAngle - atan2(y       , x + 1.0f)) * PIRAD));
  17.                         if (debug) std::cout << "2: " << vertices.end()->angle << '\n';
  18.                         vertices.emplace_back(Vertex(sf::Vector2f(x + 1 , y + 1 ), (posAngle - atan2(y + 1.0f, x + 1.0f)) * PIRAD));
  19.                         if (debug) std::cout << "3: " << vertices.end()->angle << '\n';
  20.                         vertices.emplace_back(Vertex(sf::Vector2f(x     , y + 1 ), (posAngle - atan2(y + 1.0f, x        )) * PIRAD));
  21.                         if (debug) std::cout << "4: " << vertices.end()->angle << '\n';
  22.                     }
  23.                 }
  24.             }
  25.             //sort vertices by angle
  26.             std::sort(vertices.begin(), vertices.end(),
  27.                 [](const Vertex &a, const Vertex &b) {
  28.                     return a.angle < b.angle;
  29.                 }
  30.             );
  31.             //sweeping angle raycasting and all that stuff
  32.             if (debug) {
  33.                 for (int i = 0; i < vertices.size(); i++) {
  34.                     std::cout << "vertex angle " << i << ": " << std::to_string(vertices.at(i).angle) << "\n";
  35.                 }
  36.                 std::cout << "vertex amount: " + std::to_string(vertices.size()) << "\n";
  37.             }
  38.  
  39. -x: 0
  40. y: 0
  41. 1: -1.67113e-34
  42. 2: 9.59429e-35
  43. 3: 6192.01
  44. 4: -3.93766e+06
  45. -x: 0
  46. y: 1
  47. 1: 4.75538e-10
  48. 2: 6.19928e+26
  49. 3: 8.78257e-39
  50. 4: 16.0106
  51. -x: 1
  52. y: 1
  53. 1: 1.86175e-28
  54. 2: 4.47129e-36
  55. 3: 7.56652e-39
  56. 4: -1.12004e+10
  57. -x: 2
  58. y: 1
  59. 1: 1.01022e-38
  60. 2: -3.13079e-05
  61. 3: 1.94565e+24
  62. 4: 4.08568e+19
  63. -x: 2
  64. y: 2
  65. 1: -2.4297
  66. 2: 5.08723e-23
  67. 3: -2.17875
  68. 4: -2.38511e+19
  69. -x: 3
  70. y: 1
  71. 1: 1.6332e-39
  72. 2: -2.5861e-37
  73. 3: -3.27381e-30
  74. 4: -4.24029e-30
  75. -x: 3
  76. y: 2
  77. 1: -4.06889e+19
  78. 2: -1.19771e+29
  79. 3: 7.4648e+28
  80. 4: -1.35686e-28
  81. -x: 4
  82. y: 2
  83. 1: -4.80056e-10
  84. 2: 6.03788e-38
  85. 3: 1.66967e+29
  86. 4: 1.18395e-30
  87. -x: 5
  88. y: 2
  89. 1: -8.03198e+32
  90. 2: -4.33929e-30
  91. 3: 0.00146543
  92. 4: 4.34687e+09
  93. -x: 5
  94. y: 3
  95. 1: -5.0511e-39
  96. 2: 2.02044e-38
  97. 3: 2.02044e-38
  98. 4: 8.98959e-35
  99. -x: 6
  100. y: 2
  101. 1: 5.92158e-37
  102. 2: -4.08568e+19
  103. 3: -3.50489e+34
  104. 4: -3.57499e+07
  105. -x: 6
  106. y: 3
  107. 1: -2.04352
  108. 2: -4.91015e-33
  109. 3: -2.06548e+21
  110. 4: 1.5961e-26
  111. -x: 7
  112. y: 3
  113. 1: -2.37437e+30
  114. 2: 0
  115. 3: 0
  116. 4: 0
  117. -x: 8
  118. y: 3
  119. 1: 0
  120. 2: 0
  121. 3: 0
  122. 4: 0
  123. -x: 8
  124. y: 4
  125. 1: 0
  126. 2: 0
  127. 3: 0
  128. 4: 0
  129. -x: 9
  130. y: 3
  131. 1: 0
  132. 2: 0
  133. 3: 0
  134. 4: 0
  135. -x: 9
  136. y: 4
  137. 1: 0
  138. 2: 0
  139. 3: -339139
  140. 4: 2.22245e-38
  141. -x: 10
  142. y: 4
  143. 1: 0
  144. 2: 4.2039e-45
  145. 3: -nan
  146. 4: 0
  147. -x: 11
  148. y: 4
  149. 1: 2.52234e-44
  150. 2: 0
  151. 3: 0
  152. 4: 0
  153. -x: 11
  154. y: 5
  155. 1: 1.4013e-45
  156. 2: 0
  157. 3: 0
  158. 4: 0
  159. vertex angle 0: -200236858022808053900675907584.000000
  160. vertex angle 1: -417817404899328.000000
  161. vertex angle 2: -339139.406250
  162. vertex angle 3: -15.880789
  163. vertex angle 4: -15.880789
  164. vertex angle 5: -15.880789
  165. vertex angle 6: 0.000000
  166. vertex angle 7: 0.000000
  167. vertex angle 8: 0.000000
  168. vertex angle 9: 0.000000
  169. vertex angle 10: 0.000000
  170. vertex angle 11: 0.000000
  171. vertex angle 12: 0.000000
  172. vertex angle 13: 0.000000
  173. vertex angle 14: 0.000000
  174. vertex angle 15: 0.000000
  175. vertex angle 16: 0.000000
  176. vertex angle 17: 0.000000
  177. vertex angle 18: 0.000000
  178. vertex angle 19: 0.000000
  179. vertex angle 20: 0.000000
  180. vertex angle 21: 0.000000
  181. vertex angle 22: 0.000000
  182. vertex angle 23: 0.000000
  183. vertex angle 24: 0.000000
  184. vertex angle 25: 0.000000
  185. vertex angle 26: 0.000000
  186. vertex angle 27: 0.000000
  187. vertex angle 28: 0.000000
  188. vertex angle 29: 0.000000
  189. vertex angle 30: 0.000000
  190. vertex angle 31: 0.000000
  191. vertex angle 32: 0.000000
  192. vertex angle 33: 0.000000
  193. vertex angle 34: 0.000000
  194. vertex angle 35: 0.000000
  195. vertex angle 36: 0.000000
  196. vertex angle 37: 0.000000
  197. vertex angle 38: 0.000000
  198. vertex angle 39: 0.000000
  199. vertex angle 40: 0.000000
  200. vertex angle 41: 0.000000
  201. vertex angle 42: 0.000000
  202. vertex angle 43: 0.000000
  203. vertex angle 44: 0.000000
  204. vertex angle 45: 0.000000
  205. vertex angle 46: 0.000000
  206. vertex angle 47: -nan
  207. vertex angle 48: 0.000000
  208. vertex angle 49: 0.000000
  209. vertex angle 50: 0.000000
  210. vertex angle 51: 0.000000
  211. vertex angle 52: 0.000000
  212. vertex angle 53: 0.000000
  213. vertex angle 54: 0.000000
  214. vertex angle 55: 0.000000
  215. vertex angle 56: 0.000000
  216. vertex angle 57: 0.000000
  217. vertex angle 58: 0.000000
  218. vertex angle 59: 0.000000
  219. vertex angle 60: 0.000000
  220. vertex angle 61: 0.000000
  221. vertex angle 62: 0.000000
  222. vertex angle 63: 0.000000
  223. vertex angle 64: 0.000000
  224. vertex angle 65: 0.000000
  225. vertex angle 66: 0.000000
  226. vertex angle 67: 0.000000
  227. vertex angle 68: 0.000000
  228. vertex angle 69: 0.000000
  229. vertex angle 70: 9970012414953467521213136896.000000
  230. vertex angle 71: -nan
  231. vertex angle 72: 0.000000
  232. vertex angle 73: 0.000000
  233. vertex angle 74: 0.000000
  234. vertex angle 75: 0.000000
  235. vertex angle 76: 0.000000
  236. vertex angle 77: 0.000000
  237. vertex angle 78: 0.000000
  238. vertex angle 79: 0.000000
  239. vertex angle 80: 0.000000
  240. vertex angle 81: 0.000000
  241. vertex angle 82: 0.000000
  242. vertex angle 83: 0.000000
  243. vertex angle 84: 0.000000
  244. vertex angle 85: 0.000000
  245. vertex angle 86: 0.000000
  246. vertex angle 87: 0.000000
  247. vertex angle 88: 0.000000
  248. vertex angle 89: 0.000000
  249. vertex angle 90: 0.000000
  250. vertex angle 91: 0.000000
  251. vertex angle 92: 0.000000
  252. vertex angle 93: 0.000000
  253. vertex angle 94: 0.000000
  254. vertex angle 95: 0.000000
  255. vertex angle 96: 0.000000
  256. vertex angle 97: 0.000000
  257. vertex angle 98: 0.000000
  258. vertex angle 99: 0.000000
  259. vertex angle 100: 10.684260
  260. vertex angle 101: 10.684263
  261. vertex angle 102: 17.809278
  262. vertex angle 103: 29.119211
  263. vertex angle 104: 29.119211
  264. vertex angle 105: 29.119211
  265. vertex angle 106: 29.119211
  266. vertex angle 107: 29.119211
  267. vertex angle 108: 29.119211
  268. vertex angle 109: 29.119211
  269. vertex angle 110: 29.119211
  270. vertex angle 111: 35.459404
  271. vertex angle 112: 35.551174
  272. vertex angle 113: 37.249313
  273. vertex angle 114: 37.249313
  274. vertex angle 115: 40.429142
  275. vertex angle 116: 40.429142
  276. vertex angle 117: 40.429146
  277. vertex angle 118: 40.429146
  278. vertex angle 119: 40.429146
  279. vertex angle 120: 40.429146
  280. vertex angle 121: 42.113831
  281. vertex angle 122: 43.155453
  282. vertex angle 123: 43.155457
  283. vertex angle 124: 43.155457
  284. vertex angle 125: 44.374332
  285. vertex angle 126: 44.374332
  286. vertex angle 127: 45.064610
  287. vertex angle 128: 45.064610
  288. vertex angle 129: 45.508751
  289. vertex angle 130: 47.554161
  290. vertex angle 131: 47.554161
  291. vertex angle 132: 47.554161
  292. vertex angle 133: 47.554161
  293. vertex angle 134: 47.554161
  294. vertex angle 135: 47.554161
  295. vertex angle 136: 47.554161
  296. vertex angle 137: 47.554161
  297. vertex angle 138: 47.554161
  298. vertex angle 139: 47.554161
  299. vertex angle 140: 47.554161
  300. vertex angle 141: 47.554161
  301. vertex angle 142: 47.554161
  302. vertex angle 143: 47.554161
  303. vertex angle 144: 47.554161
  304. vertex angle 145: 49.675255
  305. vertex angle 146: 49.675259
  306. vertex angle 147: 49.675259
  307. vertex angle 148: 50.156723
  308. vertex angle 149: 50.156723
  309. vertex angle 150: 50.156723
  310. vertex angle 151: 50.156723
  311. vertex angle 152: 50.920620
  312. vertex angle 153: 50.920620
  313. vertex angle 154: 50.920620
  314. vertex angle 155: 51.499348
  315. vertex angle 156: 51.499348
  316. vertex angle 157: 52.317802
  317. vertex angle 158: 52.317802
  318. vertex angle 159: 52.317802
  319. vertex angle 160: 52.317802
  320. vertex angle 161: 52.317802
  321. vertex angle 162: 53.563168
  322. vertex angle 163: 53.563168
  323. vertex angle 164: 54.136105
  324. vertex angle 165: 54.136105
  325. vertex angle 166: 55.684265
  326. vertex angle 167: 55.684265
  327. vertex angle 168: 55.684265
  328. vertex angle 169: 55.684265
  329. vertex angle 170: 55.684265
  330. vertex angle 171: 55.684265
  331. vertex angle 172: 55.684265
  332. vertex angle 173: 57.419968
  333. vertex angle 174: 58.173817
  334. vertex angle 175: 60.082970
  335. vertex angle 176: 74.119209
  336. vertex angle 177: 74.119209
  337. vertex angle 178: 38274870576091758592.000000
  338. vertex angle 179: 319641308968723157292972769280.000000
  339. vertex amount: 180
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement