Improving the quality of b-spline curves of arbitrary degrees, created in AutoCAD or Alias ​​Design

Улучшение качества b-сплайновых кривых произвольных степеней,  построенных в AutoCAD или в Alias Design

1) On base points

1) На опорных точках

Construction of b-spline curve seventh degree by the control points in Alias ​​Design.

Построение b-сплайновой кривой 7-ой степени по опорным точкам  в Alias Design

Transferring model of the curve to AutoCAD

Перенос модели кривой в AutoCAD

Transferring model in the web-application

Перенос модели в web-приложение

Construction of v-curve and the curve approximation by GNURBzS

Построение v-кривой и аппроксимация посредством GNURBzS кривой

Construction of v-curve and approximation by b-spline curve 8th degree

Построение v-кривой и аппроксимация посредством b-сплайновой  кривой 8-ой степени

Transfer model of improved curve in AutoCAD

Перенос модели улучшенной кривой в AutoCAD

Transferring model of improved curve in Alias ​​Design

Перенос модели улучшенной кривой в Alias Design

2) By direct  method of fitting of curve by control polygon

2) Методом прямой подгонки кривой управляющим полигоном

Fit spline curve of degree 7 for a fixed curve or base polyline by means of s-polygon

Подгонка сплайновой кривой степени 7 к фиксированной кривой или ломаной опорных точек s-полигоном

Improvement of NURBS curve by construction of v-curve on polygon of nodes

Улучшение NURBS кривой построением v-кривой на ломаной узловых точек

Conclusions

Выводы

 

 

Improving the quality of b-spline curves of arbitrary degrees, created in AutoCAD or Alias ​​Design

Улучшение качества b-сплайновых кривых произвольных степеней,  построенных в AutoCAD или в Alias Design

 

1) On base points

1) На опорных точках

 

In Alias ​​Designer has technology modeling with control vertices s-polygon b-spline curve of high degree. When editing is possible to control the curvature of the graph and interactively to achieve good visual curvature graph.

 

В Alias Designer имеется технология моделирования с помощью управляющих вершин s-полигона b-сплайновой кривой довольно степеней. При редактировании можно установить контроль графика кривизны и в интерактивном режиме добиться визуально хорошего графика кривизны.

 

However, the real problem may be the design of the curve at a given sketch or in the line of measured points. In this case, the curve fitting to the sketch or the measured points can be quite time consuming.

 

Однако при реальном проектировании может возникнуть задача построения кривой на заданном эскизе или на линии измеренных точек. В этом случае подгонка кривой к эскизу или к измеренным точкам может представлять довольно трудоемкий процесс.

 

In Alias ​​Design a procedure for the construction on the base polygon (Edit Points) b-spline curve of degree 5 or 7.

The disadvantage of this procedure is the low quality of approximation curve fit.

 

В Alias Design имеется процедура построения на опорной ломаной (Edit Points) b-сплайновой кривой степени 5 или 7.

Недостатком данной процедуры аппроксимации является низкое качество аппроксимирующей кривой.

 

In this case, the designer will help Web FairCurveModeler + AutoCAD.

 

В этом случае на помощь дизайнеру придет Web FairCurveModeler + AutoCAD.

 

FCModeler enhances curves constructed in AutoCAD or Alias ​​Designer, not only by eliminating fluctuations in the curvature of the segments of the cubic b-spline curve, but also by reducing the variation of the curvature of the curve as a whole, reducing the number vertices of the curve, reduce the potential energy of b-spline curve arbitrary degree.

 

FCModeler улучшает качество кривых, построенных в AutoCAD или в Alias Designer, не только путем устранения пульсации кривизны на сегментах кубической b-сплайновой кривой, но и путем уменьшения вариаций кривизны на кривой в целом, уменьшения количества вершин кривой, уменьшения потенциальной энергии b-сплайновой кривой произвольной степени.   

 

Construction of b-spline curve seventh degree by the control points in Alias ​​Design.

Построение b-сплайновой кривой 7-ой степени по опорным точкам  в Alias Design

 

The technology to improve an open flat curve constructed on the base polygon (Edit Points) using NURBS seventh degree on a uniform grid.

 

Рассмотрим технологию улучшения незамкнутой плоской кривой, построенной на опорной ломаной (Edit Points) с помощью NURBS 7-ой степени на равномерной сетке.

 

Construct an arbitrary non-closed NURBS curve of degree 7 on a uniform grid on the support of locally-convex polygon (Fig. 1)

 

Постройте произвольную незамкнутую NURBS кривую степени 7 на равномерной сетке  на опорной локально-выпуклой ломаной (рис. 1).

 

Fig. 1. Unclosed B-spline curve on a uniform grid of degree 7.

Рис. 1. Незамкнутая B-сплайновая кривая на равномерной сетке степени 7.

 

Examine the quality of the fitting curve (Fig. 2).

 

Исследуйте качество построенной кривой (рис. 2).

 

