Fusion 360. Development of applications using API. The integration Fusion 360 with the web application FairCurveModeler

Fusion 360. Разработка приложений с использованием  API. Интеграция Fusion360 с web приложением FairCurveModeler

Organization: Bashkir State Agrarian University

Организация: Башкирский государственный аграрный университет

Developers: Muftejev V.G., Gallyamov I.F., M.A. Talypov, A.A. Makhmutov A.A.

Разработчики: Муфтеев В.Г., Галлямов И.Ф., Талыпов М.А., Махмутов А.А.

Introduction

Введение

Autodesk Fusion 360 cloud - 3D CAD / CAM toolkit for product development. Cloud tool that integrates the industrial design and manufacture of the product in a single collective project. Fusion 360 cloud provides access to projects from virtually anywhere, anytime, with any device (with Mac, PC or mobile device).

Autodesk Fusion 360 cloud - 3D CAD/CAM-инструмент для разработки продуктов. Облачный инструмент, который объединяет промышленный дизайн и производство изделия в едином коллективном проекте. Fusion 360 cloud обеспечивает доступ к проектам практически отовсюду, в любое время, с любого устройства (с Mac, ПК или мобильного устройства).

Fusion 360 - provides a comfortable collective development of the project and the opportunity to advertise the project to a wide range of customers.

Fusion 360 – обеспечивает комфортную коллективную разработку проекта и возможность рекламы проекта широкому кругу заказчиков.

In the design of technical products with functional curves and surfaces there are high requirements to the quality of curves and surfaces.

При проектировании технических изделий с функциональными кривыми и поверхностями предъявляются высокие требования к качеству кривых и поверхностей.

Functional curves and surfaces directly determine the functional characteristics of the technical product. The functional surfaces include the external surfaces of aircraft, ships, automobiles; architectural forms; working surfaces of tillage machines, working surfaces of turbine blades, pumps, propellers, etc. Functional curves are to build the functional surfaces - aero and hydrodynamic profiles of wings, blade pumps, propellers; directing and forming curves for construct the working surfaces of tillage machines, cam profiles, curved trails of roads in plane and in profile, etc.

Функциональные кривые и поверхности напрямую определяют проектные функциональные характеристики технического изделия. К функциональным поверхностям относятся внешние обводы самолетов, судов, автомобилей; архитектурные формы; рабочие поверхности почвообрабатывающих агрегатов, рабочие поверхности лопаток турбин, насосов, гребных винтов и пр. Функциональные кривые это кривые линии для построения функциональных поверхностей – аэро и гидродинамические профили крыльев, лопаток насосов, гребных винтов;  направляющие кривые и образующие для построения поверхностей почвообрабатывающих агрегатов, профили кулачков, кривые линии трасс дорог в плане и в профиле и т.д.

Invariant with respect to the specifics of the technical product requirements are requirements to the quality of curves and surfaces according to the criteria of smoothness.

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

In modeling the functional of the curve methods should provide:

При моделировании функциональной кривой методы должны обеспечивать:

1) a high degree of smoothness; 2) smooth curvature graph with the minimum number of extrema of curvature; 3) continuous and smooth graph of torsion of a space curve; 4) The small variation of curvature; 5) The small value of the potential energy.

1) высокий порядок гладкости; 2) плавный график кривизны с минимальным числом экстремумов кривизны; 3) непрерывный и плавный график кручения пространственной кривой; 4) малая вариация кривизны; 5) малое значение потенциальной энергии.

The authors have developed a cloud product Web FairCurveModeler for modeling curves and surfaces of high quality on criteria of smoothness.

Авторами разработан облачный продукт Web FairCurveModeler для моделирования кривых и поверхностей высокого качества по критериям плавности.

This development integrates Fusion 360 with a web application FairCurveModeler.

Данная  разработка интегрирует Fusion360 с web приложением FairCurveModeler.

1. Sketch

 

The construction of spline curve in a sketch

Построение сплайновой кривой в эскизе

In the sketch spline curve is constructed on base points (Figure 1.1).

В эскизе сплайновая кривая строится по опорным точкам (рисунок 1.1).

Figure 1.1. Closed spline curve in the sketch.

Рисунок 1.1. Замкнутая сплайновая кривая в эскизе.

Sketch spline curve is a spline of fifth degree with unit weights. Kind of format of the closed spline is presented in the appendix (Appendix 1.1). The number of nodes equal to the number of the spline control points. The format is different from the standard presentation of closed rational b-spline curves in the format ‘Float’. Control points are presented in the format ‘Clamped’ (Figure 1.2).

Эскизная сплайновая кривая - сплайн 5-ой степени с единичными весовыми коэффициентами. Формат представления замкнутого сплайна представлен в приложении (Приложение 1.1). Количество узлов сплайна равно количеству управляющих точек. Формат отличается от стандарта представления замкнутых рациональных b-сплайновых кривых в формате Float. Управляющие точки представлены в формате Clamped (рисунок 1.2).

Figure 1.2. Control points of a closed spline in the format ‘Clamped’.

Рисунок 1.2. Управляющие точки замкнутого сплайна в формате Clamped.

It is possible to construct a closed spline curve (Figure 1.3).

Можно строить незамкнутую сплайновую кривую (рисунок 1.3).

Figure 1.3. Unclosed spline curve.

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

Presentation format of the closed spline is given in the appendix (Appendix 1.1). The format corresponds to the standard representation of rational b-spline curve. In contrast to a closed spline the number of nodes of unclosed spline

n_knots = n_CVs + degree +1,

where n_CVs - the number of control points,

degree - the degree of the spline.

Формат представления незамкнутого сплайна дан в приложении (Приложение 1.1). Формат соответствует стандарту представления рациональной b-сплайновой кривой. В отличие от замкнутого сплайна количество узлов

n_knots  = n_CVs + degree +1,

где n_CVs – количество управляющих точек,

degreeстепень сплайна.

Editing the spline curve

Редактирование сплайновой кривой

Geometric determinant (GO) of the curve - is realized by the scheme of Hermite. You can edit the spline curve on GO of Hermite by moving base points, by changing the directions of the tangents, by changing the lengths of the tangent vectors (Figure 1.4).

Геометрический определитель (ГО) кривой – реализован по схеме Эрмита. Редактировать сплайновую кривую на ГО Эрмита можно перемещением опорных точек, изменением в этих точках направления касательных, длины векторов касательных (рисунок 1.4.)

Figure 1.5. Editing the spline in the sketch on GD of Hermite.

Рисунок 1.5. Редактирование сплайна в эскизе на ГО Эрмита.

NURBS format representation of the edited curve does not change. Editing the curve does not change the weight coefficients and the node vector. Only change the control vertices.

Формат NURBS представления отредактированной кривой не меняется. Редактирование кривой не меняет значений весовых коэффициентов и вектора узлов. Изменяются только управляющие вершины.

Important! The number of segments of the spline is not equal to the number of segments of GD of Hermite.

Важно! Количество сегментов сплайна не равно количеству сегментов ГО Эрмита.

 

 

2. API tools to exchange NURBS models with an external web application

2. Средства API для обмена NURBS моделями с внешним с web  приложением

 

API tools of Fusion 360 provides the ability to write scripts in Javascript and Python. This development uses language Jscript. API tools provides the objects and methods for working with NURBS curves.

Средства API Fusion360 предоставляют возможность написания скриптов на языках Jscript и Python. В данной разработке используется язык Jscript. Средства API предоставляют объекты и методы для работы с NURBS кривыми.

 

2.1. Objects, methods and properties

2.1. Объекты, методы и свойства

 

The general object for submission of NURBS curves is NurbsCurve3D Rational. Exactly this object is used in the development for the exchange between NURBS models Fusion360 and web FairCurveModeler. NurbsCurve3D Rational is transient object. It is only available in the program JScript. To transfer a transient object to the sketch Fusion is used the object CurveEvaluator3D, by which are allocated (pulled out) NURBS parameters of the transient curve and sketch spline curve is created on these parameters.

Наиболее общий объект для представления NURBS кривых это NurbsCurve3D Rational. Именно этот объект используется в данной разработке для обмена NURBS моделями между Fusion360 и web FairCurveModeler. Объект NurbsCurve3D Rational  является транзитным. Он доступен только в программе JScript. Для переноса транзитного объекта в эскиз Fusion используется объект CurveEvaluator3D, с помощью которого выделяются (вытаскиваются) параметры транзитной NURBS  кривой и на этих параметрах строится эскизная сплайновая кривая

 

2.1.1. Объект NurbsCurve3D Rational

 

NURBS model from the web application is transferred to the object NurbsCurve3D Rational.

NURBS модель из web приложения переносится в объект NurbsCurve3D Rational.

In the development the following methods and properties of this object are used.

В разработке используются следующие методы и свойства объекта.

Methods

Методы

createRational - Creates a transient 3D NURBS rational b-spline object.

getData    Gets the data that defines a transient 3D NURBS rational b-spline object.

Properties

Свойства

Evaluator -           Returns an evaluator object that lets you perform additional evaluations on the curve.

 

2.1.1.1 NurbsCurve3D.createRational Method

 

NurbsCurve3D object is transient. Is created based on parameters of NURBS model created in the web-application. NurbsCurve3D object is created using the method NurbsCurve3D.createRational Method.

Объект NurbsCurve3D является переходным. Создается на основе параметров NURBS модели, созданной в web-приложении. Создается объект NurbsCurve3D с использованием метода  NurbsCurve3D.createRational Method.

Parent Object: NurbsCurve3D

Description

NurbsCurve3D NurbsCurve3D.createRational( Point3D[] controlPoints, integer degree, Double[] knots, Double[] weights, boolean isPeriodic )

 

Parameters

Name                   Type               Description

controlPoints       Point3D[]        An array of control point that define the path of the spline.

degree                 integer              The degree of curvature of the spline.

knots                   Double[]          An array of numbers that define the knot vector of the spline. The                           knots is an array of (degree + N - 1) numbers, where N is the number of control points.

weights             Double[]                  An array of numbers that define the weight at each control point.

isPeriodic         boolean         A bool specifying if the spline is to be Periodic. A periodic curve has a start point and end point that meet (with curvature continuity) forming a closed loop.

2.1.1.2. NurbsCurve3D.getData Method

 

This method is used to obtain the parameters of the existing transitional object NurbsCurve3D.

Данный метод используется для получения параметров существующего переходного объекта NurbsCurve3D.

Parent Object: NurbsCurve3D

Description

Gets the data that defines a transient 3D NURBS rational b-spline object.

Syntax

JavaScript

boolean NurbsCurve3D.getData( out Point3D[] controlPoints, out integer degree, out Double[] knots, out boolean isRational, out Double[] weights, out boolean isPeriodic )Return Value

Type         Description

boolean    Returns true if successful.

Parameters

Name       Type    Description

controlPoints       Point3D[]        The output array of control point that define the path of the spline.

degree      integer The output degree of curvature of the spline.

knots        Double[]         The output array of numbers that define the knot vector of the spline.

isRational boolean           The output value indicating if the spline is rational. A rational spline will have a weight value for each control point.

weights    Double[]         The output array of numbers that define the weights for the spline.

isPeriodic boolean           The output value indicating if the spline is Periodic. A periodic curve has a start point and end point that meet (with curvature continuity) forming a closed loop.

 

2.1.2. Object CurveEvaluator3D

2.1.2. Объект CurveEvaluator3D

 

Is created based on properties of the object NurbsCurve3D.

Создается на основе свойства объекта NurbsCurve3D.

Evaluator -           Returns an evaluator object that lets you perform additional evaluations on the curve.

Derived from: Base Object

Description

3D curve evaluator that is obtained from a transient curve and allows you to perform various evaluations on the curve.

 

Methods

Name                   Description

classType Returns a string indicating the type of the object. All classes implement this static function. The returned string matches the string returned by ObjectType.

getCurvature       Get the curvature value at a parameter position on the curve.

getCurvatures      Get the curvature values at a number of parameter positions on the curve.

getEndPoints       Get the end points of the curve.

getFirstDerivative           Get the first derivative of the curve at the specified parameter position.

getFirstDerivatives          Get the first derivatives of the curve at the specified parameter positions.

getLengthAtParameter   Get the length of the curve between two parameter positions on the curve.

getParameterAtLength   Get the parameter position on the curve that is the specified curve length from the specified starting parameter position.

getParameterAtPoint      Get the parameter position that correspond to a point on the curve. For reliable results, the point should lie on the curve within model tolerance. If the point does not lie on the curve, the parameter of the nearest point on the curve will generally be returned.

getParameterExtents       Get the parametric range of the curve.

getParametersAtPoints   Get the parameter positions that correspond to a set of points on the curve. For reliable results, the points should lie on the curve within model tolerance. If the points do not lie on the curve, the parameter of the nearest point on the curve will generally be returned.

getPointAtParameter      Get the point on the curve that corresponds to evaluating a parameter position on the curve.

