HashGrid: bounds: Rect cellSize: number columns: number grid: Array<Array> hashesForObject: Map<GameObj, Array> versionsForObject: Map<GameObj, [ number, number, number ] > add(obj: GameObj ): void remove(obj: GameObj ): void clear(): void update(): void iterPairs(pairCb: (obj1: GameObj , obj2: GameObj )=>void ): void Iterates all object pairs which potentially collide retrieve(rect: Rect , retrieveCb: (obj: GameObj )=>void ): void Retrieves all object which potentially collide with the rectangle _hashPoint: _hashRect: _addObjectToGridByHash: _removeObjectFromGridByHash: _isInside: _resizeToFit: _clampBoundsToCellSize:
iterPairs(pairCb: (obj1: GameObj , obj2: GameObj )=>void ): void Iterates all object pairs which potentially collide
retrieve(rect: Rect , retrieveCb: (obj: GameObj )=>void ): void Retrieves all object which potentially collide with the rectangle