// Your job is to fill in all the missing function bodies. Be sure to add your
// name to this file, and rename it!
/**
* Vector is an object representing a mathematical 3-dimensional
* vector. Objects like this are useful when doing 3D graphics, or physics
* calculations.
*
* @author Adam Smith
* @version 1.0
*/
public class Vector {
private double x, y, z;
/**
* Create a new Vector, from its x, y, and z values.
* @since 1.0
*/
public Vector(double x, double y, double z) {
}
/**
* Add a second Vector to this.
* @param other the other Vector to add
* @return the resulting Vector
* @since 1.0
*/
public Vector add(Vector other) {
return null;
}
/**
* Subtract a second Vector from this.
* @param other the other Vector to subtract
* @return the resulting Vector
* @since 1.0
*/
public Vector subtract(Vector other) {
return null;
}
/**
* Multiply this by a scalar value.
* @param scalar the value by which to multiply
* @return the resulting Vector
* @since 1.0
*/
public Vector multiply(double scalar) {
return null;
}
/**
* Calculate the cross product of this with another
* Vector.
* @param other the other Vector
* @return the resulting Vector
* @since 1.0
*/
public Vector calcCrossProduct(Vector other) {
return null;
}
/**
* Calculate the dot product of this with another
* Vector.
* @param other the other Vector
* @return the resulting dot product
* @since 1.0
*/
public double calcDotProduct(Vector other) {
return Double.NaN;
}
/**
* Calculate the length of this.
* @return the length
* @since 1.0
*/
public double calcLength() {
return Double.NaN;
}
/**
* Create a new Vector with the same proportions as
* this, but with a length of exactly 1.0.
* @return the new normalized Vector
* @since 1.0
*/
public Vector makeNormalizedVector() {
return null;
}
/**
* Calculate the angle between this and a second
* Vector.
* @param other the other Vector
* @return the angle (in radians)
* @since 1.0
*/
public double calcAngle(Vector other) {
return Double.NaN;
}
/**
* Build a String representing this Vector, as
* [x, y, z].
* @return the String [x, y, z]
* @since 1.0
*/
@Override
public String toString() {
return null;
}
/**
* Return true if this
* Vector is equivalent to another one; otherwise
* false.
* @param otherObject the other object (probably a Vector) to
* compare with
* @return the whether they are equivalent
* @since 1.0
*/
@Override
public boolean equals(Object otherObject) {
return false;
}
/**
* Accessor for the x coordinate.
* @return the x coordinate
* @since 1.0
*/
public double getX() {
return Double.NaN;
}
/**
* Accessor for the y coordinate.
* @return the y coordinate
* @since 1.0
*/
public double getY() {
return Double.NaN;
}
/**
* Accessor for the z coordinate.
* @return the z coordinate
* @since 1.0
*/
public double getZ() {
return Double.NaN;
}
/**
* Mutator for the x coordinate.
* @param newX the new x coordinate
* @since 1.0
*/
public void setX(double newX) {
}
/**
* Mutator for the y coordinate.
* @param newY the new y coordinate
* @since 1.0
*/
public void setY(double newY) {
}
/**
* Mutator for the z coordinate.
* @param newZ the new z coordinate
* @since 1.0
*/
public void setZ(double newZ) {
}
}