- C3D aggiornamento libreria

This commit is contained in:
SaraP
2021-04-30 17:06:43 +02:00
parent d5ef7c6260
commit 35f0ea2af4
122 changed files with 2842 additions and 1096 deletions
+13 -11
View File
@@ -34,17 +34,18 @@ enum MbeFunctionType {
ft_Undefined = 0, ///< \ru Неизвестный объект. \en Unknown object.
ft_Function = 1, ///< \ru Функция. \en A function.
ft_ConstFunction = 2, ///< \ru Постоянная функция. \en A constant function.
ft_LineFunction = 3, ///< \ru Линейная функция. \en A linear function.
ft_CubicFunction = 4, ///< \ru Кубическая функция Эрмита. \en A cubic Hermite function.
ft_CubicSplineFunction = 5, ///< \ru Кубическая сплайновая функция. \en A cubic spline function.
ft_ConstFunction = 2, ///< \ru Постоянная функция. \en Constant function.
ft_LineFunction = 3, ///< \ru Линейная функция. \en Linear function.
ft_CubicFunction = 4, ///< \ru Кубическая функция Эрмита. \en Cubic Hermite function.
ft_CubicSplineFunction = 5, ///< \ru Кубическая сплайновая функция. \en Cubic spline function.
ft_PowerFunction = 6, ///< \ru Степенная функция. \en Power function.
ft_SinusFunction = 7, ///< \ru Синусоидальная функция. \en Sinusoidal function.
ft_ServeFunction = 8, ///< \ru Служебная функция. \en Service function.
ft_C2MonoSplineFunction= 9, ///< \ru Кубическая сплайновая функция. \en A cubic spline function.
ft_MonoSmoothFunction = 9, ///< \ru Монотонная функция. \en Monotonous function.
ft_NurbsFunction = 10, ///< \ru NURBS функция. \en NURBS function.
ft_CharacterFunction = 101, ///< \ru Символьная функция. \en A symbolic function.
ft_AnalyticalFunction = 102, ///< \ru Символьная функция на модельном выражении. \en A symbolic function in model expression.
ft_CharacterFunction = 101, ///< \ru Символьная функция. \en Symbolic function.
ft_AnalyticalFunction = 102, ///< \ru Символьная функция на модельном выражении. \en Symbolic function in model expression.
ft_FreeItem = 600, ///< \ru Тип для объектов, созданных пользователем. \en Type for the user-defined objects.
@@ -170,10 +171,7 @@ public:
virtual MbFunction * BreakFunction( double t, bool beg ) = 0;
/// \ru Разбить функцию параметрами: beg == true - соранить начальную половину, beg == false - соранить конечную половину.
/// \en Function break by the parameters: begs == true - save the initial half, beg == false - save the final half.
bool CuttingFunction( SArray<double> & params, bool beginSafe, double eps, RPArray<MbFunction> & cutted );
/// \ru Наличие полюса функции. \en Existence of a function pole.
virtual bool IsPole( double t ) const;
bool CuttingFunction( SArray<double> & params, bool beginSafe, double eps, RPArray<MbFunction> & cutted );
/// \ru Сместить функцию. \en Shift a function.
virtual void SetOffsetFunc( double distOld, double distNew ) = 0;
/// \ru Установить область изменения параметра. \en Set the range of parameter.
@@ -192,6 +190,10 @@ public:
virtual void GetCharacteristicParams( std::vector<double> & tSpecific, double t1, double t2 );
/** \} */
/// \ru Наличие нулевого значения функции. \en The presence of a null function value.
bool IsZero( double t, double accuracy = METRIC_REGION ) const;
bool IsPole( double t ) const { return IsZero( t, METRIC_REGION ); } // \ru Устаревший метод. \en Deprecated method.
/// \ru Вернуть середину параметрического диапазона. \en Return the middle of parametric range.
double GetTMid() const { return ((GetTMin() + GetTMax()) * 0.5); }
/// \ru Параметрическая длина. \en The parametric length.