Fig. 2. The curvature graph of the curve

Рис.   2. График кривизны кривой

 

The initial base polygonal line - locally convex polygon. However, the approximation is not shape preserving. There is a site with non-regulated oscillation forms.

 

Исходная опорная ломаная - локально выпуклая ломаная. Однако аппроксимация не является изогеометрической. Наблюдается участок с нерегламентированной осцилляцией формы.

 

Transferring model of the curve to AutoCAD

Перенос модели кривой в AutoCAD

 

Перенесите модель кривой в AutoCAD 2012 (рис. 3)

 

 

Fig. 3. The curve in the AutoCAD 2012.

Рис. 3. Кривая в AutoCAD 2012.

 

Transferring model in the web-application

Перенос модели в web-приложение

 

Transfer the model curve in Web-application Fair Curve Modeler. Insert the command line

(entget (car (entsel "select NURBS"))) <ENTER>

Select the curve.

This AutoLISP-fragment was highlighted  DFX-model from a primitive(Fig. 4).

 

Перенесите модель кривой в Web-приложение Fair Curve Modeler. Вставьте в командную строку

(entget (car (entsel "select NURBS")))<ENTER>

Укажите кривую.

Данный AutoLISP-фрагмент выделяет из примитива DFX-модель (рис.  4).

 

 

Fig. 4. DXF-model NURBS of the curve in the protocol AutoCAD.

Рис.  4. DXF-модель NURBS кривой в протоколе AutoCAD.

 

Highlight the portion of the protocol, which is DXF-model of the curve model:

Выделите из протокола участок, представляющий DXF-модель кривой:

 

((-1 . <Имя объекта: 7ef05fa8>) (0 . "SPLINE") (330 . <Имя объекта:

7ef05f60>) (5 . "75") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0")

(100 . "AcDbSpline") (210 0.0 0.0 1.0) (70 . 12) (71 . 7) (72 . 22) (73 . 14)

(74 . 0) (42 . 1.0e-010) (43 . 1.0e-010) (40 . 0.0) (40 . 0.0) (40 . 0.0) (40 .

0.0) (40 . 0.0) (40 . 0.0) (40 . 0.0) (40 . 0.0) (40 . 1.0) (40 . 2.0) (40 .

3.0) (40 . 4.0) (40 . 5.0) (40 . 6.0) (40 . 7.0) (40 . 7.0) (40 . 7.0) (40 .

7.0) (40 . 7.0) (40 . 7.0) (40 . 7.0) (40 . 7.0) (10 -43.9862 119.15 0.0) (41 .

1.0) (10 -33.9131 133.071 0.0) (41 . 1.0) (10 -13.7213 160.889 0.0) (41 . 1.0)

(10 16.7032 202.542 0.0) (41 . 1.0) (10 188.883 154.087 0.0) (41 . 1.0) (10

109.189 125.792 0.0) (41 . 1.0) (10 499.504 -119.407 0.0) (41 . 1.0) (10

-446.928 -267.031 0.0) (41 . 1.0) (10 75.2019 331.483 0.0) (41 . 1.0) (10

-377.239 -33.2835 0.0) (41 . 1.0) (10 19.2966 375.711 0.0) (41 . 1.0) (10

111.858 308.398 0.0) (41 . 1.0) (10 173.475 263.414 0.0) (41 . 1.0) (10 204.26

240.894 0.0) (41 . 1.0))

 

