public void FindTiles_DiagonalIrregular() { tiles = Bresenham.FindTiles( new Vector2(3f, 5f), new Vector2(0f, 0f), 1 ); // looks about right }
public void FindTiles_HorizontalRightNext() { tiles = Bresenham.FindTiles( new Vector2(.5f, .5f), new Vector2(1.5f, .5f), 1 ); Assert.True(Contains(0, 0)); Assert.True(Contains(1, 0)); Assert.AreEqual(2, tiles.Count); }
public void FindTiles_Diagonal() { tiles = Bresenham.FindTiles( new Vector2(.5f, .5f), new Vector2(4.5f, 4.5f), 1 ); Assert.True(Contains(1, 1)); Assert.True(Contains(2, 2)); Assert.True(Contains(3, 3)); Assert.True(Contains(4, 4)); }
public void FindTiles_PerfectVerticalReverse() { tiles = Bresenham.FindTiles( new Vector2(.5f, 4.5f), new Vector2(.5f, .5f), 1 ); Assert.True(Contains(0, 1)); Assert.True(Contains(0, 2)); Assert.True(Contains(0, 3)); Assert.True(Contains(0, 4)); Assert.AreEqual(5, tiles.Count); }
public void FindTiles_PerfectHorizontalReverse() { tiles = Bresenham.FindTiles( new Vector2(4.5f, .5f), new Vector2(.5f, .5f), 1 ); Assert.True(Contains(1, 0)); Assert.True(Contains(2, 0)); Assert.True(Contains(3, 0)); Assert.True(Contains(4, 0)); Assert.AreEqual(5, tiles.Count); }
public void FindTiles_Same() { tiles = Bresenham.FindTiles( new Vector2(.5f, .6f), new Vector2(.5f, .5f), 1 ); tiles.ForEach(t => { // Debug.Log(t.ToString()); }); Assert.True(Contains(0, 0)); Assert.AreEqual(1, tiles.Count); }
public List <MapNode> GetMapNodesBetween( Vector2 start, Vector2 end ) { Vector2 relativeStart = start - bottomLeftCorner; Vector2 relativeEnd = end - bottomLeftCorner; List <Point> intersectingPoints = Bresenham.FindTiles(relativeStart, relativeEnd, nodeSize); List <MapNode> between = GetBatchMapNodesAt(intersectingPoints); Pools.FreeListPoints(intersectingPoints); Pools.ListPoints = intersectingPoints; return(between); }