private CollidableBucket CreateBucket(Point coordinate) { if (_bucketIndex.ContainsKey(coordinate)) { return(_buckets[_bucketIndex[GetBucketCoordinate(coordinate)]]); } var b = new CollidableBucket(_lastIndex, coordinate); _buckets.Add(_lastIndex, b); _bucketIndex.Add(coordinate, _lastIndex); _lastIndex++; return(b); }
/// <summary> /// Removes an AABB point from a bucket /// </summary> /// <param name="point"></param> private void RemovePoint(CollidablePoint point) { CollidableBucket b = GetBucket(point.Coordinates); b.RemovePoint(point); }
private CollidableBucket CreateBucket(Point coordinate) { if (_bucketIndex.ContainsKey(coordinate)) return _buckets[_bucketIndex[GetBucketCoordinate(coordinate)]]; var b = new CollidableBucket(_lastIndex, coordinate); _buckets.Add(_lastIndex, b); _bucketIndex.Add(coordinate, _lastIndex); _lastIndex++; return b; }