BlockSphereUtil class
Пакет: com.hypixel.hytale.math.block
Файл: com/hypixel/hytale/math/block/BlockSphereUtil.java
Поля (77)
| Модификаторы | Тип | Имя |
|---|---|---|
|
|
return |
|
double |
var10 |
|
float |
var10 |
|
float |
var11 |
|
float |
var11 |
|
double |
var12 |
|
int |
var12 |
|
float |
var12 |
|
int |
var13 |
|
int |
var13 |
|
double |
var14 |
|
int |
var14 |
|
int |
var14 |
|
int |
var15 |
|
int |
var15 |
|
double |
var16 |
|
int |
var16 |
|
int |
var16 |
|
int |
var17 |
|
int |
var17 |
|
int |
var18 |
|
float |
var18 |
|
int |
var18 |
|
int |
var19 |
|
float |
var19 |
|
float |
var19 |
|
int |
var20 |
|
float |
var20 |
|
float |
var20 |
|
int |
var21 |
|
float |
var21 |
|
float |
var21 |
|
float |
var22 |
|
float |
var22 |
|
float |
var23 |
|
float |
var24 |
|
float |
var24 |
|
float |
var25 |
|
float |
var25 |
|
double |
var26 |
|
float |
var26 |
|
float |
var27 |
|
int |
var28 |
|
|
var28 |
|
float |
var28 |
|
int |
var29 |
|
|
var29 |
|
float |
var29 |
|
float |
var30 |
|
float |
var31 |
|
float |
var31 |
|
float |
var32 |
|
float |
var32 |
|
double |
var33 |
|
float |
var34 |
|
int |
var35 |
|
|
var35 |
|
float |
var35 |
|
int |
var36 |
|
|
var36 |
|
double |
var36 |
|
int |
var38 |
|
|
var38 |
|
int |
var39 |
|
|
var39 |
|
float |
var41 |
|
float |
var42 |
|
double |
var43 |
|
int |
var45 |
|
|
var45 |
|
int |
var46 |
|
|
var46 |
|
float |
var48 |
|
float |
var49 |
|
float |
var50 |
|
int |
var7 |
|
double |
var8 |
Методы (36)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(int var22 = -var7; var22 <= var7; var22++) |
|
|
for for(int var23 = var19; var23 >= var18; var23--) |
|
|
for for(int var24 = var20; var24 <= var21; var24++) |
|
|
for for(int var23 = var12; var23 <= var13; var23++) |
|
|
for for(int var30 = var28; var30 <= var29; var30++) |
|
|
for for(int var37 = var35; var37 <= var36; var37++) |
|
|
for for(int var33 = var13; var33 <= var14; var33++) |
|
|
for for(int var40 = var38; var40 <= var39; var40++) |
|
|
for for(int var47 = var45; var47 <= var46; var47++) |
static |
<T> void |
forEachBlock<T> void forEachBlock(int var0, int var1, int var2, int var3, @Nullable T var4, @Nonnull TriIntObjPredicate<T> var5) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, @Nullable T var6, @Nonnull TriIntObjPredicate<T> var7) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, boolean var6, boolean var7, @Nullable T var8, @Nonnull TriIntObjPredicate<T> var9) |
static |
<T> void |
forEachBlock<T> void forEachBlock(int var0, int var1, int var2, int var3, int var4, @Nullable T var5, @Nonnull TriIntObjPredicate<T> var6) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, int var6, @Nullable T var7, @Nonnull TriIntObjPredicate<T> var8) |
static |
<T> boolean |
forEachBlock<T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, int var6, boolean var7, boolean var8, @Nullable T var9, @Nonnull TriIntObjPredicate<T> var10) |
abstract |
|
forEachBlock forEachBlock(var0, var1, var2, var3, var3, var3, var4, var5) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, false, false, var6, var7) |
abstract |
|
forEachBlock forEachBlock(var0, var1, var2, var3, var3, var3, var4, var5, var6) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, var6, false, false, var7, var8) |
abstract |
return |
forEachBlockreturn forEachBlock(var0, var1, var2, var3, var4, var5, var7, var8, var9, var10) |
static |
<T> void |
forEachBlockExact<T> void forEachBlockExact(int var0, int var1, int var2, double var3, @Nullable T var5, @Nonnull TriIntObjPredicate<T> var6) |
|
|
if if(var3 <= 0.0) |
|
|
if if(var3 <= 0) |
|
|
if if(var4 <= 0) |
|
|
if if(var5 <= 0) |
|
|
if if(var28 <= var29) |
|
|
if if(var35 <= var36) |
|
|
if if(var6 < 1) |
|
|
if if(var3 <= 0) |
|
|
if if(var4 <= 0) |
|
|
if if(var5 <= 0) |
|
|
if if(var38 <= var39) |
|
|
if if(var45 <= var46) |
|
|
if if(var3 > 0) |
|
|
if if(var4 > 0) |
static |
<T> boolean |
test<T> boolean test(int var0, int var1, int var2, int var3, int var4, int var5, T var6, @Nonnull TriIntObjPredicate<T> var7) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.math.block;
class="kw">import com.hypixel.hytale.function.predicate.TriIntObjPredicate;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class BlockSphereUtil {
class="kw">public BlockSphereUtil() {
}
class="kw">public class="kw">static <T> void forEachBlockExact(int var0, int var1, int var2, double var3, @Nullable T var5, @Nonnull TriIntObjPredicate<T> var6) {
if (var3 <= 0.0) {
throw new IllegalArgumentException(String.valueOf(var3));
}
int var7 = MathUtil.ceil(var3);
double var8 = 1.0 / (var7 * var7);
double var10 = 1.0 / (var7 * var7);
for (int var22 = -var7; var22 <= var7; var22++) {
double var12 = 1.0 - var22 * var22 * var8;
double var14 = Math.sqrt(var12) * var7;
int var19;
int var18 = -(var19 = (int)var14);
for (int var23 = var19; var23 >= var18; var23--) {
double var16 = Math.sqrt(var12 - var23 * var23 * var10) * var7;
int var21;
int var20 = -(var21 = (int)var16);
for (int var24 = var20; var24 <= var21; var24++) {
if (!var6.test(var0 + var22, var1 + var23, var2 + var24, var5)) {
class="kw">return;
}
}
}
}
}
class="kw">public class="kw">static <T> void forEachBlock(int var0, int var1, int var2, int var3, @Nullable T var4, @Nonnull TriIntObjPredicate<T> var5) {
forEachBlock(var0, var1, var2, var3, var3, var3, var4, var5);
}
class="kw">public class="kw">static <T> boolean forEachBlock(int var0, int var1, int var2, int var3, int var4, int var5, @Nullable T var6, @Nonnull TriIntObjPredicate<T> var7) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, false, false, var6, var7);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0, int var1, int var2, int var3, int var4, int var5, boolean var6, boolean var7, @Nullable T var8, @Nonnull TriIntObjPredicate<T> var9
) {
if (var3 <= 0) {
throw new IllegalArgumentException(String.valueOf(var3));
}
if (var4 <= 0) {
throw new IllegalArgumentException(String.valueOf(var4));
}
if (var5 <= 0) {
throw new IllegalArgumentException(String.valueOf(var5));
}
float var10 = var6 ? 0.5F : 0.0F;
float var11 = var7 ? 0.5F : 0.0F;
int var12 = -var3;
int var13 = var6 ? var3 - 1 : var3;
int var14 = -var4;
int var15 = var7 ? var4 - 1 : var4;
int var16 = -var5;
int var17 = var6 ? var5 - 1 : var5;
float var18 = var3 + 0.41F;
float var19 = var4 + 0.41F;
float var20 = var5 + 0.41F;
float var21 = 1.0F / (var18 * var18);
float var22 = 1.0F / (var19 * var19);
for (int var23 = var12; var23 <= var13; var23++) {
float var24 = var23 + var10;
float var25 = 1.0F - var24 * var24 * var21;
if (!(var25 < 0.0F)) {
double var26 = Math.sqrt(var25) * var19;
int var28 = MathUtil.ceil(-var26 - var11);
int var29 = (int)(var26 - var11);
var28 = Math.max(var28, var14);
var29 = Math.min(var29, var15);
if (var28 <= var29) {
for (int var30 = var28; var30 <= var29; var30++) {
float var31 = var30 + var11;
float var32 = var25 - var31 * var31 * var22;
if (!(var32 < 0.0F)) {
double var33 = Math.sqrt(var32) * var20;
int var35 = MathUtil.ceil(-var33 - var10);
int var36 = (int)(var33 - var10);
var35 = Math.max(var35, var16);
var36 = Math.min(var36, var17);
if (var35 <= var36) {
for (int var37 = var35; var37 <= var36; var37++) {
if (!var9.test(var0 + var23, var1 + var30, var2 + var37, var8)) {
class="kw">return false;
}
}
}
}
}
}
}
}
class="kw">return true;
}
class="kw">public class="kw">static <T> void forEachBlock(int var0, int var1, int var2, int var3, int var4, @Nullable T var5, @Nonnull TriIntObjPredicate<T> var6) {
forEachBlock(var0, var1, var2, var3, var3, var3, var4, var5, var6);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0, int var1, int var2, int var3, int var4, int var5, int var6, @Nullable T var7, @Nonnull TriIntObjPredicate<T> var8
) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var6, false, false, var7, var8);
}
class="kw">public class="kw">static <T> boolean forEachBlock(
int var0, int var1, int var2, int var3, int var4, int var5, int var6, boolean var7, boolean var8, @Nullable T var9, @Nonnull TriIntObjPredicate<T> var10
) {
if (var6 < 1) {
class="kw">return forEachBlock(var0, var1, var2, var3, var4, var5, var7, var8, var9, var10);
}
if (var3 <= 0) {
throw new IllegalArgumentException(String.valueOf(var3));
}
if (var4 <= 0) {
throw new IllegalArgumentException(String.valueOf(var4));
}
if (var5 <= 0) {
throw new IllegalArgumentException(String.valueOf(var5));
}
float var11 = var7 ? 0.5F : 0.0F;
float var12 = var8 ? 0.5F : 0.0F;
int var13 = -var3;
int var14 = var7 ? var3 - 1 : var3;
int var15 = -var4;
int var16 = var8 ? var4 - 1 : var4;
int var17 = -var5;
int var18 = var7 ? var5 - 1 : var5;
float var19 = var3 + 0.41F;
float var20 = var4 + 0.41F;
float var21 = var5 + 0.41F;
float var22 = var19 - var6;
float var23 = var20 - var6;
float var24 = var21 - var6;
float var25 = 1.0F / (var19 * var19);
float var26 = 1.0F / (var20 * var20);
float var27 = 1.0F / (var21 * var21);
float var28 = 1.0F / (var22 * var22);
float var29 = 1.0F / (var23 * var23);
float var30 = 1.0F / (var24 * var24);
float var31 = var25;
float var32 = var26;
for (int var33 = var13; var33 <= var14; var33++) {
float var34 = var33 + var11;
float var35 = 1.0F - var34 * var34 * var31;
if (!(var35 < 0.0F)) {
double var36 = Math.sqrt(var35) * var20;
int var38 = MathUtil.ceil(-var36 - var12);
int var39 = (int)(var36 - var12);
var38 = Math.max(var38, var15);
var39 = Math.min(var39, var16);
if (var38 <= var39) {
for (int var40 = var38; var40 <= var39; var40++) {
float var41 = var40 + var12;
float var42 = var35 - var41 * var41 * var32;
if (!(var42 < 0.0F)) {
double var43 = Math.sqrt(var42) * var21;
int var45 = MathUtil.ceil(-var43 - var11);
int var46 = (int)(var43 - var11);
var45 = Math.max(var45, var17);
var46 = Math.min(var46, var18);
if (var45 <= var46) {
for (int var47 = var45; var47 <= var46; var47++) {
float var48 = var47 + var11;
float var49 = var34 * var34 * var25 + var41 * var41 * var26 + var48 * var48 * var27;
if (!(var49 > 1.0F)) {
float var50 = var34 * var34 * var28 + var41 * var41 * var29 + var48 * var48 * var30;
if (!(var50 < 1.0F) && !var10.test(var0 + var33, var1 + var40, var2 + var47, var9)) {
class="kw">return false;
}
}
}
}
}
}
}
}
}
class="kw">return true;
}
class="kw">private class="kw">static <T> boolean test(int var0, int var1, int var2, int var3, int var4, int var5, T var6, @Nonnull TriIntObjPredicate<T> var7) {
if (!var7.test(var0 + var3, var1 + var4, var2 + var5, var6)) {
class="kw">return false;
}
if (var3 > 0) {
if (!var7.test(var0 - var3, var1 + var4, var2 + var5, var6)) {
class="kw">return false;
}
if (var4 > 0 && !var7.test(var0 - var3, var1 - var4, var2 + var5, var6)) {
class="kw">return false;
}
if (var5 > 0 && !var7.test(var0 - var3, var1 + var4, var2 - var5, var6)) {
class="kw">return false;
}
if (var4 > 0 && var5 > 0 && !var7.test(var0 - var3, var1 - var4, var2 - var5, var6)) {
class="kw">return false;
}
}
if (var4 > 0) {
if (!var7.test(var0 + var3, var1 - var4, var2 + var5, var6)) {
class="kw">return false;
}
if (var5 > 0 && !var7.test(var0 + var3, var1 - var4, var2 - var5, var6)) {
class="kw">return false;
}
}
class="kw">return var5 > 0 ? var7.test(var0 + var3, var1 + var4, var2 - var5, var6) : true;
}
}