getPointsAtParameters   Get the points on the curve that correspond to evaluating a set of parameter positions on the curve.

getSecondDerivative      Get the second derivative of the curve at the specified parameter position.

getSecondDerivatives     Get the second derivatives of the curve at the specified parameter positions.

getStrokes           Get a sequence of points between two curve parameter positions. The points will be a linear interpolation along the curve between these two parameter positions where the maximum deviation between the curve and each line segment will not exceed the specified tolerance value.

getTangent          Get the tangent to the curve at a parameter position on the curve.

getTangents         Get the tangent to the curve at a number of parameter positions on the curve.

getThirdDerivative          Get the third derivative of the curve at the specified parameter position.

getThirdDerivatives        Get the third derivatives of the curve at the specified parameter positions.

 

Properties

Name                   Description

isValid      Indicates if this object is still valid, i.e. hasn't been deleted or some other action done to invalidate the reference.

objectType           Returns a string indicating the type of the object.

Version

Introduced in version August 2014

 

 

2.1.3. Object SketchFittedSpline

2.1.3. Объект SketchFittedSpline

 

NURBS curve constructed using the add method of the object SketchFittedSpline on parameters received from the object CurveEvaluator3D, is available for 3D modeling in Fusion360. In fact, the object SketchFittedSpline approximates the transient NURBS curve. Although more natural and logical way to input transition NURBS curve to the sketch would be method of kind as toSketch of object NurbsCurve3D.

NURBS кривая, перестроенная с помощью метода add  объекта SketchFittedSpline на параметрах, полученных из объекта CurveEvaluator3D, становится доступной для 3D моделирования во Fusion360. По сути, объект SketchFittedSpline аппроксимирует переходную NURBS кривую. Хотя более естественным и логичным способом ввода переходной NURBS кривой в эскиз был бы метод вида toSketch объекта NurbsCurve3D.

 

2.2. Organization of exchange through DXF-files.

2.2. Организация обмена через DXF-файлы.

 

Curves of high quality, created or edited in the web FairCurveModeler, can be saved in DXF format and then by a command upload on Data Panel and specifying DXF-file                                                                                                                                     can be entered to sketch of Fusion360. This preserves the exact geometric model NURBS of the curve created in a web application.

Кривые высокого качества, созданные или отредактированные в web FairCurveModeler, можно сохранять в формате DXF и затем  вводить в Fusion360  посредством команды upload на Data Panel и указанием DXF-файла. При этом сохраняется точная геометрическая модель NURBS кривой, созданной в web приложении.

In turn, the sketch from the Fusion 360 can be output to the file in the format DXF. In this case the sketch spline curves, created by means Fusion360, output accurately preserving the geometry. Improved curves obtained from the web application is not output with the exact geometry. In DXF-models do not transferred nonidentity weights of the rational NURBS curve. To output exact geometry of rational NURBS models use the script ‘NURBS_to_WEB’, and then in web application output NURBS curve to DXF- file.

В свою очередь, из Fusion360 эскиз можно вывести в файл также в формате DXF. При этом сплайновые кривые эскиза, созданные средствами Fusion360 выводятся точно, с сохранением геометрии. Улучшенные кривые, полученные из web приложения, выводятся не с точной геометрией. В DXF-модели не переносятся неединичные весовые коэффициенты рациональной NURBS кривой. Для вывода точной геометрии рациональной NURBS модели используйте скриптNURBS_to_WEB’, а затем в web приложении NURBS кривую выведите в файл DXF.

 

 

 

2.3. The scripts for exchange

2.3. Скрипты обмена

 

If you are using Google-translator and know the data exchange technology, the technology of communication between the Fusion 360 and web FairCurveModeler you will not be surprised. For lightning exchange of NURBS models of curves and surfaces with web-applications and Fusion360 is used  memory buffer (Clipboard).

Если Вы работаете с Google-транслятором и знаете технологию обмена данными, то технология обмена данными между Fusion 360 и web FairCurveModeler Вас не удивит.  Для молниеносного обмена NURBS моделями кривых и поверхностей с web-приложением и Fusion360 используется буфер памяти (Clipboard).

For the exchange of data between Fusion 360 and FairCurveModeler there are used 4 scripts. In the appendix sections A.2.3.1. - A.2.3.4 are given the codes of scripts.

Для обмена данными между Fusion 360 и FairCurveModeler используются 4 скрипта. В приложениях П.2.3.1. – П.2.3.4 приводятся коды скриптов.

 

2.3.1. Script Points_to_WEB

2.3.1. Скрипт Points_to_WEB

 

The script forms the table of coordinates of vertices of polyline in Fusion 360 and remembers the table in the Clipboard.

Draw the points in sketch of Fusion360 on the coordinate plane XY.

Call the script ‘Points_to_WEB’. On the request ‘Select Points’ on panel ‘Points to WEB’ click OK (Figure 3.3.1.1)

Скрипт формирует таблицу координат вершин ломаной в Fusion 360 и запоминает таблицу в Clipboard.

Нарисуйте точки в эскизе Fusion360 на координатной плоскости XY.

Вызовите скрипт Points_to_WEB’. На запрос ‘Select Points’ панели ‘Points to WEB’ нажмите OK (рисунок 3.3.1.1)

 

Figure 2.3.1.2. Prompted to select the points.

Рисунок 2.3.1.2. Запрос выбора точек.

Sequentially select points and press ENTER (Figure 3.3.1.3).

Последовательно укажите точки и нажмите ENTER (рисунок 3.3.1.3).

Figure 2.3.1.3. Taking of points from the sketch.

Рисунок 2.3.1.3. Съем точек с эскиза.

Click OK in the the panel Selected Points.

At the request 'Copy to Clipboard' of panel 'List of Points' highlight all the text in the text box of the panel and copy to Clipbord (Figure 2.3.1.4).

Нажмите OK в панели Selected Points.

На запрос Copy to Clipboard панели ‘List of Points’ выделите весь текст в текстовом поле панели и скопирйте в Clipbord (рисунок 2.3.1.4).

 

 

Figure 2.3.1.4. Copy the text from the text box to the Clipboard.

Рисунок 2.3.1.4. Копирование текста из текстового поля в Clipboard.

 

 

 

 

 

 

 

 

2.3.2. Script Points_from_WEB

2.3.2. Скрипт Points_from_WEB

 

The script draws the points in the sketch XY in Fusion 360 based on the coordinates of vertices of the table from the Clipboard

Скрипт на основе таблицы координат вершин ломаной в Clipboard строит точки в эскизе XY Fusion 360.

Call the script ‘Points_from_WEB’.

As an exercise, remember to Clipboard the table with the coordinates of the points from the Appendix A.4.2.1. (Figure 2.3.2.1)

Вызовите скриптPoints_from_WEB’.

В качестве упражнения запомните в Clipboard таблицу с координатами точек из приложения П.4.2.1. (рисунок 2.3.2.1)

Figure 2.3.2.1. Copying a table of coordinates of points to Clipboard.

Рисунок 2.3.2.1. Копирование таблицы координат точек в Clipboard.

At the request 'Paste points from Clipboard' on the panel ‘Points’ highlight the text '... replace by list of points ...' and paste the text from Clipboard (Figure 2.3.2.2).

На запрос ‘Paste points from Clipboard’ панели Points выделите текст ‘… replace by list of points …’ и вставьте текст из Clipboard (Рисунок 2.3.2.2).

 

 

Figure 2.3.2.2. Inserting the text from Clipboard.

Рисунок 2.3.2.2. Вставка текста из Clipboard.

Click OK. In the sketch on the coordinate plane XY script creates the points (Figure 2.3.2.3).

 Нажмите OK. В эскизе на координатной плоскости XY скрипт построит точки (рисунок 2.3.2.3).

Figure 3.3.2.3. Build points in the sketch.

Рисунок 3.3.2.3. Построение точек в эскизе.

 

2.3.3. Script NURBS_to_WEB

2.3.3. Скрипт NURBS_to_WEB

 

The script forms the a table of parameters NURBS of the curve and keeps the table to the Clipboard based on the selected spline curve in the sketch. Use a sketch on the plane XY (front view).

Скрипт формирует таблицу параметров NURBS кривой и сохраняет таблицу в Clipboard на основе выбранной в эскизе сплайновой кривой. Используйте эскиз на плоскости XY (вид спереди).

Construct a spline in the sketch (Figure 2.3.3.1).

 

Постройте сплайн в эскизе (рисунок 2.3.3.1).

 

Figure 2.3.3.1. Sketch with a spline.

Рисунок 2.3.3.1. Эскиз со сплайном.

Call the script 'NURBS_to_WEB'. In response to the request 'Select Spline Curve’ on panel 'NURBS to WEB' click OK and select the spline curve (Figure 2.3.3.2).

Вызовите скрипт NURBS_to_WEB’. В ответ на запрос Select Spline Curve панели NURBS to WEB нажмите OK и выберите сплайновую кривую (рисунок 2.3.3.2).

Figure 2.3.3.2. Script NURBS_to_WEB. Selecting a spline curve.

Рисунок 2.3.3.2. Скрипт NURBS_to_WEB. Выбор сплайновой кривой.

On the request ‘Copy to Clipboard’ at panel ‘NURBS Model’ copy all the text in a text box of the panel to Clipboard (Figure 2.3.3.3).

На запрос Copy to Clipboard панели NURBS Model скопируйте весь текст в текстовом поле панели в Clipboard (рисунок 2.3.3.3).

Figure 2.3.3.3. Copying the NURBS model to Clipboard.

Рисунок 2.3.3.3. Копирование NURBS модели в Clipboard.

2.3.4. Script NURBS_from_WEB

2.3.4. Скрипт NURBS_from_WEB

 

The script generates the points of a NURBS curve and on these points creates in a sketch spline curve (SketchFittedSpline) based on the table of NURBS model in Clipboard.

Скрипт генерирует точки NURBS кривой и по точкам строит в эскизе сплайновую кривую (SketchFittedSpline) на основе таблицы NURBS модели в Clipboard.

Use as an example of a NURBS model of the curve in Appendix P.3.4.3.2. Remember model in Clipboard.

Используйте в качестве примера модель построенной NURBS кривой в приложении П.3.4.3.2. Запомните модель в Clipboard.

 

Call the script 'NURBS from WEB'. In response to the request 'Paste from Clipboard' on the panel ‘NURBS Model’ paste in the text box of the panel the text from the Clipboard (Figure 2.3.4.1).

Вызовите скрипт NURBS_from_WEB’. В ответ на запрос ‘Paste from Clipboard’ панели NURBS Model введите в текстовое поле панели текст из Clipboard (рисунок 2.3.4.1).

Figure 2.3.4.1. Script 'NURBS fom_WEB_Number'. Request of NURBS model from Clipboard.

Рисунок 2.3.4.1. Скрипт NURBS_fom_WEB_Number’. Запрос NURBS модели из Clipboard.

When prompted 'Enter a Number' in the panel Number, type in the text box the number of points of the  polyline approximating the NURBS curve (Figure 2.3.4.2).

В ответ на запрос ‘Enter a Number’ панели Number введите количество точек ломаной, аппроксимирующей NURBS кривую (рисунок 2.3.4.2).

Figure 2.3.4.2. Setting the number of vertices for approximating polyline.

Рисунок 2.3.4.2. Указание количества точек для аппроксимирующей ломаной.

Скрипт по вершинам ломаной построит объект SketchFittedSpline (рисунок 2.3.4.3).

Figure 2.3.4.3. Spline in the sketch.

Рисунок 2.3.4.3. Сплайн  в эскизе.

 

 

3. Fusion 360 + FairCurveModeler

 

In a web application is constructed virtual curve (v-curve) of high quality. V- curve has a high degree of smoothness and a minimum number of extrema of curvature. V-curve is approximated by a rational Bezier curve (NURBzS) of different degrees m (m = 3,6) or by rational b-spline curve (NURBS) of even degree m (m = 6, 8, 10).

В web приложении строится виртуальная кривая (v-кривая) высокого качества. V- кривая имеет высокий порядок гладкости и минимальное количество экстремумов кривизны. Аппроксимируется v-кривая посредством рациональной кривой Безье (NURBzS) различных степеней m (m = 3,6)  или рациональной b-сплайновой кривой (NURBS) четных степеней m (m = 6, 8, 10).

Geometrical model of v-curve represents a dual determinant of a curve. Determinant has two dual geometric determinant (kind as a base polyline and as a tangent polyline).

Геометрическая модель v-кривой представляет собой дуальный определитель кривой. Определитель имеет два  дуальных геометрических определителя (вида опорной ломаной и касательной ломаной).

 

3.1. Registration in the FairCurveModeler

3.1. Регистрация в FairCurveModeler

 

Login to your in web-application FairCurveModeler

Авторизуйтесь на сайте web-приложения FairCurveModeler

