Extern :
- C3d aggiornamento delle librerie ( 117950).
This commit is contained in:
@@ -531,7 +531,7 @@ private:
|
||||
OBVIOUS_PRIVATE_COPY( MbSurfacesJointAnalysisParams )
|
||||
};
|
||||
|
||||
//DEPRECATE_DECLARE_REPLACE( MbSurfacesJointAnalysisParams )
|
||||
DEPRECATE_DECLARE_REPLACE( MbSurfacesJointAnalysisParams )
|
||||
typedef MbSurfacesJointAnalysisParams MbNormalsMinMaxAnglesParams;
|
||||
|
||||
|
||||
@@ -605,7 +605,7 @@ public:
|
||||
OBVIOUS_PRIVATE_COPY( MbSurfacesJointAnalysisResults )
|
||||
};
|
||||
|
||||
//DEPRECATE_DECLARE_REPLACE( MbSurfacesJointAnalysisResults )
|
||||
DEPRECATE_DECLARE_REPLACE( MbSurfacesJointAnalysisResults )
|
||||
typedef MbSurfacesJointAnalysisResults MbNormalsMinMaxAnglesResults;
|
||||
|
||||
|
||||
|
||||
+119
-20
@@ -18,6 +18,7 @@
|
||||
#include <mesh.h>
|
||||
#include <mb_enum.h>
|
||||
#include <mb_operation_result.h>
|
||||
#include <op_mesh_parameter.h>
|
||||
#include <vector>
|
||||
|
||||
|
||||
@@ -153,20 +154,36 @@ enum MbeRejectOutliersType
|
||||
// ---
|
||||
class MATH_CLASS MbSurfaceFitToGridParameters {
|
||||
private:
|
||||
MbeSpaceType _surfaceType; ///< \ru Тип поверхности. \en A surface type.
|
||||
double _tolerance; ///< \ru Точность распознавания. \en A fitting tolerance.
|
||||
c3d::IndicesVector _indicies; ///< \ru Индексы полигонов сетки. \en Indicies of polygons.
|
||||
MbeRejectOutliersType _typeReject; ///< \ru Способ отбраковки выбросов. \en Outliers rejection mode.
|
||||
double _valueReject; ///< \ru Пороговое значения для отбраковки выбросов. \en Outliers rejection mode treshold value.
|
||||
MbeSpaceType _surfaceType; ///< \ru Тип поверхности. \en A surface type.
|
||||
double _tolerance; ///< \ru Точность распознавания. \en A fitting tolerance.
|
||||
c3d::IndicesVector _indicies; ///< \ru Индексы полигонов сетки. \en Indicies of polygons.
|
||||
MbeRejectOutliersType _typeReject; ///< \ru Способ отбраковки выбросов. \en Outliers rejection mode.
|
||||
double _valueReject; ///< \ru Пороговое значения для отбраковки выбросов. \en Outliers rejection mode treshold value.
|
||||
|
||||
///< \ru Предельные значения параметров аналитических поверхностей. \en Tresholds for analytical surfaces parameters.
|
||||
double _angleConeMin; ///< \ru Минимально возможный половинный угол конуса (градусы). \en Mininmum allowed cone half-angle ( degrees ).
|
||||
double _angleConeMax; ///< \ru Максимально возможный половинный угол конуса (градусы). \en Maximum allowed cone half-angle( degrees ).
|
||||
double _radiusAnalyticShapeMax; ///< \ru Максимально возможный радиальный размер аналитических поверхностей. \en Maximum allowed analytical shapes radial size.
|
||||
|
||||
///< \ru Параметры для вписывания нурбс поверхности. \en NURBs surface fitting parameters.
|
||||
size_t _order; ///< \ru Порядок нурбс поверхности. \en NURBs surface order.
|
||||
size_t _countCpMax; ///< \ru Максимально разрешенное количество контрольных точек. \en Maximum allowed control points count.
|
||||
double _smoothCoef; ///< \ru Коэффициент сглаживания [1e-9 - 1e-3]. \en Smoothing coefficient [1e-9 - 1e-3].
|
||||
|
||||
private:
|
||||
/// \ru Конструктор по умолчанию. \en Default constructor.
|
||||
MbSurfaceFitToGridParameters()
|
||||
: _surfaceType ( st_Undefined )
|
||||
, _tolerance ( c3d::DELTA_MIN )
|
||||
, _indicies ( )
|
||||
, _typeReject ( rot_NoReject )
|
||||
, _valueReject ( 0. )
|
||||
: _surfaceType ( st_Undefined )
|
||||
, _tolerance ( c3d::DELTA_MIN )
|
||||
, _indicies ( )
|
||||
, _typeReject ( rot_NoReject )
|
||||
, _valueReject ( 0. )
|
||||
, _order ( c3d::NURBS_DEGREE )
|
||||
, _countCpMax ( c3d::NURBS_POINTS_MAX_COUNT )
|
||||
, _smoothCoef ( METRIC_ACCURACY )
|
||||
, _angleConeMin ( 1. )
|
||||
, _angleConeMax ( 89. )
|
||||
, _radiusAnalyticShapeMax( 1500. )
|
||||
{}
|
||||
|
||||
public:
|
||||
@@ -174,24 +191,80 @@ public:
|
||||
explicit MbSurfaceFitToGridParameters( MbeSpaceType surfaceType,
|
||||
double tolerance,
|
||||
const c3d::IndicesVector & indicies )
|
||||
: _surfaceType( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rot_NoReject )
|
||||
, _valueReject( 0. )
|
||||
: _surfaceType ( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rot_NoReject )
|
||||
, _valueReject ( 0. )
|
||||
, _order ( c3d::NURBS_DEGREE )
|
||||
, _countCpMax ( c3d::NURBS_POINTS_MAX_COUNT )
|
||||
, _smoothCoef ( METRIC_ACCURACY )
|
||||
, _angleConeMin ( 1. )
|
||||
, _angleConeMax ( 89. )
|
||||
, _radiusAnalyticShapeMax( 1500. )
|
||||
{}
|
||||
|
||||
/// \ru Конструктор по параметрам. \en Constructor by parameters.
|
||||
explicit MbSurfaceFitToGridParameters( MbeSpaceType surfaceType,
|
||||
double tolerance,
|
||||
const c3d::IndicesVector & indicies,
|
||||
MbeRejectOutliersType rejectType,
|
||||
double rejectValue )
|
||||
: _surfaceType( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rejectType )
|
||||
, _valueReject( rejectValue )
|
||||
: _surfaceType ( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rejectType )
|
||||
, _valueReject ( rejectValue )
|
||||
, _order ( c3d::NURBS_DEGREE )
|
||||
, _countCpMax ( c3d::NURBS_POINTS_MAX_COUNT )
|
||||
, _smoothCoef ( METRIC_ACCURACY )
|
||||
, _angleConeMin ( 1. )
|
||||
, _angleConeMax ( 89. )
|
||||
, _radiusAnalyticShapeMax( 1500. )
|
||||
{}
|
||||
|
||||
/// \ru Конструктор по параметрам для вписывания аналитических поверхностей. \en Constructor by parameters for analytic surfaces fitting.
|
||||
explicit MbSurfaceFitToGridParameters( MbeSpaceType surfaceType,
|
||||
double tolerance,
|
||||
const c3d::IndicesVector & indicies,
|
||||
MbeRejectOutliersType rejectType,
|
||||
double rejectValue,
|
||||
double angleConeMin,
|
||||
double angleConeMax,
|
||||
double radiusAnalyticShapeMax )
|
||||
: _surfaceType ( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rejectType )
|
||||
, _valueReject ( rejectValue )
|
||||
, _order ( c3d::NURBS_DEGREE )
|
||||
, _countCpMax ( c3d::NURBS_POINTS_MAX_COUNT )
|
||||
, _smoothCoef ( METRIC_ACCURACY )
|
||||
, _angleConeMin ( angleConeMin )
|
||||
, _angleConeMax ( angleConeMax )
|
||||
, _radiusAnalyticShapeMax( radiusAnalyticShapeMax )
|
||||
{}
|
||||
|
||||
/// \ru Конструктор по параметрам для вписывания нурбс поверхности. \en Constructor by parameters for NURBs surface fitting.
|
||||
explicit MbSurfaceFitToGridParameters( MbeSpaceType surfaceType,
|
||||
double tolerance,
|
||||
const c3d::IndicesVector & indicies,
|
||||
size_t order,
|
||||
size_t countCpMax,
|
||||
double smoothCoef )
|
||||
: _surfaceType ( surfaceType )
|
||||
, _tolerance ( tolerance )
|
||||
, _indicies ( indicies )
|
||||
, _typeReject ( rot_NoReject )
|
||||
, _valueReject ( 0. )
|
||||
, _order ( order )
|
||||
, _countCpMax ( countCpMax )
|
||||
, _smoothCoef ( smoothCoef )
|
||||
, _angleConeMin ( 1. )
|
||||
, _angleConeMax ( 89. )
|
||||
, _radiusAnalyticShapeMax( 1500. )
|
||||
{}
|
||||
|
||||
/// \ru Выдать тип поверхности. \en Get surface type.
|
||||
MbeSpaceType GetSurfaceType() const { return _surfaceType; }
|
||||
/// \ru Выдать точность распознавания. \en Get fitting tolerance.
|
||||
@@ -202,6 +275,32 @@ public:
|
||||
MbeRejectOutliersType GetOutliersRejectionMode() const { return _typeReject; }
|
||||
/// \ru Выдать пороговое значения для отбраковки выбросов. \en Get outliers rejection mode treshold value.
|
||||
double GetOutliersRejectionValue() const { return _valueReject; }
|
||||
/// \ru Выдать порядок нурбс поверхности. \en Get NURBs order.
|
||||
size_t GetNurbsOrder() const { return _order; }
|
||||
/// \ru Выдать максимально разрешенное количество контрольных точек. \en Get maximum allowed control points count.
|
||||
size_t GetCountCpMax() const { return _countCpMax; }
|
||||
/// \ru Выдать коэффициент сглаживания. \en Get smoothing coefficient.
|
||||
double GetSmoothCoef() const { return _smoothCoef; }
|
||||
/// \ru Выдать минимально возможный половинный угол конуса. \en Get mininmum allowed cone half-angle.
|
||||
double GetAngleConeMin() const { return _angleConeMin; }
|
||||
/// \ru Выдать максимально возможный половинный угол конуса. \en Get maximum allowed cone half-angle.
|
||||
double GetAngleConeMax() const { return _angleConeMax; }
|
||||
/// \ru Выдать максимально возможный радиальный размер аналитических поверхностей. \en Get maximum allowed analytical shapes radial size.
|
||||
double GetRadiusAnalyticShapeMax() const { return _radiusAnalyticShapeMax; }
|
||||
/// \ru Установить предельные значения параметров аналитических поверхностей. \en Set tresholds for analytical surfaces parameters.
|
||||
void SetAnalyticBounds( double angleConeMin, double angleConeMax, double radiusAnalyticShapeMax )
|
||||
{
|
||||
_angleConeMin = angleConeMin;
|
||||
_angleConeMax = angleConeMax;
|
||||
_radiusAnalyticShapeMax = radiusAnalyticShapeMax;
|
||||
}
|
||||
/// \ru Установить параметры для вписывания нурбс поверхности. \en Set NURBs surface fitting parameters.
|
||||
void SetNurbsFitParams( size_t order, size_t countCpMax, double smoothCoef )
|
||||
{
|
||||
_order = order;
|
||||
_countCpMax = countCpMax;
|
||||
_smoothCoef = smoothCoef;
|
||||
}
|
||||
|
||||
OBVIOUS_PRIVATE_COPY( MbSurfaceFitToGridParameters )
|
||||
};
|
||||
|
||||
@@ -537,7 +537,7 @@ MATH_FUNC (MbResultType) MeshCutting( MbMesh & mesh,
|
||||
\en Returns operation result code. \~
|
||||
\ingroup Polygonal_Objects
|
||||
*/ // ---
|
||||
//DEPRECATE_DECLARE
|
||||
DEPRECATE_DECLARE
|
||||
MATH_FUNC (MbResultType) MeshSection( const MbMesh & mesh,
|
||||
const MbPlacement3D & place,
|
||||
RPArray<MbCurve3D> & polylines );
|
||||
|
||||
@@ -263,7 +263,7 @@ MATH_FUNC (MbResultType) OffsetPhantom( const MbSolid & solid,
|
||||
\ingroup Shell_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE(LocalCubePhantom with LocalCubePhantomParam)
|
||||
DEPRECATE_DECLARE_REPLACE(LocalCubePhantom with LocalCubePhantomParam)
|
||||
MATH_FUNC (MbResultType) LocalCubePhantom( const MbSolid & solid,
|
||||
const MbPlacement3D & place,
|
||||
bool bScale,
|
||||
|
||||
+13
-12
@@ -953,8 +953,8 @@ MATH_FUNC (MbResultType) CutSolidArrayByBorders( MbSolid &
|
||||
\en - The operation result code. \~
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
//DEPRECATE_DECLARE_REPLACE( CreateStampParts with 'MbStampPartsParams' argument )
|
||||
// ---
|
||||
DEPRECATE_DECLARE_REPLACE( CreateStampParts with 'MbStampPartsParams' argument )
|
||||
MATH_FUNC (MbResultType) CreateStampParts( const MbFace * face,
|
||||
const MbPlacement3D & placement,
|
||||
const MbContour & contour,
|
||||
@@ -1031,7 +1031,7 @@ MATH_FUNC (MbResultType) CreateStampParts( const MbPlacement3D & placement,
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( StampWithToolSolid with 'MbStampWithToolPartsParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( CreateStampWithToolSolidParts with 'MbStampWithToolPartsParams' argument )
|
||||
MATH_FUNC(MbResultType) CreateStampWithToolSolidParts( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbFace & targetFace,
|
||||
@@ -1096,7 +1096,7 @@ MATH_FUNC(MbResultType) CreateStampWithToolSolidParts( const c3d::SolidSPtr &
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( NormalizeCutSides with 'MbNormalizeCutSidesParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( NormalizeCutSides with 'MbNormalizeCutSidesParams' argument )
|
||||
MATH_FUNC(MbResultType) NormalizeCutSides ( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbSNameMaker & nameMaker,
|
||||
@@ -1161,7 +1161,7 @@ MATH_FUNC(MbResultType) NormalizeCutSides ( MbSolid & so
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( Stamp with 'MbStampParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( Stamp with 'MbStampParams' argument )
|
||||
MATH_FUNC (MbResultType) Stamp( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbFace & face,
|
||||
@@ -1236,7 +1236,7 @@ MATH_FUNC (MbResultType) Stamp( const c3d::SolidSPtr & solid,
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( StampWithToolSolid with 'MbStampWithToolParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( StampWithToolSolid with 'MbStampWithToolParams' argument )
|
||||
MATH_FUNC( MbResultType ) StampWithToolSolid( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbFace & targetFace,
|
||||
@@ -1328,8 +1328,8 @@ MATH_FUNC (MbResultType) CreateSphericalStampParts( const MbSphericalStampPartsP
|
||||
\en - The operation result code. \~
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
//DEPRECATE_DECLARE_REPLACE( CreateSphericalStampParts with 'MbSphericalStampPartsParams' argument )
|
||||
// ---
|
||||
DEPRECATE_DECLARE_REPLACE( CreateSphericalStampParts with 'MbSphericalStampPartsParams' argument )
|
||||
MATH_FUNC (MbResultType) CreateSphericalStampParts( const MbFace * face,
|
||||
const MbPlacement3D & placement,
|
||||
const MbStampingValues & params,
|
||||
@@ -1343,6 +1343,7 @@ MATH_FUNC (MbResultType) CreateSphericalStampParts( const MbFace * fac
|
||||
//------------------------------------------------------------------------------
|
||||
// устаревшая
|
||||
// ---
|
||||
DEPRECATE_DECLARE
|
||||
MATH_FUNC (MbResultType) CreateSphericalStampParts( const MbPlacement3D & placement,
|
||||
const MbStampingValues & params,
|
||||
const double thickness,
|
||||
@@ -1406,7 +1407,7 @@ MATH_FUNC (MbResultType) SphericalStamp( const c3d::SolidSPtr & solid,
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( SphericalStamp with 'MbSphericalStampParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( SphericalStamp with 'MbSphericalStampParams' argument )
|
||||
MATH_FUNC (MbResultType) SphericalStamp( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbFace & face,
|
||||
@@ -2069,7 +2070,7 @@ MATH_FUNC (bool) CalculateConicAxisLine( const MbFace & face,
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( BuildBends3DCenterlines with MbBends3DLinesParams )
|
||||
DEPRECATE_DECLARE_REPLACE( BuildBends3DCenterlines with MbBends3DLinesParams )
|
||||
MATH_FUNC (bool) BuildBends3DAxisLines( const RPArray<MbFace> & bendFaces,
|
||||
RPArray<MbLineSegment3D> & axisLineSegments );
|
||||
|
||||
@@ -2090,7 +2091,7 @@ MATH_FUNC (bool) BuildBends3DAxisLines( const RPArray<MbFace> & bendFac
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( BuildBends3DCenterlines with MbBends3DLinesParams )
|
||||
DEPRECATE_DECLARE_REPLACE( BuildBends3DCenterlines with MbBends3DLinesParams )
|
||||
MATH_FUNC (bool) BuildBends3DCenterlines( const RPArray<MbFace> & bendFaces,
|
||||
RPArray<MbCurve3D> & centerlines );
|
||||
|
||||
@@ -2576,7 +2577,7 @@ private:
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( SheetRibParts with MbSheetRibSolidParams )
|
||||
DEPRECATE_DECLARE_REPLACE( SheetRibParts with MbSheetRibSolidParams )
|
||||
MATH_FUNC (MbResultType) SheetRibParts( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbPlacement3D & place,
|
||||
@@ -2649,7 +2650,7 @@ MATH_FUNC (MbResultType) SheetRibParts( const c3d::SolidSPtr & solid,
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( SheetRibSolid with MbSheetRibSolidParams )
|
||||
DEPRECATE_DECLARE_REPLACE( SheetRibSolid with MbSheetRibSolidParams )
|
||||
MATH_FUNC (MbResultType) SheetRibSolid( MbSolid & solid,
|
||||
MbeCopyMode sameShell,
|
||||
const MbPlacement3D & place,
|
||||
@@ -2807,7 +2808,7 @@ MATH_FUNC (MbResultType) RemoveOperationResult( MbSolid &
|
||||
\ingroup Sheet_Metal_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( ConvertSolidToSheetMetal with 'MbSolidToSheetMetalParams' argument )
|
||||
DEPRECATE_DECLARE_REPLACE( ConvertSolidToSheetMetal with 'MbSolidToSheetMetalParams' argument )
|
||||
MATH_FUNC (MbResultType) ConvertSolidToSheetMetal( MbSolid & solid,
|
||||
const MbeCopyMode sameShell,
|
||||
const MbFace & initFace,
|
||||
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
\en The value compItem can be CDET_NULL. This just means that the
|
||||
instance does not belong to any component.
|
||||
*/
|
||||
cdet_item AddInstance( cdet_item compItem, cdet_item solidItem, const MbPlacement3D & place );
|
||||
cdet_item AddInstance( cdet_item compItem, cdet_item solidItem, const MbPlacement3D & place );
|
||||
/**
|
||||
\brief \ru Удалить геометрический объект из набора для контроля столкновений.
|
||||
\en Remove a geometric object from the set of collision detection. \~
|
||||
|
||||
@@ -491,12 +491,6 @@ public:
|
||||
/// \ru Получить ЛСК. \en Get LCS.
|
||||
MbPlacement3D GetLocation() const;
|
||||
|
||||
/// \ru Задать имя. \en Specify name.
|
||||
DEPRECATE_DECLARE_REPLACE( SetC3dName ) void SetName( const std::string & nm );
|
||||
|
||||
/// \ru Получить имя. \en Specify name.
|
||||
DEPRECATE_DECLARE_REPLACE ( GetC3dName ) void GetName( std::string & nm ) const;
|
||||
|
||||
/// \ru Задать имя. \en Specify name.
|
||||
void SetC3dName ( const c3d::string_t& nm );
|
||||
|
||||
|
||||
@@ -498,24 +498,9 @@ public:
|
||||
virtual bool AddRemovedFacesAsShells() const { return false; }
|
||||
/// \ru Получить генератор однострочного идентификтора изделия. \en Get generator of one-line product identifier.
|
||||
virtual SPtr<IProductIdMaker> ProductIdentifierGenerator() const { return SPtr<IProductIdMaker>(); }
|
||||
|
||||
/** \brief \ru Проводить ли аудит траснляции.
|
||||
\en Whether to audit the translation. \~
|
||||
\details \ru Замещена GetDebugSettings::enableCERRout.
|
||||
\en GetDebugSettings::enableCERRout should be used instead. \~
|
||||
\note \ru ТОЛЬКО ДЛЯ РАЗРАБОТЧИКОВ.
|
||||
\en DEVELOPERS ONLY \~.
|
||||
|
||||
*/
|
||||
DEPRECATE_DECLARE virtual bool TotalAudit() const { return false; } // 16.06.2021. GetDebugSettings
|
||||
|
||||
/// \ru Получить настройки для выдачи отладочной информации. \en Get the settings of debug info.
|
||||
virtual C3DConverterDebugSettings GetDebugSettings() const { return C3DConverterDebugSettings(); };
|
||||
|
||||
/// \ru Следует ли формировать атрибут на основе идентификатора элемнта в файле. \en Whether to attatch the element's id in file as attribute.
|
||||
DEPRECATE_DECLARE_REPLACE( GetDebugSettings ) virtual bool AttatchIdAttributes() const { return true; }
|
||||
|
||||
/// \ru Получить пользовательский преобразователь строк. \en Get user string transformer.
|
||||
/// \ru Получить пользовательский преобразователь строк. \en Get user string transformer.
|
||||
virtual SPtr<IC3DCharEncodingTransformer> GetUserCharEncodingTransformer() const { return SPtr<IC3DCharEncodingTransformer>(nullptr); }
|
||||
}; // IConvertorProperty3D
|
||||
|
||||
|
||||
@@ -267,59 +267,6 @@ public:
|
||||
/// \ru Задать технические требования. \en Set technical requirements.
|
||||
virtual void SetRequirements( const AnnotationSptrVector & ) = 0;
|
||||
|
||||
/// \ru Наименование. \en Name.
|
||||
|
||||
/// \ru Задать имя документа. \en Set document's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetName( const std::string& /*name*/ ) { return false; };
|
||||
/// \ru Получить имя документа. \en Get document's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual std::string Name() const { return std::string(); };
|
||||
|
||||
/// \ru Обозначение. \en Marking.
|
||||
|
||||
/// \ru Задать обозначение документа. \en Set document marking. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetMarking( const std::string& /*name*/ ) { return false; };
|
||||
/// \ru Получить обозначение документа. \en Get document marking. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual std::string Marking() const { return std::string(); };
|
||||
|
||||
/// \ru Автор. \en Author.
|
||||
|
||||
/// \ru Задать имя автора. \en Set author's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetAuthor( const std::string& /*name*/ ) { return false; };
|
||||
/// \ru Получить имя автора. \en Get author's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual std::string Author() const { return std::string(); };
|
||||
|
||||
/// \ru Организация. \en Organization.
|
||||
|
||||
/// \ru Задать имя автора. \en Set author's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetOrganization( const std::string& /*name*/ ) { return false; };
|
||||
/// \ru Получить имя автора. \en Get author's name. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual std::string Organization() const { return std::string(); };
|
||||
|
||||
/// \ru Комментарий. \en Comment.
|
||||
|
||||
/// \ru Задать комментарии. \en Set the comments. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetComments( const std::vector< std::string > & /*comments*/ ) { return false; };
|
||||
/// \ru Получить следующий комментарий. \en Get the next comment. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual std::vector< std::string > GetComments( ) const { return std::vector< std::string >(); };
|
||||
|
||||
/// \ru Цвет сборки, детали или вставки. \en Color of an assembly, a part or an instance.
|
||||
|
||||
/// \ru Задать цветовые свойства. \en Set color properties. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetColor( const MbAttributeContainer & ) { return false; };
|
||||
/// \ru Получить цветовые свойства. \en Get color properties. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool GetColor( MbAttributeContainer & ) const { return false; };
|
||||
|
||||
/// \ru Цвет тела. \en Solid color.
|
||||
|
||||
/// \ru Задать цветовые свойства оболочки. \en Set color properties of a shell. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetColor( const MbAttributeContainer &, size_t ) { return false; };
|
||||
|
||||
/// \ru Цвет грани. \en Face color.
|
||||
|
||||
/// \ru Задать цветовые свойства грани \en Set color properties of a face. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool SetColor( const MbAttributeContainer &, const MbName & ) { return false; };
|
||||
/// \ru Получить цветовые свойства грани. \en Get color properties of a face. \~ \deprecated \ru Метод устарел 06.05.2020. \en The method is deprecated 06.05.2020.
|
||||
DEPRECATE_DECLARE virtual bool GetColor( MbAttributeContainer &, const MbName & ) const { return false; };
|
||||
};
|
||||
|
||||
|
||||
@@ -586,4 +533,4 @@ public:
|
||||
};
|
||||
|
||||
|
||||
#endif // __CONV_MODEL_DOCUMENT_H
|
||||
#endif // __CONV_MODEL_DOCUMENT_H
|
||||
|
||||
@@ -27,6 +27,7 @@ class ItModelDocument;
|
||||
class IConvertorProperty3D;
|
||||
class IConfigurationSelector;
|
||||
class IAttributeNamesCollector;
|
||||
class IConverterEventLogger;
|
||||
|
||||
/**
|
||||
\addtogroup Exchange_Interface
|
||||
@@ -426,9 +427,9 @@ namespace c3d {
|
||||
\en Converter's interface implements methods of export of the model to files of exchange formats
|
||||
and import from them. \~
|
||||
*/
|
||||
class IConvertor3D {
|
||||
class IConverter3D {
|
||||
public:
|
||||
virtual ~IConvertor3D() {}
|
||||
virtual ~IConverter3D() = default;
|
||||
|
||||
public:
|
||||
/** \brief \ru Установить обработчик для выбора конфигураций.
|
||||
@@ -446,6 +447,14 @@ public:
|
||||
*/
|
||||
virtual void SetConfgiurationSelector( SPtr<IConfigurationSelector> configuration_selector ) = 0;
|
||||
|
||||
/** \brief \ru Установить обработчик для логирования.
|
||||
\en Set logging handler. \~
|
||||
\param[in] importEventLogger - \ru Указатель на устанавливаемый обработчик.
|
||||
\en Pointer to handler to be set. \~
|
||||
*/
|
||||
virtual void SetDeveloperEventLogger( SPtr<IConverterEventLogger> importEventLogger ) = 0;
|
||||
|
||||
|
||||
/** \brief \ru Прочитать файл формата SAT.
|
||||
\en Read a file of SAT format. \~
|
||||
\details \ru Прочитать файл формата SAT или указанный поток.
|
||||
@@ -908,7 +917,9 @@ public:
|
||||
*/
|
||||
virtual MbeConvResType ImportFromFile( ItModelDocument& mDoc, const c3d::path_string& filePath, IConvertorProperty3D* prop = nullptr, IProgressIndicator* indicator = nullptr ) = 0;
|
||||
|
||||
}; // IConvertor3D
|
||||
}; // IConverter3D
|
||||
|
||||
typedef IConverter3D IConvertor3D;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -916,7 +927,7 @@ public:
|
||||
\en Get the converter interface. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
CONV_FUNC( IConvertor3D* ) GetConvertor3D();
|
||||
CONV_FUNC( IConverter3D* ) GetConverter3D();
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -924,7 +935,24 @@ CONV_FUNC( IConvertor3D* ) GetConvertor3D();
|
||||
\en Release the converter interface. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
CONV_FUNC( void ) ReleaseConvertor3D( IConvertor3D* );
|
||||
CONV_FUNC( void ) ReleaseConverter3D( IConverter3D* );
|
||||
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Получить интерфейс конвертера.
|
||||
\en Get the converter interface. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
inline IConverter3D* GetConvertor3D() { return GetConverter3D(); }
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Освободить интерфейс конвертера.
|
||||
\en Release the converter interface. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
inline void ReleaseConvertor3D( IConverter3D* convInstance ) { ReleaseConverter3D( convInstance ); }
|
||||
|
||||
|
||||
/** \brief \ru Прочитать файл формата SAT.
|
||||
@@ -1215,113 +1243,6 @@ CONV_FUNC( MbeConvResType ) ASCIIPointCloudRead( IConvertorProperty3D& prop, ItM
|
||||
CONV_FUNC( MbeConvResType ) ASCIIPointCloudWrite( IConvertorProperty3D& prop, ItModelDocument& idoc, IProgressIndicator* indicator = 0 );
|
||||
|
||||
|
||||
namespace c3d {
|
||||
|
||||
/** \brief \ru Импортировать данные из буфера в модель.
|
||||
\en Import data from buffer into model. \~
|
||||
\deprecated \ru Метод устарел 26.06.2020. \en The method is deprecated 26.06.2020. \~
|
||||
\param[out] model - \ru Модель.
|
||||
\en The model. \~
|
||||
\param[in] data - \ru Буфер.
|
||||
\en Buffer. \~
|
||||
\param[in] length - \ru Размер буфера.
|
||||
\en Buffer size. \~
|
||||
\param[in] modelFormat - \ru Формат модели.
|
||||
\en Model format. \~
|
||||
\param[in] prop - \ru Реализация интерфейса свойств конвертера.
|
||||
\en Implementation of converter's properties interface. \~
|
||||
\param[in] indicator - \ru Индикатор хода процесса.
|
||||
\en The process progress indicator. \~
|
||||
\return \ru Код завершения операции.
|
||||
\en Code of the operation termination. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
DEPRECATE_DECLARE CONV_FUNC( MbeConvResType ) ImportFromBuffer( MbModel& model,
|
||||
const char* data,
|
||||
size_t length,
|
||||
MbeModelExchangeFormat modelFormat,
|
||||
IConvertorProperty3D* prop = 0,
|
||||
IProgressIndicator* indicator = 0 );
|
||||
|
||||
/** \brief \ru Импортировать данные из буфера в модель.
|
||||
\en Import data from buffer into model. \~
|
||||
\deprecated \ru Метод устарел 26.06.2020. \en The method is deprecated 26.06.2020. \~
|
||||
\param[out] item - \ru Замещаемый элемент.
|
||||
\en The item to replace. \~
|
||||
\param[in] data - \ru Буфер.
|
||||
\en Buffer. \~
|
||||
\param[in] length - \ru Размер буфера.
|
||||
\en Buffer size. \~
|
||||
\param[in] modelFormat - \ru Формат модели.
|
||||
\en Model format. \~
|
||||
\param[in] prop - \ru Реализация интерфейса свойств конвертера.
|
||||
\en Implementation of converter's properties interface. \~
|
||||
\param[in] indicator - \ru Индикатор хода процесса.
|
||||
\en The process progress indicator. \~
|
||||
\return \ru Код завершения операции.
|
||||
\en Code of the operation termination. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
DEPRECATE_DECLARE CONV_FUNC( MbeConvResType ) ImportFromBuffer( c3d::ItemSPtr& item,
|
||||
const char* data,
|
||||
size_t length,
|
||||
MbeModelExchangeFormat modelFormat,
|
||||
IConvertorProperty3D* prop = nullptr, IProgressIndicator* indicator = nullptr );
|
||||
|
||||
/** \brief \ru Экспортировать модель в буфер.
|
||||
\en Export model into buffer. \~
|
||||
\deprecated \ru Метод устарел 26.06.2020. \en The method is deprecated 26.06.2020. \~
|
||||
\param[in] model - \ru Модель.
|
||||
\en The model. \~
|
||||
\param[in] modelFormat - \ru Формат модели.
|
||||
\en Model format. \~
|
||||
\param[out] data - \ru Буфер.
|
||||
\en Buffer. \~
|
||||
\param[out] length - \ru Размер буфера.
|
||||
\en Buffer size. \~
|
||||
\param[in] prop - \ru Реализация интерфейса свойств конвертера.
|
||||
\en Implementation of converter's properties interface. \~
|
||||
\param[in] indicator - \ru Индикатор хода процесса.
|
||||
\en The process progress indicator. \~
|
||||
\return \ru Код завершения операции.
|
||||
\en Code of the operation termination. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
DEPRECATE_DECLARE CONV_FUNC( MbeConvResType ) ExportIntoBuffer( MbModel& model,
|
||||
MbeModelExchangeFormat modelFormat,
|
||||
char*& data,
|
||||
size_t& length,
|
||||
IConvertorProperty3D* prop = 0,
|
||||
IProgressIndicator* indicator = 0 );
|
||||
|
||||
|
||||
/** \brief \ru Экспортировать модель в буфер.
|
||||
\en Export model into buffer. \~
|
||||
\deprecated \ru Метод устарел 26.06.2020. \en The method is deprecated 26.06.2020. \~
|
||||
\param[in] item - \ru Экспортируемый элемент.
|
||||
\en The item to export. \~
|
||||
\param[in] modelFormat - \ru Формат модели.
|
||||
\en Model format. \~
|
||||
\param[out] data - \ru Буфер.
|
||||
\en Buffer. \~
|
||||
\param[out] length - \ru Размер буфера.
|
||||
\en Buffer size. \~
|
||||
\param[in] prop - \ru Реализация интерфейса свойств конвертера.
|
||||
\en Implementation of converter's properties interface. \~
|
||||
\param[in] indicator - \ru Индикатор хода процесса.
|
||||
\en The process progress indicator. \~
|
||||
\return \ru Код завершения операции.
|
||||
\en Code of the operation termination. \~
|
||||
\ingroup Exchange_Interface
|
||||
*/
|
||||
DEPRECATE_DECLARE CONV_FUNC( MbeConvResType ) ExportIntoBuffer( MbItem& item, MbeModelExchangeFormat modelFormat,
|
||||
char*& data,
|
||||
size_t& length,
|
||||
IConvertorProperty3D* prop = nullptr, IProgressIndicator* indicator = nullptr );
|
||||
|
||||
}
|
||||
|
||||
|
||||
/** \} */
|
||||
|
||||
|
||||
|
||||
@@ -91,4 +91,17 @@ public:
|
||||
};
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/**
|
||||
\brief \ru Интерфейс запроса отладочного вывода.
|
||||
\en Debug output request interface \~
|
||||
*/
|
||||
// ---
|
||||
class IConverterEventLogger : public MbRefItem
|
||||
{
|
||||
public:
|
||||
virtual bool WriteToLog( const char * ) = 0;
|
||||
};
|
||||
|
||||
|
||||
#endif // __CONV_REQUESTOR_H
|
||||
|
||||
@@ -95,7 +95,7 @@ IMPL_PERSISTENT_OPS( MbDuplicationSolid )
|
||||
\en Returns the constructor if the operation has been successfully performed. \~
|
||||
\ingroup Solid_Modeling
|
||||
*/
|
||||
//DEPRECATE_DECLARE_REPLACE(CreateDuplication with MbDuplicationSolidParams)
|
||||
DEPRECATE_DECLARE_REPLACE(CreateDuplication with MbDuplicationSolidParams)
|
||||
MATH_FUNC (MbCreator *) CreateDuplication( const MbFaceShell & solid,
|
||||
const DuplicationValues & params,
|
||||
const MbSNameMaker & operNames,
|
||||
|
||||
@@ -215,7 +215,7 @@ MbElementarySolid::MbElementarySolid( const PointsVector & pnts, ElementaryShell
|
||||
\ingroup Solid_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( CreateElementary with MbElementarySolidParams )
|
||||
DEPRECATE_DECLARE_REPLACE( CreateElementary with MbElementarySolidParams )
|
||||
MATH_FUNC (MbCreator *) CreateElementary( const SArray<MbCartPoint3D> & points,
|
||||
const ElementaryShellType t,
|
||||
const MbSNameMaker & n,
|
||||
@@ -247,7 +247,7 @@ MATH_FUNC (MbCreator *) CreateElementary( const SArray<MbCartPoint3D> & points,
|
||||
\ingroup Solid_Modeling
|
||||
*/
|
||||
// ---
|
||||
//DEPRECATE_DECLARE_REPLACE( CreateElementary with MbElementarySolidParams )
|
||||
DEPRECATE_DECLARE_REPLACE( CreateElementary with MbElementarySolidParams )
|
||||
MATH_FUNC (MbCreator *) CreateElementary( const MbElementarySurface & surface,
|
||||
const MbSNameMaker & n,
|
||||
MbResultType & res,
|
||||
|
||||
+7
-10
@@ -60,11 +60,9 @@ private:
|
||||
*/
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/**
|
||||
\brief \ru Состояние определенности системы геометрических ограничений.
|
||||
\en Difinition State of geometric constraints system.
|
||||
*/
|
||||
//---
|
||||
/** \brief \ru Состояние определенности системы геометрических ограничений.
|
||||
\en Difinition State of geometric constraints system.
|
||||
*/ //---
|
||||
typedef enum
|
||||
{
|
||||
GCE_STATE_Unknown = 0 ///< \ru О состоянии ничего не известно. \en State is unknown.
|
||||
@@ -104,13 +102,12 @@ GCE_FUNC(bool) GCE_CheckPointSatisfaction( GCE_system gSys, geom_item pnt, point
|
||||
DEPRECATE_DECLARE GCE_FUNC(GCE_s_state) GCE_StateOfSystem( GCE_system gSys );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/**
|
||||
\brief \ru Выдать состояние определенности системы ограничений.
|
||||
\en Get constraint system definition state.
|
||||
/** \brief \ru Выдать состояние определенности системы ограничений.
|
||||
\en Get constraint system definition state.
|
||||
|
||||
\param[in] gSys - \ru Система ограничений.
|
||||
\param[in] gSys - \ru Система ограничений.
|
||||
\en System of constraints. \~
|
||||
\details
|
||||
\details
|
||||
\ru Функция вернет состояние #GCE_STATE_Underconstrained, если имеется хотя бы
|
||||
один геометрический объект с ненулевой степенью свободы.
|
||||
Состояние #GCE_STATE_WellConstrained означает, что геометрия полностью определена, а другое
|
||||
|
||||
@@ -1510,19 +1510,19 @@ GCE_FUNC(constraint_item) GCE_FixVariable( GCE_system gSys, var_item var );
|
||||
GCE_FUNC(constraint_item) GCE_FixGeom( GCE_system gSys, geom_item g );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Задать ограничение "Фиксированная длина отрезка"
|
||||
\en Set the constraint "Fixation of segment length" \~
|
||||
/** \brief \ru Задать ограничение "Фиксированная длина кривой"
|
||||
\en Set the constraint "Fixation of curve length" \~
|
||||
\param[in] gSys - \ru Система ограничений.
|
||||
\en System of constraints. \~
|
||||
\param[in] ls - \ru Дескриптор отрезка.
|
||||
\en Descriptor of segment. \~
|
||||
\param[in] ls - \ru Дескриптор кривой.
|
||||
\en Descriptor of curve. \~
|
||||
\return \ru Дескриптор нового ограничения.
|
||||
\en Descriptor of a new constraint. \~
|
||||
|
||||
\details \ru У кривой должны быть начальная и конечная точки (#GCE_FIRST_END и #GCE_SECOND_END).
|
||||
Ограничение поддерживается для линейных объектов и дуг окружностей.
|
||||
Ограничение поддерживается для линейных объектов, дуг окружностей и сплайнов.
|
||||
\en The curve must have a start and end points (#GCE_FIRST_END и #GCE_SECOND_END).
|
||||
Constraint is supported for linear objects and circular arcs.\~
|
||||
Constraint is supported for linear objects circular arcs and splines.\~
|
||||
*/
|
||||
//---
|
||||
GCE_FUNC(constraint_item) GCE_FixLength( GCE_system gSys, geom_item ls );
|
||||
|
||||
+31
-19
@@ -228,25 +228,37 @@ typedef enum
|
||||
//---
|
||||
typedef enum
|
||||
{
|
||||
GCE_RESULT_None = 0, ///< \ru Нет результата (пустое сообщение). \en No result (empty message).
|
||||
GCE_RESULT_Ok = 1, ///< \ru Успешный результат. \en Successful result.
|
||||
GCE_RESULT_Satisfied = 1, ///< \ru Ограничение удовлетворено. \en The constraint is satisfied.
|
||||
GCE_RESULT_Not_Satisfied = 2, ///< \ru Система ограничений не решена. \en The system of constraints is not solved.
|
||||
GCE_RESULT_Overconstrained = 3, ///< \ru Переопределенная (несовместная) система ограничений. \en Overdetermined (inconsistent) system of constraints.
|
||||
GCE_RESULT_InvalidGeometry = 4, ///< \ru Решение привело к нарушению геометрии. \en Solution leaded to violation of geometry.
|
||||
GCE_RESULT_MovingOfFixedGeom = 5, ///< \ru Попытка перемещения фиксированного объекта. \en Attempt of a fixed object translation.
|
||||
GCE_RESULT_Unregistered = 6, ///< \ru Обращение к недействительному объекту. \en Access to invalid object.
|
||||
GCE_RESULT_SystemError = 7, ///< \ru Внутренняя системная ошибка. \en Internal system error.
|
||||
GCE_RESULT_NullSystem = 8, ///< \ru Обращение к недействительной системе ограничений. \en Access to invalid system of constraints.
|
||||
GCE_RESULT_CircleCantStretched = 9, ///< \ru Окружность не может быть масштабирована с разными коэффициентами по осям (растяжение). \en The circle can't be scaled with different scaling factors for each axis (stretching).
|
||||
GCE_RESULT_SingularMatrix = 10, ///< \ru Прислали вырожденную матрицу трансформации. \en A singular transform matrix was received.
|
||||
GCE_RESULT_DegenerateScalingFactor = 11, ///< \ru Вырожденный коэффициент масштабирования. \en Degenerate scaling factor.
|
||||
GCE_RESULT_InvalidDimensionTransform = 12, ///< \ru Неудачное преобразование размера. \en Invalid dimension transformation.
|
||||
GCE_RESULT_Aborted = 13, ///< \ru Процесс вычислений был прерван по запросу приложения. \en The evaluation process aborted by the application. \~
|
||||
GCE_RESULT_IsNotDrivingDimension = 14, ///< \ru Данное ограничение должно быть управляющим размером. \en Given constraint should be a driving dimension.
|
||||
GCE_RESULT_UnsupportedConstraint = 15, ///< \ru На геометрические объекты было наложено невозможное ограничение. \en An impossible constraint was set on geometric objects.
|
||||
GCE_RESULT_AnisotropicScaling = 16, ///< \ru Анизотропное масштабирование. \en Anisotropic scaling.
|
||||
GCE_RESULT_OverconstrainedInstance = 17, ///< \ru Попытка подчинить экземпляр более, чем одному паттерну. \en An attempt to make an instance patterned on more than one pattern.
|
||||
/*
|
||||
Evaluation results.
|
||||
*/
|
||||
GCE_RESULT_None ///< \ru Нет результата (пустое сообщение). \en No result (empty message).
|
||||
, GCE_RESULT_Ok ///< \ru Успешный результат. \en Successful result.
|
||||
, GCE_RESULT_Satisfied = GCE_RESULT_Ok ///< \ru Ограничение удовлетворено. \en The constraint is satisfied.
|
||||
, GCE_RESULT_Not_Satisfied ///< \ru Система ограничений не решена. \en The system of constraints is not solved.
|
||||
, GCE_RESULT_Overconstrained ///< \ru Переопределенная (несовместная) система ограничений. \en Overdetermined (inconsistent) system of constraints.
|
||||
, GCE_RESULT_InvalidGeometry ///< \ru Решение привело к нарушению геометрии. \en Solution leaded to violation of geometry.
|
||||
|
||||
/*
|
||||
Data validation errors.
|
||||
*/
|
||||
, GCE_RESULT_MovingOfFixedGeom ///< \ru Попытка перемещения фиксированного объекта. \en Attempt of a fixed object translation.
|
||||
, GCE_RESULT_CircleCantStretched ///< \ru Окружность не может быть масштабирована с разными коэффициентами по осям (растяжение). \en The circle can't be scaled with different scaling factors for each axis (stretching).
|
||||
, GCE_RESULT_SingularMatrix ///< \ru Прислали вырожденную матрицу трансформации. \en A singular transform matrix was received.
|
||||
, GCE_RESULT_DegenerateScalingFactor ///< \ru Вырожденный коэффициент масштабирования. \en Degenerate scaling factor.
|
||||
, GCE_RESULT_InvalidDimensionTransform ///< \ru Неудачное преобразование размера. \en Invalid dimension transformation.
|
||||
, GCE_RESULT_IsNotDrivingDimension ///< \ru Данное ограничение должно быть управляющим размером. \en Given constraint should be a driving dimension.
|
||||
, GCE_RESULT_UnsupportedConstraint ///< \ru На геометрические объекты было наложено невозможное ограничение. \en An impossible constraint was set on geometric objects.
|
||||
, GCE_RESULT_AnisotropicScaling ///< \ru Анизотропное масштабирование. \en Anisotropic scaling.
|
||||
, GCE_RESULT_OverconstrainedInstance ///< \ru Попытка подчинить экземпляр более, чем одному паттерну. \en An attempt to make an instance patterned on more than one pattern.
|
||||
|
||||
/*
|
||||
System errors.
|
||||
*/
|
||||
, GCE_RESULT_SystemError ///< \ru Внутренняя системная ошибка. \en Internal system error.
|
||||
, GCE_RESULT_NullSystem ///< \ru Обращение к недействительной системе ограничений. \en Access to invalid system of constraints.
|
||||
, GCE_RESULT_Unregistered ///< \ru Обращение к недействительному объекту. \en Access to invalid object.
|
||||
, GCE_RESULT_Aborted ///< \ru Процесс вычислений был прерван по запросу приложения. \en The evaluation process aborted by the application. \~
|
||||
|
||||
} GCE_result;
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
|
||||
@@ -9,12 +9,14 @@
|
||||
#define __GCM_CONSTRAINT_H
|
||||
|
||||
#include <gcm_manager.h>
|
||||
#include <templ_dptr.h>
|
||||
#include <templ_sptr.h>
|
||||
#include <mb_cart_point3d.h>
|
||||
#include <mb_matrix3d.h>
|
||||
|
||||
class MbTopologyItem;
|
||||
class MtConstraintNode;
|
||||
class MbTopologyItem;
|
||||
class MtConstraintNode;
|
||||
struct CNodesRange;
|
||||
|
||||
/**
|
||||
\addtogroup GCM_3D_ObjectAPI
|
||||
@@ -31,6 +33,10 @@ struct GCM_CLASS GCM_geom_axis
|
||||
GCM_geom_axis()
|
||||
: axis( MbVector3D::zero )
|
||||
, geomPtr( nullptr ) {}
|
||||
|
||||
GCM_geom_axis( const MbVector3D & axis, const ItGeom * g )
|
||||
: axis( axis )
|
||||
, geomPtr( g ) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -508,6 +514,52 @@ inline MtArgument ItConstraintItem::GeomArg( int geomN ) const
|
||||
return MtArgument( GeomItem(geomN), SubGeom(geomN) );
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Диапазон из набора геометрических ограничений.
|
||||
\en The range of the geometric constraints set. \~
|
||||
\note it is for testing purposes.
|
||||
*/
|
||||
//---
|
||||
class GCM_CLASS GeConstraintsRange
|
||||
{
|
||||
public:
|
||||
struct constraint_t: public MtObjectId {};
|
||||
using value_type = constraint_t;
|
||||
public:
|
||||
GeConstraintsRange();
|
||||
GeConstraintsRange( const GeConstraintsRange & );
|
||||
GeConstraintsRange( const MtConstraintSystem & );
|
||||
GeConstraintsRange & operator = ( const GeConstraintsRange & );
|
||||
public:
|
||||
bool empty() const;
|
||||
size_t size() const;
|
||||
GeConstraintsRange & drop_front();
|
||||
GeConstraintsRange & drop_back();
|
||||
GCM_constraint frontId() const;
|
||||
GCM_constraint backId() const;
|
||||
private:
|
||||
SPtr<MtRefItem> m_pOwner;
|
||||
CNodesRange * m_pImpl;
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Get a range to traverse constraints of the system.
|
||||
// for testing only.
|
||||
//---
|
||||
GCM_FUNC(GeConstraintsRange) GCM_GetConstraints( GCM_system gSys );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Get unified data record of a geometric constraint.
|
||||
// for testing only.
|
||||
//---
|
||||
GCM_FUNC(GCM_c_record) GCM_ConstraintRecord( GCM_system gSys, GCM_constraint conId );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Get S-expression of a geometric constraint.
|
||||
// for testing only.
|
||||
//---
|
||||
GCM_FUNC(std::string&) GCM_SExprRecord( GCM_system gSys, GCM_constraint conId, std::string& str );
|
||||
|
||||
#endif // __GCM_CONSTRAINT_H
|
||||
|
||||
// eof
|
||||
|
||||
+12
-11
@@ -700,20 +700,21 @@ private:
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Создать объектно-ориентированный интерфейс 3D солвера.
|
||||
\en Create an object-oriented interface of 3D solver. \~
|
||||
\details \ru Вызов создает пустую систему ограничений. Кроме того, в памяти
|
||||
создаются внутренние структуры данных геометрического решателя, обслуживающего
|
||||
систему ограничений. Функция возвращает экземпляр класса, представляющего
|
||||
объектно-ориентированный интерфейс солвера.
|
||||
\en The call creates an empty constraint system. Besides, there are created
|
||||
internal data structures of geometric solver maintaining the system of constraints.
|
||||
The function returns an instance of class representing an object-oriented interface
|
||||
of the 3D solver. \~
|
||||
|
||||
\param[in] pMan - \ru Интерфейс, предоставляющий функции репозиции геометрических объектов на стороне приложения.
|
||||
\en Interface that provides functions of reposition of geometric objects on the application side. \~
|
||||
\details \ru Вызов создает пустую систему ограничений. Кроме того, в памяти создаются
|
||||
внутренние структуры данных геометрического решателя, обслуживающего систему ограничений.
|
||||
Функция возвращает экземпляр класса, представляющего объектно-ориентированный интерфейс солвера.
|
||||
\en The call creates an empty constraint system. Besides, there are created internal
|
||||
data structures of geometric solver maintaining the constraint system. The function returns
|
||||
an instance of class representing an object-oriented interface of the 3D solver. \~
|
||||
|
||||
\return \ru Решатель геометрических ограничений.
|
||||
\en A geometric constraint solver. \~
|
||||
\return \ru Указатель (с автоматическим подсчетом ссылок) на новый экземпляр геометрического решателя.
|
||||
\en Smart-pointer to a new instance of geometric constraint solver. \~
|
||||
*/
|
||||
//---
|
||||
GCM_FUNC(SPtr<MtGeomSolver>) GCM_CreateSolver( SPtr<ItPositionManager> );
|
||||
GCM_FUNC(SPtr<MtGeomSolver>) GCM_CreateSolver( SPtr<ItPositionManager> pMan );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Выдать решатель для данной системы геометрических ограничений.
|
||||
|
||||
+42
-32
@@ -161,21 +161,6 @@ struct GCM_CLASS MtADimensionTraits
|
||||
{}
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Создать Интерфейс геометрического решателя.
|
||||
\en Create interface of geometric solver. \~
|
||||
\details \ru Функция возвращает smart-pointer интерфейса решателя.
|
||||
\en The function returns smart-pointer of solver Interface. \~
|
||||
\param[in] pMan - \ru Интерфейс клиентского приложения, предоставляющий
|
||||
функции репозиции геометрических объектов на стороне клиента.
|
||||
\en Interface of the client application that provides
|
||||
functions of reposition of geometric objects on the client side. \~
|
||||
\return \ru smart-pointer на экземпляр геометрического решателя.
|
||||
\en smart-pointer to an instance of geometric solver. \~
|
||||
*/
|
||||
//---
|
||||
GCM_FUNC(SPtr<MtGeomSolver>) CreateSolver( ItPositionManager & pMan );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Автоматически назначить тип сопряжению для его аргументов.
|
||||
\en Automatically assign the mate type for its arguments. \~
|
||||
@@ -483,6 +468,44 @@ GCM_FUNC(size_t) VolumeOfAlignOption( const ItConstraintItem & );
|
||||
|
||||
/** \} */ // GCM_3D_Routines
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only.
|
||||
//---
|
||||
GCT_FUNC(bool) CheckSatisfaction( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only.
|
||||
//---
|
||||
GCT_FUNC(size_t) GetGeomsCount( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only.
|
||||
//---
|
||||
GCT_FUNC(size_t) GetConstraintsCount( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Get a range to traverse constraints of the system.
|
||||
//---
|
||||
GCT_FUNC(void) GCM_GetConstraints( GCM_system gSys, CNodeIterator & begIter, CNodeIterator & endIter );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Callback function for logging messages from the solver.
|
||||
//---
|
||||
typedef void ( *GCM_log_func )( GCM_journal, GCM_log_type logType, const char* recStr );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
/** \brief \ru Выдать журнал записывающий вызовы Solver API, а также другие события, имеющие отношение к взаимодействием с солвером.
|
||||
\en Get a logger that recording API calls, as well as other events related to interaction with the solver. \~
|
||||
\note \ru Вызов используется пока только для тестовых целей. Может быть изменен или удален из API в следующих ревизиях.
|
||||
\en The call is used for testing purposes only. It may be changed or removed in future revisions. \~
|
||||
*/
|
||||
//---
|
||||
GCM_FUNC(GCM_journal) GCM_SubscribeJournal( GCM_system gSys, GCM_log_func logFunc, GCM_extra_param extParam );
|
||||
|
||||
/*
|
||||
* Deprecated calls.
|
||||
*/
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for internal use only
|
||||
// \en This call is out of date, it will be removed in 2023. \~
|
||||
@@ -490,24 +513,11 @@ GCM_FUNC(size_t) VolumeOfAlignOption( const ItConstraintItem & );
|
||||
DEPRECATE_DECLARE GCM_FUNC(MtResultCode3D) AdHocDiagnose(GCM_system, const ItGeom*);
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only
|
||||
/** \brief The deprecated version of GCM_CreateSolver.
|
||||
\note The call is deprecated. Use GCM_CreateSolver instead. It will be removed in 2024.
|
||||
*/
|
||||
//---
|
||||
GCT_FUNC(bool) CheckSatisfaction( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only
|
||||
//---
|
||||
GCT_FUNC(size_t) GetGeomsCount( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// for testing only
|
||||
//---
|
||||
GCT_FUNC(size_t) GetConstraintsCount( GCM_system );
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Get a range to traverse constraints of the system
|
||||
//---
|
||||
GCT_FUNC(void) GCM_GetConstraints( GCM_system gSys, CNodeIterator & begIter, CNodeIterator & endIter );
|
||||
DEPRECATE_DECLARE GCM_FUNC(SPtr<MtGeomSolver>) CreateSolver( ItPositionManager & );
|
||||
|
||||
#endif // __GCM_ROUTINES_H
|
||||
|
||||
|
||||
+30
-2
@@ -461,8 +461,8 @@ typedef enum
|
||||
//---
|
||||
struct GCM_CLASS GCM_extra_param
|
||||
{
|
||||
size_t funcId; // integral identifier of a user-defined callback
|
||||
void * funcData; // pointer to an application data structure
|
||||
size_t funcId; // Integral identifier of a user-defined callback.
|
||||
void * funcData; // Pointer to an application data structure.
|
||||
GCM_extra_param() { funcId = 0, funcData = 0; }
|
||||
};
|
||||
|
||||
@@ -593,6 +593,34 @@ inline const uint32 & _id( const MtObjectId & obj ) { return obj; }
|
||||
|
||||
#endif // GCM_ID_TYPE
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// It represents a journal that logs Solver API transactions.
|
||||
//---
|
||||
struct ItJrnLogger;
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// It represents a journal that logs Solver API transactions.
|
||||
//---
|
||||
typedef struct
|
||||
{
|
||||
const ItJrnLogger * logger; // Internal C3D Solver logger.
|
||||
GCM_extra_param extra; // Callback extra data interpreted in the application side.
|
||||
} GCM_journal;
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
// Type of log string.
|
||||
//---
|
||||
typedef enum
|
||||
{
|
||||
GCM_LOG_JournalLine /// \ru Строка отчета о вызове Solver API. \en Reporting string about the Solver API call.
|
||||
, GCM_LOG_Message /// \ru Строка передает некоторое информативное сообщение. \en The string notifies that something informative happend.
|
||||
, GCM_LOG_Error /// \ru Строка извещает об ошибочной ситуации. \en Error notification.
|
||||
} GCM_log_type;
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
//
|
||||
//---
|
||||
typedef GCM_alignment MtAlignType;
|
||||
typedef GCM_g_type MtGeometryType;
|
||||
typedef GCM_result MtResultCode3D;
|
||||
|
||||
+1
-1
@@ -117,7 +117,7 @@ public:
|
||||
/// \ru Инициализировать тело и матрицу. \en Initialize solid and matrix.
|
||||
void SetSolid( const MbSolid & solid, const MbMatrix3D & from, bool changed = true );
|
||||
/// \ru Получить тело. \en Get solid.
|
||||
//DEPRECATE_DECLARE_REPLACE( GetItem )
|
||||
DEPRECATE_DECLARE_REPLACE( GetItem )
|
||||
const MbSolid & GetSolid() const;
|
||||
/// \ru Инициализировать тело и матрицу. \en Initialize solid and matrix.
|
||||
void SetMesh( const MbMesh & mesh, const MbMatrix3D & from, bool changed = true );
|
||||
|
||||
@@ -43,11 +43,11 @@ public:
|
||||
\param[in] lump - \ru Тело с матрицей преобразования.
|
||||
\en A solid with a matrix of transformation. \~
|
||||
*/
|
||||
//DEPRECATE_DECLARE_REPLACE( ThreadMapperStruct with 'MbSolid' )
|
||||
DEPRECATE_DECLARE_REPLACE( ThreadMapperStruct with 'MbSolid' )
|
||||
ThreadMapperStruct( const MbThread & thr, const MbLump & lump,
|
||||
const VERSION ver = Math::DefaultMathVersion() )
|
||||
: thread ( thr )
|
||||
, solid ( lump.GetSolid() )
|
||||
, solid ( static_cast<const MbSolid &>(lump.GetItem()) )
|
||||
, matrFrom ( lump.GetMatrixFrom() )
|
||||
, placeView ( )
|
||||
, thrMapType( tmt_CompleteView )
|
||||
@@ -88,11 +88,11 @@ public:
|
||||
\param[in] tmType - \ru Тип отображения резьбы.
|
||||
\en A type of thread mapping. \~
|
||||
*/
|
||||
//DEPRECATE_DECLARE_REPLACE( ThreadMapperStruct with 'MbSolid' )
|
||||
DEPRECATE_DECLARE_REPLACE( ThreadMapperStruct with 'MbSolid' )
|
||||
ThreadMapperStruct( const MbThread & thr, const MbLump & lump, const MbPlacement3D & plView, MbeThrMapType tmType,
|
||||
const VERSION ver = Math::DefaultMathVersion() )
|
||||
: thread ( thr )
|
||||
, solid ( lump.GetSolid() )
|
||||
, solid ( static_cast<const MbSolid &>(lump.GetItem()) )
|
||||
, matrFrom ( lump.GetMatrixFrom() )
|
||||
, placeView ( plView )
|
||||
, thrMapType( tmType )
|
||||
|
||||
@@ -92,6 +92,7 @@
|
||||
#define MATH_21_UHF_VERSION 0x15000011L ///< \ru Версия файла - 21.0 UHF (Upper Hot Fix). \en The file version - 21.0 UHF (Upper Hot Fix). \~ \ingroup Base_Tools
|
||||
#define C3D_2022_VERSION 0x15001001L ///< \ru Версия файла - C3D 2022. \en The file version - C3D 2021. \~ \ingroup Base_Tools
|
||||
#define MATH_22_VERSION 0x16000001L ///< \ru Версия файла - 22.0. \en The file version - 22.0. \~ \ingroup Base_Tools
|
||||
#define MATH_22_HF1_VERSION 0x16000002L ///< \ru Версия файла - 22.0 HF1. \en The file version - 22.0 HF1. \~ \ingroup Base_Tools
|
||||
#define MATH_22_UHF_VERSION 0x16000011L ///< \ru Версия файла - 22.0 UHF (Upper Hot Fix). \en The file version - 22.0 UHF (Upper Hot Fix). \~ \ingroup Base_Tools
|
||||
|
||||
|
||||
|
||||
@@ -88,6 +88,8 @@ public :
|
||||
|
||||
/// \ru Проекция точки на ось. \en The point projection on the axis.
|
||||
double PointProjection( const MbCartPoint3D & p0, MbCartPoint3D & proj ) const;
|
||||
/// \ru Проекция точки на ось. \en The point projection on the axis.
|
||||
double PointProjection( const MbCartPoint3D & p0 ) const;
|
||||
/// \ru Проверка соосности. \en The check of complanarity.
|
||||
bool Complanar ( const MbPlacement3D & p, double eps = Math::angleRegion ) const;
|
||||
/// \ru Проверка коллинеарности осей. \en The check of axes collinearity.
|
||||
|
||||
@@ -1207,11 +1207,14 @@ inline void MbCubeTree<Type, Cube, Point, Vector>::GetIntersectObjects( const Po
|
||||
Point segmPnt1( rayPnt1 ), segmPnt2( rayPnt2 );
|
||||
double segmLen = segmPnt1.DistanceToPoint( segmPnt2 );
|
||||
|
||||
double sameEps = std_min( eps, LENGTH_EPSILON );
|
||||
sameEps = std_max( sameEps, EXTENT_EPSILON );
|
||||
|
||||
C3D_ASSERT( !branchCube.IsEmpty() );
|
||||
C3D_ASSERT( !rayPnt1.IsSame( rayPnt2, eps ) );
|
||||
C3D_ASSERT( !rayPnt1.IsSame( rayPnt2, sameEps ) );
|
||||
|
||||
if ( isBranch || isLeaf ) {
|
||||
if ( !branchCube.IsEmpty() && !rayPnt1.IsSame( rayPnt2, eps ) ) {
|
||||
if ( !branchCube.IsEmpty() && !rayPnt1.IsSame( rayPnt2, sameEps ) ) {
|
||||
Vector rayVect( rayPnt1, rayPnt2 );
|
||||
{
|
||||
double rayLen = rayVect.Length();
|
||||
|
||||
@@ -280,6 +280,8 @@ enum MbResultType {
|
||||
|
||||
rt_NonBijectiveFunc, ///< \ru Отображение множества значений параметра функции во множество значений параметра кривой не является взаимно однозначным. \en A map from function parameter range to curve parameter range is not bijective.
|
||||
|
||||
rt_LicenseError, ///< \ru Ошибка лицензии: неправильная или истекшая лицензия. \en License error: wrong or expired license.
|
||||
|
||||
// \ru !!! СТРОКИ ВСТАВЛЯТЬ СТРОГО ПЕРЕД ЭТОЙ СТРОКОЙ !!!! \en !!! INSERT LINES STRICTLY BEFORE THIS LINE !!!!
|
||||
rt_ErrorTotal // \ru НИЖЕ НЕ ДОБАВЛЯТЬ! \en DON'T ADD BELOW!
|
||||
};
|
||||
|
||||
@@ -2023,11 +2023,16 @@ public:
|
||||
const MbCurve3D * GetSpine() const { return spine.get(); }
|
||||
MbCurve3D * SetSpine() { return spine.get(); }
|
||||
|
||||
/// \ru Выдать форму сечения поверхности. \en Get cross-section shape.
|
||||
DEPRECATE_DECLARE_REPLACE( GetSectionForm )
|
||||
MbeSectionShape GetForm() const { return form; }
|
||||
/// \ru Установить форму сечения поверхности. \en Set cross-section shape.
|
||||
DEPRECATE_DECLARE_REPLACE( SetSectionForm )
|
||||
void SetForm( MbeSectionShape f ) { form = f; }
|
||||
|
||||
/// \ru Выдать форму сечения поверхности. \en Get cross-section shape.
|
||||
MbeSectionShape GetSectionForm() const { return form; }
|
||||
/// \ru Установить форму сечения поверхности. \en Set cross-section shape.
|
||||
void SetSectionForm( MbeSectionShape f ) { form = f; }
|
||||
|
||||
///< \ru Данные начального края сечения. \en The data of the begining of section.
|
||||
MbSectionRail & GetRrail1() { return rail1; }
|
||||
///< \ru Данные конечного края сечения. \en The data of the end of section.
|
||||
|
||||
@@ -385,6 +385,8 @@ public:
|
||||
/// \ru Дать образующую кривую при form==cs_Shape (для других форм nullptr). \en Get forming curve for form==cs_Shape (nullptr on other case).
|
||||
const MbPolyCurve * GetPattern() const { return pattern; }
|
||||
/// \ru Дать форму сечения поверхности при фиксированном втором параметре. \en Get the surface cross-section shape with the second parameter fixed.
|
||||
MbeSectionShape GetSectionForm() const { return form; }
|
||||
DEPRECATE_DECLARE_REPLACE( GetSectionForm )
|
||||
MbeSectionShape GetForm() const { return form; }
|
||||
/// \ru Дать параметры опорной кривой, для которых направляющие терпят излом. \en Get parameters of the reference curve for which the guides have a break.
|
||||
void GetBreakVParams( std::vector<double> & vParams ) const;
|
||||
|
||||
@@ -101,6 +101,17 @@ extern "C" MATH_FUNC (bool) IsMathBShaperEnable();
|
||||
extern "C" MATH_FUNC (bool) IsMathCollisionEnable();
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Проверить контроллер защиты FairCurve моделировщика.
|
||||
\en Check the controller of the FairCurve modeler. \~
|
||||
\details \ru Проверить контроллер защиты FairCurve моделировщика.
|
||||
\en Check the controller of the FairCurve modeler. \~
|
||||
\ingroup Base_Tools
|
||||
*/
|
||||
// ---
|
||||
extern "C" MATH_FUNC (bool) IsMathFairCurveEnable();
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
/** \brief \ru Отпустить контролера работы модулей ядра.
|
||||
\en Free the controller of the kernel modules work. \~
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user