ScalarMultiplierVectorProvider class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.vectorproviders
Файл: com/hypixel/hytale/builtin/hytalegenerator/vectorproviders/ScalarMultiplierVectorProvider.java
extends: VectorProvider
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
double |
var3 |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.vectorproviders;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.density.Density;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;
class="kw">public class ScalarMultiplierVectorProvider class="kw">extends VectorProvider {
@Nonnull
class="kw">private class="kw">final Density scalar;
@Nonnull
class="kw">private class="kw">final VectorProvider vectorProvider;
@Nonnull
class="kw">private class="kw">final Density.Context rChildContext;
@Nonnull
class="kw">private class="kw">final Vector3d rPosition;
@Nonnull
class="kw">private class="kw">final Vector3d rVector;
class="kw">public ScalarMultiplierVectorProvider(@Nonnull Density var1, @Nonnull VectorProvider var2) {
this.scalar = var1;
this.vectorProvider = var2;
this.rChildContext = new Density.Context();
this.rPosition = new Vector3d();
this.rVector = new Vector3d();
}
@Override
class="kw">public void process(@Nonnull VectorProvider.Context var1, @Nonnull Vector3d var2) {
this.rPosition.set(var1.position);
this.rChildContext.assign(var1);
this.rChildContext.position = this.rPosition;
this.vectorProvider.process(var1, this.rVector);
double var3 = this.scalar.process(this.rChildContext);
this.rChildContext.clearReferences();
this.rVector.mul(var3);
var2.set(this.rVector);
}
}