package ru.kpfu.itis.group11402.batyrova.Task053;
import ru.kpfu.itis.group11402.batyrova.Task050.RationalFraction;
/**
* @author Elvira Batyrova
* 402
* 053
*/
public class RationalVector2D {
private RationalFraction x;
private RationalFraction y;
public RationalFraction getX() {
return x;
}
public void setX(RationalFraction x) {
this.x = x;
}
public RationalFraction getY() {
return y;
}
public void setY(RationalFraction y) {
this.y = y;
}
public RationalVector2D() {
this(new RationalFraction(), new RationalFraction());
}
public RationalVector2D(RationalFraction x, RationalFraction y) {
this.x = x;
this.y = y;
}
public RationalVector2D add(RationalVector2D rvect) {
return new RationalVector2D (x.add(rvect.getX()), y.add(rvect.getY()));
}
public String toString() {
return ("(" + x.toString() + ", " + y.toString() + ")");
}
public double length() {
return Math.sqrt(x.value() * x.value() + y.value() * y.value());
}
public RationalFraction scalarProduct(RationalVector2D rvect) {
return x.mult(rvect.getX()).add(y.mult(rvect.getY()));
}
public boolean equals(RationalVector2D rvect) {
return (x.equals(rvect.getX()) && y.equals(rvect.getY()));
}
}