Class Vector

java.lang.Object
hoverball.math.Vector

public final class Vector
extends java.lang.Object
Die Klasse Vector repräsentiert einen dreidimensionalen Vektor.

Im Folgenden bedeuten:
    a, b, v  -  Vektoren
    x, y, z  -  reelle Zahlen (als Koordinaten)
    r  -  reelle Zahl
    c  -  komplexe Zahl
    A  -  Matrix
    v  -  der Vektor des Vector-Objekts selbst

Operator Overloading für Groovy, Scala, Kotlin und Jython wird unterstützt.

  • Field Summary

    Fields 
    Modifier and Type Field Description
    double x
    x-coordinate
    double y
    y-coordinate
    double z
    z-coordinate
  • Constructor Summary

    Constructors 
    Constructor Description
    Vector()
    Erzeugt einen Vektor mit den Koordinaten (0,0,0).
    Vector​(double x, double y, double z)
    Erzeugt einen Vektor mit den Koordinaten (x,y,z).
    Vector​(Complex c)
    Erzeugt einen Vektor aus einer komplexen Zahl.
    Vector​(Vector v)
    Erzeugt einen Vektor gleich einem anderen Vektor.
  • Method Summary

    Modifier and Type Method Description
    double abs()
    Berechnet den Absolutbetrag  [ = | v | ].
    double abs2()
    Berechnet den Absolutbetrag im Quadrat  [ = | v |^2 ].
    Vector add​(Vector b)
    Addiert einen Vektor  [ v = v + b ].
    static Vector add​(Vector a, Vector b)
    Addiert zwei Vektoren  [ = a + b ].
    Vector div​(double r)
    Dividiert durch eine reelle Zahl  [ v = v / r ].
    static double dot​(Vector a, Vector b)
    Berechnet das Skalarprodukt zweier Vektoren  [ = < a, b > ].
    boolean equals​(double x, double y, double z)
    Vergleicht mit einem Vektor  [ v = (x,y,z) ?
    boolean equals​(java.lang.Object v)
    Vergleicht mit einem Vektor  [ v = v ?
    int hashCode()
    Berechnet den Hash-Code  [ = #### ].
    Vector mul​(double r)
    Multipliziert mit einer reellen Zahl  [ v = v r ].
    Vector mul​(Matrix A)
    Multipliziert mit einer Matrix  [ v = v A ].
    static Vector mul​(Vector v, double r)
    Multipliziert einen Vektor mit einer reellen Zahl  [ = v r ].
    static Vector mul​(Vector v, Matrix A)
    Multipliziert einen Vektor mit einer Matrix  [ = v A ].
    Vector neg()
    Bildet den Gegenvektor  [ v = -v ].
    static Vector neg​(Vector v)
    Berechnet die Gegenzahl  [ = -v ].
    Vector norm()
    Normiert den Absolutbetrag auf eins  [ v = v / | v | ].
    static Vector norm​(Vector v)
    Berechnet die Normierung des Absolutbetrages auf eins  [ = v / | v | ].
    Vector sub​(Vector b)
    Subtrahiert einen Vektor  [ v = v - b ].
    static Vector sub​(Vector a, Vector b)
    Subtrahiert zwei Vektoren  [ = a - b ].
    java.lang.String toString()
    String-Repräsentation  [ = "..." ].
    static Vector vec​(Vector a, Vector b)
    Berechnet das dreidimensionale Vektorprodukt zweier Vektoren  [ = a x b ].
    boolean zero()
    Testet auf null  [ v = 0 ?

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • x

      public final double x
      x-coordinate
    • y

      public final double y
      y-coordinate
    • z

      public final double z
      z-coordinate
  • Constructor Details

    • Vector

      public Vector()
      Erzeugt einen Vektor mit den Koordinaten (0,0,0).
    • Vector

      public Vector​(double x, double y, double z)
      Erzeugt einen Vektor mit den Koordinaten (x,y,z).
      Parameters:
      x - x-Koordinate
      y - y-Koordinate
      z - z-Koordinate
    • Vector

      public Vector​(Vector v)
      Erzeugt einen Vektor gleich einem anderen Vektor.
      Parameters:
      v - zu kopierender Vektor
    • Vector

      public Vector​(Complex c)
      Erzeugt einen Vektor aus einer komplexen Zahl.

      Die z-Koordinate des Vektors wird dabei auf null gesetzt.

      Parameters:
      c - komplexe Zahl
  • Method Details

    • hashCode

      public int hashCode()
      Berechnet den Hash-Code  [ = #### ].
      Overrides:
      hashCode in class java.lang.Object
      Returns:
      den Hash-Code
    • toString

      public java.lang.String toString()
      String-Repräsentation  [ = "..." ].
      Overrides:
      toString in class java.lang.Object
      Returns:
      den String
    • equals

      public boolean equals​(java.lang.Object v)
      Vergleicht mit einem Vektor  [ v = v ? ].
      Overrides:
      equals in class java.lang.Object
      Parameters:
      v - Vektor
      Returns:
      die Gleichheit
    • equals

      public boolean equals​(double x, double y, double z)
      Vergleicht mit einem Vektor  [ v = (x,y,z) ? ].
      Parameters:
      x - reelle Zahl
      y - reelle Zahl
      z - reelle Zahl
      Returns:
      die Gleichheit
    • add

      public final Vector add​(Vector b)
      Addiert einen Vektor  [ v = v + b ].
      Parameters:
      b - Vektor
      Returns:
      this
    • sub

      public final Vector sub​(Vector b)
      Subtrahiert einen Vektor  [ v = v - b ].
      Parameters:
      b - Vektor
      Returns:
      this
    • mul

      public final Vector mul​(double r)
      Multipliziert mit einer reellen Zahl  [ v = v r ].
      Parameters:
      r - reelle Zahl
      Returns:
      this
    • mul

      public final Vector mul​(Matrix A)
      Multipliziert mit einer Matrix  [ v = v A ].
      Parameters:
      A - Matrix
      Returns:
      this
    • div

      public final Vector div​(double r)
      Dividiert durch eine reelle Zahl  [ v = v / r ].
      Parameters:
      r - reelle Zahl
      Returns:
      this
    • neg

      public final Vector neg()
      Bildet den Gegenvektor  [ v = -v ].
      Returns:
      this
    • zero

      public final boolean zero()
      Testet auf null  [ v = 0 ? ].
      Returns:
      true, falls dieser Vektor gleich (0,0,0)
    • abs

      public final double abs()
      Berechnet den Absolutbetrag  [ = | v | ].
      Returns:
      den Absolutbetrag
    • abs2

      public final double abs2()
      Berechnet den Absolutbetrag im Quadrat  [ = | v |^2 ].
      Returns:
      den Absolutbetrag im Quadrat
    • norm

      public final Vector norm()
      Normiert den Absolutbetrag auf eins  [ v = v / | v | ].
      Returns:
      this
    • add

      public static final Vector add​(Vector a, Vector b)
      Addiert zwei Vektoren  [ = a + b ].
      Parameters:
      a - Vektor
      b - Vektor
      Returns:
      die Summe
    • sub

      public static final Vector sub​(Vector a, Vector b)
      Subtrahiert zwei Vektoren  [ = a - b ].
      Parameters:
      a - Vektor
      b - Vektor
      Returns:
      die Differenz
    • neg

      public static final Vector neg​(Vector v)
      Berechnet die Gegenzahl  [ = -v ].
      Parameters:
      v - Vektor
      Returns:
      die Gegenzahl
    • norm

      public static final Vector norm​(Vector v)
      Berechnet die Normierung des Absolutbetrages auf eins  [ = v / | v | ].
      Parameters:
      v - Vektor
      Returns:
      die Normierung
    • mul

      public static final Vector mul​(Vector v, double r)
      Multipliziert einen Vektor mit einer reellen Zahl  [ = v r ].
      Parameters:
      v - Vektor
      r - reelle Zahl
      Returns:
      das Produkt
    • mul

      public static final Vector mul​(Vector v, Matrix A)
      Multipliziert einen Vektor mit einer Matrix  [ = v A ].
      Parameters:
      v - Vektor
      A - Matrix
      Returns:
      das Produkt
    • dot

      public static final double dot​(Vector a, Vector b)
      Berechnet das Skalarprodukt zweier Vektoren  [ = < a, b > ].
      Parameters:
      a - Vektor
      b - Vektor
      Returns:
      das Skalarprodukt
    • vec

      public static final Vector vec​(Vector a, Vector b)
      Berechnet das dreidimensionale Vektorprodukt zweier Vektoren  [ = a x b ].
      Parameters:
      a - Vektor
      b - Vektor
      Returns:
      das Vektorprodukt