http://fair-curves.ru/FairCurveModeler.aspx

 

3.2. Preparing the scripts

3.2. Подготовка скриптов

 

After registration in Fair-Nurbs.ru/FairCurveModeler.aspx > click Applications> Fusion360 > download the file FairCurveModeler_Fusion360.zip.

После регистрации на сайте Fair-Nurbs.ru/FairCurveModeler.aspx > кликните Applications >  Fusion360  >  скачайте файл FairCurveModeler_Fusion360.zip.

Unzip the file and move the *.js scripts to the folder for user scripts ‘... Autodesk \ Autodesk Fusion 360 \ API \ Scripts \’. Please enable scripts in the list of custom scripts. In the Main Menu click File. From the falling menu, select Scripts and select ‘add ins’ (Figure 3.2.1)

Разархивируйте файл и перенесите скрипты *.js в папку пользовательских скриптов ...

Autodesk\Autodesk Fusion 360\API\Scripts\. Включите скрипты в список пользовательских скриптов. В глаsном меню нажмите File. Из падающего меню выберите ‘Scripts and add ins’ (рисунок 3.2.1)

Figure 3.2.1. Setting the scripts.

Рисунок 3.2.1. Установка скриптов.

On tab Scripts on the opposite 'My Scripts' click the green plus (Figure 3.2.2).

На вкладе Scripts напротив ‘My Scripts’ нажмите зеленый плюс (рисунок 3.2.2).

Figure 3.2.2. The inclusion of scripts in the library ‘My Scripts’.

Рисунок 3.2.2. Включение скриптов в библиотеку ‘My Scripts’.

From the folder with custom scripts, select scripts Points_to_WEB, Points_from_WEB, NURBS_to_WEB, NURBS_from_WEB_Number (Figure 3.2.3).

Из папки пользовательских скриптов выберите скрипты Points_to_WEB, Points_from_WEB, NURBS_to_WEB, NURBS_from_WEB_Number (рисунок 3.2.3).

 

Figure 3.2.3. Transferring scripts to the library ‘My Scripts’.

Рисунок 3.2.3. Перенос скриптов в  библиотеку ‘My Scripts’.

 

 

3.3. General description of the application FairCurveModeler

3.3. Общее описание приложения FairCurveModeler

 

Cloud Web FairCurveModeler product is intended for modeling curves and surfaces of high quality on criteria of smoothness. Also can be used when designing products with functional surfaces and curves.

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

 

Построение и редактирование кривых

 

In the engineering the models of curves are considered as determinants of the curves. The determinant of the curve consists of two parts: the geometric part (or geometrical determinant) and the algorithmic part.


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


 

In the web-application the algorithmic part is procedure generating points of v-curve on locally convex sections of base or tangent polyline and shape preserving approximation of v-curve by means of geometric rational Bezier spline (NURBzS) or b-spline curve (NURBS) of high degree (6/8/10). V-curve is a virtual curve of 5th order of smoothness with a smooth change of curvature, the envelope of a continuous set of conic curves of double touching. V-curve geometrically exactly approximates conic curves. Approximation methods by geometric Bezier spline or by b-spline curve can keep the high quality of v-curve, and the high accuracy of approximation of conic curves.


В web-приложении алгоритмическая часть представляет процедуру генерации точек v-кривой на локально выпуклых участках опорной или касательной ломаной и изогеометрической аппроксимации v-кривой посредством геометрического рационального сплайна Безье (NURBzS) или b-сплайновой кривой (NURBS) высокой степени (6 / 8 / 10). V-кривая представляет собой виртуальную кривую 5-го порядка непрерывности с плавным изменением кривизны, огибающую непрерывное множество конических кривых двойного соприкосновения. V-кривая точно приближает конические кривые. Методы аппроксимации v-кривой геометрическим сплайном Безье и b-сплайновой кривой позволяют сохранить высокое качество v-кривой и точность приближения конических кривых. 


Web-application gives the designer 5 types of geometric determinants for modeling curve.


Web-приложение предоставляет дизайнеру 5 видов геометрических определителей для моделирования кривой.

 

Basic techniques in web-application are modeling the curve by using two types of dual geometric determinant of order 0 fixation (classified prof. V.A.Osipov) type as base polyline and as tangent polyline. Duality properties of geometric determinants of the form base polyline and tangent polyline defining the v-curve, is inherited from the property of the duality of geometric determinants of the form 5-point and 5-tangent, defining a conical curve. In modeling curve can take advantage of a tangent polyline to define the shape of the curve, as well as base polyline for positioning curve. In essence, these two methods are one way: a way to model the curve with the generalized dual determinant of order 0 fixation.


Базовыми методами в web-приложении являются методы моделирования кривой с применением двух дуальных видов геометрического определителя 0-го порядка фиксации (по классификации проф. В.А.Осипова) вида опорной ломаной и касательной ломаной. Свойство дуальности геометрических определителей вида опорной ломаной и касательной ломаной, определяющих v-кривую, наследуется из свойства дуальности геометрических определителей вида 5-ти точек и 5-ти касательных, определяющих коническую кривую. При моделировании кривой можно использовать преимущества как касательной ломаной для определения формы кривой, так и опорной ломаной для позиционирования кривой. По существу эти два метода представляют один способ: способ моделирования кривой с помощью обобщенного дуального определителя 0-го порядка фиксации. 


 

The third type of geometric determinant is the base polygon of order 2 fixation (classified by                     prof. V.A.Osipov), structuring modeled curve by specifying tangents, values ​​of curvature and curvature vectors at each point of base polygon. By analogy with the type of data used to construct the Hermite polynomial, this type of data is called a geometric determinant of Hermite. In the algorithmic part of the determinant used schemes of the approximation by geometric rational Bezier spline.


Третьим видом геометрического определителя является опорная ломаная 2-го порядка фиксации (по классификации проф. В.А.Осипова), структурирующая моделируемую кривую заданием касательной, значения кривизны и вектора кривизны в каждой точке опорной ломаной. По аналогии с видом данных, используемых для построения полинома Эрмита, такой вид данных назовем геометрическим определителем Эрмита. В алгоритмической части определителя используются схемы аппроксимации посредством геометрического рационального сплайна Безье, применяемые для аппроксимации v-кривой. 


 

The fourth type of geometric determinant - generalized b-polygon (gb-polygon) of geometric Bezier spline. You can increase the degree (up to 10th) spline. To subdivide gb-polygon.  To  edit control vertices of  gb-polygon. If geometric spline accurately approximates a conical curve (circle or ellipse), the geometric spline can be converted to the real spline curve the sixth degree (continuous with partial derivatives of order 5), and then increase the degree (up to 10th) and convert geometrically precise to a rational b-spline curve.


Четвертый вид геометрического определителя - обобщенный b-полигон (gb-полигон) геометрического сплайна Безье. Можно повышать степень (до 10-ой) сплайна. Уплотнять спецификацию (to subdivide gb-polygon) геометрического определителя. Редактировать управляющие точки gb-полигона. Если геометрический сплайн точно приближает коническую кривую (окружность или эллипс), то геометрический сплайн можно преобразовать в действительно сплайновую кривую 6-ой степени (непрерывную до частных производных 5-го порядка), а затем повысить степень (до 10-ой) и конвертировать геометрически точно в рациональную b-сплайновую кривую. 


The fifth type of geometric determinant - s-polygon of b-spline curve. You can edit the control vertices of s-polygon. To subdivide s-polygon. Locally subdivide by adding nodes.

 

Пятый вид геометрического определителя - s-полигон b-сплайновой кривой. Можно редактировать управляющие точки s-полигона. Уплотнять спецификацию (to subdivide s-polygon) геометрического определителя. Локально уплотнять добавлением узловых точек. 


 

