C3D Toolkit  Kernel - 117958, Vision - 2.7.6.12

Auxiliary functions for a composite bend (a bend from a sketch). More...

#include <action_sheet.h>

Public Types

enum  MbeConstructionMethod { cmToEnd , cmByWidth , cmByManyEdges }
 The method of a composite bend construction. More...
 

Public Member Functions

 MbJointBendUtils (const MbPlacement3D &placement, const MbContour &contour, const MbCurveEdge &curveEdge)
 Constructor. More...
 
bool CalculateDistances (MbeConstructionMethod method, const double widthAlongPlaceNorm, const double widthRevPlaceNorm, const bool alongPlaceNorm, double &begDistance, double &endDistance) const
 Calculate the distances from the edge ends. More...
 
bool GetConnectionAngle (double &angle) const
 Compute the angle of connection of a sketch with a sheet solid. More...
 
MbCurve3DCreateHotPointArc (const MbCurveEdge &curveEdge, const double begDistance, const double endDistance, const double radius, const size_t bendIndex) const
 Create an arc that contains a hot point of the bend radius. More...
 

Static Public Member Functions

static MbContourCreateInitialContour (const MbCurveEdge &curveEdge, const bool orient, const MbContour &contour, const MbPlacement3D &placement)
 Create a contour in the coordinate system associated with the edge.
 
static bool SetPlacementToEdge (const MbCurveEdge &curveEdge, const bool edgeOrient, const double begDistance, MbPlacement3D &modifiedPlacement)
 Create a coordinate system associated with the edge. More...
 

Detailed Description

Auxiliary functions for a composite bend (a bend from a sketch).

Auxiliary functions for a composite bend (a bend from a sketch).

Member Enumeration Documentation

◆ MbeConstructionMethod

The method of a composite bend construction.

Enumerator
cmToEnd 

To the edge end.

cmByWidth 

With a specified width.

cmByManyEdges 

From several edges.

Constructor & Destructor Documentation

◆ MbJointBendUtils()

MbJointBendUtils::MbJointBendUtils ( const MbPlacement3D placement,
const MbContour contour,
const MbCurveEdge curveEdge 
)

Constructor.

Parameters
[in]placement- The local coordinate system of the sketch.
[in]contour- The sketch of bends to create.
[in]curveEdge- A non-oriented edge to attach the created bend to.

Member Function Documentation

◆ CalculateDistances()

bool MbJointBendUtils::CalculateDistances ( MbeConstructionMethod  method,
const double  widthAlongPlaceNorm,
const double  widthRevPlaceNorm,
const bool  alongPlaceNorm,
double &  begDistance,
double &  endDistance 
) const

Calculate the distances from the edge ends.

The distances are positive if the bends extend relative to the source solid and negative if they narrow.

Parameters
[in]method- The method of a composite bend construction.
[in]widthAlongPlaceNorm- The bend width in the direction of contour LCS normal for method cmByWidth.
[in]widthRevPlaceNorm- The bend width in the opposite direction of contour LCS normal for method cmByWidth.
[in]alongPlaceNorm- The direction in which to thicken the bend for method cmToEnd.
[out]begDistance- Returned value of the distance from the start of oriented edge to the bend.
[out]endDistance- Returned value of the distance from the end of oriented edge to the bend.
Returns
True if the operation succeeded, otherwise false.

◆ GetConnectionAngle()

bool MbJointBendUtils::GetConnectionAngle ( double &  angle) const

Compute the angle of connection of a sketch with a sheet solid.

Parameters
[out]angle- The angle of connection of a sketch with a sheet solid.
Returns
True if the operation succeeded, otherwise false.

◆ CreateHotPointArc()

MbCurve3D* MbJointBendUtils::CreateHotPointArc ( const MbCurveEdge curveEdge,
const double  begDistance,
const double  endDistance,
const double  radius,
const size_t  bendIndex 
) const

Create an arc that contains a hot point of the bend radius.

The arc passes through the center (by width) of the sheet being attached.

Parameters
[in]curveEdge- A non-oriented edge of the joint.
[in]begDistance- The distance from the start point of the oriented edge corresponding to curveEdge.
[in]endDistance- The distance from the end point of the oriented edge corresponding to curveEdge.
[in]radius- The arc radius.
[in]bendIndex- The index of the bend to be attached. Zero value indicates the bend by which the sheet being constructed is attached to the sheet solid.
Returns
The created arc.

◆ SetPlacementToEdge()

static bool MbJointBendUtils::SetPlacementToEdge ( const MbCurveEdge curveEdge,
const bool  edgeOrient,
const double  begDistance,
MbPlacement3D modifiedPlacement 
)
static

Create a coordinate system associated with the edge.

The coordinate system associated with the edge has the origin at the edge point located at distance begDistance from the edge start point if begOrient is equal to true or at distance begDistance from edge end point if begDistance is equal to false. The distance is measured to inside of the edge if begDistance is negative and outside the edge if begDistance is positive. Z-axis is directed along edge curveEdge and codirected with Z-axis of modifiedPlacement. X-axis is equal to the normal of the sheet face that contains edge curveEdge. Y-axis makes the system right-handed.

Parameters
[in]curveEdge- The non-oriented edge of bends joint.
[in]edgeOrient- The orientation of the oriented edge that belongs to the sheet face and contains curveEdge.
[in]begDistance- The distance from the beginning of the oriented edge defined by parameters curveEdge and edgeOrient.
[in,out]modifiedPlacement- The required coordinate system.
Returns
True if the operation succeeded, otherwise false.

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