f2abee4c18
- C3d aggiornamento delle librerie ( 117967).
77 lines
4.4 KiB
C++
77 lines
4.4 KiB
C++
////////////////////////////////////////////////////////////////////////////////
|
||
/**
|
||
\file
|
||
\brief \ru Методы построения каркаса.
|
||
\en Functions for wire frame creation. \~
|
||
*/
|
||
////////////////////////////////////////////////////////////////////////////////
|
||
|
||
#ifndef __ACTION_WIREFRAME_H
|
||
#define __ACTION_WIREFRAME_H
|
||
|
||
|
||
#include <wire_frame.h>
|
||
|
||
class MATH_CLASS MbWireFrameFilletsParams;
|
||
class MATH_CLASS MbNurbsWireFrameParams;
|
||
|
||
|
||
//------------------------------------------------------------------------------
|
||
/** \brief \ru Создать скругленный каркас.
|
||
\en Create a filleted wire frame. \~
|
||
\details \ru Создать каркас в виде плавного соединения (скругления) всех ребер каркаса. \n
|
||
Если два ребра в каркасе гладко стыкуются, в этом стыке скругление не делается, радиус игнорируется. \n
|
||
\en Create a wire frame as fillet of all the edges of a wire frame. \n
|
||
If two edges in wire frame are smoothly connected, the fillet is not created at this joint, the radius is ignored. \n \~
|
||
\param[in] wireframe - \ru Исходный каркас.
|
||
\en The initial wire frame. \~
|
||
\param[in] sameEdges - \ru Режим копирования входного каркаса.
|
||
\en Whether to copy the input wire frame. \~
|
||
\param[in] params - \ru Параметры скругления.
|
||
\en A fillet parameters. \~
|
||
\param[out] result - \ru Скругленный каркас.
|
||
\en The filleted wire frame. \~
|
||
\return \ru Возвращает код результата операции.
|
||
\en Returns operation result code. \~
|
||
\warning \ru В разработке.
|
||
\en Under development. \~
|
||
\ingroup WireFrame_Modeling
|
||
*/
|
||
// ---
|
||
MATH_FUNC( MbResultType ) CreateWireFrameFillets( c3d::WireFrameSPtr & wireframe,
|
||
MbeCopyMode sameEdges,
|
||
const MbWireFrameFilletsParams & params,
|
||
c3d::WireFrameSPtr & result );
|
||
|
||
|
||
//------------------------------------------------------------------------------
|
||
/** \brief \ru Построить NURBS копию каркаса.
|
||
\en Construct a NURBS copy of a wire frame. \~
|
||
\details \ru Строит проволочный каркас, содержащий NURBS кривые, аппроксимирующие заданный каркас.
|
||
По возможности, строит точные кривые, возможно, с кратными узлами.
|
||
Количеством узлов для NURBS определяется в зависимости от кривой.
|
||
\en Constructs a wire frame contains NURBS curves which approximates a given wire frame.
|
||
If it is possible, constructs the accurate curves, perhaps with multiple knots.
|
||
The number of knots for NURBS is defined depending on the curve. \~
|
||
\param[in] wireFrame - \ru Исходный каркас.
|
||
\en The initial wire frame. \~
|
||
\param[in] sameWire - \ru Режим копирования входного каркаса.
|
||
\en Whether to copy the input wire frame. \~
|
||
\param[in] params - \ru Параметры скругления.
|
||
\en A fillet parameters. \~
|
||
\param[out] result - \ru Построенный каркас с NURBS кривыми или nullptr при неуспешном построении.
|
||
\en he constructed wire frame with NURBS curve or nullptr in a case of failure. \~
|
||
\return \ru Возвращает код результата операции.
|
||
\en Returns operation result code. \~
|
||
\warning \ru В разработке.
|
||
\en Under development. \~
|
||
*/
|
||
// ---
|
||
MATH_FUNC( MbResultType ) CreateNurbsWireFrame( c3d::WireFrameSPtr & wireFrame,
|
||
MbeCopyMode sameWire,
|
||
const MbNurbsWireFrameParams & params,
|
||
c3d::WireFrameSPtr & result );
|
||
|
||
|
||
#endif // __ACTION_WIREFRAME_H
|