Open the web-application on the page NURBS3D (fair-curve.ru> Register Home> go to NURBS3D> Paste the snippet from the buffer memory in the text box Instructions and Messages (I & M)> [NURBS Model from AutoCAD]> [Create] (Fig. 1).

Откройте web-приложение на странице NURBS3D (fair-curve.ru > Зарегистрируйтесь на главной странице > перейдите на страницу NURBS3D >  Вставьте фрагмент из буфера памяти в текстовое поле Instructions and Messages (I&M) > [NURBS Model from AutoCAD] > [Create] (рис. 1).

Fig. 5. The model of the curve  imported from AutoCAD.

Рис. 5. Модель кривой, импортированной из AutoCAD.

 

Most indicative the curvature graph as a function F (x) ([Draw Curvature as F (x)]) (Fig. 6)

Наиболее показателен график кривизны как функция F(x) ([Draw Curvature as F(x)]) (рис. 6).

Fig. 6. The curvature graph as a function F (x).

Рис. 6. Отображение графика кривизны как функции F(x).

 

On the pages of curve modeling of web- application can be accurately estimated the quality of modeling curve (Fig. 5,6).

На страницах моделирования кривых web-приложения можно точно оценить качество моделируемой кривой (рис. 5,6).

Displays graphs of curvature. The curvature graph  above the curve and the curvature graph form F (x).

Выводятся графики кривизны. График кривизны над кривой и график кривизны вида F(x).

According to the graph of the curvature of the curve is easy to estimate the shape and quality of the curve: the order of smoothness, character of the distribution the curvature of the curve.

По графику кривизны над кривой легко оценивается форма и качество кривой: порядок гладкости, характер распределения кривизны по кривой.

According to the graph of the curvature of the form F (x) is easy to count the number of vertices of the curve (curvature extrema) - the most important indicator of the quality of the curve.

По графику кривизны вида F(x) легко подсчитывается количество вершин кривой (экстремумы кривизны) – важнейший показатель качества кривой.

The text box shows some of the geometric characteristics of the curve are essential for assessing of the quality:

В текстовом поле отображаются некоторые геометрические характеристики кривой, существенные для оценки качества:

Max Curvature - the maximum curvature of the curve. Min Curvature - minimum curvature. Curvature variation (the difference between maximum and minimum values ​​of the curvature) - an important indicator of the quality of the curve. The smaller the difference between the smoother the curve.

Max Curvature – максимальная кривизна кривой. Min Curvature – минимальная кривизна. Вариация кривизны (разность между максимальным и минимальным значением кривизны) – важный показатель качества кривой. Чем меньше разность, тем более плавная  кривая.

Potential Energy - the most important indicator of the quality of curves of high order of smoothness m (m> 2).

Potential Energy – важнейший показатель качества кривых высокого порядка m гладкости (m > 2).

The method of flexible rail (physical spline) is still considered the gold standard of modeling curves of high quality. Elastically deformed flexible rail takes the form of a minimum potential energy.

Метод гибкой рейки (физического сплайна) до сих пор считается эталонным методом моделирования кривых высокого качества. Упруго деформированная гибкая рейка принимает форму с минимальной потенциальной энергией.

Potential energy curves calculated as the integral of the square of the curvature along the length of curve. A comparison of curves by value of the potential energy only shows that one of the curves closer to the model of the physical spline.

Потенциальная энергия кривых рассчитывается как интеграл квадрата кривизны по длине кривой. Сравнение кривых по значению потенциальной энергии показывает только то, что одна из кривых ближе к модели физического сплайна.

While comparing the curve may be much worse than the other curve on these first important indicators, however, it may have less potential energy.

Хотя сравниваемая кривая может быть намного хуже другой кривой по перечисленным первым важнейшим показателям, тем не менее, она может обладать меньшей потенциальной энергией.

This can be explained as follows. Imagine the first rail, deformed elastically at the support points, and a second rail, broken at the points of support under stress deformation. Individual pieces of broken rail as line segments will give a total zero of potential energy. In geometric terms, this means that the spline curve has a defect: tangential discontinuities at the nodal points.

Это можно объяснить  следующим образом. Представьте себе первую рейку, деформированную упруго на опорных точках  и вторую рейку, сломанную в точках опоры под напряжением деформации. Отдельные куски сломанной рейки как прямолинейные отрезки дадут в сумме нулевое значение потенциальной энергии. В геометрическом плане  это значит, что сплайновая кривая имеет   дефект: разрывы касательных в узловых точках.

On the other hand, if the spline is defective form with breaks of curvature, which means the physical spline is composed of pre-deformed pieces. Completely different physics. Whole rail without breaking it, so it is impossible to bend.

С другой стороны, если сплайн имеет дефект вида разрывов кривизны, то это значит, физический сплайн составлен из заранее деформированных кусков. Абсолютно другая физика. Цельную рейку, не сломав,  так изогнуть невозможно.

 

If the spline has discontinuities of the third derivative, then it means that the corresponding physical spline is pieces of different materials.

Если сплайн имеет разрывы третьей производной, то это значит, что соответствующий физический сплайн имеет куски из разного материала.

 

Curves behave like a physical spline only at sufficiently high order of smoothness. That is, a comparison of the potential energy of curves is meaningful only at sufficiently high quality of compared curves. Curves must have at least 3 order of smoothness with a smooth change of the third derivative.

Кривые ведут себя похоже на физический сплайн только при достаточно высоком порядке гладкости. То есть, сравнение кривых по потенциальной энергии имеет смысл только при достаточно высоком качестве сравниваемых кривых. Кривые должны иметь, по крайней мере, 3 порядок гладкости с плавным изменением третьей производной.

 

Note the large number of vertices in the graph of the curvature of the curve of the form F(x).

Обратите внимание на большое количество вершин кривой на графике кривизны вида F(x).

 

Convert the format of the curve of b-spline representation to representation of the Bezier spline curve ([Convert to Bezier Spline]> [Create]) (Figure 8).

 

Преобразуйте формат кривой из  b-сплайнового представления в представление сплайновой кривой Безье ( [Convert to Bezier Spline] > [Create]) (рис. 8).

 

 

Fig. 8. Spline curve in the format of a Bezier curve of degree 7.

Рис. 8. Кривая в формате сплайновой кривой Безье степени 7.

 

And go to the NURBzS3D ([To Bezier Spline]) (Fig. 9).

И перейдите на страницу NURBzS3D ([To Bezier Spline]) (рис. 9) .

Fig. 9. Page NURBzS3D.

Рис. 9. Страница NURBzS3D.

 

Rebuild the Bezier spline curve ([Create]) and go to the page Polyline3D ([to Base Polyline]) (Fig. 10).

Перестройте сплайновую кривую Безье ([Create]) и перейдите на страницу Polyline3D ([to Base Polyline]) (рис. 10).

 

 

Fig. 10. Transferring to page Polyline3D.

Рис. 10. Переход на страницу Polyline3D.

 

Construction of v-curve and the curve approximation by GNURBzS

Построение v-кривой и аппроксимация посредством GNURBzS кривой

 

Construct a v-curve [Create] (Fig 11).

Постройте v-кривую [Create] (рис 11). 

Fig. 11. V-curve in the base polygon.

Рис. 11. V-кривая на опорной ломаной.

 

At the end points to set a fixed value of the tangent vectors and curvatures, inherited from the spline curve. Fixed values ​​of the curvature can disrupt smooth curvature on the boundary areas of the curve. Remove the values ​​of curvature ([Curvature]> [Delete]) (Fig. 12).

В концевых точках устанавливаются фиксированные касательные векторы и значения кривизны, унаследованные от сплайновой кривой. Фиксированные значения кривизны могут нарушать плавность кривизны на граничных участках кривой. Удалите значения кривизны ([Curvature]  > [Delete]) (рис. 12).

 

Fig. 12. Editing curvature at the end points.

Рис. 12. Редактирование кривизны в конечных точках.

Rebuild the v-curve [Create] (Fig. 12). Ensure the smooth curvature graph on the curve.

Перестройте v-кривую [Create] (рис. 12). Убедитесь в плавности графика кривизны на всей кривой.

Fig. 13. Curve with fixed tangent vectors without fixed boundary values ​​of curvature.

Рис. 13. Кривая с фиксированными касательными векторами без фиксированных граничных значений кривизны.

 

Advice. If you want to put a fixed value of the curvature, the end points to woo curvature values ​​that are close to the required value by controlling only the configuration of the base polygon. You can add more points if you want the absolute curve passing through the input base points. Only at values ​​close enough to what is required, set fixed values ​​of curvature (Curvature> Place the cursor at the desired point> [Get Params]> Enter the desired cell Value> [Set Params]).

Совет. Если необходимо поставить фиксированные значения кривизны, то добейтесь на концевых точках значений кривизны, близких к требуемым значениям,  путем управления только конфигурацией опорной ломаной. Можно добавлять дополнительные точки, если требуется безусловное прохождение кривой через исходные опорные точки. И только при значениях, достаточно близких к требуемым, задайте фиксированные значения кривизны (Curvature > Установите курсор в требуемой точке  > [Get Params] > Введите требуемое значение ячейку Value > [Set Params]).

 

 

Construction of v-curve and approximation by b-spline curve 8th degree

Построение v-кривой и аппроксимация посредством b-сплайновой  кривой 8-ой степени

 

 

By default, v-curve is approximated by cubic NURBzS curve (cubic Bezier spline curve). Go to the approximation of the curve by v-b-spline curve 8th degree (turn on Approximation: switch (*) by B-Spline> [Create])> Set Degree: [8]> [Create]) (Fig. 14 ).

По умолчанию v-кривая аппроксимируется кубической NURBzS кривой (кубической сплайновой кривой Безье). Перейдите к аппроксимации v-кривой посредством b-сплайновой кривой 8-ой степени (включите в области Approximation: переключатель (*) by B-Spline  > [Create]) > Установите степень Degree [8] > [Create]) (рис. 14).

 

 

 

 