(For details, theory of modeling curves of high quality presented in the author's publications online Spliner.ru -> library of articles.)


(Подробно теория моделирования кривых линий высокого качества представлена в публикациях авторов на сайтеSpliner.ru -> библиотека статей). 

 

3.4. Modeling of curves in Fusion + Web FairCurveModeler

3.4. Моделирование кривых в Fusion + Web FairCurveModeler

 

After successful login on the site of application http://www.fair-nurbs.ru/FairCurveModeler.aspx click ‘Online Modeling [Web FairCurveModeling]’. You pass away on Main Menu of application (Figure 3.4.1).

После успешной авторизации на сайте приложения http://www.fair-nurbs.ru/FairCurveModeler.aspx нажмите кнопку Online Modeling [Web FairCurveModeling]. Вы перейдете на страницу Main Menu приложения (рисунок 3.4.1).

Figure 3.4.1. The main menu of application WebFairCurveModeler.

Рисунок 3.4.1. Главное меню приложения WebFairCurveModeler.

For modeling curves available the following pages:

Polyline3D - Page for modeling the v-curve on a base polyline;

Tangent3D - Page for modeling v-curve on a tangent polyline;

VHermite - Page for modeling the v-curve on GD of Hermite;

NURBS3D - Page for modeling NURBS curve.

Для моделирования кривых доступны следующие страницы:

Polyline3D –  страница моделирования v-кривой на опорной ломаной;

Tangent3D – страница моделирования v-кривой на касательной ломаной;

VHermite – страница моделирования v-кривой на ГО Эрмита.

NURBS3D – страница моделирования NURBS кривой.

 

3.4.1. Modeling on the base polyline

3.4.1. Моделирование на опорной  ломаной

 

In Fusion360 set the front view. Draw vertex points of base polyline in sketch of Fusion360. Using a script Points_to_WEB, copy points to Clipboard.

Во Fusion360 установите вид спереди. Постройте точки-вершины опорной ломаной в эскизе Fusion360. Используя скрипт Points_to_WEB, скопируйте точки в Clipboard.

Go to the page Polyline3D of web application (see Figure 3.4.1.1)

Перейдите на страницу Polyline3D web приложения (рисунок 3.4.1.1).

Paste in the text box ‘Instructions and Messages’ the contents from the Clipboard, containing the table of vertices copied from the sketch of Fusion with a script Points_to_WEB. Sequentially press [3D Polyline from Table]> [Zoom All] (Figure 3.4.1.1)

Вставьте в текстовое поле Instructions and Messages содержимое из Clipboard, содержащее  таблицу вершин, скопированных в эскизе Fusion с помощью скрипта Points_to_WEB. Последовательно нажмите кнопки [3D Polyline from Table] > [Zoom All] (Рисунок 3.4.1.1)

 

Figure 3.4.1.1. Base polyline obtained from the Fusion 360.

Рисунок 3.4.1.1. Опорная ломаная, полученная из Fusion 360.

If the polyline is closed, set Topology (*) Closed (Figure 3.4.1.2).

Если ломаная линия замкнута, установите опцию Topology (*) Closed (рисунок 3.4.1.2).

Figure 3.4.1.2. Closed 3D polyline.

Рисунок 3.4.1.2. Замкнутая 3D полиния.

Then click [Create]. If the configuration of polyline satisfies the constraints on the form, the program will construct v-curve approximated by a cubic NURBzS curve (Figure 3.4.1.3.).

После этого нажмите кнопку [Create].  Если конфигурация ломаной удовлетворяет ограничениям на форму, то программа построит v-кривую, аппроксимированную посредством кубической NURBzS кривой (рисунок 3.4.1.3.).

 

Figure 3.4.1.3. Construction of v-curve and approximation by NURBzS cubic curve.

Рисунок 3.4.1.3. Построение v-кривой и аппроксимация кубической NURBzS кривой.

Navigate to the page NURBS 3D by pressing [to Spline] at the bottom of the page in the region ‘Change Geometric Determinant’ (Figure 3.4.1.4.)

Перейдите на страницу NURBS3D нажав кнопку [to BSpline] в нижней части страницы в области Change Geometric Determinant (рисунок 3.4.1.4. )

Figure 3.4.1.4. Bottom of the page with the region ‘Change Geometric Determinant’.

Рисунок 3.4.1.4. Нижняя часть страницы с областью ‘Change Geometric Determinant’.

NURBzS curve will be transferred to the page NURBS3D (Figure 3.4.1.5.).

NURBzS кривая будет перенесена на страницу NURBS3D (рисунок 3.4.1.5.).

Figure 3.4.1.5. Transferring the NURBzS curve on page NURBS3D.

Рисунок 3.4.1.5. Перенос NURBzS кривой на страницу NURBS3D.

To transfer the NURBS model to Fusion360 press [NURBS to Fusion360] (Figure 3.4.1.6).

Для переноса NURBS модели во Fusion360 нажмите кнопку [NURBS to Fusion360] (рисунок 3.4.1.6).

Figure 3.4.1.6. NURBS model in the text field 'Instructions and Messages'.

Рисунок 3.4.1.6. NURBS модель в текстовом поле ‘Instructions and Messages’.

Highlight and copy all the text from the text box ‘Instructions and Messages’, containing NURBS model, to Clipbord. Clipbord contains the full NURBS model in text format (Annex section A.3.4.2)

Выделите и скопируйте весь текст из текстового поля Instructions and Messages, содержащего NURBS модель, в Clipbord. Clipbord содержит полную NURBS модель в текстовом формате  (приложение П.3.4.2)

Go to Fusion360. Perform script NURBS_from_WEB. On request on panel Points: 'Paste from Clipboard' (Figure 3.4.1.7), insert the text with the NURBS model from the Clipboard into the text box of panel. Transient NURBS curve is formed.

Перейдите во Fusion360. Выполните скрипт NURBS_from_WEB.  На запрос в панели Points: ‘Paste from Clipboard’ (рисунок 3.4.1.7) вставьте текст с NURBS моделью из Clipboard в текстовое поле панели. Формируется переходная NURBS кривая.

Figure 3.4.1.7. Script NURBS_from_WEB. Inserting a NURBS models from Clipboard into the text field.

Рисунок 3.4.1.7. Скрипт NURBS_from_WEB. Вставка NURBS модели из Clipboard в текстовое поле.

To the request 'Enter a Number' specify the number of interpolation points on the transient NURBS curve (Figure 3.4.1.8).

На запрос ‘Enter a Number’ задайте количество интерполяционных точек на транзитной  NURBS кривой (рисунок 3.4.1.8).

Рисунок 3.4.1.8. Запрос количества точек на транзитной NURBS кривой.

The script generates points on the transient curve and constructs on these points in the sketch on the XY coordinate plane object SketchFittedSpline (Figure 3.4.1.9)

Скрипт генерирует точки на транзитной кривой и строит на этих точках в эскизе на координатной плоскости XY объект SketchFittedSpline (рисунок 3.4.1.9)

Figure 3.4.1.9. Construction of open curve on the points.

Рисунок 3.4.1.9. Построение по точкам незамкнутой кривой.

Since the modeled curve is closed, then close the curve in the sketch (Figure 3.4.1.10).

Так как моделируемая кривая замкнута, то замкните кривую в эскизе (рисунок 3.4.1.10).

Figure 4.3.1.10. Closed curve.

Рисунок 4.3.1.10. Замкнутая кривая.

 

3.4.2. Modeling on a tangent polyline

3.4.2. Моделирование на касательной ломаной

 

Set the front view. Construct the vertices of tangent polyline in sketch of Fusion360 (Figure 3.4.2.1).

Установите вид спереди. Постройте точки касательной  ломаной в эскизе Fusion360 (рисунок 3.4.2.1).

 

 

Figure 3.4.2.1. The vertices of tangent polyline.

Рисунок 3.4.2.1. Вершины касательной ломаной.

Using a script Points_to_WEB, copy vertices of polyline to Clipboard.

Используя скрипт Points_to_WEB, скопируйте точки ломаной в Clipboard.

Navigate to the page Tangent3D. Paste the contents from the Clipboard to text box  ‘Instructions and Messages’, containing the table of vertices copied from the sketch Fusion360 with a script Points_to_WEB. Sequentially press [3D Polyline from Table]> [Zoom All] (Figure 3.4.2.2).

Перейдите на страницу Tangent3D.  Вставьте в текстовое поле Instructions and Messages содержимое из Clipboard  таблицы вершин, скопированных в эскизе Fusion с помощью скрипта Points_to_WEB. Последовательно нажмите кнопки [3D Polyline from Table] > [Zoom All]  (рисунок 3.4.2.2).

 

Figure 3.4.2.2. Tangent polyline obtained from the Fusion 360.

Рисунок 3.4.2.2.  Касательная ломаная, полученная из Fusion 360.

If the tangent poluline is closed, set Topology (*) Closed (Figure 3.4.2.2).

Если касательная замкнута, установите опцию Topology (*) Closed (рисунок 3.4.2.2).

Figure 3.4.2.2. Closed 3D polyline.

Рисунок 3.4.2.2. Замкнутая 3D полилиния.

Then click [Create]. If the configuration of polyline satisfies the constraints on the form, the program will construct v-curve approximated by a cubic NURBzS curve (Figure 3.4.3).

После этого нажмите кнопку [Create].  Если конфигурация ломаной удовлетворяет ограничениям на форму, то программа построит v-кривую, аппроксимированную посредством кубической NURBzS кривой (рисунок 3.4.3).

 

Figure 3.4.2.3. Construction of v-curve and approximation by NURBzS cubic curve.

Рисунок 3.4.2.3. Построение v-кривой и аппроксимация кубической NURBzS кривой.

Navigate to the page NURBS3D, pressing [to BSpline] at the bottom of the page (Figure 3.4.2.4).

Перейдите на страницу NURBS3D, нажав кнопку [to BSpline] в нижней части страницы (рисунок 3.4.2.4).

Figure 3.4.2.4. Bottom of the page with the button [to B-Spline] in the area 'Change Geometric Determinant'.

Рисунок 3.4.2.4. Нижняя часть страницы с кнопкой [to B-Spline] в области 'Change Geometric Determinant’.

NURBzS curve will be transferred to the page NURBS3D (Figure 3.4.2.5).

NURBzS кривая будет перенесена са страницу NURBS3D (рисунок 3.4.2.5).

Figure 3.4.2.5. Transferring the NURBzS curve to page NURBS3D.

Рисунок 3.4.2.5. Перенос NURBzS кривой на страницу NURBS3D.

To transfer the NURBS model into Fusion360 press [NURBS to Fusion360] (Figure 3.4.2.6).

Для переноса NURBS модели во Fusion360 нажмите кнопку [NURBS to Fusion360] (рисунок 3.4.2.6).

Figure 3.4.2.6. NURBS model in the text box ‘Instructions and Messages’.

Рисунок 3.4.2.6. NURBS модель в текстовом поле ‘Instructions and Messages’.

Highlight and copy all the text in a text field 'Instructions and Messages', containing NURBS model in Clipbord. Clipbord contains full NURBS model in text format (Annex section 3.4.2)

Выделите и скопируйте весь текст из текстового поля Instructions and Messages’, содержащего NURBS модель, в Clipbord. Clipbord cодержит полную NURBS модель в текстовом формате  (приложение П.3.4.2)

Go to Fusion360. Perform script NURBS_from_WEB. On request on panel Points: ‘Paste from Clipboard’ (Figure 3.4.2.7) insert the text with the NURBS model from the Clipboard into the text box of panel. Transient NURBS curve is formed.

Перейдите во Fusion360. Выполните скрипт NURBS_from_WEB.  На запрос в панели Points: Paste from Clipboard (рисунок 3.4.2.7) вставьте текст с NURBS моделью из Clipboard в текстовое поле панели. Формируется переходная NURBS кривая.

 

 

 

Figure 3.4.2.7. Construction of an open spline curve SketchFittedSpline in the sketch.

Рисунок 3.4.2.7. Построение незамкнутой сплайновой кривой SketchFittedSpline в эскизе.

If the curve is closed, close the spline curve by editing the curve in the sketch (Figure 3.4.2.8).

Если кривая замкнута, выполните замыкание сплайновой кривой редактированием кривой в эскизе (рисунок 3.4.2.8).

Figure 3.4.2.8. The closure of the spline curve by editing the curve in the sketch.

Рисунок 3.4.2.8. Замыкание сплайновой кривой редактированием кривой в эскизе.

Check the accuracy of the approximation of the transient curve constructing tangent polyline on the vertices (Figure 3.4.2.9).

Проверьте точность аппроксимации переходной кривой построением касательной ломаной по вершинам (рисунок 3.4.2.9).

Figure 3.4.2.9. Checking the accuracy of approximation of transient NURBS curve by constructing a polyline on the initial vertices.

Рисунок 3.4.2.9. Проверка точности аппроксимации переходной NURBS кривой построением ломаной по исходным вершинам.

 

3.4.3. Modeling GO Hermite

3.4.3. Моделирование на ГО Эрмита

 

The ability to edit the curve during a single session on two dual types of GD - unique property of geometric toolkit of web application.

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

It is possible to construct a curve of high quality on a base polyline and then edit the tangent vectors, without dropping the quality of the curve. Conversely, it is possible to construct a curve on a tangent polyline and then specify the position of the base points.

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

Construct a curve in the sketch (Figure 3.4.3.1).

Постройте кривую в эскизе (рисунок 3.4.3.1).

 

 

 

Figure 3.4.3.1. The curve in the sketch with a point of inflection.

Рисунок 3.4.3.1. Кривая на эскизе с точкой перегиба.

Perform script NURBS_to_WEB. Select curve. At the request 'Copy NURBS Model to Clipboard', click OK and then select all the text in the text box of panel and copy to Clipboard (Figure 3.4.3.2).

Выполните скрипт NURBS_to_WEB. Укажите кривую. На запрос   Copy NURBS Model to Clipboard’ нажмите OK и затем выделите весь текст в текстовом окне панели и скопируйтете в Clipboard (рисунок 3.4.3.2).

 

 

Figure 3.4.3.2. Transferring the NURBS model to Clipboard.

Рисунок 3.4.3.2. Перенос NURBS модели в Clipboard.

Go to the page NURBS3D. Clear the text field ‘I&M’ clicking the button [Clear] and paste the text from the Clipboard (Figure 3.4.3.3).

Перейдите на страницу NURBS3D. Очистите текстовое поле ‘I&M’ кнопкой [Clear] и вставьте текст из Clipboard  (рисунок 3.4.3.3).

Figure 3.4.3.3. Page NURBS3D. Transferring the NURBS model from Fusion360.

Рисунок 3.4.3.3. Страница NURBS3D. Перенос NURBS модели из Fusion360.

Press [NURBS from Fusion] > [Zoom SPL] > [Create] (Figure 3.4.3.4).

Нажмите кнопки [NURBS from Fusion] > [Zoom SPL] > [Create] (рисунок 3.4.3.4).

Figure 3.4.3.4. NURBS curve from a sketch of Fusion360.

Рисунок 3.4.3.4. NURBS кривая из эскиза Fusion360.

Display by button [Draw Curvature as F (x)] the curvature graph as a function F(x) (Figure 3.4.3.5).

Отобразите кнопкой [Draw Curvature as F(x)] график кривизны как функции F(x)  (рисунок 3.4.3.5)

Figure 3.4.3.5. Curvature graph as a function F (x).

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

Count the number of internal extrema of curvature (8 extrema) and remember from the text box 'I & M' the macroparameters of curve

Подсчитайте на графике количество внутренних экстремумов кривизны (8 экстремумов) и запомните из текстового поля ‘I&M’ макропараметры кривой

Quality Params of Curve:

Length = 27.546971285732933

Max Curvature = 0.5874547070130677

Min Curvature = 0.0038682157752095475

Potential Energy = 1.7057275092553483

Convert b-spline curve to the Bezier spline curve [Convert to Bezier Spline]> [Create] (Figure 3.4.3.6).

Конвертируйте b-сплайновую кривую в сплайновую кривую Безье [Convert to Bezier Spline] > [Create] (рисунок 3.4.3.6).

Figure 3.4.3.6. Spline curve is converted into a Bezier curve.

Рисунок 3.4.3.6. Кривая конвертирована в сплайновую кривую Безье.

NURBS has too many segments. Number of segments does not match the number of points of GD Hermite in sketch of Fusion360. Reparameterize the curve with 9 points (as in the sketch). Set the Number of Points [9]. Press [ReParametrization] > [Create]. The program constructs the curve with the 8 segments (Figure 3.4.3.7).

NURBS имеет слишком большое количество сегментов. Число сегментов не соответствует числу точек ГО Эрмита при построении эскиза.  Перепараметризуйте кривую на 9 точек (как было в эскизе). Установите в поле Number of Points [9]. Нажмите кнопки [ReParametrization] > [Create]. Программа построит кривую с 8 сегментами (рисунок 3.4.3.7).

Figure 3.4.3.7. Reparametrized curve.

Рисунок 3.4.3.7. Перепараметризованная кривая.

For editing GO Hermite go to the page VHermite3D (button [to Hermite Scheme]) (Figure 3.4.3.8).

Для редактирования на ГО Эрмита перейдите на страницу VHermite3D (кнопка [to Hermite Scheme]) (Рисунок 3.4.3.8).

Figure 3.4.3.8. Editing on page VHermite3D.

Рисунок  3.4.3.8. Редактирование на странице VHermite3D.

Set the option in Fairings (*) On Points. Rebuild the curve [Create].

Установите опцию в области Fairings (*) On Points. Перестройте кривую [Create].

Set the mode to edit the tangents. In the Edit: set the Mode: [Tangents] (Figure 3.4.3.9).

Установите режим редактирования касательных. В области Edit: усановите Mode: [Tangents] (рисунок 3.4.3.9).

 Figure 3.4.3.9. Editing the tangents.

Рисунок 3.4.3.9. Редактирование касательных.

Set the mode Fairings: (*) On Tangents. Rebuild curve on tangent lines [Create] (Figure 3.4.3.10).

Установите режим Fairings: (*) On Tangents. Перестройте кривую на касательных прямых [Create] (Рисунок 3.4.3.10).

Figure 3.4.3.10. Curve on tangent lines.

Рисунок 3.4.3.10. Кривая на касательных прямых.

 Without changing the edit mode Fairings: (*) On Tangents, move the top 4 in exactly zero (0,0,0), adjust the direction of the tangent at the inflection point (Figure 3.4.3.11) to obtain a favorable graph of curvature at the site of inflection (Figure 3.4. 3.12).

Не меняя режим редактирования Fairings: (*) On Tangents, перенесите вершину 4 в точный ноль (0,0,0), отрегулируйте направление касательной в точке перегиба (рисунок 3.4.3.11) для получения благоприятного графика кривизны на участке перегиба (рисунок 3.4.3.12).

Figure 3.4.3.11. Regulation of the tangent direction at the point of inflection.

Рисунок 3.4.3.11. Регулирование направления касательной в точке перегиба.

Figure 3.4.3.12. Favorable curvature graph without pulsation of curvature on the site of the inflection.

Рисунок 3.4.3.12. Благоприятный график кривизны без пульсации кривизны на участке перегиба кривой.

The number of internal extrema of curvature decreased from 8 to 4.

Количество внутренних экстремумов кривизны уменьшилось с 8 до 4.

Go to the page NURBS3D. Click in Change Geometric Determinant: [To B-Spline] (Figure 3.4.3.13).

Перейдите на страницу NURBS3D. Кликните в области  Change Geometric Determinant: [To B-Spline] (рисунок 3.4.3.13).

Figure 3.4.3.13. Edited curve on page NURBS3D.

Рисунок 3.4.3.13. Отредактированная кривая на странице NURBS3D.

Press [NURBS to Fusion360]. Copy to Clipboard contents of the text field 'Instructions and Messages'. Go to Fusion360. Call the script NURBS_from_WEB. Paste the contents of the text box Clipdoard in the query panel NURBS Model and click OK (Figure 3.4.3.14).

Нажмите кнопку [NURBS to Fusion360]. Запомните в Clipboard содержимое текстового поля  'Instructions and Messages’. Перейдите в Fusion360. Вызовите скрипт NURBS_from_WEB. Вставьте содержимое Clipdoard в текстовое поле панели запроса NURBS Model  и нажмите OK (рисунок 3.4.3.14).

Figure 3.4.3.14. Transferring the edited curve to Fusion360.

Рисунок 3.4.3.14. Перенос отредактированной кривой во Fusion360.

Укажите 30 точек для представления NURBS кривой в эскизе (рисунок 3.4.3.15).

Figure 3.4.3.15. The original and the edited curve in the sketch.

Рисунок 3.4.3.15. Исходная и отредактированная кривая в эскизе.

Remove from the sketch spline the initial curve (Figure 3.4.3.16).

Удалите из эскиза исходную сплайновую кривую (рисунок 3.4.3.16).

Figure 3.4.3.16. Edited curve in the sketch of Fusion360.

Рисунок 3.4.3.16. Отредактированная кривая в эскизе Fusion360.

3.5. Surface modeling

3.5. Моделирование поверхности

 

In a web application FairCurveModeler surface modeling functions are realized on the page Surface.

В web приложении FairCurveModeler функции моделирования поверхностей реализуются на странице Surface.

 

Page Surface  is intended to construct and edit the surface on the 3D Mesh of base  points / on tangent polyhedron, built on the 3D Mesh of points / 3D Mesh, composed  of set of s-polygons of b-spline curves / 3D Mesh of vertices of s-polyhedron of b-spline surface.


Страница Surface  предназначена для построения и редактирования поверхности на опорной сети точек / касательном многограннике, построенном  на сети точек / сети точек, составленной из s-полигонов b-сплайновых кривых / сети точек  s-многогранника
b-сплайновой поверхности.

 

Model of the surface is called the determinant. Determinant consists of geometric part or of geometric determinant (GD) and the algorithmic part.

 

Модель поверхности называется определителем. Определитель состоит из геометрической части или геометрического определителя (ГО) и алгоритмической части.

 

The construction and editing surface is made by setting and changing its parameters of geometric determinant (GD).

 

Построение и редактирование поверхности производится посредством задания и изменения  параметров ее геометрического определителя (ГО).

 

To model the surface, you can use 9 types of geometric determinants:

- base 3D Mesh – base mesh, two-dimensional array of base points, the points of which belong to the surface, but, in general, base points do not coincide with the nodal points of the spline surface;

- extended U base 3D Mesh. Rows of extended 3DMesh define extended polylines, the boundary points of which do not belong to the curve and define the ends of the tangent vectors of the curve;

- extended V base 3D Mesh. . Columns of extended 3DMesh define extended polylines, the boundary points of which do not belong to the curve and define the ends of the tangent vectors of the curve.

- extended UV base 3D Mesh. 3D Mesh is extended in the direction of U and in the direction of V. Corner points of the expanded network define network cells in which the vectors of the mixed derivatives at the corner points of spline surface lie.

tangent U 3D Mesh, those rows are the tangent polylines;

tangent V 3D Mesh, those columns are tangent polylines;

tangent UV 3D Mesh, those sells are tangent to surface;

- V 3D Mesh, those rows are s-polygons of b-spline curves;

- S 3D Mesh – s-polyhedron of b-spline surface.

 

Для моделирования поверхности можно использовать 9 видов геометрических определителей:

base 3D Mesh -  опорная сеть, двумерный массив опорных точек, точки которой принадлежат поверхности, но в общем случае опорные точки не совпадают с узловыми точками сплайновой поверхности;

extended U 3D Mesh - расширенная опорная сеть, граничные столбцы которой определяют концы касательных векторов в точках 2-го и предпоследнего столбцов расширенной сети. Строки расширенной сети определяют расширенные строки-ломаные, граничные точки которых не принадлежат кривой, а определяют концы касательных векторов кривой

extended V 3D Mesh - расширенная опорная сеть, граничные строки которой определяют концы касательных векторов в точках 2-го и предпоследнего строк расширенной сети. Столбцы расширенной сети определяют расширенные столбцы-ломаные, граничные точки которых не принадлежат кривой, а определяют концы касательных векторов кривой;

extended UV 3D Mesh - сеть расширена в направлении U и в направлении V, угловые точки расширенной сети определяют ячейки сети, в которых лежат векторы смешанных производных в угловых точках отсека сплайновой поверхности;

tangent U 3D Mesh - сеть, строки которой касательные ломаные;

tangent UV 3D Mesh - сеть, ячейки которой касаются поверхности;

tangent V 3D Mesh - сеть, столбцы которой касательные ломаные;

 

- V 3D Mesh - сеть, строки которой s-полигоны b-сплайновых кривых;

S 3D Mesh - сеть – s-многогранник b-сплайновой поверхности.

 

There are two kinds of determinant of NURBS surfaces:

1) NURBzS surface. The surface consists of analytic patches of rational Bezier surface. Algorithmic part of the determinant is the procedures

