Class Vector3D.Sum

java.lang.Object
org.apache.commons.geometry.euclidean.EuclideanVectorSum<Vector3D>
org.apache.commons.geometry.euclidean.threed.Vector3D.Sum
All Implemented Interfaces:
Consumer<Vector3D>, Supplier<Vector3D>
Enclosing class:
Vector3D

public static final class Vector3D.Sum extends EuclideanVectorSum<Vector3D>
Class used to create high-accuracy sums of vectors. Each vector component is summed using an instance of Sum.

This class is mutable and not thread-safe.

See Also:
  • Sum
  • Field Details

    • xsum

      private final org.apache.commons.numbers.core.Sum xsum
      X component sum.
    • ysum

      private final org.apache.commons.numbers.core.Sum ysum
      Y component sum.
    • zsum

      private final org.apache.commons.numbers.core.Sum zsum
      Z component sum.
  • Constructor Details

    • Sum

      Sum(Vector3D initial)
      Construct a new instance with the given initial value.
      Parameters:
      initial - initial value
  • Method Details

    • add

      public Vector3D.Sum add(Vector3D vec)
      Add a vector to this instance.
      Specified by:
      add in class EuclideanVectorSum<Vector3D>
      Parameters:
      vec - vector to add
      Returns:
      this instance
    • addScaled

      public Vector3D.Sum addScaled(double scale, Vector3D vec)
      Add a scaled vector to this instance. In general, the result produced by this method will be more accurate than if the vector was scaled first and then added directly. In other words, sum.addScale(scale, vec) will generally produce a better result than sum.add(vec.multiply(scale)).
      Specified by:
      addScaled in class EuclideanVectorSum<Vector3D>
      Parameters:
      scale - scale factor
      vec - vector to scale and add
      Returns:
      this instance
    • get

      public Vector3D get()
    • create

      public static Vector3D.Sum create()
      Create a new instance with an initial value set to the zero vector.
      Returns:
      new instance set to zero
    • of

      public static Vector3D.Sum of(Vector3D initial)
      Construct a new instance with an initial value set to the argument.
      Parameters:
      initial - initial sum value
      Returns:
      new instance
    • of

      public static Vector3D.Sum of(Vector3D first, Vector3D... more)
      Construct a new instance from multiple values.
      Parameters:
      first - first vector
      more - additional vectors
      Returns:
      new instance