C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2

The shell extension parameters. More...

#include <op_shell_parameter.h>

+ Collaboration diagram for ExtensionValues:

Public Types

enum  ExtensionType { et_same = 0 , et_tangent , et_direction , et_total }
 Types of extension. More...
 
enum  ExtensionWay { ew_distance = -2 , ew_vertex = -1 , ew_shell = 0 }
 Ways of extension. More...
 
enum  LateralKind { le_normal = 0 , le_prolong , le_total }
 Methods of construction of the lateral edges. More...
 
enum  ShellObstacleType { sot_ToShell = 0 , sot_ThroughShellLayer , sot_Total }
 Ways to extend to shell. More...
 

Public Member Functions

 ExtensionValues ()
 Default constructor.
 
 ExtensionValues (const ExtensionValues &other)
 Copy-constructor.
 
 ExtensionValues (ExtensionType t, ExtensionWay w, LateralKind k, const MbCartPoint3D &p, const MbVector3D &dir, double d, bool pro, bool comb, const MbFaceShell *s, const MbItemIndex &fIndex)
 Constructor.
 
virtual ~ExtensionValues ()
 Destructor.
 
void Init (const ExtensionValues &other, bool copyShell=true)
 Initialization function. More...
 
void InitByDistance (ExtensionType t, LateralKind k, const MbVector3D &v, double d)
 Initialization function. More...
 
void InitByVertex (ExtensionType t, LateralKind k, const MbCartPoint3D &v)
 Initialization function. More...
 
bool InitByShell (ExtensionType t, LateralKind k, const MbFace *f, const MbSolid *s)
 Initialization function. More...
 
bool InitByShell (ExtensionType t, LateralKind k, const MbSolid *s, ShellObstacleType sot=sot_ToShell)
 Initialization function. More...
 
void Transform (const MbMatrix3D &matr, MbRegTransform *ireg=nullptr)
 Transform an object according to the matrix.
 
void Move (const MbVector3D &to, MbRegTransform *ireg=nullptr)
 Move an object along a vector.
 
void Rotate (const MbAxis3D &axis, double ang, MbRegTransform *ireg=nullptr)
 Rotate an object at a given angle around an axis.
 
const MbFaceShellGetShell () const
 Get the shell.
 
const MbItemIndexGetFaceIndex () const
 The index of face in the shell.
 
ShellObstacleType GetObstacleType () const
 Get obstacle shell processing mode.
 
bool SetShell (const MbFace *f, const MbSolid *s)
 Replacement of shell (and its selected face). More...
 
void operator= (const ExtensionValues &other)
 Assignment operator.
 
bool IsSame (const ExtensionValues &other, double accuracy) const
 Determine whether an object is equal?
 

Public Attributes

ExtensionType type
 Type of extension.
 
ExtensionWay way
 Way of extension.
 
LateralKind kind
 Method of construction of the lateral edges.
 
MbCartPoint3D point
 The point to extend.up to which.
 
MbVector3D direction
 Direction of extension.
 
double distance
 Distance.
 
bool prolong
 Prolong along smoothly mating edges.
 
bool combine
 Combine faces if it is possible.
 
bool simplify
 Create equidistant with simplification. More...
 

Detailed Description

The shell extension parameters.

The parameters of extension shell by extending or face-filling.

Member Enumeration Documentation

◆ ExtensionType

Types of extension.

Types of shell extension. Indicates the form extension surface.

Enumerator
et_same 

Along the same surface.

et_tangent 

Along tangent to the edge.

et_direction 

Along the direction.

et_total 

Number of all modes.

◆ ExtensionWay

Ways of extension.

Ways of shell extension.

Enumerator
ew_distance 

Prolong on the distance.

ew_vertex 

Prolong to the vertex.

ew_shell 

Prolong to the shell.

◆ LateralKind

Methods of construction of the lateral edges.

Methods of construction of the lateral edges when extending shell.

Enumerator
le_normal 

Along the normal to boundary.

le_prolong 

Extend the initial edges.

le_total 

Number of all modes.

◆ ShellObstacleType

Ways to extend to shell.

Ways to extend to shell.

Enumerator
sot_ToShell 

To shell.

sot_ThroughShellLayer 

Through the first shell layer.

sot_Total 

Number of all modes.

Member Function Documentation

◆ Init()

void ExtensionValues::Init ( const ExtensionValues other,
bool  copyShell = true 
)

Initialization function.

Initialization function by parameters.

Parameters
[in]other- Type of extension.
[in]copyShell- Copy obstacle shell.

◆ InitByDistance()

void ExtensionValues::InitByDistance ( ExtensionType  t,
LateralKind  k,
const MbVector3D v,
double  d 
)

Initialization function.

Initialization function of extending to a distance.

Parameters
[in]t- Type of extension.
[in]k- Method of construction of the lateral edges.
[in]v- Direction of extension.
[in]d- Value of extension.

◆ InitByVertex()

void ExtensionValues::InitByVertex ( ExtensionType  t,
LateralKind  k,
const MbCartPoint3D v 
)

Initialization function.

Initialization function of extension to the vertex.

Parameters
[in]t- Type of extension.
[in]k- Method of construction of the lateral edges.
[in]v- The vertex to construct up to.

◆ InitByShell() [1/2]

bool ExtensionValues::InitByShell ( ExtensionType  t,
LateralKind  k,
const MbFace f,
const MbSolid s 
)

Initialization function.

Initialization function of extension to the face of a shell.

Parameters
[in]t- Type of extension.
[in]k- Method of construction of the lateral edges.
[in]f- Shell face as stopper of elongation.
[in]s- Target shell (to the face of which) the working shell will be extending by the edges.
Returns
Returns true, if initialization was successful or false otherwise.

◆ InitByShell() [2/2]

bool ExtensionValues::InitByShell ( ExtensionType  t,
LateralKind  k,
const MbSolid s,
ShellObstacleType  sot = sot_ToShell 
)

Initialization function.

Initialization function of extension up to a shell or through a shell.

Parameters
[in]t- Type of extension.
[in]k- Method of construction of the lateral edges.
[in]s- Target shell (to the face of which) the working shell will be extending by the edges.
[in]sot- Cutting mode using shell.
Returns
Returns true, if initialization was successful or false otherwise.

◆ SetShell()

bool ExtensionValues::SetShell ( const MbFace f,
const MbSolid s 
)

Replacement of shell (and its selected face).

Replacement of shell (and its selected face). The shell is copied.

Parameters
[in]f- Shell face as stopper of elongation.
[in]s- Target shell (to the face of which) the working shell will be extending by the edges.
Returns
Returns true, if initialization was successful or false otherwise.

Member Data Documentation

◆ simplify

bool ExtensionValues::simplify

Create equidistant with simplification.

A flag responsible for constructing an equidistant by shifting the curve along the normal to the segment connecting its ends at a given distance. In this case, the shifted equidistant is replaced by a segment if the latter does not intersect the gabarit of the original curve.


The documentation for this struct was generated from the following file: