quaternion-java/fr/alnotz/Dual.java
2023-05-18 23:45:24 +02:00

50 lines
997 B
Java

package fr.alnotz;
public class Dual implements IsDual{
private double r;
private double d;
public Dual(double r, double d){
this.r = r;
this.d = d;
}
public static Dual plus(IsDual dual0, IsDual dual1){
return new Dual(dual0.getR() + dual1.getR(), dual0.getD() + dual1.getD());
}
@Override
public double getR() {
return this.r;
}
@Override
public double getD() {
return this.d;
}
@Override
public void setR(double r) {
this.r = r;
}
@Override
public void setD(double d) {
this.d = d;
}
@Override
public void plus(IsDual dual) {
this.r += dual.getR();
this.d += dual.getD();
}
@Override
public void times(IsDual dual) {
this.r *= dual.getR();
this.d = 2 * this.r * dual.getD();
}
@Override
public boolean equals(IsDual dual) {
return this.r == dual.getR() && this.d == dual.getR();
}
}