a) of constructing on base 3D Mesh the network of virtual of curves of high quality (v-curves) by the  shape preserving approximation of virtual curves by NURBzS cubic curves (rational Bezier spline curves);

 b) the procedure of constructing bicubic NURBzS surface on a network of NURBzS cubic curves (rational Bezier spline curves) by the  shape preserving approximation.

 

Используются два вида определителя NURBS поверхности:

1) NURBzS поверхность. Поверхность состоит из аналитических участков рациональных поверхностей Безье. Алгоритмическая часть определителя состоит из процедур

aпостроения на 3D сети точек сети виртуальных кривых высокого качества (v-кривых),  изогеометрической аппроксимации сети виртуальных кривых кубическими  NURBzS кривыми (рациональными сплайновыми кривыми Безье),

bизогеометрической аппроксимации сети кубических NURBzS кривых кубической NURBzS  поверхностью.

 

2) NURBS surface. Algorithmic part of the determinant consists of two procedures:

- The procedure for constructing on the rows of 3D Mesh the frame of forming v-curves and the approximation by frame b-spline curves of high degree m (m = 6/8/10);

- The procedure for constructing the frame of direct v-of curves on the columns of the network (v-polyhedron), composed of s-polygons of  form b-spline curves, the approximation of v-curves by b-spline curves of high degree n (n = 6/8/10). Network of vertices of s-polygons of direct b-spline curve is s-polyhedron b-spline surface of high degrees (m, n), (n,m = 6/8/10).

 

2) NURBS поверхность. Алгоритмическая часть определителя состоит из двух процедур:

-  процедуры построения каркаса образующих v-кривых и изогеометрической аппроксимации каркаса b-сплайновыми кривыми высокой степени m (m = 6 / 8 /10);

- процедуры построения направляющих v-кривых на столбцах сети (v-многогранника), составленной из s-полигонов образующих b-сплайновых кривых,  изогеометрической аппроксимации v-кривых b-сплайновыми кривыми высокой степени n (n = 6 / 8 / 10). Сеть вершин s-полигонов направляющих b-сплайновых кривых представляет s-многогранник b-сплайновой поверхности высоких степеней (mn), (m, = 6 / 8 / 10).

 

 

4. Examples of modeling the curves

4. Примеры моделирования кривых линий

 

4.1. Modeling of the curve on the support polyline, incident to circle .

4.1. Моделирование кривой на опорной ломаной, инцидентной окружности

 

Method of construction of v-curve minimizes the number of extrema of curvature. From declaration of property to minimize the curvature extrema follows that if the points lie on a circle, the curve should coincide with the circle.

Метод построения  v-кривой минимизирует количество экстремумов кривизны. Из декларации свойства минимизации экстремумов кривизны вытекает, что, если точки лежат на окружности, то кривая должна совпадать с окружностью.

The example demonstrates this remarkable property of the method.

Данный пример демонстрирует это замечательное свойство метода.

Draw a circle (Figure 4.1.1).

Постройте окружность (рисунок 4.1.1).

Figure 4.1.1. Circle.

Рисунок 4.1.1. Окружность.

 

 

Locate the points on the circle arbitrarily and on these points draw a spline curve (Figure 4.1.2).

Постройте произвольно точки на окружности и по точкам на окружности нарисуйте сплайновую кривую (рисунок 4.1.2).

Figure 4.1.2. Spline curve in the sketch.

Рисунок 4.1.2. Сплайновая кривая в эскизе.

 

On the same points construct the curve in Web FairCurveModeler. With a script Points_to_WEB copy the table coordinates of points to Clipboard (Figure 4.1.3).

На тех же точках постройте кривую в Web FairCurveModeler. С помощью скрипта Points_to_WEB скопируйте таблицу координат точек в Clipboard (рисунок 4.1.3).

 

Figure 4.1.3. Copying the points to Clipbord.

Рисунок 4.1.3. Копирование точек в Clipbord.

Go to the web FairCurveModeler to the page Polyline3D (Figure 4.1.4). Paste the contents from Clipbord into the text field ‘I&M’.

Перейдите в web FairCurveModeler на страницу Polyline3D (рисунок 4.1.4). Вставьте содержимое Clipbord в текстовое поле I&M.

Figure 4.1.4. Page Polyline3D.

Рисунок 4.1.4.  Страница Polyline3D.

Press [3D Polyline from Table] > [Zoom All] (Figure 4.1.5).

Нажмите кнопки [3D Polyline from Table] > [Zoom All] (рисунок 4.1.5).

 

Figure 4.1.5. Transferring the polyline to web FairCurveModeler.

Рисунок 4.1.5. Перенос ломаной в web FairCurveModeler.

Close polyline by Topology: (*) Close. Create the v-curve: click [Create] (Figure 4.1.6).

Замкните ломаную Topology: (*) Close. Создайте v-кривую: нажмите кнопку [Create] (рисунок 4.1.6).

Figure 4.1.6. Creating a v-curve.

Рисунок 4.1.6. Создание v-кривой.

Go to the page NURBS3D (Figure 4.1.7).

Перейдите на страницу NURBS3D (рисунок 4.1.7). 

Figure 4.1.7. Transferring to the page NURBS3D.

Рисунок 4.1.7. Переход на страницу NURBS3D.

Transfer the NURBS curve in the sketch Fusion360 via script NURBS_from_WEB (Figure 4.1.8).

Перенесите NURBS кривую в эскиз Fusion360 с помощью скрипта NURBS_from_WEB (рисунок 4.1.8).

 

Figure 4.1.8. Transferring the NURBS model to the sketch.

Рисунок 4.1.8. Перенос NURBS модели в эскиз.

Constructed on 10 points spline curve visually coincides with the circle (Figure 4.1.9).

Построеннаяи по 10 точкам сплайновая кривая практически совпадает с окружностью (рисунок 4.1.9).

Figure 4.1.9. Sketch spline constructed on 10 points, visually coincides with the circle.

