GridCellDistanceFunction class
Пакет: com.hypixel.hytale.procedurallib.logic.cell
Файл: com/hypixel/hytale/procedurallib/logic/cell/GridCellDistanceFunction.java
implements: CellDistanceFunction
Поля (28)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
GridCellDistanceFunction |
DISTANCE_FUNCTION |
|
int |
var10 |
|
int |
var10 |
|
DoubleArray.Double2 |
var11 |
|
DoubleArray.Double2 |
var11 |
|
CellJitter |
var11 |
|
CellJitter |
var12 |
|
CellJitter |
var12 |
|
double |
var13 |
|
int |
var13 |
|
double |
var13 |
|
int |
var13 |
|
DoubleArray.Double3 |
var14 |
|
DoubleArray.Double3 |
var14 |
|
int |
var14 |
|
double |
var15 |
|
CellJitter |
var15 |
|
double |
var15 |
|
CellJitter |
var15 |
|
DoubleArray.Double2 |
var15 |
|
double |
var16 |
|
double |
var16 |
|
double |
var16 |
|
double |
var18 |
|
double |
var18 |
|
double |
var18 |
|
double |
var20 |
|
double |
var20 |
Методы (18)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(int var10 = var7 - 1; var10 <= var7 + 1; var10++) |
|
|
for for(int var11 = var6 - 1; var11 <= var6 + 1; var11++) |
|
|
for for(int var13 = var8 - 1; var13 <= var8 + 1; var13++) |
|
|
for for(int var14 = var9 - 1; var14 <= var9 + 1; var14++) |
|
|
for for(int var15 = var10 - 1; var15 <= var10 + 1; var15++) |
|
|
for for(int var10 = var7 - 1; var10 <= var7 + 1; var10++) |
|
|
for for(int var11 = var6 - 1; var11 <= var6 + 1; var11++) |
|
|
for for(int var13 = var8 - 1; var13 <= var8 + 1; var13++) |
|
|
for for(int var14 = var9 - 1; var14 <= var9 + 1; var14++) |
|
|
for for(int var15 = var10 - 1; var15 <= var10 + 1; var15++) |
|
|
for for(int var12 = var4; var12 <= var6; var12++) |
|
|
for for(int var13 = var3; var13 <= var5; var13++) |
|
public int |
getHashpublic int getHash(int var1, int var2, int var3) |
static |
int |
getHashint getHash(int var0, int var1, int var2) |
static |
int |
getHashint getHash(int var0, int var1, int var2, int var3) |
|
public DoubleArray.Double2 |
getOffsetspublic DoubleArray.Double2 getOffsets(int var1) |
|
public double |
getXpublic double getX(double var1, double var3) |
|
public double |
getYpublic double getY(double var1, double var3) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.procedurallib.logic.cell;
class="kw">import com.hypixel.hytale.math.util.HashUtil;
class="kw">import com.hypixel.hytale.procedurallib.logic.CellularNoise;
class="kw">import com.hypixel.hytale.procedurallib.logic.DoubleArray;
class="kw">import com.hypixel.hytale.procedurallib.logic.ResultBuffer;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.evaluator.PointEvaluator;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.jitter.CellJitter;
class="kw">import com.hypixel.hytale.procedurallib.logic.point.PointConsumer;
class="kw">import javax.annotation.Nonnull;
class="kw">public class GridCellDistanceFunction class="kw">implements CellDistanceFunction {
class="kw">public class="kw">static class="kw">final GridCellDistanceFunction DISTANCE_FUNCTION = new GridCellDistanceFunction();
class="kw">public class="kw">static class="kw">final CellPointFunction POINT_FUNCTION = new CellPointFunction() {
@Override
class="kw">public int getHash(int var1, int var2, int var3) {
class="kw">return GridCellDistanceFunction.getHash(var1, var2, var3);
}
@Override
class="kw">public DoubleArray.Double2 getOffsets(int var1) {
class="kw">return CellularNoise.CELL_2D[var1 & 0xFF];
}
@Override
class="kw">public double getX(double var1, double var3) {
class="kw">return var1;
}
@Override
class="kw">public double getY(double var1, double var3) {
class="kw">return var3;
}
};
class="kw">public GridCellDistanceFunction() {
}
@Override
class="kw">public void nearest2D(int var1, double var2, double var4, int var6, int var7, ResultBuffer.ResultBuffer2d var8, @Nonnull PointEvaluator var9) {
for (int var10 = var7 - 1; var10 <= var7 + 1; var10++) {
for (int var11 = var6 - 1; var11 <= var6 + 1; var11++) {
this.evalPoint(var1, var2, var4, var11, var10, var8, var9);
}
}
}
@Override
class="kw">public void nearest3D(
int var1, double var2, double var4, double var6, int var8, int var9, int var10, ResultBuffer.ResultBuffer3d var11, @Nonnull PointEvaluator var12
) {
for (int var13 = var8 - 1; var13 <= var8 + 1; var13++) {
for (int var14 = var9 - 1; var14 <= var9 + 1; var14++) {
for (int var15 = var10 - 1; var15 <= var10 + 1; var15++) {
this.evalPoint(var1, var2, var4, var6, var13, var14, var15, var11, var12);
}
}
}
}
@Override
class="kw">public void transition2D(int var1, double var2, double var4, int var6, int var7, ResultBuffer.ResultBuffer2d var8, @Nonnull PointEvaluator var9) {
for (int var10 = var7 - 1; var10 <= var7 + 1; var10++) {
for (int var11 = var6 - 1; var11 <= var6 + 1; var11++) {
this.evalPoint2(var1, var2, var4, var11, var10, var8, var9);
}
}
}
@Override
class="kw">public void transition3D(
int var1, double var2, double var4, double var6, int var8, int var9, int var10, ResultBuffer.ResultBuffer3d var11, @Nonnull PointEvaluator var12
) {
for (int var13 = var8 - 1; var13 <= var8 + 1; var13++) {
for (int var14 = var9 - 1; var14 <= var9 + 1; var14++) {
for (int var15 = var10 - 1; var15 <= var10 + 1; var15++) {
this.evalPoint2(var1, var2, var4, var6, var13, var14, var15, var11, var12);
}
}
}
}
@Override
class="kw">public void evalPoint(int var1, double var2, double var4, int var6, int var7, ResultBuffer.ResultBuffer2d var8, @Nonnull PointEvaluator var9) {
int var10 = getHash(var1, var6, var7);
DoubleArray.Double2 var11 = CellularNoise.CELL_2D[var10 & 0xFF];
CellJitter var12 = var9.getJitter();
double var13 = var12.getPointX(var6, var11);
double var15 = var12.getPointY(var7, var11);
var9.evalPoint(var1, var2, var4, var10, var6, var7, var13, var15, var8);
}
@Override
class="kw">public void evalPoint(
int var1, double var2, double var4, double var6, int var8, int var9, int var10, ResultBuffer.ResultBuffer3d var11, @Nonnull PointEvaluator var12
) {
int var13 = getHash(var1, var8, var9, var10);
DoubleArray.Double3 var14 = CellularNoise.CELL_3D[var13 & 0xFF];
CellJitter var15 = var12.getJitter();
double var16 = var15.getPointX(var8, var14);
double var18 = var15.getPointY(var9, var14);
double var20 = var15.getPointZ(var10, var14);
var12.evalPoint(var1, var2, var4, var6, var13, var8, var9, var10, var16, var18, var20, var11);
}
@Override
class="kw">public void evalPoint2(int var1, double var2, double var4, int var6, int var7, ResultBuffer.ResultBuffer2d var8, @Nonnull PointEvaluator var9) {
int var10 = getHash(var1, var6, var7);
DoubleArray.Double2 var11 = CellularNoise.CELL_2D[var10 & 0xFF];
CellJitter var12 = var9.getJitter();
double var13 = var12.getPointX(var6, var11);
double var15 = var12.getPointY(var7, var11);
var9.evalPoint2(var1, var2, var4, var10, var6, var7, var13, var15, var8);
}
@Override
class="kw">public void evalPoint2(
int var1, double var2, double var4, double var6, int var8, int var9, int var10, ResultBuffer.ResultBuffer3d var11, @Nonnull PointEvaluator var12
) {
int var13 = getHash(var1, var8, var9, var10);
DoubleArray.Double3 var14 = CellularNoise.CELL_3D[var13 & 0xFF];
CellJitter var15 = var12.getJitter();
double var16 = var15.getPointX(var8, var14);
double var18 = var15.getPointY(var9, var14);
double var20 = var15.getPointZ(var10, var14);
var12.evalPoint2(var1, var2, var4, var6, var13, var8, var9, var10, var16, var18, var20, var11);
}
@Override
class="kw">public <T> void collect(
int var1,
int var2,
int var3,
int var4,
int var5,
int var6,
ResultBuffer.Bounds2d var7,
T var8,
@Nonnull PointConsumer<T> var9,
@Nonnull PointEvaluator var10
) {
CellJitter var11 = var10.getJitter();
for (int var12 = var4; var12 <= var6; var12++) {
for (int var13 = var3; var13 <= var5; var13++) {
int var14 = getHash(var2, var13, var12);
DoubleArray.Double2 var15 = CellularNoise.CELL_2D[var14 & 0xFF];
double var16 = var11.getPointX(var13, var15);
double var18 = var11.getPointY(var12, var15);
var10.collectPoint(var14, var13, var12, var16, var18, var8, var9);
}
}
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "GridCellDistanceFunction{}";
}
class="kw">public class="kw">static int getHash(int var0, int var1, int var2) {
class="kw">return (int)HashUtil.rehash(var0, var1, var2);
}
class="kw">public class="kw">static int getHash(int var0, int var1, int var2, int var3) {
class="kw">return (int)HashUtil.rehash(var0, var1, var2, var3);
}
}