на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Формирование математической модели корпуса теплохода-площадки в программе FastShip6
ис. 3.7. Дополнительный контроль посредством функции insert - net.

Рис.3.7. показывает использование функции insert-net для дополнительного контроля. Рассмотрим кубический В-сплайн, состoящий из четырёх вершин определяющего многоугольника(единственный интервал) и открытый стандартный узловой вектор. Мы хотим вставить точку в определяющую сеть посередине кривой, чтобы лучше контролировать поверхность в данном месте.

Рис.3.8. Дополнительный контроль с помощью функции insert - knot.

Функция insert-net сохраняет все существующие вершины многоугольника на своих позициях и вставляет определённым образом новую вершину в многоугольник, а также добавляет значение узла в узловой вектор, чтобы сохранить стандартность узлового вектора. В данном примере новая вершина была вставлена посередине между второй и третьей вершиной, и было добавлено новое значение узла 0.5. (Заметьте, что в FastShip новый узловой вектор будет иметь вид {0,0,0,0,1,2,2,2,2} т.к. FastShip поддерживает интегральные значения узлов). Теперь, если мы будем использовать уже изученные приёмы для вычисления значения кривой с дополнительным контролем, то обнаружим, что она слегка отличается от исходной кривой. Но мы же дополнительно проконтролировали поверхность. Секрет здесь в том, что команда insert-net не сохраняет форму кривой, но сохраняет стандартность узлового вектора.

Теперь обратимся к рис.3.8. для рассмотрения операции insert-knot дополнительного контроля. Начнём всё с того же В-сплайна, показанного в нижней части рисунка. Пользователь определяет в каком месте он хочет вставить узел, в данном примере при значении параметра 0.75. Узловой вектор соответственно изменяется и добавляется новая вершина. Однако в этом случае некоторые вершины многоугольника перемещаются со своих первоначальных позиций. Используется приём, описанный ранее, когда вершины определяются осреднением узлового вектора и новый многоугольник создаётcя, как показано справа на рисунке. Секрет здесь в том, что insert-knot сохраняет форму кривой, но не сохраняет стандартности узлового вектора. Фактически за исключением отдельных случаев единственного интервала узлового вектора невозможно вставить узел в стандартный многоинтервальный узловой вектор, при этом сохранить его стандартность.

3.8 Что значит “рациональный”?

До сих пор мы рассмотрели все части, которые составляют аббревиатуру NURBS за исключением одного “рациональность”. В-сплайн является рациональным, если каждой вершине его определяющего многоугольника соответствует своё значение веса точки. Вес точки можно рассматривать как силу влияния данной точки на кривую. Рассмотрим рис.3.9.

Рис.3.9. Рациональность В-сплайнов

Здесь мы пытаемся определить дугу круга в 90
0 используя квадратичный В-сплайн, заданный тремя вершинами многоугольника. Т.к. мы знаем что кривая приближается на своих концах к касательной, проведённой к конечным точкам наклонных, то для того, чтобы получить дугу 900 обе наклонных многоугольника должны быть перпендикулярны. Подгоняя многоугольник, как показано на рисунке, но оставляя веса точек равными 1, получается верхняя кривая, показанная на рисунке, очевидно, не круглой формы. Первым побуждением было бы сдвинуть вниз вершину В1 пока не получится фигура более круглой формы. Хотя этого могло быть и достаточно для приближения к круглой форме, это не может быть правильно по двум причинам. Первая, двигать вниз В1 означает, что две наклонные больше не будут перпендикулярными, т.е. касательные к конечным точкам кривой не могут быть перпендикулярными. Второе, и, возможно, более важное, ранее мы показали, что двигая вершину контрольной сети, все точки кривой двигаются в том же направлении, что и вершина, но на разные расстояния. Здесь же нам нужно, чтобы точки двигались от В1 в радиальном направлении. Это достигается изменением веса вершины В1. В данном примере вес точки уменьшили так, чтобы получился круг. Существует точное распределение весов определяющего многоугольника, которое позволяет получить круг. Хотя в определённых случаях это распределение легко вычисляется, оно не является общим случаем. Для большинства моделей, выполненных в FastShip, достаточным является приближённо построить круговую область, используя вершины со стандартными весами. Курс передового обучения FastShip предоставляет специальные примеры того, как использовать В-сплайны для получения круговых областей.

