Location class

Пакет: com.hypixel.hytale.math.vector

Файл: com/hypixel/hytale/math/vector/Location.java

Поля (8)

МодификаторыТипИмя
Vector3i var1
int var1
var1
Location var2
float var3
float var4
float var5
float var6

Методы (10)

МодификаторыВозвратСигнатура
abstract throw new IllegalStateExceptionthrow new IllegalStateException("Pitch can't be NaN")
abstract throw new IllegalStateExceptionthrow new IllegalStateException("Yaw can't be NaN")
abstract return new Transformreturn new Transform(this.position, this.rotation)
if if(this == var1)
public void setPositionvoid setPosition(@Nonnull Vector3d var1)
public void setRotationvoid setRotation(@Nonnull Rotation3f var1)
public void setWorldvoid setWorld(@Nullable String var1)
abstract this this(null, var1, var2)
abstract this this(null, var1.position, var1.rotation)
abstract this this(var1, var2.position, var2.rotation)

Исходный код

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

class="kw">import com.hypixel.hytale.math.Axis;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import com.hypixel.hytale.math.util.TrigMathUtil;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector3d;
class="kw">import org.joml.Vector3i;

class="kw">public class Location {
   @Nullable
   class="kw">protected String world;
   @Nonnull
   class="kw">protected Vector3d position;
   @Nonnull
   class="kw">protected Rotation3f rotation;

   class="kw">public Location() {
      this(null, new Vector3d(), new Rotation3f());
   }

   class="kw">public Location(@Nonnull Vector3i var1) {
      this(null, new Vector3d(var1), new Rotation3f());
   }

   class="kw">public Location(@Nullable String var1, @Nonnull Vector3i var2) {
      this(var1, new Vector3d(var2), new Rotation3f());
   }

   class="kw">public Location(@Nonnull Vector3d var1) {
      this(null, new Vector3d(var1), new Rotation3f());
   }

   class="kw">public Location(@Nullable String var1, @Nonnull Vector3d var2) {
      this(var1, new Vector3d(var2), new Rotation3f());
   }

   class="kw">public Location(double var1, double var3, double var5) {
      this(null, new Vector3d(var1, var3, var5), new Rotation3f());
   }

   class="kw">public Location(@Nullable String var1, double var2, double var4, double var6) {
      this(var1, new Vector3d(var2, var4, var6), new Rotation3f());
   }

   class="kw">public Location(double var1, double var3, double var5, float var7, float var8, float var9) {
      this(null, new Vector3d(var1, var3, var5), new Rotation3f(var7, var8, var9));
   }

   class="kw">public Location(@Nullable String var1, double var2, double var4, double var6, float var8, float var9, float var10) {
      this(var1, new Vector3d(var2, var4, var6), new Rotation3f(var8, var9, var10));
   }

   class="kw">public Location(@Nonnull Vector3d var1, @Nonnull Rotation3f var2) {
      this(null, var1, var2);
   }

   class="kw">public Location(@Nonnull Transform var1) {
      this(null, var1.position, var1.rotation);
   }

   class="kw">public Location(@Nullable String var1, @Nonnull Transform var2) {
      this(var1, var2.position, var2.rotation);
   }

   class="kw">public Location(@Nullable String var1, @Nonnull Vector3d var2, @Nonnull Rotation3f var3) {
      this.world = var1;
      this.position = var2;
      this.rotation = var3;
   }

   @Nullable
   class="kw">public String getWorld() {
      class="kw">return this.world;
   }

   class="kw">public void setWorld(@Nullable String var1) {
      this.world = var1;
   }

   @Nonnull
   class="kw">public Vector3d getPosition() {
      class="kw">return this.position;
   }

   class="kw">public void setPosition(@Nonnull Vector3d var1) {
      this.position = var1;
   }

   @Nonnull
   class="kw">public Rotation3f getRotation() {
      class="kw">return this.rotation;
   }

   class="kw">public void setRotation(@Nonnull Rotation3f var1) {
      this.rotation = var1;
   }

   @Nonnull
   class="kw">public Vector3d getDirection() {
      class="kw">return Transform.getDirection(this.rotation.pitch(), this.rotation.yaw());
   }

   @Nonnull
   class="kw">public Vector3i getAxisDirection() {
      class="kw">return this.getAxisDirection(this.rotation.pitch(), this.rotation.yaw());
   }

   @Nonnull
   class="kw">public Vector3i getAxisDirection(float var1, float var2) {
      if (Float.isNaN(var1)) {
         throw new IllegalStateException("Pitch can't be NaN");
      }

      if (Float.isNaN(var2)) {
         throw new IllegalStateException("Yaw can't be NaN");
      }

      float var3 = TrigMathUtil.cos(var1);
      float var4 = var3 * -TrigMathUtil.sin(var2);
      float var5 = TrigMathUtil.sin(var1);
      float var6 = var3 * -TrigMathUtil.cos(var2);
      class="kw">return new Vector3i(MathUtil.fastRound(var4), MathUtil.fastRound(var5), MathUtil.fastRound(var6));
   }

   @Nonnull
   class="kw">public Axis getAxis() {
      Vector3i var1 = this.getAxisDirection();
      if (var1.x() != 0) {
         class="kw">return Axis.X;
      } else {
         class="kw">return var1.y() != 0 ? Axis.Y : Axis.Z;
      }
   }

   @Nonnull
   class="kw">public Transform toTransform() {
      class="kw">return new Transform(this.position, this.rotation);
   }

   @Override
   class="kw">public boolean equals(@Nullable Object var1) {
      if (this == var1) {
         class="kw">return true;
      }

      if (var1 != null && this.getClass() == var1.getClass()) {
         Location var2 = (Location)var1;
         if (!Objects.equals(this.world, var2.world)) {
            class="kw">return false;
         } else {
            class="kw">return !Objects.equals(this.position, var2.position) ? false : Objects.equals(this.rotation, var2.rotation);
         }
      } else {
         class="kw">return false;
      }
   }

   @Override
   class="kw">public int hashCode() {
      int var1 = this.world != null ? this.world.hashCode() : 0;
      var1 = 31 * var1 + this.position.hashCode();
      class="kw">return 31 * var1 + this.rotation.hashCode();
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "Location{world='" + this.world + "', position=" + this.position + ", rotation=" + this.rotation + "}";
   }
}