SimpleNoiseCarta class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.cartas
Файл: com/hypixel/hytale/builtin/hytalegenerator/cartas/SimpleNoiseCarta.java
extends: BiCarta<T>
Поля (4)
| Модификаторы | Тип | Имя |
|---|---|---|
|
List |
var1 |
|
Density.Context |
var4 |
|
double |
var5 |
|
Object |
var7 |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.cartas;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.density.Density;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.rangemaps.DoubleRange;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.rangemaps.DoubleRangeMap;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.workerindexer.WorkerIndexer;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.worldstructure.BiCarta;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;
class="kw">public class SimpleNoiseCarta<T> class="kw">extends BiCarta<T> {
@Nonnull
class="kw">private class="kw">final Density density;
@Nonnull
class="kw">private class="kw">final DoubleRangeMap<T> rangeMap;
class="kw">private class="kw">final T defaultValue;
class="kw">public SimpleNoiseCarta(@Nonnull Density var1, T var2) {
this.density = var1;
this.defaultValue = var2;
this.rangeMap = new DoubleRangeMap<>();
}
@Nonnull
class="kw">public SimpleNoiseCarta<T> put(@Nonnull DoubleRange var1, T var2) {
this.rangeMap.put(var1, var2);
class="kw">return this;
}
@Override
class="kw">public T apply(int var1, int var2, @Nonnull WorkerIndexer.Id var3) {
Density.Context var4 = new Density.Context();
var4.position = new Vector3d(var1, 0.0, var2);
double var5 = this.density.process(var4);
Object var7 = this.rangeMap.get(var5);
class="kw">return var7 == null ? this.defaultValue : var7;
}
@Nonnull
@Override
class="kw">public List<T> allPossibleValues() {
List var1 = this.rangeMap.values();
var1.add(this.defaultValue);
class="kw">return var1;
}
}