Aim/prediction history entry nearest a timestamp.
(t: number)
| 889 | |
| 890 | /** Aim/prediction history entry nearest a timestamp. */ |
| 891 | private aimAt(t: number): (typeof this.aimHistory)[number] | undefined { |
| 892 | let best: (typeof this.aimHistory)[number] | undefined; |
| 893 | for (const h of this.aimHistory) { |
| 894 | if (!best || Math.abs(h.t - t) < Math.abs(best.t - t)) best = h; |
| 895 | } |
| 896 | return best; |
| 897 | } |
| 898 | |
| 899 | /** |
| 900 | * Vision pass (Phase C): track-before-detect. Every candidate blob is |