7. Описание команд v_nano.lsp приложения nanoCAD
7.1. Команды моделирования и редактирования
7.2. Команды экспорта ГО кривых и поверхностей из nanoCAD в Web FairCurveModeler
7.1. Команды моделирования и редактирования
7.1.1. V_TEST_CRV
7.1.2. V_TEST_RPT
7.1.3. V_SMSHNRB
7.1.4. V_VMSHNRB
7.1.1. V_TEST_CRV
Команда тестирования NURBS кривой с отображением графиков кривизны и эволюты.
Команда запрашивает:
- количество точек интерполяции;
- масштаб для построения графика кривизны. Значение масштаба определяет отношение максимального значения кривизны к длине кривой.
При положительном значении масштаба график откладывается в сторону вектора кривизны.
Выводятся график кривизны и эволюты кривой (рисунок 1). График кривизны строится на нормалях к кривой.
Рисунок 7.1. Отображение графика кривизны и эволюты кривой.
В протокол выводятся макропараметры (длина кривой ' Real Length’, аппроксимация длины ‘Approximated Length’, потенциальная энергия кривой ‘Potential Energy’, минимальная кривизна кривой ‘Min Curvature’, максимальная кривизна кривой ‘Max Curvature’):
"----------------"
"Real Length = " 151160.0
"Approximated Length = " 151139.0
"Potential Energy = " 0.000237036
"Min Curvature = " 1.85046e-015
"Max Curvature = " 9.48486e-005
"----------------"
7.1.2. V_TEST_RPT
Команда повтора тестирования на той же кривой после редактирования. Команда является клоном команды V_TEST_CRV.
Команду удобно использовать при редактировании s-полигона сплайновой кривой с помощью 'ручек'. После выполнения команды V_Test_Crv выполните команду V_Test_Rpt. Затем можно редактировать s-полигон с помощью 'ручек' вершин и отображать графики кривизны простым нажатием на 'пробел'.
7.1.3. V_SMSHNRB
Команда используется для реализации процедуры интерпретации и редактирования b-сплайновой поверхности (ГО S 3D Mesh) после считывания из web FairCurveModeler командой [3D Mesh & Params to nanoCAD].
Команда формирует сеть изопараметрических NURBS кривых поверхности. Можно управлять плотностью сети изопармов глобальными переменными w:u_hs, v_ht. По умолчанию эти переменные равны 1. Для двойного уплотнения сети кривых измените параметры w:u_hs, w: v_ht, выполнив команды nanoLISP:
(setq w:u_hs 0.5)
(setq w:v_ht 0.5)
Редактирование выполняется следующим образом. Измените конфигурацию ГО '3D S Mesh' путем перемещения “ручек” вершин. Затем выполните команду V_SMSHNRB. При последующем изменении положений вершин для новой интерпретации поверхности достаточно нажать клавишу ‘пробел’.
Команду можно использовать также для интерпретации b-сплайновой поверхности, заданной s-фреймом вида произвольной 3D Сети, нарисованной в nanoCAD. В этом случае необходимо по запросам команды задать параметры b-сплайновой поверхности (степень по u, степень по v и т.д.).
Можно провести тестирование качества любой изопараметрической кривой поверхности командами v_test_crv и v_test_rpt.
Таким образом, с использованием приложения можно моделировать в nanoCAD b-сплайновые поверхности произвольных степеней m,n (2 <= m,n <=10) с полным контролем качества любой изопараметрческой кривой поверхности. Степень сплайна m по u может отличаться от степени n по v.
7.1.4. V_VMSHNRB
Команда используется для реализации процедуры интерпретации и редактирования промежуточной модели поверхности вида каркаса кривых (V 3D Mesh) после считывания из web FairCurveModeler командой 3D Mesh & Params to nanoCAD или после объединения b-сплайновых кривых в каркас командой v_crvmsh утилиты nanoCurveModeler.
Для интерпретации и редактирования каркаса NURBS кривых на ГО V 3D Mesh выполните команду V_VMSHNRB.
Команда формирует каркас изопараметрических NURBS кривых поверхности. При указании только одной 3D полилинии / полилинии команда формирует только одну b-сплайновую кривую.
Редактирование каркаса кривых выполняется следующим образом. Измените конфигурацию ГО V 3D Mesh путем перемещения “ручек”вершин. Затем выполните команду V_VMSHNRB. При последующем изменении положений вершин для новой интерпретации поверхности достаточно нажать пробел.
Исходные геометрические определители можно готовить непосредственно в nanoCAD: сплайны и 3D Сети.
Для тестирования и редактирования NURBS кривых и поверхностей используются следующие команды утилиты v_nano.lsp.
7.2. Команды экспорта ГО кривых и поверхностей из nanoCAD в Web FairCurveModeler
Для экспорта геометрических объектов в Web FairCurveModeler можно использовать команды утилиты v_nano.lsp
7.2.1. V_GETSPL
7.2.2. V_SPOLY
7.2.1. V_GETSPL
Команда используется для реализации процедуры экспорта точной DXF-модели NURBS кривой из чертежа nanoCAD в web-приложение FairCurveModeler.
Выполните команду V_GetSpl. На запрос
Select NURBS:
укажите в чертеже nanoCAD сплайн.
Команда выводит в протокол DXF-модель сплайна. Выделите и скопируйте в буфер памяти фрагмент протокола, содержащий NURBS модель ((-1 . #<Имя примитива: 06C11688>) (0 . "SPLINE") (5 . "21E") (330 . #<Имя примитива: 06C08E70>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbSpline") (210 0.0 0.0 1.0) (70 . 15) (71 . 10) (72 . 27) (73 . 16) (74 . 0) (42 . 1.0e-009) (43 . 1.0e-010) (40 . 0.0) (40 . 0.0) (40 . 0.0) (40 . 0.0)
…
(41 . 0.318455) (10 -64.0637 -89.1353 0.0) (41 . 0.472562) (10 -86.4268 -59.8257 0.0) (41 . 0.598701) (10 -96.4076 -32.9059 0.0) (41 . 0.744716) (10 -99.3583 -16.1168 0.0) (41 . 0.862414) (10 -99.9774 -5.24189 0.0) (41 . 0.954281) (10 -99.999 -0.451006 0.0) (41 . 1.0))
Перейдите в web приложение на страницу NURBS3D
Очистите текстовое поле ‘I&M’ и вставьте текст из буфера. Нажмите последовательно [NURBS from AutoCAD] > Zoom Spl > [Create].
7.2.2. V_SPOLY
Команда используется для реализации процедуры импорта ГО кривой или поверхности из чертежа nanoCAD в web-приложение.
Подготовленные ГО вида плоской или пространственной ломаной или 3D Сети можно экспортировать в web FairCurveModeler.
На запрос команды
Select object (3D-polyline / 3D-mesh):
Укажите полилинию или сеть.
Программа сформирует таблицу из координат точек для полилинии или список точек из координат точек для 3D сети и выведет в протокол.
Выделите и скопируйте в буфер памяти фрагмент с координатами точек полилинии
или сети
Далее в зависимости от вида ГО и решаемой задачи перейдите на ту или иную страницу web-приложения FairCurveModeler:
1) Опорная полилиния - на страницу Polyline3D;
2) Касательная ломаная - на страницу Tangent3D;
2) 3D Сеть - на страницу VSurface3D;