mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-04-06 15:56:27 +00:00
@@ -203,15 +203,19 @@ public class KochanekBartelsInterpolation implements PathInterpolation {
|
||||
* Assumes a < b.
|
||||
*/
|
||||
private double arcLengthRecursive(int indexLeft, double remainderLeft, int indexRight, double remainderRight) {
|
||||
return switch(indexRight - indexLeft) {
|
||||
case 0 -> arcLengthRecursive(indexLeft, remainderLeft, remainderRight);
|
||||
case 1 ->
|
||||
switch(indexRight - indexLeft) {
|
||||
case 0:
|
||||
return arcLengthRecursive(indexLeft, remainderLeft, remainderRight);
|
||||
|
||||
case 1:
|
||||
// This case is merely a speed-up for a very common case
|
||||
arcLengthRecursive(indexLeft, remainderLeft, 1.0)
|
||||
return arcLengthRecursive(indexLeft, remainderLeft, 1.0)
|
||||
+ arcLengthRecursive(indexRight, 0.0, remainderRight);
|
||||
default -> arcLengthRecursive(indexLeft, remainderLeft, indexRight - 1, 1.0)
|
||||
+ arcLengthRecursive(indexRight, 0.0, remainderRight);
|
||||
};
|
||||
|
||||
default:
|
||||
return arcLengthRecursive(indexLeft, remainderLeft, indexRight - 1, 1.0)
|
||||
+ arcLengthRecursive(indexRight, 0.0, remainderRight);
|
||||
}
|
||||
}
|
||||
|
||||
private double arcLengthRecursive(int index, double remainderLeft, double remainderRight) {
|
||||
|
||||
@@ -467,37 +467,38 @@ public class MathHelper {
|
||||
float var9;
|
||||
float var10;
|
||||
switch(var3) {
|
||||
case 0 -> {
|
||||
case 0:
|
||||
var8 = var2;
|
||||
var9 = var7;
|
||||
var10 = var5;
|
||||
}
|
||||
case 1 -> {
|
||||
break;
|
||||
case 1:
|
||||
var8 = var6;
|
||||
var9 = var2;
|
||||
var10 = var5;
|
||||
}
|
||||
case 2 -> {
|
||||
break;
|
||||
case 2:
|
||||
var8 = var5;
|
||||
var9 = var2;
|
||||
var10 = var7;
|
||||
}
|
||||
case 3 -> {
|
||||
break;
|
||||
case 3:
|
||||
var8 = var5;
|
||||
var9 = var6;
|
||||
var10 = var2;
|
||||
}
|
||||
case 4 -> {
|
||||
break;
|
||||
case 4:
|
||||
var8 = var7;
|
||||
var9 = var5;
|
||||
var10 = var2;
|
||||
}
|
||||
case 5 -> {
|
||||
break;
|
||||
case 5:
|
||||
var8 = var2;
|
||||
var9 = var5;
|
||||
var10 = var6;
|
||||
}
|
||||
default -> throw new RuntimeException("Something went wrong when converting from HSV to RGB. Input was " + var0 + ", " + var1 + ", " + var2);
|
||||
break;
|
||||
default:
|
||||
throw new RuntimeException("Something went wrong when converting from HSV to RGB. Input was " + var0 + ", " + var1 + ", " + var2);
|
||||
}
|
||||
|
||||
int var11 = clamp((int) (var8 * 255.0F), 0, 255);
|
||||
|
||||
@@ -266,71 +266,85 @@ public class VectorMath {
|
||||
KList<BlockFace> faces = new KList<>();
|
||||
|
||||
switch(f) {
|
||||
case DOWN -> faces.add(BlockFace.DOWN);
|
||||
case EAST -> faces.add(BlockFace.EAST);
|
||||
case EAST_NORTH_EAST -> {
|
||||
case DOWN:
|
||||
faces.add(BlockFace.DOWN);
|
||||
break;
|
||||
case EAST:
|
||||
faces.add(BlockFace.EAST);
|
||||
break;
|
||||
case EAST_NORTH_EAST:
|
||||
faces.add(BlockFace.EAST);
|
||||
faces.add(BlockFace.EAST);
|
||||
faces.add(BlockFace.NORTH);
|
||||
}
|
||||
case EAST_SOUTH_EAST -> {
|
||||
break;
|
||||
case EAST_SOUTH_EAST:
|
||||
faces.add(BlockFace.EAST);
|
||||
faces.add(BlockFace.EAST);
|
||||
faces.add(BlockFace.SOUTH);
|
||||
}
|
||||
case NORTH -> faces.add(BlockFace.NORTH);
|
||||
case NORTH_EAST -> {
|
||||
break;
|
||||
case NORTH:
|
||||
faces.add(BlockFace.NORTH);
|
||||
break;
|
||||
case NORTH_EAST:
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.EAST);
|
||||
}
|
||||
case NORTH_NORTH_EAST -> {
|
||||
break;
|
||||
case NORTH_NORTH_EAST:
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.EAST);
|
||||
}
|
||||
case NORTH_NORTH_WEST -> {
|
||||
break;
|
||||
case NORTH_NORTH_WEST:
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.WEST);
|
||||
}
|
||||
case NORTH_WEST -> {
|
||||
break;
|
||||
case NORTH_WEST:
|
||||
faces.add(BlockFace.NORTH);
|
||||
faces.add(BlockFace.WEST);
|
||||
}
|
||||
case SELF -> faces.add(BlockFace.SELF);
|
||||
case SOUTH -> faces.add(BlockFace.SOUTH);
|
||||
case SOUTH_EAST -> {
|
||||
break;
|
||||
case SELF:
|
||||
faces.add(BlockFace.SELF);
|
||||
break;
|
||||
case SOUTH:
|
||||
faces.add(BlockFace.SOUTH);
|
||||
break;
|
||||
case SOUTH_EAST:
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.EAST);
|
||||
}
|
||||
case SOUTH_SOUTH_EAST -> {
|
||||
break;
|
||||
case SOUTH_SOUTH_EAST:
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.EAST);
|
||||
}
|
||||
case SOUTH_SOUTH_WEST -> {
|
||||
break;
|
||||
case SOUTH_SOUTH_WEST:
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.WEST);
|
||||
}
|
||||
case SOUTH_WEST -> {
|
||||
break;
|
||||
case SOUTH_WEST:
|
||||
faces.add(BlockFace.SOUTH);
|
||||
faces.add(BlockFace.WEST);
|
||||
}
|
||||
case UP -> faces.add(BlockFace.UP);
|
||||
case WEST -> faces.add(BlockFace.WEST);
|
||||
case WEST_NORTH_WEST -> {
|
||||
break;
|
||||
case UP:
|
||||
faces.add(BlockFace.UP);
|
||||
break;
|
||||
case WEST:
|
||||
faces.add(BlockFace.WEST);
|
||||
break;
|
||||
case WEST_NORTH_WEST:
|
||||
faces.add(BlockFace.WEST);
|
||||
faces.add(BlockFace.WEST);
|
||||
faces.add(BlockFace.NORTH);
|
||||
}
|
||||
case WEST_SOUTH_WEST -> {
|
||||
break;
|
||||
case WEST_SOUTH_WEST:
|
||||
faces.add(BlockFace.WEST);
|
||||
faces.add(BlockFace.WEST);
|
||||
faces.add(BlockFace.SOUTH);
|
||||
}
|
||||
default -> {
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return faces;
|
||||
|
||||
Reference in New Issue
Block a user