package org.geogebra.common.geogebra3D.kernel3D.algos;
import org.geogebra.common.geogebra3D.kernel3D.geos.GeoLine3D;
import org.geogebra.common.kernel.Construction;
import org.geogebra.common.kernel.advanced.AlgoAxisFirst;
import org.geogebra.common.kernel.kernelND.GeoConicND;
import org.geogebra.common.kernel.kernelND.GeoLineND;
public class AlgoAxisFirst3D extends AlgoAxisFirst {
private GeoLine3D axis; // output
public AlgoAxisFirst3D(Construction cons, String label, GeoConicND c) {
super(cons, c);
axis = new GeoLine3D(cons);
finishSetup(label);
}
@Override
public final void compute() {
// axes are lines with directions of eigenvectors
// through midpoint b
axis.setCoord(getConic().getMidpoint3D(), getConic().getEigenvec3D(0));
P.setCoords(getConic().getMidpoint3D(), false);
}
@Override
public GeoLineND getAxis() {
return axis;
}
}