Рисунок 4.1.9. Сплайн эскиза, построенный по 10 точкам, практически совпадает с окружностью.

4.2. Modeling of the curve on a tangent polyline tangent to an ellipse, with the transfer of the exact model of NURBS curve to sketch of Fusion through DXF-file

4.2. Моделирование кривой на касательной ломаной, касательной к эллипсу, с переносом точной модели NURBS кривой в эскиз Fusion через DXF-файл

A unique feature of the method - the possibility of determining the same curve on two types of dual GD: on base polyline and on the tangent polyline.

Уникальное свойство метода – возможность определения одной и той же кривой на двух дуальных видах ГО: на опорной ломаной линии и на касательной ломаной линии.

The possibility of determining v-curve on a tangent polyline - a unique and innovative feature of the method. There is no analogue to this method in existing CADs.

Возможность определения v-кривой на касательной – уникальное инновационное свойство метода. В существующих САПР нет аналога данному методу.

The example demonstrates this unique feature of the method.

Данный пример демонстрирует это уникальное свойство метода.

V-curve method is invariant under the affine and projective transformations.

Метод v-кривой инвариантен относительно аффинных и проективных преобразований.

From the invariance properties of v-curve method under affine and projective transformations of the base polyline also follows that the method allows to approximate geometrically exactly the conic curves.

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

Construct in the sketch tangent polyline vertices as points. Unfortunately (in March 2015), there is no kind of direct modeling command to draw polyline with snap and object snap tracking as ‘tangent’. Fortunately, there is a basic product Autodesk - AutoCAD with advanced modeling toolkit in a comfortable graphical environment. The vertices of a tangent polyline were prepared in AutoCAD tangent to an ellipse centered at 0.0 and with axes 100 and 50 (Figure 4.2.1).

Постройте в эскизе вершины касательной ломаной в виде точек. К сожалению,  пока  (на 03 2015 года) нет команд моделирования вида прямых с привязкой касательная или полилиний с привязкой и отслеживанием по касательной. К счастью, есть базовый продукт Autodesk - AutoCAD с развитыми командами моделирования в комфортной графической среде.  Точки касательной ломаной были подготовлены в AutoCAD к эллипсу с центром в точке 0,0 и полуосями 100 и 50 (рисунок  4.2.1).

Figure 4.2.1. Vertices of tangent polyline in the sketch.

Рисунок 4.2.1. Вершины касательной ломаной на эскизе.

Move the vertices of the tangent polyline to web FairCurveModeler. Perform script Points_to_WEB. Copy the table of coordinates of points to Clipboard.

Перенесите вершины касательной ломаной в web FairCurveModeler. Выполните скрипт Points_to_WEB. Скопируйте таблицу координат точек в Clipboard.

 

Go to the web FairCurveModeler to the page Tangent3D. Paste the table of points in the text box ‘I&M’ (Figure 4.2.2).

Перейдите в web FairCurveModeler на страницу Tangent3D. Вставьте скопированную таблицу точек в текстовое поле I&M (рисунок 4.2.2).

Figure 4.2.2. Transferring the table of coordinates of points to ‘I&M’.

Рисунок 4.2.2. Перенос таблицы координат точек в I&M.

Sequentially press [3D Polyline from Table] > [Zoom All] (Figure 4.4.3).

Последовательно нажмите кнопки [3D Polyline from Table] > [Zoom All] (рисунок 4.4.3).

Figure 4.2.4. Transferring the polyline to web FairCurveModeler.

Рисунок 4.2.4. Перенос ломаной в web FairCurveModeler.

Set the option Topology: (*) closed. Click [Create] (Figure 4.2.4).

Установите опцию Topology: (*)closed. Нажмите [Create] (рисунок 4.2.4).

Figure 4.2.5. The constructed v-curve on a tangent polyline.

Рисунок 4.2.5. Построенная v-кривая на касательной ломаной.

Go to the page NURBS3D (button [to B-Spline]) (Figure 4.2.6).

Перейдите на страницу NURBS3D (кнопка  [to B-Spline])(рисунок 4.2.6).

Figure 4.2.6. Transferring to the page NURBS3D.

Рисунок 4.2.6. Переход на страницу NURBS3D.

To transfer the exact model of NURBS curve be offered the following technology.

Для передачи точной модели NURBS кривой можно предложить следующую технологию.

Press [Set DXF]. Save the DXF-file with name Web_Ell_Spl.dxf (fragment of entity spline is presented in Appendix A.4.2.2).

Нажмите кнопку [Set DXF]. Сохраните DXF-файл с именем Web_Ell_Spl.dxf (фрагмент с entity spline представлен в приложении П.4.2.2).

Go to Fusion360. Execute the command Upload. Select a file Web_Ell_Spl.dxf. And then insert in the drawing (Open / Insirt) (Figure 4.2.7).

Перейдите во Fusion360. Выполните команду Upload. Выберите файл Web_Ell_Spl.dxf. И затем вставьте в чертеж (Open / Insirt) (рисунок 4.2.7).

Figure 4.2.7. DXF-model of NURBS curve in Fusion360.

Рисунок 4.2.7. DXF-модель NURBS кривой в Fusion360.

Draw in the sketch to compare ellipse with parameters 0.0 100 50 (Figure 4.2.8).

Нарисуйте в эскизе для сравнения эллипс с параметрами 0,0 100 50 (рисунок 4.2.8) .

Figure 4.2.8. Ellipse geometrically exactly coincides with the NURBS curve.

Рисунок   4.2.8. Эллипс геометрически точно совпадает с NURBS кривой.

Remove ellipse and save the sketch in DXF-format as file Fusion_Ell_spl.dxf: select the sketch in the tree construction and then click ‘Save as DXF’ (fragment Entity spline represented in Appendix 4.2.3). Unfortunately in DXF-model of rational NURBS curve is no information on the weights (compare DFX-model in the 4.2.2. And 4.2.3).

Удалите эллипс и сохраните эскиз в DXF-формате в файле Fusion_Ell_spl.dxf: выделите в дереве построения эскиз и в контекстном меню выберите Save as DXF (фрагмент Entity spline представлении в приложении П.4.2.3). К сожалению в DXF-модели рациональной NURBS кривой отсутствует информация по весовым коэффициентам (сравните DFX-модели в П.4.2.2. и в П.4.2.3).

 

5. Examples of surface modeling

5. Примеры моделирования поверхности

 

To demonstrate the capabilities of the integrated system Fusion360 + web FairCurveModeler examples:

- Construction of exact geometric model section of the torus by a rational curve NURBzS;

- Construction of topologically complex surface in the form of a one-sided surface of the Klein bottle.

 

Для демонстрации возможностей интегрированной системы Fusion360 + web FairCurveModeler приводятся примеры:

- построения точной геометрической модели участка тора посредством рациональной NURBzS кривой;

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

 

5.1. Construction of exact geometric model of section of the torus by a rational bicubic NURBzS surface

5.1. Построение точной геометрической модели участка тора посредством рациональной бикубической NURBzS поверхности

 

In a web application on page VSurface3D prepared GD of part of  torus surface in the form of extended 3D network (Figure 5.1).

В web приложении на странице VSurface3D подготовлен ГО участка торовой поверхности в виде расширенной 3D сети (рисунок 5.1).

 

·        

Figure 5.1.1. GD of kind of extended 3D Mesh (front view).

Рисунок 5.1.1. ГО вида расширенной 3D сети (вид спереди).

Figure 5.1.1. GD of kind of extended 3D Mesh (top view).

Рисунок 5.1.2. ГО вида расширенной 3D сети (вид сверху).

Extended 3D Mesh is closed in the direction of U and is open in the direction V. The first and last rows of the 3d mesh define the endpoints of the tangent vectors (see. Figure 5.1.2).

Расширенная 3D сеть замкнута в направлении U и разомкнута в направлении V. Первый и последний ряды сети определяют конечные точки векторов касательных (см. рисунок 5.1.2).

Pay attention to the irregular arrangement of the points in rows and columns of 3D Mesh (see. Figures 5.1.1 and 5.1.2).

Обратите внимание на неравномерное  расположение точек по рядам и столбцам 3D сети (см. рисунки 5.1.1 и 5.1.2).

On page VSurface3D on this GO is constructed NURBzS surface. Then NURBzS surface is converted into IGS format and transferred to the Fusion360 (Figure 5.1.3).

На странице VSurface3D  на данном ГО строится  NURBzS поверхность. Затем NURBzS поверхность конвертируется в формат IGS и переносится во Fusion360 (рисунок 5.1.3).

Figure 5.1.3. Transferring the exact model of NURBzS surface in Fusion360.

Рисунок 5.1.3. Перенос точной модели NURBzS поверхности в Fusion360.

Possible to check the quality of the surface by displaying the 'zebra' (Figure 5.1.4).

Можно проверить качество поверхности  отображением 'зебры' (рисунок 5.1.4).

Figure 5.1.4. Analysis of the quality of the surface by displaying the 'zebra'.

Рисунок 5.1.4. Анализ качества поверхности отображением ‘зебры’.

 

5.2. Construction of topologically complex b-spline surfaces of degree 5.5 as a one-sided surface of the Klein bottle

5.2. Построение топологически сложной b-сплайновой поверхности степеней 5,5 в виде односторонней поверхности бутылки Клейна

 

In a web application on page VMesh3D is prepared b-spline surface of the Klein bottle (Figure 5.1).

В web приложении на странице VMesh3D подготовлена b-сплайновая поверхность бутылки Клейна (рисунок 5.2.1).

 

Figure 5.2.1. The model of one-sided surface.

Рисунок 5.2.1. Модель односторонней поверхности.

 

The surface is converted into a format IGS and is transferred geometrically exactly into Fusion360 (figure 5.2.2).

Поверхность конвертируется в формат IGS и переносится геометрически точно в Fusion360 (рисунок 5.2.2).

 

 

 

 

 

 

Figure 5.2.2. B-spline model of the Klein bottle in Fusion360.

Рисунок 5.2.2. B-сплайновая модель бутылки Клейна в Fusion360.

The complex surface is investigated by displaying the 'zebra'. Pay attention to the high quality of all the integral surface (Figure 5.2.3).

.

Исследуется качество сложной поверхности отображением 'зебры'. Обратите внимание на высокое качество всей интегральной поверхности (рисунок 5.2.3).

 

Figure 5.2.3. Analysis of the quality by displaying the 'zebra'.

Рисунок 5.2.3. Анализ качества отображением 'зебры'.

At each point in the integral surface technique provides smoothness of order 4.4. This is a unique method for forming the surface of arbitrarily complex topology proposed by Forrest and developed by Muftejev V.G., which ensures smoothness at any point of a complex surface of order Gm, m (where m, m - the degrees of b-spline surface).

В каждой точке интегральной поверхности методика обеспечивает гладкость 4,4 порядка. Это уникальная методика формирования поверхности сколь угодно сложной топологии, предложенная Форрестом и развитая Муфтеевым В.Г., которая позволяет обеспечить гладкость в любой точке сложной поверхности порядка Gm,m (где m,m – степени b-сплайновой поверхности).

 

 

The conclusions

Выводы

 

The advantages of an integrated system Fusion 360 + Web FairCurveModeler.

Преимущества интегрированной системы Fusion360+WebFairCurveModeler.

 

The integrated system Fusion 360 + Web FairCurveModeler.

Интегрированная система Fusion360+WebFairCurveModeler.

Fusion 360 + Web FairCurveModeler gives for designer the methods of modeling of functional of curves high quality on smoothness criteria: with a high order of smoothness, with a minimum number of extrema of curvature, and with a small value of the potential energy of a curve. Properties of minimizing the number of extrema of curvature, invariance with respect to affine and projective transformations allow the stability of constructing with geometrically exact of conic curves on points with an arbitrarily irregularly location on the conic curves.

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

Fusion 360 + Web FairCurveModeler extends the toolkit of a designer by dual geometric determinants of the curve for comfortable and natural modeling on habitual types of GO (on a base polyline and / or on a tangent polyline). Allows you to use simultaneously in modeling and editing curve advantages of tangent polyline and the base polyline.

Fusion360+WebFairCurveModeler расширяет инструментарий дизайнера дуальными геометрическими определителями кривой для удобного и естественного моделирования на привычных видах ГО (на опорной и / или касательной ломаной). Позволяет использовать одновременно при моделировании и редактировании кривой преимущества и касательной ломаной и опорной ломаной.  

Fusion 360 + Web FairCurveModeler enables the modeling the  functional curves of high quality for products:

Fusion360+WebFairCurveModeler дает возможность моделирования функциональных кривых высокого качества для изделий:

1) in the aircraft industry (airfoils, sections of the fuselage),

1) в авиастроении (аэродинамические профили, сечения фюзеляжа),

2) in the engine industry (turbine blade profiles), in general engineering applications (pump blade profiles, the profiles of the cams of the cam mechanism in the high-speed motors),

