14#include "libmesh/point.h"
34 CSGXCylinder(
const std::string & name,
const Real y0,
const Real z0,
const Real r);
47 virtual std::unordered_map<std::string, Real>
getCoeffs()
const override;
63 virtual std::unique_ptr<CSGSurface>
clone()
const override
CSGSurface creates an internal representation of a Constructive Solid Geometry (CSG) surface,...
std::string _name
Name of surface.
CSGXCylinder creates an internal representation of a Constructive Solid Geometry (CSG) x-axis aligned...
virtual ~CSGXCylinder()=default
Destructor.
virtual std::unordered_map< std::string, Real > getCoeffs() const override
Get the coefficients (y0, z0, and r) that define the cylindrical surface with the equation: (y - y0)^...
virtual Real evaluateSurfaceEquationAtPoint(const Point &p) const override
given a point, determine its evaluation based on the equation of the cylinder
Real _y0
Value of y0 in equation of an x-axis aligned cylinder.
Real _z0
Value of z0 in equation of an x-axis aligned cylinder.
virtual std::unique_ptr< CSGSurface > clone() const override
create clone of CSGXCylinder object
Real _r
Value of r in equation of an x-axis aligned cylinder.