Fig. 14. V-curve, approximated b-spline curve eighth degree.

Рис. 14. V-кривая, аппроксимированная b-сплайновой кривой 8-ой степени.

 

Pay attention to the identity of the approximations in Fig. 13 and Fig. 14. Turn on the option to display the graph of curvature ([Draw Curvature as F (x)]) (Fig. 15).

 

Обратите внимание на идентичность аппроксимаций на рис. 13 и на рис. 14. Включите опцию отображения графика кривизны ([Draw Curvature as F(x)]) (рис. 15).

Fig. 15. The curvature graph as a function F (x).

Рис.  15. График кривизны как функция F(x).

 

Compare the number of vertices (11) of the original curve (Fig. 6) improvement of the curve (6) (Fig. 15). Compare geometric characteristics:

Original curve:

Сравните количество вершин (11) исходной кривой (рис. 6) улучшенной кривой (6) (рис. 15). Сравните геометрические характеристики:

Исходной кривой:

Length = 1357.9207767645687

Max Curvature = 0.020971331053922366

Min Curvature = 0.000021488594351315748

Potential Energy = 0.060428946028306174

 

Improved curve:

Улучшенной кривой:

Length = 1340.0345566810663

Max Curvature = 0.008394750806113392

Min Curvature = 0.0037704963439035696