2) в моторостроении (профили лопаток турбин), в общем машиностроении (профили лопаток насосов, профили кулачков в кулачковых механизмах высокоскоростных двигателей),

3) in the road construction (route of the road of high quality of smoothness for a comfortable and safe ride),

3) в дорожном строительстве (трассы дорог высокого качества плавности для комфортной и безопасной езды),

4) in the automotive industry (curves of high quality on criteria of smoothness in modeling car body surface),

4) в автомобилестроении (кривые линии высокого качества по критериям плавности при моделировании кузовных поверхностей),

5)in  architecture (curved architectural forms).

5) в архитектуре (криволинейные архитектурные формы).

The application of the integrated system will allow modeling curves and surfaces of high quality on criteria of smoothness for all Autodesk products and for other CAD-systems.

Применение интегрированной системы позволит обеспечить моделирование кривых линий и поверхностей высокого качества по критериям плавности для всех продуктов Autodesk и для других CAD-систем.

 

Рекомендации для разработчиков Fusion360

 

1) Must enter a command of input in sketch of fixed NURBS curve from DXF-file as a fixed (non-editable) spline curve;

1) Необходимо ввести команду ввода в эскиз фиксированной NURBS кривой из DXF-файла в виде фиксированной (нередактируемой) сплайновой кривой;

2) For a transient object ‘NURBS curve’ must enter the method of inserting a  NURBS curve in the sketch as a fixed (non-editable) spline curve.

2) Для объекта транзитная NURBS кривая необходимо ввести метод вставки NURBS кривой в эскиз как фиксированной (нередактируемой) сплайновой кривой.

3) It is necessary to correct the command output a sketch in the format DXF. Complement the output with option of output of the weight coefficients of the rational NURBS curve.

3) Необходимо исправить команду вывода эскиза в формате DXF. Дополнить команду выводом неединичных значений весовых коэффициентов рациональной NURBS кривой.

 

4) Developers must enter the object 'transit NURBS surface' method of inserting NURBS surfaces in the project Fusion360.

4) Для объекта 'транзитная NURBS поверхность'  необходимо ввести метод вставки NURBS поверхности в проект Fusion360.

5) Enter in the functions of creating entities in the sketch - the functions of constructing the 3D-polylines and 3D-network.

5) Ввести в функции создания примитивов в эскизе – функцию построения 3D-полилинии и 3D-сети.

6) Enter into the functions of editing the primitives in the sketch - the functions of editing the 3D-polylines and 3D-mesh  and the functions of editing of spline curves and surfaces inputted from the transient objects by the control vertices.

6) Ввести в функции редактирования примитивов в эскизе – функции редактирования 3D-полилинии и 3D-сети и сплайновых кривых и поверхностей, введенных из временных объектов, посредством управляющих вершин.

 

Directions for further development FairCurveModeler:

Направления дальнейшего развития FairCurveModeler:

 

1) On the basis of the functional of web FairCurveModeler extend the functionality of the application FairCurveModeler Fusion360 based on API using C ++;

1) На основе функционала web FairCurveModeler расширить функционал  FairCurveModeler приложения Fusion360 на основе API с использованием С++;

2) Develop a technique of modeling of topologically complex surface with smoothness of high order m, m at any point of the integrated surface in the form of a developed system in analogy to the T-spline.

2) Развить методику моделирования топологически сложной поверхности высокого порядка гладкости m,m в любой точке интегрированной поверхности в виде развитой системы по аналогии с системой  T-сплайн.

 

 

 

 

 

Appendix

Приложения

A.1.1. Presentation format of a closed spline curve of sketch

П.1.1.  Формат представления замкнутой сплайновой кривой эскиза

The model NURBS curve is given in text format. Contains degree, closed/unclosed, number of control points, the number of nodes, the coordinates of control points with weights, coordinates of nodes:

Модель NURBS кривой дается в текстовом формате. Содержит степень, замкнутость, количество управляющих точек, количество узлов, координаты управляющих точек с весовыми коэффициентами, координаты узлов:

5

true

30

30

-3.745219063463504,0,3.881856065295429,1

-4.009140700850242,0,3.739558384104992,1

-4.496939316230954,0,3.430128112298365,1

-5.101649021401893,0,2.897773079488597,1

-5.643709445256042,0,2.079404295162479,1

-5.914210052806324,0,0.950488092194088,1

-5.842580878702566,0,-0.212407122737029,1

-5.500537188970571,0,-1.347678352896134,1

-4.936813673846667,0,-2.414018754349181,1

-4.178907312715913,0,-3.384527252492646,1

-3.243701201251083,0,-4.235899354592384,1

-2.144801962390436,0,-4.940409323144714,1

-0.90184006941848,0,-5.454367439933843,1

0.452810639149284,0,-5.715660446551515,1

1.872696752854691,0,-5.662311099843693,1

3.294303889529337,0,-5.247792273843528,1

4.63553539719693,0,-4.456339648018953,1

5.790925649064297,0,-3.322388565857831,1

6.636026707938596,0,-1.936795165627948,1

7.051568714498869,0,-0.42287234767265,1

6.944191574229485,0,1.081155740009315,1

6.267911146923391,0,2.441491972290451,1

5.048367001696206,0,3.548436158284979,1

3.399699325147495,0,4.332828743740267,1

1.491212420130453,0,4.758926406648159,1

-0.479514026214218,0,4.820439532676454,1

-1.948297852204184,0,4.592755047418457,1

-2.913409491910526,0,4.283914199440976,1

-3.481297426076768,0,4.024153746485863,1

-3.745219063463504,0,3.881856065295429,1

0

0

0

0

0

0.04

0.08

0.12

0.16

0.2

0.24

0.28

0.32

0.36

0.4

0.44

0.48

0.52

0.56

0.6

0.64

0.68

0.72

0.76

0.8

0.84

0.88

0.92

0.96

1

 

 

A.1.2. Presentation format of a unclosed spline curve of sketch

П.1.2. Формат представления незамкнутой кривой Spline эскиза

5

false

25

31

-3.745219063463504,0,3.881856065295429,1

-3.945257925514671,0,3.706858226721109,1

-4.320673402124228,0,3.352294101961215,1

-4.809809987004567,0,2.806741085930889,1

-5.313414095353391,0,2.051824330071047,1

-5.69216705550725,0,1.064557817050591,1

-5.817026739592571,0,0.04180374122048,1

-5.686607739617019,0,-0.999592663782821,1

-5.30330903351873,0,-2.029472608170832,1

-4.675427553210312,0,-3.005698705450832,1

-3.819223812729903,0,-3.8810009708159,1

-2.761601542655135,0,-4.608455266873969,1

-1.542435914273767,0,-5.147147064549192,1

-0.218841766861503,0,-5.4691319318437,1

1.139997121593671,0,-5.558351228923636,1

2.460444712977606,0,-5.407341098626838,1

3.671369315514078,0,-5.015065801135205,1

4.710690393979156,0,-4.384692236550082,1

5.534069379752467,0,-3.521677405267781,1

6.116336103347627,0,-2.432293538971252,1

6.445084202396503,0,-1.122682492127629,1

6.502465535925412,0,0.097070611377661,1

6.430264341418049,0,1.10710285074012,1

6.331124776008285,0,1.822604323093552,1

6.268803464386732,0,2.190891734934752,1

0

0

0

0

0

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

1

1

1

1

1

 

A.1.3. Presentation format of an unclosed spline curve of sketch

 

П.1.3. Формат отредактированной незамкнутой сплайновой кривой эскиза

5

false

25

31

-3.654088511706436,0,4.046953170377426,1

-3.741498800303648,0,3.83134958824095,1

-3.918649029888546,0,3.405305309457186,1

-4.19137604132627,0,2.781730603422678,1

-4.568962840905921,0,1.981381091314436,1

-5.050317805487818,0,1.031105463936554,1

-5.49658635345181,0,0.124228252254504,1

-5.821508425405733,0,-0.753004990300334,1

-5.87119871366992,0,-1.626780319923437,1

-5.454217191561309,0,-2.526971097235663,1

-4.447692798959907,0,-3.456468152297339,1

-2.850719572855458,0,-4.378373518267988,1

-0.933341181709115,0,-5.168790500127329,1

0.81786156424809,0,-5.644940199358223,1

2.242562177061785,0,-5.757904485901322,1

3.28886414393639,0,-5.508057208100111,1

4.022504175452543,0,-4.943707504416584,1

4.548205227240398,0,-4.128159587956128,1

4.962019203443822,0,-3.117485142058323,1

5.322204312804031,0,-1.948034656775999,1

5.665321021220932,0,-0.643603894556894,1

5.940040433738705,0,0.497792766784396,1

6.148905914282236,0,1.406492626794257,1

6.289384838678373,0,2.035604947162611,1

6.359934016143799,0,2.355988840016749,1

0

0

0

0

0

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

1

1

1

1

1

A.2.3.1. Script Points_to_WEB

П.2.3.1. Скрипт Points_to_WEB

A.2.3.2. Script Points_to_WEB

П.2.3.2. Скрипт Points_from_WEB

A.2.3.3. Script NURBS_to_WEB

П.2.3.3. Скрипт NURBS_to_WEB

 

 

A.2.3.4. Script NURBS_from_WEB

П.2.3.4. Скрипт NURBS_from_WEB

A.3.4.1.1. Table of vertex coordinates of base polyline

П.3.4.1.1. Таблица координат вершин опорной  ломаной

-4.5,3,0

-1,5.5,0

5.588966520477818,3.755258447943838,0

4.710543491719026,-2.964677722060927,0

-2.360761889789256,-4.260351689480147,0

-5.215636733255333,-1.647043178922738,0

 

 

A.3.4.1.2. NURBS model of curve modeled on the base polyline

П.3.4.1.2. NURBS модель смоделированной кривой на опорной ломаной

3

false

19

23

-4.5,3,0,1

-3.65508016222,4.176415495144,0,0.954265865942

-2.434115026882,5.048533448957,0,0.956792024099

-1,5.5,0,1

1.5880200366,6.314721593493,0,0.875854873608

4.101203213676,5.64923708946,0,0.87198829365

5.588966520478,3.755258447944,0,1

7.257859385224,1.630695067225,0,0.844200263545

6.911639386584,-1.017887922373,0,0.847255306868

4.710543491719,-2.964677722061,0,1

2.762797401641,-4.687388772221,0,0.874423875902

0.061361417575,-5.182372384208,0,0.870651480715

-2.360761889789,-4.26035168948,0,1

-3.727452429571,-3.740098671338,0,0.954339942812

-4.723252844403,-2.828558291607,0,0.956938013468

-5.215636733255,-1.647043178923,0,1

-5.833734682512,-0.163866972916,0,0.933641253174

-5.57755079408,1.499683171968,0,0.928663379532

-4.5,3,0,1

0

0

0

0

1

1

1

2

2

2

3

3

3

4

4

4

5

5

5

6

6

6

6

A.3.4.2.1. Table of vertex coordinates of the tangent polyline

П.3.4.2.1. Таблица координат вершин касательной ломаной

-7,1,0

-6,6,0

2.70712160534611,7.338085975912799,0

6.994542624980554,1.649008084474787,0

-2,-6,0

-6.307455923116057,-3.985102870814067,0

 

A.3.4.2.2. NURBS model of curve constructed on a tangent polyline

П.3.4.2.2. NURBS модель кривой, построенной на касательной ломаной

3

false

19

23

-6.81095221662,-0.360812515919,0,1

-6.935995190904,0.539277616803,0,0.978539278217

-6.92568512562,1.371574371901,0,0.990595463708

-6.780499895678,2.097500521611,0,1

-6.288574150812,4.557129245939,0,0.944021773633

-4.089574278209,6.293588855447,0,0.86034102441

-0.832915310119,6.794063052437,0,1

1.433487370925,7.142357446467,0,0.916478150567

3.230358582792,6.643790755841,0,0.936586900597

4.161446689922,5.408308459841,0,1

5.813335338375,3.216379291701,0,0.817892133351

4.555568304631,-0.425108974282,0,0.781176819139

1.144724129064,-3.325709456326,0,1

-0.871852261049,-5.040617012392,0,0.912974908919

-2.805748579364,-5.623095272852,0,0.945579498909

-4.246032954726,-4.949373961496,0,1

-5.5522487505,-4.338365862056,0,0.937016525501

-6.491912979271,-2.657335540368,0,0.883260053841

-6.81095221662,-0.360812515919,0,1

0

0

0

0

1

1

1

2

2

2

3

3

3

4

4

4

5

5

5

6

6

6

6

 

 

A.3.4.3.1. Points for construct  a curve in the sketch

П.3.4.3.1. Точки для построения кривой на эскизе

-7.5,0,0

-6.5,3,0

-3.5,5,0

-0.5,3,0

0,0,0

1,-3,0

