9#include "MantidGeometry/DllConfig.h"
40 static const int Nprecision = 10;
43 std::unique_ptr<Quadratic> clone()
const;
49 std::string
className()
const override {
return "Quadratic"; }
51 const std::vector<double> &
copyBaseEqn()
const {
return BaseEqn; }
59 double distance(
const Kernel::V3D &)
const override;
65 void write(std::ostream &)
const override;
66 void print()
const override;
virtual void Accept(const Surface &)=0
Accept a surface.
Holds a basic quadratic surface.
Quadratic(const Quadratic &)=default
std::string className() const override
Effective typeid.
const std::vector< double > & copyBaseEqn() const
access BaseEquation vector
std::vector< double > BaseEqn
Base equation (as a 10 point vector)
virtual void setBaseEqn()=0
Abstract set baseEqn.
void acceptVisitor(BaseVisit &A) const override
Accept visitor for line calculation.
Quadratic & operator=(const Quadratic &)=delete
Quadratic * doClone() const override=0
Abstract clone function.
Holds a basic quadratic surface.
Helper class which provides the Collimation Length for SANS instruments.