Potential Energy = 0.04903916633851721

 

Received a radical improvement in the quality of the curve on the same base polygon: almost 2-fold reduced the number of vertices of the curve, significantly reduced the variation of curvature, significantly reduced the potential energy curve.

Получено радикальное улучшение качества кривой на одной и той же опорной ломаной: почти в 2 раза уменьшено количество вершин кривой, существенно уменьшена вариация кривизны, значительно уменьшена потенциальная энергия кривой.

 

Transfer model of improved curve in AutoCAD

Перенос модели улучшенной кривой в AutoCAD

 

 

Transfer the curve in AutoCAD (Fig. 16) ([Nurbs Model to AutoCAD]> Select the text in the text box, I & M> Insert text from the clipboard to the command line> ENTER)

Перенесите кривую в AutoCAD (рис. 16) ([Nurbs Model to AutoCAD] > Выделите текст в текстовом поле I&M > Вставьте текст из буфера в командную строку > ENTER).

Fig. 16. Transferring of improved b-spline curve of degree 8 in AutoCAD 2012.

Рис. 16.  Перенос улучшенной b-сплайновой кривой степени 8 в AutoCAD 2012.

 

 

Transferring model of improved curve in Alias ​​Design

Перенос модели улучшенной кривой в Alias Design

Then transfer the model in Alias ​​Design. Import improved curve in the format *. IGES. In Alias ​​Design Read the IGES-file in a drawing with the original curve (Fig. 17).

Перенесите затем модель в Alias Design. Импортируйте улучшенную кривую в  формате *.IGES. В Alias Design считайте IGES-файл  в чертеж с исходной кривой (рис. 17).

Fig. 17. Improved b-spline curve eighth degree in Alias ​​Design.

Рис. 17. Улучшенная b-сплайновая кривая 8-ой степени в Alias Design.

 

The original and improved curves incidents of the same base polygon. Rebuild imported curve (Palette> Curve Edit> Rebuild) (Fig. 18).

Исходная и улучшенная кривые инциденты одной и той же опорной ломаной. Перестройте импортированную кривую (Palette > Curve Edit > Rebuild) (рис. 18).

 

 

Fig. 18. Reconstructed b-spline curve 8th degree on a uniform grid.

Рис. 18. Перестроенная b-сплайновая кривая 8-ой степени на равномерной сетке.

 

Remove the original curve. Double-check the results of the improvement curve in web-application FairCurveModeler. Examine the quality of the improved curve means Alias  Design (Shelves> Evaluate> Select the testing curve). Pay attention to the quality of the improved curve - the curvature graph is a smooth curve (Fig. 18).

Удалите исходную кривую. Перепроверьте результаты улучшения кривой в web-приложении FairCurveModeler. Исследуйте качество улучшенной кривой средствами Alias Design (Shelves > Evaluate > Укажите исследуемую кривую). Обратите внимание на качество улучшенной кривой - график кривизны представляет плавную кривую (рис. 18).

Fig. 18. The curvature graph of imported improved curve.

Рис. 18. График кривизны импортированной улучшенной кривой.

 

Ensure the identity of the curvature graph improved NURBS curve in Fair Curve Modeler in Fig. 14 and in Alias ​​Design Fig. 18.

Убедитесь в идентичности графиков кривизны улучшенной NURBS кривой в Fair Curve Modeler  на рис. 14 и в Alias Design  рис. 18.

 

 

2) By direct  method of fitting of curve by control polygon

2) Методом прямой подгонки кривой управляющим полигоном

 

And so, the quality of the spline curve seventh degree constructed on the same points with method of Alias ​​Design, is unsatisfactory.

И так, качество сплайновой кривой 7-ой степени, построенной на опорных точках  по методу Alias Design, абсолютно неудовлетворительно.

Moreover, the cubic spline curve, based on the same points, has the best quality. In AutoCAD, to the cubic curve easily go, if we go to the edited points (Fig. 19).

Более того, кубическая сплайновая кривая, построенная на тех же точках, обладает лучшим качеством. В AutoCAD к кубической кривой легко перейти, если перейти к опорным точкам (edited points)(рис. 19).

 

Fig. 19. The cubic spline curve constructed on the same base points

Рис. 19. Кубическая сплайновая кривая на тех же опорных точках.

 

"Real Length = " 1335.63

"Approximated Length = " 1335.26

"Potential Energy = " 0.0524504

"Min Curvature = " 0.00258835

"Max Curvature = " 0.011567

 

But trademark method of Alias ​​Design, CATIA and other CAD-systems for modeling curves of class A, is the construction of a high degree spline curve directly by the control polygon.

Но фирменный метод Alias Design, CATIA и других CAD-систем, предназначенных для моделирования кривых класса А, это построение сплайновой кривой высокой степени напрямую с помощью управляющей ломаной.

It can be shown, and we will show that it is impossible to achieve a higher quality than the quality of the v-curve, by controlling the shape of the s-polygon of initial s-spline curve seventh degree.