3.744278160084352,-5.007011263925123,0

7,-2.5,0

8,0,0

 

 

A.3.4.3.2. NURBS model from a sketch

П.3.4.3.2. NURBS модель из эскиза

5

false

45

51

-7.5,0,0,1

-7.497891572659655,0.115886307604062,0,1

-7.485674405413282,0.349630176778541,0,1

-7.443347785721541,0.706160166537114,0,1

-7.338861092910554,1.193370245957048,0,1

-7.128048628552691,1.81973052049272,0,1

-6.837157844309684,2.456100319061769,0,1

-6.466834280959619,3.087809509221541,0,1

-6.01845410981298,3.690010071758055,0,1

-5.494538411032939,4.226061061581786,0,1

-4.900656608360258,4.655046152544343,0,1

-4.247159045244257,4.938304285714258,0,1

-3.55106765280215,5.046452861681445,0,1

-2.837769750149404,4.965998969454785,0,1

-2.143263576902321,4.706854436093772,0,1

-1.507688907481328,4.296099461214356,0,1

-0.968481017989896,3.771017901938933,0,1

-0.553310039063225,3.172266506822981,0,1

-0.273854917736139,2.537451482447682,0,1

-0.117140829800504,1.893423401111207,0,1

-0.050377677401728,1.25602892244871,0,1

-0.030351448681334,0.63241200421139,0,1

-0.011305596178253,0.022422132893258,0,1

0.046688185691477,-0.57960966551328,0,1

0.169239461811511,-1.183360638681976,0,1

0.369983916231797,-1.797738921184591,0,1

0.653374180856924,-2.425918478686781,0,1

1.017226060120105,-3.060598346006862,0,1

1.45540436822246,-3.678719730471028,0,1

1.960211372169176,-4.237519169984779,0,1

2.522047061442178,-4.685551321998689,0,1

3.129250322163158,-4.972638870575212,0,1

3.767866785898923,-5.060135105433651,0,1

4.421416921116816,-4.931322496352807,0,1

5.070702135080828,-4.601218708855065,0,1

5.695290483353762,-4.107093434428741,0,1

6.274901398331719,-3.499938413429083,0,1

6.790895781751201,-2.835344275225979,0,1

7.227576663060842,-2.165384005874597,0,1

7.573962524152381,-1.528304169286234,0,1

7.823898886804553,-0.94604877682304,0,1

7.944368972787633,-0.532965138794781,0,1

7.989682774129699,-0.254355532988304,0,1

7.999893891839445,-0.082475454592914,0,1

8,0,0,1

0

0

0

0

0

0

0.025

0.05

0.075

0.1

0.125

0.15

0.175

0.2

0.225

0.25

0.275

0.3

0.325

0.35

0.375

0.4

0.425

0.45

0.475

0.5

0.525

0.55

0.575

0.6

0.625

0.65

0.675

0.7

0.725

0.75

0.775

0.8

0.825

0.85

0.875

0.9

0.925

0.950000000000001

0.975000000000001

1

1

1

1

1

1

 

 

A.3.4.3.3. NURBS model of edited curve

П.3.4.3.3. NURBS модель отредактированной кривой

6

false

49

56

-7.5,0,0,1

-7.5,0.689981757281,0,0.961528925695

-7.386443572608,1.401064145063,0,0.939017090631

-7.156911514368,2.098253834893,0,0.932036387668

-6.820013474119,2.746989715446,0,0.940158709667

-6.393946283718,3.31851832918,0,0.962955949491

-5.902995117257,3.793682557706,0,1

-5.512004989557,4.172100076763,0,0.974697673787

-5.07723368909,4.491043975814,0,0.954716316083

-4.603296689345,4.741468875846,0,0.943655898369

-4.10421817893,4.913347145659,0,0.945116392129

-3.603436217741,4.999497284117,0,0.962697768845

-3.130691209129,4.999497284117,0,1

-2.808021719763,4.999497284117,0,1.002109153829

-2.511899179053,4.958743489942,0,1.008521717879

-2.245617106907,4.878443215231,0,1.015377388335

-2.008068413722,4.758967324316,0,1.018815861383

-1.794907996865,4.598370973074,0,1.014976833209

-1.599338892038,4.390734890877,0,1

-1.208920010664,3.976226438655,0,1.019613873055

-0.901527278118,3.386787627994,0,1.023536647666

-0.645713067633,2.650617137527,0,1.01765248575

-0.419862300053,1.802606175108,0,1.007845549222

-0.208309569239,0.894341110878,0,1

0,0,0,1

0.174244695956,-0.748089468548,0,1

0.337275189733,-1.448032699403,0,0.968823769451

0.562036594886,-2.17522508411,0,0.929853481264

0.912179116604,-2.940621869506,0,0.906471308352

1.414857693825,-3.676529027095,0,0.922059423627

2.020832811803,-4.25405079201,0,1

2.284867280968,-4.505687613567,0,0.998743526444

2.55141791618,-4.70795706217,0,1.00176289134

2.81707803961,-4.858662025511,0,1.006228157915

3.081464511375,-4.958048237239,0,1.009309389398

3.347162951319,-5.007340430739,0,1.008176649017

3.619796922603,-5.007340430739,0,1

3.98267987708,-5.007340430739,0,0.990632090317

4.366168759864,-4.920361032126,0,0.97838722135

4.774467490792,-4.742523142287,0,0.968233485468

5.203457790081,-4.473715030235,0,0.965138975037

5.639510726572,-4.122334792371,0,0.974071782426

6.060187031293,-3.708720052114,0,1

6.617840112078,-3.160427857916,0,0.93433292004

7.137187214598,-2.515188599826,0,0.896691779339

7.564028902173,-1.821819609769,0,0.88575724744

7.857397256228,-1.139193251491,0,0.900209993888

8.000198836561,-0.520295163911,0,0.938730688226

8,0,0,1

0

0

0

0

0

0

0

1

1

1

1

1

1

2

2

2

2

2

2

3

3

3

3

3

3

4

4

4

4

4

4

5

5

5

5

5

5

6

6

6

6

6

6

7

7

7

7

7

7

8

8

8

8

8

8

8

 

A.4.1.1. The base polyline from circle

П.4.1.1.Опорная ломаная с окружности

 

-9.01404488843794,4.329779988547436,0

4.665915149797306,8.844729267472916,0

8.726328086781608,4.88376884402266,0

8,-6,0

-4.751113788790945,-8.799256659852613,0

-9.46924530469799,-3.214559590279058,0

П.4.1.2. NURBS модель кривой

3

false

19

23

-9.014044888438,4.329779988547,0,1

-6.401365498093,9.769042345055,0,0.795783242166

-0.671178635898,11.660239612391,0,0.795783242166

4.665915149797,8.844729267473,0,1

6.38534795953,7.937666162049,0,0.972624467937

7.776913793634,6.580184230764,0,0.972624467937

8.726328086782,4.883768844023,0,1

10.716799314356,1.327190813026,0,0.892117751374

10.445412087852,-2.739450549531,0,0.892117751374

8,-6,0,1

4.885751924529,-10.152330767295,0,0.838389171058

-0.183935769037,-11.265281155367,0,0.838389171058

-4.751113788791,-8.799256659853,0,1

-6.999191798797,-7.585418395497,0,0.953862134384

-8.647973576174,-5.633809643294,0,0.953862134384

-9.469245304698,-3.214559590279,0,1

-10.321225360269,-0.70485089945,0,0.950563465906

-10.16160059293,1.940716650542,0,0.950563465906

-9.014044888438,4.329779988547,0,1

0

0

0

0

1

1

1

2

2

2

3

3

3

4

4

4

5

5

5

6

6

6

6

 

A.4.2.1. Tangent polyline tangent to ellipse

П.4.2.1. Касательная ломаная к элипсу

-56.25259589034384,42.99951150185782,0,1

45.43393977940873,61.37754181419081,0,1

106.0324959305453,7.836789862768979,0,1

86.13879613450422,-36.3404377657717,0,1

7.523732801997639,-52.52258120089633,0,1

-78.2544259033288,-41.68389845501972,0,1

-103.6460450040054,-2.157043025908401,0,1

-91.27947726324729,24.54105236740899,0,1

A.4.2.2. DXF-model of NURBS curve

П.4.2.2. DXF-модель NURBS кривой

  0

SPLINE

  5

21E

330

1F

100

AcDbEntity

  8

0

100

AcDbSpline

210

0.0

220

0.0

230

1.0

 70

   13

 71

    3

 72

   29

 73

   25

 74

    0

 42

0.0000000001

 43

0.0000000001

 40

0.0000000000

 40

0.0000000000

 40

0.0000000000

 40

0.0000000000

 40

1.0000000000

 40

1.0000000000

 40

1.0000000000

 40

2.0000000000

 40

2.0000000000

 40

2.0000000000

 40

3.0000000000

 40

3.0000000000

 40

3.0000000000

 40

4.0000000000

 40

4.0000000000

 40

4.0000000000

 40

5.0000000000

 40

5.0000000000

 40

5.0000000000

 40

6.0000000000

 40

6.0000000000

 40

6.0000000000

 40

7.0000000000

 40

7.0000000000

 40

7.0000000000

 40

8.0000000000

 40

8.0000000000

 40

8.0000000000

 40

8.0000000000

 10

-72.5432883221

 20

34.4146455721

 30

0.0000000000

 41

1.0000000000

 10

-61.7819290983

 20

40.0856645632

 30

0.0000000000

 41

0.9820769642

 10

-48.6976005630

 20

44.3649423548

 30

0.0000000000

 41

0.9820769785

 10

-33.9938351010

 20

47.0223860920

 30

0.0000000000

 41

1.0000000000

 10

14.0142512527

 20

55.6989926892

 30

0.0000000000

 41

0.8426539850

 10

61.8884961451

 20

46.8394178587

 30

0.0000000000

 41

0.8426539351

 10

87.0304310260

 20

24.6257186465

 30

0.0000000000

 41

1.0000000000

 10

99.4021846945

 20

13.6948807448

 30

0.0000000000

 41

0.9553128265

 10

103.0754124945

 20

1.2701004380

 30

0.0000000000

 41

0.9553129072

 10

97.5576763664

 20

-10.9829388371

 30

0.0000000000

 41

1.0000000000

 10

90.2543815728

 20

-27.2011043789

 30

0.0000000000

 41

0.9248484179

 10

68.8132689197

 20

-39.9067284306

 30

0.0000000000

 41

0.9248487723

 10

38.0683276232

 20

-46.2352744990

 30

0.0000000000

 41

1.0000000000

 10

18.0596990270

 20

-50.3538553937

 30

0.0000000000

 41

0.9663594817

 10

-3.5228414390

 20

-51.1267676811

 30

0.0000000000

 41

0.9663596234

 10

-24.5011548207

 20

-48.4760080154

 30

0.0000000000

 41

1.0000000000

 10

-58.7017270491

 20

-44.1545215473

 30

0.0000000000

 41

0.9163828814

 10

-84.4217619741

 20

-32.0832739228

 30

0.0000000000

 41

0.9163827292

 10

-95.2093480928

 20

-15.2903567302

 30

0.0000000000

 41

1.0000000000

 10

-100.7646349573

 20

-6.6425024957

 30

0.0000000000

 41

0.9759916940

 10

-101.5201078634

 20

2.4326275900

 30

0.0000000000

 41

0.9759917156

 10

-97.4213539616

 20

11.2813983207

 30

0.0000000000

 41

1.0000000000

 10

-93.3758389025

 20

20.0152320916

 30

0.0000000000

 41

0.9765930909

 10

-84.8843915768

 20

27.9111333788

 30

0.0000000000

 41

0.9765930336

 10

-72.5432883221

 20

34.4146455721

 30

0.0000000000

 41

1.0000000000

 0

ENDSEC

  0

 

A.4.2.3. DXF-model from Fusion360

П.4.2.3. DXF-модель из Fusion360

 

0

SPLINE

5

100

100

AcDbEntity

8

0

100

AcDbSpline

70

1064

71

3

72

29

73

25

74

0

42

0.000000001

43

0.0000000001

44

0.0000000001

40

0

40

0

40

0

40

0

40

1

40

1

40

1

40

2

40

2

40

2

40

3

40

3

40

3

40

4

40

4

40

4

40

5

40

5

40

5

40

6

40

6

40

6

40

7

40

7

40

7

40

8

40

8

40

8

40

8

10

-72.543288322099997

20

34.4146455721

30

0

10

-61.781929098299997

20

40.085664563200012

30

0

10

-48.697600563000009

20

44.364942354799993

30

0

10

-33.993835101000002

20

47.022386092000005

30

0

10

14.014251252700001

20

55.698992689200004

30

0

10

61.888496145099992

20

46.839417858700003

30

0

10

87.030431026000002

20

24.625718646500001

30

0

10

99.402184694500022

20

13.694880744800003

30