3.9 От кривых к поверхностям

Рис.3.10. От кривых к поверхностям.

Всё, что уже говорилось о NURBS кривых, справедливо и для NURBS поверхностей. Также существует определяющий многоугольник, но теперь он распространяется на два напраления и называется контрольной сеткой. Теперь мы будем говорить о пространстве двух параметров u-v. Большинство свойств, рассмотренных ранее, подходят и для пространства двух параметров. Кроме того, для поверхностей будет иметь место дополнительное свойство: в любой точке поверхности пересечение двух касательных к поверхности даёт внешнюю нормаль. И, наконец, как показано на рис.3.10, поверхность меньше повторяет форму контрольной сетки, чем кривая. Это является следствием того, что FastShip работает с тензорными поверхностями. Поэтому в случае кривой сдвиг вершины определяющего многоугольника на одну единицу вверх вызывает сдвиг самой кривой на полединицы вверх, а в случае поверхности сдвиг вершины сетки можно рассматривать как сдвиг поверхности на полединицы в каждом направлении, т.е. в итоге на четверть вверх.

3.10 Граничные условия и сломы

зеркальное г.у. конечное г.у. натурального сплайна

Рис.3.11. Граничные условия FastShip

Известно, что NURBS кривая при подходе к своим конечным точкам приближается к касательной, проведённой в этих точках. Представим плазовщика, изображающего окончания ватерлиний гибкой рейкой. Если плазовщик расставит точки по рейке так, что последняя точка окажется на самой кромке ватерлинии, а рейка может принимать любую форму, то получится визуализированное конечное условие натурального сплайна(см. рис.3.11). Однако часто случается, что окончания ватерлиний проходят перпендикулярно диаметральной плоскости, например, эллиптические окончания ватерлиний. Плазовщик будет вынужден чрезмерно изогнуть линейку или воспользоваться корабельным лекалом. Пользуясь В-сплайном данная проблема легко решается, установив наклонную определяющего многоугольника перпендикулярно диаметральной плоскости. Это называется зеркальным граничным условием. Отсюда видно, насколько однозначно В-сплайн определяет такое конечное условие.

Рассмотрим сломы кривых и поверхностей. Мы уже знаем, как можно использовать многозначные вершины или многозначные узлы, чтобы заставить В-сплайн проходить через заданную точку. Подразумевается, чтобы получить слом кривой нужно использовать любой приём, который сделал бы наклонные в этой точке неколлинеарными. Тогда возникает вопрос, что лучше использовать многозначные вершины или многозначные узлы? По этому поводу можно сделать два замечания. Первое, многозначные узлы считаются более предпочтительным вариантом, т.к. они хорошо определяются в рамках NURBS математики и не требуют дополнительной обработки. Знайте, что некоторые приложения, использующие в своей работе математику NURBS, не работают с многозначными вершинами, поэтому если вы планируете переместить свою работу в другое приложение, то возможно столкнетесь с проблемой дополнительной доработки. Второе замечание заключается в следующем: многозначный узел лучше использовать, если слом имеет большую длину, как, например, скуловой слом, а многозначные вершины лучше на локальных сломах, например, транец или палубный слом.

3.11 Итоги главы. Основные свойства NURBS

Подводя итоги, перечислим основные моменты, которые нужно было усвоить в этой главе:

В общем случае поверхность повторяет форму определяющей контрольной сети. Фактически, контрольную сеть можно рассматривать, как увеличенное изображение поверхности. Т.о. если мы имеем перегибы в определяющей сети, то в поверхности тоже будут перегибы. Забегая вперёд, если мы хотим получить гладкую поверхность, то мы должны иметь гладкую сеть.

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

Поверхность инвариантна по отношению к аффинному преобразованию. Аффинное преобразование- преобразование, сохраняющее отношения длин масштабов и углов. Другими словами, выполнение аффинного преобразования не меняет физической сущности поверхности.

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

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

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

В-сплайн поверхность можно всегда представить эквивалентной поверхностью большего порядка, но нельзя представить поверхностью меньшего порядка.

4. ПОСТРОЕНИЕ ТЕОРЕТИЧЕСКОЙ ПОВЕРХНОСТИ СУДНА