Можно показать, и мы далее покажем,  что невозможно добиться более высокого качества, чем качество  v-кривой,  путем управления формой s-полигона исходной сплайновой кривой 7-ой степени.

Will continue to test in AutoCAD. In AutoCAD since version 12, there was the possibility of modeling of high degrees spline curves by control polygons. We assume that the construction of a spline curve using control points in Alias ​​was the first step of approximation.

Продолжим тест в AutoCAD. В AutoCAD с версии 12 появилась возможность моделирования сплайновых кривых высоких степеней с помощью управляющих полигонов. Будем считать, что построение сплайновой кривой по опорным точкам в Alias было первым шагом приближения.

 

 

Fit spline curve of degree 7 for a fixed curve or base polyline by means of s-polygon

Подгонка сплайновой кривой степени 7 к фиксированной кривой или ломаной опорных точек s-полигоном

 

Spend some time to correct the configuration of s-polygon and fit curve using control vertices with visual control, you can achieve spline curve visually accurate passing through base points with a smooth change of curvature (Fig. 20).

Затратив некоторое время на исправление конфигурации s-полигона и подгонку сплайновой кривой к фиксированной кривой или ломаной опорных точек с визуальным контролем плавности, можно добиться визуально точного прохождения сплайновой кривой по опорным точкам с  плавным изменением кривизны (рис. 20).

Fig. 20. Correction of s-polygon and fitting to the base points of spline curve seventh degree.

Рис. 20. Исправление s-полигона и подгонка к опорным точкам сплайновой кривой 7-ой степени.

Examine the quality of curve by using the command v_test of utility v_test.fas (Fig. 21).

Исследуем качество с помощью команды v_test утилиты v_test.fas (рис. 21).

Fig. 21. The curvature graph of spline curve after correction and fitting.

Рис. 21. Графики кривизны сплайновой кривой после исправления и подгонки.

 

Curvature changes more smoothly.

Кривизна меняется более плавно.

 

A comparison of the potential energy curves is justified in case of equal the orders of smoothness and smoothness of  change of curvature and the values of the variation of curvature of curves.

Сравнение потенциальной энергии кривых правомерно при одинаковом качестве сравниваемых кривых по порядку гладкости.

 

Let us see the value of the potential energy of curve.

Посмотрим величину потенциальной энергии кривой.

"Real Length = " 1335.68

"Approximated Length = " 1335.28

"Potential Energy = " 0.0502638

"Min Curvature = " 0.00300127

"Max Curvature = " 0.00996832

The potential energy of curve is greater than that of v-curve. And it can not be less.

Потенциальная энергия кривой больше, чем у v-кривой. И она не может быть меньше.

This is explained as follows.

B-spline curve of seventh degree with unit weights has, just like low of degree splines, however, to a lesser extent, the pulsation of the curvature on the segment of the spline. This is a generic disease of b-splines with unit weights of control vertices. Manually controlling the shape of the spline with weights you can, but it is impossible to improve the shape.

Объясняется это следующим.

B-сплайновая кривая 7-ой степени с единичными весами обладает, так же как и сплайны низких степеней, правда, в меньшей степени, пульсацией кривизны на сегменте сплайна. Это родовая болезнь b-сплайнов с единичными весами управляющих точек. Вручную управлять формой  сплайна с помощью весов можно, но улучшать форму невозможно.

V-curve method in approximating by b-spline curve of 8th degree uses the v-curve of a single subdivision.

Метод v-кривой при аппроксимации посредством b-сплайновой кривой 8-ой степени использует параметры v-кривой однократного уплотнения.

Number of control vertices of approximating b-spline curve - 22. It allows to approximate the v-curve with high accuracy with preservation of the highest quality of v-curve.

Количество управляющих точек аппроксимирующей b-сплайновой кривой - 22. Именно это позволяет  аппроксимировать v-кривую с высокой точностью и с сохранением высочайшего качества v-кривой.

An increase of control points for manual fitting only exacerbate the situation. The more management options, the more difficult to agree on their mutual influence in the managed system.

Already, the current number (14) of control vertices is much higher than the initial number (7) of base points.

Увеличение управляющих точек при ручной подгонке только усугубит ситуацию. Чем больше параметров управления, тем сложнее согласовать их взаимное влияние в управляемой системе.

Уже сейчас текущее количество (14) управляющих точек намного превышает исходное количество (7) опорных точек.

 

Thus, v-curve method allows us to construct the curves of a higher quality than the direct method of  fitting the spline curve of high degree with control s-polygon.

Таким образом, метод v-кривой позволяет строить кривые более высокого качества, чем метод прямой подгонки сплайновой кривой высокой степени  с помощью управляющего s-полигона.

 

Improvement of NURBS curve by construction of v-curve on polygon of nodes

Улучшение NURBS кривой построением v-кривой на ломаной узловых точек

 

