Class xlifepp::TrunkSidePart#

class TrunkSidePart : public xlifepp::Surface#

definition of a part of trunk side in R^3 (lateral surface) Trunk is defined by its basis_ (B), center1 (C), origin_(O) and scale factor (s) of the top part of side trunk is defined from a Trunk object and either 2 points of basis boundary or two angles if elliptical trunk General parametrisation of a side part ( g(u) parametrization of the basis boundary) P(u,v) = (1-v+sv)g(u) + v(O -sC) no construction via key parameter, no geometric transformation available, no mesh (p_,n_,h_ not managed) not a user geometry for the moment !!!

Public Functions

TrunkSidePart(const Geometry &g, const Point &a = Point(), const Point &b = Point(), bool sh = true)#

explicit constructor from Trunk and points defining angles

TrunkSidePart(const Geometry &g, real_t tmin, real_t tmax, bool sh = true)#

default constructor

explicit constructor from Trunk and angles in [0,2pi]

eplicit constructor

inline virtual ~TrunkSidePart()#

destructor

virtual string_t asString() const#

format as string

format as string: “TrunkSidePart …)”

inline virtual Geometry *clone() const#

virtual copy constructor for Geometry access to child TrunkSidePart object (const)

Vector<real_t> funParametrization(const Point &pt, Parameters &pars, DiffOpType d = _id) const#

parametrization

Parametrization of TrunkSidePart Trunk is defined by its basis_ (B), center1 (C) in basis, origin_(O) in top and scale factor (s) of the top general parametrisation of a side part ( g(u) parametrization of the basis boundary) P(u,v) = (1-v+sv)g(u) + v(O-sC)

Vector<real_t> invParametrization(const Point &pt, Parameters &pars, DiffOpType d = _id) const#

inverse of parametrization

inverse of TrunkSidePart parametrization (u,v)=invf(p)

inline virtual TrunkSidePart *trunkSidePart()#

access to child TrunkSidePart object

inline virtual const TrunkSidePart *trunkSidePart() const#

access to child EllipsoidSidePart object (const)