Формирование математической модели корпуса теплохода-площадки в программе FastShip6

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование




товый редактор Блокнот. Для отображения маркера на экране в FastShip существует команда Construct-marker. При этом если маркер имеет координаты (x;y;z), то команда выглядит следующим образом: Construct-marker {x;y;z}. Записав таким образом эту команду для каждой ординаты (см.рис.) и сохранив его с расширением .mас, получим нужный макрос.

Рис.4.13. Создание макроса для простановки ординат.

Для запуска макроса в FastShip нужно

Выбрать меню Tools

Из этого меню выбрать команду Read macro

Открыть созданный макрос

Представим поверхность в виде сечений и проставим на ней маркеры ординат, указанным выше способом. Теперь налицо различие между действительной и нужной формой поверхности. Чтобы понять насколько отличается поверхность от нужной формы, можно измерять отдельные точки поверхности и маркеры увидев, таким образом, значение разницы. Для удобства визуализации отдельных участков поверхности, а также в некоторых случаях для удобства измерения поверхности, поверхность можно зуммировать (увеличивать). Зуммирование выполняется

нажатием панели, затем мышкой указываются две точки, определяющие противоположные вершины зуммирующего прямоугольника (см.рис.4.14.).

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

Рис.4.14. Визуальное сравнение формы поверхности с ординатами

4.6 Создание поверхностей бака и юта

К настоящему моменту мы уже имеем поверхность корпуса. Теперь на этой поверхности нужно создать ещё два плоских листа, из которых в дальнейшем получатся бак и ют. Для добавления к поверхности ещё одной поверхности можно воспользоваться двумя вариантами:

  1. Создать поверхность нужной формы в отдельном файле, расположив её в пространстве на таком месте, на котором она должна находиться в готовой модели. Затем открыть поверхность корпуса и из меню File выбрать пункт Add. В открывшемся окне указать файл с поверхностью, которую нужно добавить.
  2. Находясь в файле готовой поверхности, из менюParts выбрать пункт Create. В открывшемся диалоговом окне указать параметры плоского листа, из которого в дальнейшем будет получена поверхность юта или бака.

Рис.4.15. Диалоговое окно для создания поверхности бака.

В данной работе использовался второй вариант. Для добавления плоского листа, представлящего собой бак, диалоговое окно при выборе пункта Create было заполнено следующим образом (см.рис.4.15.):

Нажав ОК, получим изображение, показанное на рис.4.16.

Рис.4.16. Установленный на корпус плоский лист бака.

Вытянем точки контрольной сетки, чтобы получить нужную форму поверхности.

Аналогичные операции проведём для создания поверхности юта.

Математическая модель теплохода, состоящая из трёх поверхностей, показана на рис.4.17.

Рис.4.17. Откорректированная математическая модель теплохода.

4.7 Получение слома поверхности

Добиться слома поверхности можно по-разному. В данной работе слом был получен с учётом следующего утверждения: непрерывность поверхности теряется (т.е. образуется слом) в тех местах, где число вершин контрольной сетки равно степени поверхности. Для этого должны совпадать три (в нашем случае) линии (столбца или ряда) контрольной сетки.

Для вставки дополнительных сплошных линий в контрольную сетку используется панель При нажатии на эту панель FastShip запрашивает интервал, в который нужно вставить дополнительную линию. В ответ на этот запрос нужно указать две вершины контрольной сетки, между которыми посередине будет вставлена дополнительная сплошная линия.

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

4.8 Сглаживание полученной поверхности

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

Рис.4.18. Диалоговое окно Part Properties

Перед сглаживанием поверхности целесообразно увеличить плотность контрольной сетки, чтобы программа в процессе сглаживания выiитывала большее количество точек. Увеличить плотность сетки можно выбрав из меню Parts подменюProperties. В открывшемся диалоговом окне (рис.4.18.) нужно выделить поверхность, плотность которой нужно увеличить и нажать на вкладке Mesh Div. Появится следующее диалоговое окно, в котором можно задать плотность сетки по столбцам и по рядам (рис.4.19.).

Рис.4.19. Диалоговое окно Mesh Divisions.

Изменим плотность поверхности:

для корпуса примем 6 на 8

для бака и юта примем 4 на 5

Чтобы сгладить поверхность из меню Sections выбе