AbstractDistortedExtrusion class
Пакет: com.hypixel.hytale.server.worldgen.cave.shape.distorted
Файл: com/hypixel/hytale/server/worldgen/cave/shape/distorted/AbstractDistortedExtrusion.java
extends: AbstractDistortedShape
Поля (9)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
GeneralNoise.InterpolationFunction |
interpolation |
|
double |
var12 |
|
double |
var14 |
|
double |
var16 |
|
|
var16 |
|
double |
var18 |
|
double |
var20 |
|
|
var20 |
|
|
var20 |
Методы (6)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract abstract |
double |
getDistanceSqdouble getDistanceSq(double var1, double var3, double var5) |
abstract abstract |
double |
getHeightComponentdouble getHeightComponent(double var1, double var3, double var5) |
|
|
if if(var14 > var16) |
|
|
if if(var14 > var16) |
|
|
if if(var18 == 0.0) |
abstract |
|
super super(var1, var2, var3, var5) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.cave.shape.distorted;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import com.hypixel.hytale.procedurallib.logic.GeneralNoise;
class="kw">import com.hypixel.hytale.server.worldgen.cave.CaveType;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;
class="kw">public class="kw">abstract class AbstractDistortedExtrusion class="kw">extends AbstractDistortedShape {
class="kw">protected class="kw">final GeneralNoise.InterpolationFunction interpolation;
class="kw">public AbstractDistortedExtrusion(@Nonnull Vector3d var1, @Nonnull Vector3d var2, double var3, double var5, GeneralNoise.InterpolationFunction var7) {
super(var1, var2, var3, var5);
this.interpolation = var7;
}
class="kw">protected class="kw">abstract double getDistanceSq(double var1, double var3, double var5);
class="kw">protected class="kw">abstract double getHeightComponent(double var1, double var3, double var5);
@Override
class="kw">public double getHeightAtProjection(int var1, double var2, double var4, double var6, double var8, @Nonnull CaveType var10, @Nonnull ShapeDistortion var11) {
double var12 = this.getWidthAt(var6);
var12 *= var10.getHeightRadiusFactor(var1, var2, var4, MathUtil.floor(var8));
double var14 = this.getDistanceSq(var2, var4, var6);
double var16 = var12 * var12;
if (var14 > var16) {
class="kw">return 0.0;
}
var12 *= var11.getWidthFactor(var1, var2, var4);
var16 = var12 * var12;
if (var14 > var16) {
class="kw">return 0.0;
}
double var18 = this.getHeightAt(var6);
if (var18 == 0.0) {
class="kw">return 0.0;
}
double var20 = this.getHeightComponent(var12, var16, var14);
var20 = MathUtil.clamp(var20, 0.0, 1.0);
var20 = this.interpolation.interpolate(var20);
class="kw">return var18 * var20;
}
}