1
1
package engine
2
2
3
3
import (
4
- "github.com/RoboCup-SSL/ssl-game-controller/internal/app/geom"
5
4
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/tracker"
6
5
)
7
6
@@ -17,7 +16,8 @@ func (e *Engine) ProcessTrackerFrame(wrapperFrame *tracker.TrackerWrapperPacket)
17
16
}
18
17
e .gcState .TrackerState [* wrapperFrame .Uuid ] = & state
19
18
20
- // TODO update tracker GC state as well
19
+ // for now, all tracker sources update the GC state
20
+ e .gcState .TrackerStateGc = & state
21
21
}
22
22
23
23
func convertRobots (robots []* tracker.TrackedRobot ) (rs []* Robot ) {
@@ -40,42 +40,3 @@ func convertBalls(balls []*tracker.TrackedBall) *Ball {
40
40
}
41
41
return & ball
42
42
}
43
-
44
- //func (e *Engine) steadyCommonlyAgreedOnBallPos() *geom.Vector2 {
45
- // var ballPos *geom.Vector2
46
- // for _, trackerState := range e.gcState.TrackerState {
47
- // if trackerState.BallPos != nil &&
48
- // trackerState.BallVel != nil {
49
- // if trackerState.BallVel.Length() > ballSteadyThreshold {
50
- // // ball is still moving
51
- // return nil
52
- // }
53
- // if ballPos == nil {
54
- // // first steady ball pos
55
- // ballPos = trackerState.BallPos
56
- // } else if ballPos.DistanceTo(trackerState.BallPos) > 0.1 {
57
- // // additional steady ball pos that differs from the first one
58
- // return nil
59
- // }
60
- // }
61
- // }
62
- // return ballPos
63
- //}
64
-
65
- //func (e *Engine) uniqueBallPoss() (ballPoss []*geom.Vector2) {
66
- // for _, trackerState := range e.gcState.TrackerState {
67
- // if trackerState.BallPos != nil && !containsPos(ballPoss, trackerState.BallPos) {
68
- // ballPoss = append(ballPoss, trackerState.BallPos)
69
- // }
70
- // }
71
- // return
72
- //}
73
-
74
- func containsPos (l []* geom.Vector2 , v * geom.Vector2 ) bool {
75
- for _ , ballPos := range l {
76
- if ballPos .DistanceTo (v ) < 0.1 {
77
- return true
78
- }
79
- }
80
- return false
81
- }
0 commit comments