Defines an offset surface. More...
#include <cadex/ModelData_OffsetSurface.hxx>
Public Types | |
typedef cadex::internal::ModelData_OffsetSurfaceImpl | ImplType |
Public Member Functions | |
ModelData_OffsetSurface () | |
Constructor. | |
ModelData_OffsetSurface (const ModelData_Surface &theBasisSurface, double theOffset) | |
Constructor. | |
ModelData_OffsetSurface (const Handle_C &) | |
Constructor. | |
ModelData_Surface | BasisSurface () const |
Returns basis surface. | |
double | Offset () const |
Returns offset value. | |
![]() | |
ModelData_Surface () | |
Constructor. | |
ModelData_Surface (const ModelData_Surface &theOther) | |
Constructor. | |
ModelData_Surface (ModelData_Surface &&theOther) | |
Constructor. | |
~ModelData_Surface () | |
Destructor. | |
ModelData_Surface & | operator= (const ModelData_Surface &theOther) |
Assignment operator. | |
ModelData_Surface & | operator= (ModelData_Surface &&theOther) |
Move assignment operator. | |
ModelData_SurfaceType | Type () const |
Returns a surface type. | |
bool | IsNull () const |
Returns true if the object has not been initialized yet. | |
void | Nullify () |
Resets the object. | |
operator bool () const | |
bool | IsUPeriodic () const |
Returns true if the surface is periodic in U direction. | |
bool | IsVPeriodic () const |
Returns true if the surface is periodic in V direction. | |
double | UMin () const |
Returns a minimum parameter of a definition domain in U direction. | |
double | UMax () const |
Returns a maximum parameter of a definition domain in U direction. | |
double | VMin () const |
Returns a minimum parameter of a definition domain in V direction. | |
double | VMax () const |
Returns a maximum parameter of a definition domain in V direction. | |
void | Domain (double &theUMin, double &theUMax, double &theVMin, double &theVMax) const |
Returns a definition domain. | |
ModelData_Point | Value (double theParameterU, double theParameterV) const |
Evaluates a point on the surface. | |
void | Transform (const ModelData_Transformation &theTransformation) |
Applies transformation matrix to this object. | |
ModelData_Surface | Transformed (const ModelData_Transformation &theTransformation) const |
Returns a copy this object after applying transformation. | |
ModelData_Continuity | Continuity () const |
Returns a continuity type of the surface. | |
void | D0 (double theParameterU, double theParameterV, ModelData_Point &theValue) const |
Returns the point theValue of parameter theU, theV on the surface. | |
void | D1 (double theParameterU, double theParameterV, ModelData_Point &theValue, ModelData_Vector &theD1U, ModelData_Vector &theD1V) const |
Returns the point theValue and the first derivatives in the directions U theD1U and V theD1V at this point. | |
void | D2 (double theParameterU, double theParameterV, ModelData_Point &theValue, ModelData_Vector &theD1U, ModelData_Vector &theD1V, ModelData_Vector &theD2U, ModelData_Vector &theD2V, ModelData_Vector &theD2UV) const |
Returns the point theValue, the first and the second derivatives in the directions U and V at this point. | |
bool | DN (double theParameterU, double theParameterV, size_t theDerivativeOrder, ModelData_Point &theValue, ModelData_Vector theD[]) const |
void | Curvature (double theParameterU, double theParameterV, ModelData_Vector &thePrincipalMaxDirection, ModelData_Vector &thePrincipalMinDirection) const |
Returns the max and min principal curvature directions multiplied by max and min value of curvature respectively. | |
void | Curvature (double theParameterU, double theParameterV, ModelData_Direction &thePrincipalMaxDirection, ModelData_Direction &thePrincipalMinDirection, double &theMaxCurvature, double &theMinCurvature) const |
Returns the max and min principal curvature directions and their values. | |
void | Normal (double theParameterU, double theParameterV, ModelData_Direction &theNormal) const |
Returns the normal direction theNormal at the current point. | |
void | Mirror (const ModelData_Point &thePoint) |
Mirrors the surface relative to the point. | |
void | Mirror (const ModelData_Axis1Placement &theAxis) |
Mirrors the surface relative to the axis placement. | |
void | Mirror (const ModelData_Axis2Placement &theAxis) |
Mirrors the surface relative to the axis placement. | |
ModelData_Surface | Mirrored (const ModelData_Point &theRef) const |
Returns a copy this surface mirrored along the object. | |
ModelData_Surface | Mirrored (const ModelData_Axis1Placement &theAxis) const |
Returns a copy this surface mirrored along the object. | |
ModelData_Surface | Mirrored (const ModelData_Axis2Placement &theAxis) const |
Returns a copy this surface mirrored along the object. | |
void | Rotate (const ModelData_Axis1Placement &theAxis, double theAngle) |
Rotates the surface around the axis. | |
ModelData_Surface | Rotated (const ModelData_Axis1Placement &theAxis, double theAngle) const |
Returns a copy this surface rotated along the axis. | |
void | Translate (const ModelData_Vector &theVector) |
Translates the surface along the vector. | |
ModelData_Surface | Translated (const ModelData_Vector &theVector) const |
Returns a copy this surface translated along the vector. | |
void | Scale (const ModelData_Point &thePoint, double theScale) |
Scales the surface with respect to the point. | |
ModelData_Surface | Scaled (const ModelData_Point &thePoint, double theScale) const |
Returns a copy this surface scaled with respect to the point. | |
Public Attributes | |
operator Handle_C const | |
Defines an offset surface.
An offset surface is defined by a basis surface and an offset value.
The following image depicts an example of an offset surface:
A basis surface must be at least G1-continous, otherwise behavior is undefined (most likely an exception will be thrown).
An offset surface is parametrized as follows: \(\mathbf{S}(u,v) = \mathbf{B}(u,v) + \mathrm{offset} \cdot \mathbf{N}(u,v)\), where
|
inline |
Constructor.
Empty constructor.
cadex::ModelData_OffsetSurface::ModelData_OffsetSurface | ( | const ModelData_Surface & | theBasisSurface, |
double | theOffset | ||
) |
Constructor.
If theBasisSurface is an offset surface then its basis surface will be used as a basis surface and offset will be a sum of theOffset and the offset value of the theBasisSurface.
theBasisSurface must be at least G1-continuous, otherwise behavior is undefined.
double cadex::ModelData_OffsetSurface::Offset | ( | ) | const |
Returns offset value.
Returns the value specified in constructor.