Stap 19: OpenCV: vinden de hoek
#Don't start moving until things are ready.if iFrame >=160: #This compares the bot's heading with the target angle. It must#be +-30 for the bot to move forward, otherwise it will turn. shortestAngle = targetDegs - intHeadingDeg if shortestAngle >180: shortestAngle -=360if shortestAngle <-180: shortestAngle +=360if shortestAngle <=30and shortestAngle >=-31: tranx =3print"Forward"elif shortestAngle >=1: tranx =2print"Turn Right"elif shortestAngle <1: tranx =4print"Turn Left" | 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 |
156-177: Hier proberen we te vinden van de hoek tussen de robot en zijn doel. We eigenlijk verdelen het hele scherm in vier kwadranten maar altijd met behulp van de robot de centroid als het punt van oorsprong. Wij berekenen dan de helling tussen de doelstelling van X en Y (tY, tX) en de robot de X en Y (cxAvg en cyAvg).
Zoiets als dit:
Als het doel worden gevestigd in het kwadrant III moest, zou het gaan iets als dit.
Als u zou willen graven verder in trigonometrische functies in Python, veel plezier. Delen als je beter wiskunde :)