Possible to improve the quality of curves constructed using the direct method of specifying s-polygon. Improvement performed by the construction of v-curve on knot points of the initial spline.

Можно улучшать качество кривых, построенных с помощью прямого метода заданием s-полигона. Улучшение производится построением v-кривой  по узловым точкам исходного сплайна.

 

We assume that the spline curve in Fig. 20, 21, is constructed by the direct method using the s-polygon. Will improve curve in web-application by constructing v-curve on knot points of the initial spline.

Будем считать, что сплайновая кривая на рис. 20, 21 построена прямым методом с помощью s-полигона. Улучшим кривую в web-приложении построением v-кривой на ломаной узловых точек исходного сплайна. 

 

We transfer to web-application on page NURBS3D the model of spline curve (Fig. 22).

Перенесем в web-приложение на страницу NURBS3D модель сплайновой кривой (рис. 22).

 

Fig. 22. The initial spline is transferred to the page NURBS.

Рис. 22. Исходный сплайн переносится на страницу NURBS.

 

Then spline from b-spline representation is converted to a Bezier spline curve representation and a polyline of spline nodes with boundary conditions is transferred to the page Polyline3D (Fig. 23).

Затем сплайн из b-сплайнового представления конвертируется в представление сплайновой кривой Безье и ломаная узловых точек сплайна с граничными условиями переносится на страницу Polyline3D (рис. 23).

Fig. 23. Polyline of nodes with boundary conditions on page Polyline3D.

Рис. 23. Ломаная узловых точек с граничными условиями на странице Polyline3D.

 

We remove the boundary conditions of the form of fixed vectors of curvature and reconstruct the curve only with boundary conditions of the form of the tangents (Fig. 24)

Удалим граничные условия вида фиксированных векторов кривизны и перестроим кривую только с граничными условими вида касательных (рис. 24)

Fig. 24. Reconstructed curve without fixed vectors of curvature at the end points.

Рис. 24. Перестроенная кривая без фиксированных векторов кривизны в концевых точках.

 

Reconstruct the curve with approximation by b-spline curve of 10th degree (Fig. 25).

Перестроим кривую с аппроксимацией b-сплайновой кривой 10-ой степени (рис. 25).

 

Fig. 25. V-curve is approximated by b-of spline curve of tenth degree.

Рис. 25. V-кривая аппроксимированная b-сплайновой кривой 10-ой степени.

 

Examine the parameters (button [Params]) (Fig. 26).

Проверим параметры (кнопка [Params]) (рис. 26).

Fig. 26. Checking the curve.

Рис. 26. Проверка параметров кривой.

 

Перенесем b-сплайновую кривую в AutoCAD (рис. 27)

Transfer the b-spline curve to AutoCAD (Fig. 27)

Fig. 27. B-spline curve tenth degree transferred to AutoCAD.

Рис. 27. B-сплайновая кривая 10-ой степени перенесена в AutoCAD.

 

Check the quality of the graphs of curvature (Fig. 28).

Проверим качество по графикам кривизны (рис. 28).

Fig. 28. The curvature graph.

Рис. 28. Графики кривизны.

 

Check integral parameters displayed in the text window AutoCAD:

Проверим интегральные параметры, выведенные в текстовое окно AutoCAD:

"Real Length = " 1340.58

"Approximated Length = " 1340.2

"Potential Energy = " 0.0494648

"Min Curvature = " 0.00394087

"Max Curvature = " 0.00998152

And so. The potential energy of curve is smaller and curvature graphs are smoother.

И так. Потенциальная энергия кривой ниже и графики кривизны более плавные.

 

I draw your attention to the complexity of modeling curve on end sections of the curve with s-polygon in closed (clamped) format. In the closed (clamped) format the influence of control vertices near the ends of the curve on the shape of the curve is extremely unstable, especially at high degrees of spline. This is noted, for example, in the guidelines for modeling curves in CATIA. Recommendations are made to eliminate the strong influence on the shape of the second vertex of the curve. Strong influence happens because the designer intuitively distributes control vertices with uniform length between the control vertices.

Обращаю Ваше внимание на сложность моделирования концевых участков кривой s-полигоном в закрытом (clamped) формате. В закрытом (clamped) формате  влияние управляющих точек, близких к концам кривой, на форму кривой крайне неустойчиво, особенно, при высоких степенях сплайна. Это отмечается, например, в  руководствах по моделированию кривых в CATIA. Даются рекомендации по устранению сильного влияния второй вершины на форму кривой. Сильное влияние происходит потому, что дизайнер интуитивно располагает управляющие вершины с равномерной длиной между управляющими вершинами.

This can be done only on the vertices with numbers greater than the degree of the spline m. Strictly speaking, the length of the segment l [0-1], l [1-2], l [2-3], l [3-4] s-polygon must be in the ratio:

Это можно делать только на вершинах с номерами, превышающими степень сплайна m. Строго говоря, длины по сегментам l[0-1], l[1-2], l[2-3], l[3-4] s-полигона должны располагаться в соотношении:

