- print "----"
- print "LIM: ", start_limit, end_limit
- print "ANG: ", self.start.angle, self.end.angle
- n1 = self.start.normalized()
- n2 = self.end.normalized()
- s = pymunk.Vec2d(1, 0).rotated(start_limit)
- e = pymunk.Vec2d(1, 0).rotated(end_limit)
- n1bet = s.dot(e) < s.dot(n1) and s.dot(e) < s.dot(n1)
- n2bet = s.dot(e) < e.dot(n2) and s.dot(e) < e.dot(n2)
- print "DOTS n1: ", n1.dot(n2), n1.dot(s), n2.dot(s)
- print "DOTS n2: ", n1.dot(n2), n1.dot(e), n2.dot(e)
- print "BET: ", n1bet, n2bet
- if n1bet:
- print "TRUE\n----"
+
+ def between(n):
+ if start_limit < end_limit:
+ return start_limit <= n <= end_limit
+ return (start_limit <= n) or (n <= end_limit)
+
+ start_within = between(self.start.angle)
+ end_within = between(self.end.angle)
+ if start_within or end_within: