(x, y, x_s, y_s, ax, ay, bx, by)
| 30 | |
| 31 | |
| 32 | def in_bounds(x, y, x_s, y_s, ax, ay, bx, by): |
| 33 | |
| 34 | dx = ax + bx |
| 35 | dy = ay + by |
| 36 | |
| 37 | if dx < 0: |
| 38 | if (x > x_s) or (x <= (x_s + dx)): |
| 39 | return False |
| 40 | else: |
| 41 | if (x < x_s) or (x >= (x_s + dx)): |
| 42 | return False |
| 43 | |
| 44 | if dy < 0: |
| 45 | if (y > y_s) or (y <= (y_s + dy)): |
| 46 | return False |
| 47 | else: |
| 48 | if (y < y_s) or (y >= (y_s + dy)): |
| 49 | return False |
| 50 | |
| 51 | return True |
| 52 | |
| 53 | |
| 54 | def gilbert_xy2d_r(cur_idx, x_dst, y_dst, x, y, ax, ay, bx, by): |