l[0-1]:l[1-2] = 1:2

l[1-2]:l[2-3] = 2:3

l[2-3]:l[3-4] = 3:4

...

This arrangement of the vertices in the transition to an (float) s-polygon format ensures uniform distribution of vertices and equal influence on the shape of all the vertices of the curve. Why is the configuration form of s-polygon in float format? Because all the differential characteristics of b-spline curve is obtained from the finite difference up to m-th order of s-polygon in an float format. Therefore, regular, harmonious form of s-polygon in an float format ensures good quality of finite differences and, ultimately, good quality of  differential characteristics of curve.

Такое расположение вершин при переходе к открытому (float) формату s-полигона обеспечивает равномерное распределение вершин и  равноправное влияние всех вершин на форму кривой. Почему так важна форма конфигурации s-полигона открытом формате? Потому, что все дифференциальные характеристики b-сплайновой кривой получаются из конечных разностей до m-го порядка s-полигона в открытом формате. Поэтому  регулярная, правильная, гармоничная форма s-полигона в открытом формате гарантирует хорошее качество конечных разностей и, в конечном счете, хорошее качество дифференциальных характеристик кривой.

Should visually sufficiently accurately control the length of the first three segments of the s-range and to strive for specified proportions of the lengths of the segments.

Необходимо визуально достаточно точно контролировать длины первых трех сегментов s-полигона и нужно стремиться к указанным пропорциям длин сегментов.

However, this does not eliminate the instability of influence of the first points on the shape of the curve. Instability is that the small changes in the coordinates of the vertices too much (compared to the s-polygon vertices in an float format) influence to the shape of the end parts of the curve.

Однако это не устраняет неустойчивости влияния первых точек на форму кривой. Неустойчивость заключается в том, что малые изменения координат этих вершин слишком сильно (по сравнению с вершинами  s-полигона в открытом формате) влияют на форму начальных участков кривой.

Because of this effect is practically difficult to achieve high-quality shape of the curve at the ends of the curve editing s-polygon in a clamped format.

Из-за этого явления трудно практически добиться высококачественной формы кривой на концевых участках при редактировании кривой s-полигоном в закрытом формате.

V-curve method in web-application automatically provides high quality on the shape of the end sections.

Метод v-кривой в web-приложении автоматически обеспечивает высококачественную форму кривой на концевых участках.

 

In the web-application is proposed also a technique of control the quality of curve and accurate, high-quality modeling of end sections using the s-polygon in an float format. (See 'Example 8. Using the float format of s-polygon of b-spline curve').

В web-приложении реализована также методика контроля качества кривой и точного, высококачественного моделирования концевых участков с использованием s-полигона в открытом формате. (См. 'Example 8. Использование открытого плавающего формата s-полигона b-сплайновой кривой').

 

 

Conclusions

Выводы

 

1). A comparative analysis of methods - the method of modeling on base unclosed polyline by b-spline curve of degree 7 on a uniform grid in Alias ​​Design 2012 and the method of modeling v-curve on unclosed polyline by b-spline curve 8th degree on a uniform grid in the web-application FairCurveModeler.

1). Проведен сравнительный анализ методов – метода моделирования на опорной незамкнутой ломаной b-сплайновой кривой степени 7 на равномерной сетке в Alias Design  2012 и метода моделирования v-кривой на опорной незамкнутой ломаной в формате b-сплайновой кривой 8-ой степени на равномерной сетке в web-приложении FairCurveModeler.

2) The insufficiency of the quality of  the curve modeled in Alias ​​Design 2012.

2) Показана неудовлетворительность качества кривой, смоделированной в Alias Design 2012. 

3) The possibility of a radical improvement in web application curves modeled in Alias ​​Design:

- Decreases the variation of curvature,

- Reduces the number of the number of vertices (curvature extrema) of the curve,

- Decreases potential energy of the curve.

3) Показана возможность радикального улучшения в web приложении  кривых, смоделированных в Alias Design:

- уменьшается вариация кривизны,

- уменьшается количество вершин кривой,

- уменьшается потенциальная энергия кривой.

 

4) Shows advantages of the method v-curve also over the method of direct fitting the spline curve of high degree by control polygon, the advantages in speed, accuracy, and in a higher quality of constructed curves.

4) Показываются преимущества метода v-кривой также перед методом прямой подгонки сплайновой кривой высокой степени с помощью управляющего полигона, преимущества  в скорости, точности построения и в более высоком качестве построенных кривых.

 

5) Thus, the method of v-curve with the approximation by b-spline curves of high degrees now - the only alternative for modeling curves of the highest quality in Alias ​​Design, AutoCAD and other CAD-systems.

5) Таким образом, метод v-кривой с аппроксимацией b-сплайновыми кривыми высоких степеней в настоящее время - единственная альтернатива для моделирования кривых высочайшего качества в Alias Design, AutoCAD и в других CAD-системах.