Add some more utility functions
This commit is contained in:
parent
ed9d9bd249
commit
a4da2bb52b
10 changed files with 164 additions and 47 deletions
|
@ -2,8 +2,10 @@ package dev.zontreck.libzontreck.util;
|
|||
|
||||
import dev.zontreck.libzontreck.api.Vector3;
|
||||
import dev.zontreck.libzontreck.vectors.Vector3d;
|
||||
import dev.zontreck.libzontreck.vectors.Vector3i;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -112,4 +114,43 @@ public class PositionUtil
|
|||
}
|
||||
|
||||
|
||||
public List<Vector3> sortAscending(List<Vector3> vecs)
|
||||
{
|
||||
|
||||
List<Vector3> copy = new ArrayList<>(vecs);
|
||||
List<Vector3> sorted = new ArrayList<>();
|
||||
|
||||
|
||||
while(copy.size()>0)
|
||||
{
|
||||
Vector3 lowest = findFirstLowestPosition(copy);
|
||||
copy.remove(lowest);
|
||||
sorted.add(lowest);
|
||||
}
|
||||
|
||||
return sorted;
|
||||
}
|
||||
|
||||
public static Vector3 findFirstLowestPosition(List<Vector3> vecs)
|
||||
{
|
||||
|
||||
Vector3i lowest = new Vector3i(0, 500, 0);
|
||||
List<Vector3> copy = new ArrayList<>(vecs);
|
||||
|
||||
Iterator<Vector3> it = copy.iterator();
|
||||
while(it.hasNext())
|
||||
{
|
||||
Vector3i entry = it.next().asVector3i();
|
||||
if(entry.y < lowest.y)
|
||||
{
|
||||
lowest = entry;
|
||||
it.remove();
|
||||
}else it.remove();
|
||||
}
|
||||
|
||||
return lowest;
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
Reference in a new issue