VectorProjectorVectorProvider class

Пакет: com.hypixel.hytale.builtin.hytalegenerator.vectorproviders

Файл: com/hypixel/hytale/builtin/hytalegenerator/vectorproviders/VectorProjectorVectorProvider.java

extends: VectorProvider

Поля (2)

МодификаторыТипИмя
double var3
double var5

Методы (1)

МодификаторыВозвратСигнатура
if if(var3 == 0.0)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.vectorproviders;

class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class VectorProjectorVectorProvider class="kw">extends VectorProvider {
   @Nonnull
   class="kw">private class="kw">final VectorProvider source;
   @Nonnull
   class="kw">private class="kw">final VectorProvider target;
   @Nonnull
   class="kw">private class="kw">final Vector3d rSource;
   @Nonnull
   class="kw">private class="kw">final Vector3d rTarget;

   class="kw">public VectorProjectorVectorProvider(@Nonnull VectorProvider var1, @Nonnull VectorProvider var2) {
      this.source = var1;
      this.target = var2;
      this.rSource = new Vector3d();
      this.rTarget = new Vector3d();
   }

   @Override
   class="kw">public void process(@Nonnull VectorProvider.Context var1, @Nonnull Vector3d var2) {
      this.source.process(var1, this.rSource);
      this.target.process(var1, this.rTarget);
      double var3 = this.rTarget.lengthSquared();
      if (var3 == 0.0) {
         var2.set(0.0, 0.0, 0.0);
      } else {
         double var5 = this.rSource.dot(this.rTarget) / var3;
         var2.set(this.rTarget).mul(var5);
      }
   }
}