4.1 Построение плоского листа поверхности

Приём, который мы будем использовать в работе, состоит в том, что сперва мы построим боковую проекцию судна в плоском виде, а затем будем растягивать её в ширину.

Построение поверхности начнём "с пустого места" (start from scratch). Построим плоский лист, придадим ему нужную трёхмерную форму, а затем сверху наставим ещё две поверхности: бак и ют.

Зададим единицы измерения для работы в FastShip. Для этого:

Выберем меню "File"

Выберем пункт "Preferences"

Перейдём на вкладку "Units"

Нажмём клавишу "Set metric", чтобы работать в метрической системе измерения

FastShip использует Х как абсциссу, Y - ординату, Z - аппликату. По умолчанию, направление Х принимается справа налево, направление Y - от ДП к правому борту, и Z - сверху вниз.

Рис.4.1 Окно FastShip6

Изменим систему координат FastShip, так, чтобы ось Z была направлена для создания плоского листа поверхности вертикально вверх. Для этого:

Нажмём "File"

Выберем "Preferences"

Установим значок рядом с Pozitive Z up

Нажмём ОК

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

выберем в падающем меню "Parts"

нажмём пункт "Create".

На экране появится окно, показанное на рис.4.1. Заполним его так, как показано на этом рисунке.

Рис.4.2. Первоначальный плоский лист поверхности (здесь и далее цвет фона экрана и поверхности изменен).

В графе "Part Type" выберем пункт "Plate", т.к. мы хотим иметь плоский лист. В графу "Name" впишем hull. При дальнейшей работе эта часть поверхности в дереве деталей будет обозначаться именно так. Что касается степени поверхности, то мы хотим, чтобы наша поверхность имела кривизну в обоих направлениях, поэтому в графе "Degree" оставим цифры 3, т.е. поверхность будет третьей степени; квадратичными поверхностями труднее манипулировать, а поверхности 4ой степени не дают больших преимуществ. В "Intervals" поставим цифры 3; начнём с поверхности, имеющей 3 интервала, впоследствии количество интервалов можно будет изменить. Лист будет располагаться в плоскости XOZ при Y=0, т.е. в "Orientation" выберем именно эту плоскость. В графе "Size" выберем соответствующие размеры разрабатываемой части судна. Центр тяжести листа будет располагаться при X=20.1 Y=0 Z=1.65, т.к. начало отсчёта мы хотим совместить с нулевым шпангоутом.

Нажимая клавишу OK, получим на экране плоский лист поверхности.

При изображении поверхности можно пользоваться несколькими видовыми экранами (см. рис.3.3.). На экране можно поместить одновременно один, два и четыре видовых экрана. Для этого нужно воспользоваться соответственно панелями

Рис.4.3. Использование нескольких видовых экранов для изображения поверхности .

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

Используем для изображения листа четыре видовых экрана

(см. рис.4.3.). На активном видовом экране лист повёрнут в пространстве. Для вращения и поворота

поверхности в пространстве в FastShip предусмотрена панель, при этом нужно нажать на эту панель и удерживая её нажатой, поводить мышкой на экране.

Чтобы посмотреть на контрольную сетку нужно нажать клавишу

Чертёж примет вид, показанный на рис.4.4. Чтобы вернуться обратно к поверхности нужно воспользоваться клавишей

Есть альтернативный вариант одновременного просмотра поверхности и контрольной сетки с помощью клавиши

На рис.4.4. изображено два вида поверхности: верхнюю часть экрана занимает поверхность, а нижнюю - контрольная сетка этой поверхности. Сплошные вертикальные и горизонтальные линии контрольной сетки представляют собой границы интервалов (на рис.4.1. мы разбили поверхность на три интервала по длине и три - по ширине). Сплошным вертикальным линиям контрольной сетки соответствуют сплошные линии на поверхности. Внутри каждого интервала поверхности линий не изображено. Чтобы увидеть их сделаем следующее: в меню "File" выберем пункт "Preferences" и откроем вкладку "Graрhics". Заполним строки, как показано на рис.4.5. Нажав "ОК", получим изображение, как на рис.4.6.

Страницы: 1, 2, 3, 4, 5



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.