package org.geogebra.common.geogebra3D.kernel3D.algos; import org.geogebra.common.kernel.Construction; import org.geogebra.common.kernel.StringTemplate; import org.geogebra.common.kernel.Matrix.Coords; import org.geogebra.common.kernel.arithmetic.NumberValue; import org.geogebra.common.kernel.geos.GeoElement; import org.geogebra.common.kernel.kernelND.GeoPointND; /** * @author ggb3D * */ public abstract class AlgoQuadricPointPointNumber extends AlgoQuadricPointNumber { /** * @param c * construction * @param label * @param origin * @param secondPoint * @param r * @param computer */ public AlgoQuadricPointPointNumber(Construction c, String label, GeoPointND origin, GeoPointND secondPoint, NumberValue r, AlgoQuadricComputer computer) { super(c, label, origin, (GeoElement) secondPoint, r, computer); } @Override protected Coords getDirection() { return ((GeoPointND) getSecondInput()).getInhomCoordsInD3() .sub(getOrigin().getInhomCoordsInD3()); } @Override final public String toString(StringTemplate tpl) { return getLoc().getPlain(getPlainName(), getOrigin().getLabel(tpl), getSecondInput().getLabel(tpl), getNumber().getLabel(tpl)); } }