24#ifndef __FMMDL_SURFACE_H__
25#define __FMMDL_SURFACE_H__
183 friend class BodyImpl;
184 friend class BodyCustom;
496 double bottomRadius,
double topRadius,
OdUInt32 approx);
597 double majorRadius,
double minorRadius,
int compare(const Surface *pOther, double e) const
Surface * copy(Body &to) const
Cone(const OdGeLine3d &axis, const OdGeVector3d &startDir, double bottomRadius, double topRadius, OdUInt32 approx)
OdUInt32 approximation() const
OdGeVector3d normal(const Vertex &atV, const Face &atF) const
void transform(const OdGeMatrix3d &x)
Cylinder(const OdGeLine3d &axis, const OdGeVector3d &startDir, double dRadius, OdUInt32 approx)
int compare(const Surface *pOther, double eps) const
Surface * copy(Body &to) const
void transform(const OdGeMatrix3d &x)
OdGeVector3d normal(const Vertex &atV, const Face &atF) const
OdUInt32 approximation() const
const OdGeVector3d & startDir() const
Revolution(const OdGeLine3d &axis, const OdGeVector3d &startDir)
const OdGeLine3d & axis() const
int compare(const Surface *pOther, double eps) const
void transform(const OdGeMatrix3d &x)
virtual Surface * copy(Body &to) const
ShadedSurface(double creaseAngle=0)
std::set< const Vertex * > m_setSharpEdge
virtual Type type() const
double creaseAngle() const
void findSharpEdges(const Body &body, double angleTol)
bool belongsToSharpEdge(const Vertex *vertex) const
const OdGePoint3d & center() const
Sphere(const OdGePoint3d ¢er, double radius, OdUInt32 approx)
OdGeVector3d normal(const Vertex &atV, const Face &atF) const
Surface * copy(Body &to) const
int compare(const Surface *pOther, double eps) const
void transform(const OdGeMatrix3d &x)
OdUInt32 approximation() const
virtual Surface * clone(Body &to) const
virtual Surface * copy(Body &to) const
virtual OdGeVector3d normal(const Vertex &atV, const Face &atF) const
int surface_compare(const Surface *pOther, double eps) const
virtual int compare(const Surface *pOther, double eps) const
virtual Type type() const
virtual void transform(const OdGeMatrix3d &x)
void transform(const OdGeMatrix3d &x)
double minorRadius() const
int compare(const Surface *pOther, double e) const
OdUInt32 minorApproximation() const
Surface * copy(Body &to) const
Torus(const OdGeLine3d &axis, const OdGeVector3d &startDir, double majorRadius, double minorRadius, OdUInt32 majorApprox, OdUInt32 minorApprox)
double majorRadius() const
OdUInt32 majorApproximation() const
OdGeVector3d normal(const Vertex &atV, const Face &atF) const