# Подгонка компоновки к симметричным обводам

**10 октября 2026 · геометрическая версия v3.** Единственный действующий файл модели: `models/ECONA/ECONA_ECONA.FCStd`. В FreeCAD открывается целиком, внешние исходные модели и дополнения для просмотра не требуются.

![Три вида и аксонометрия с метрической сеткой](../assets/geometry/fitted-model-four-views.png)

Изображение составлено из четырёх снимков действительной сборки FreeCAD. Сетка построена в координатах модели с шагом **1000 мм**; числа на ней — метры. Три вида: сверху, сбоку и с носа. На аксонометрии показаны направления осей; цветной указатель вынесен в свободную область и не обозначает начало координат судна. X направлен к носу, Y к левому борту, Z вверх. Z=0 остаётся исходной отметкой, а не ватерлинией.

## Что подогнано

Обе CAD-оболочки новой обшивки сохранены без изменения геометрии. Для исходных перегородок, элементов внутренней компоновки, палуб, моста и надстройки применено общее поле перемещений от исходных контуров обоих поплавков к их ранее построенному среднему контуру. Общие координаты исходных деталей преобразуются одинаково. На границе обшивки контрольные точки перенесены на сечения новой оболочки при неизменном X; это сохраняет поперечное положение переборок. Крупные исходные грани дополнительно разбиты для следования изменённой геометрии.

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

Максимальное перемещение вершины при подгонке — **66,020 мм**. Эта величина отражает местные различия исходной геометрии с новыми усреднёнными обводами.

| Группа модели | Объектов | Содержание |
|---|---:|---|
| Наружная обшивка | 2 | Зеркальные CAD-оболочки PortSkin / StarboardSkin |
| Поперечные перегородки и элементы набора | 66 | Поверхностные фрагменты, разделённые по X и исходному материалу; это не 66 отдельных полноразмерных переборок |
| Продольные перегородки, полы и элементы набора | 10 | Сохранившиеся внутренние поверхности исходной компоновки |
| Палубы и мост | 10 | Подогнанные исходные палубные и наклонные поверхности |
| Надстройка | 20 | Стенки и поверхности крыши |
| Шверты и рули | 7 | Исходные поверхности движущихся/подводных элементов |
| Окна, люки и оборудование | 11 | Исходные приборы и элементы остекления/проёмов |

Весь документ содержит **137 объектов**, включая группы и паспорта; 124 объекта подогнанной компоновки представлены сетками Mesh. Они вместе содержат 81 274 треугольника. Обшивка каждого поплавка содержит 19 447 CAD-граней. Это поверхностная геометрическая модель; объём материала, толщины и сечения ещё не заданы.

Номинальная длина поплавков — **13,600 м**, ширина по обшивке — **7,398 м**. Исходный центральный носовой элемент выступает до X=13,91676 м; поэтому длина всей сборки больше длины поплавков. Начало X=0 соответствует крайней кормовой точке исходной геометрии. Внутренние части и надстройка не были принудительно зеркально скопированы: симметрия относится к наружной обшивке пары поплавков.

## Что удалено

Из действующего документа **физически удалены 95 заменённых объектов**, включая все прежние `Surface_*`, прежнюю сборку `Geometry`, вспомогательные экспортные линии 3DS/DXF, старую диагностику и старые вспомогательные оси. Их копии не оставлены скрытыми слоями в модели.

При выделении сохраняемых поверхностей исключены **782 грани прежней наружной обшивки**. После преобразования дополнительно удалены **134 вырожденные грани** с учётом фактической точности хранения FreeCAD Mesh и **7 совпадающих граней**. Сохраняемые части старых общих сеток вошли в новые функциональные группы уже с подогнанной геометрией.

Контрольные версии и резервные FCStd/FCBak убраны из рабочей папки в системную корзину после успешной проверки. Единственная рабочая модель остаётся по указанному выше пути.

## Проверка и пределы результата

Сохранённая конечная модель открыта отдельным процессом FreeCAD. Подтверждены сохранность обеих валидных CAD-оболочек, отсутствие заменённых объектов и соответствие всех сохраняемых треугольников подготовленной геометрии в точности хранения Mesh.

Проверены **1670 контрольных вершин примыканий** к наружной обшивке. Максимальная геометрическая невязка — **0,000468 мм** при допуске проверки 0,005 мм. Это численная точность контрольных точек в файле, а не обещание такой точности изготовления. Максимальная неплоскостность фрагментов поперечных поверхностей по X — 0,015625 мм; часть этой величины присутствует в исходной сетке.

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

## Файлы проверки и инструменты

- `research/geometry/fitted_model.json` — метод, классификация удалённых/сохранённых граней, перемещения по частям.
- `research/geometry/fitted_model_validation.json` — проверка конечного файла, геометрические допуски и SHA-256.
- `research/geometry/fitted_model_cleanup.json` — список удалённых объектов и контрольных копий.
- `research/geometry/fitted_views.json` — направления камер, размеры снимков и шаг сетки.
- `docs/assets/geometry/fitted-model-four-views.png` — итоговый лист 3280×2360 пикселей.
- `docs/assets/geometry/fitted-top.png`, `fitted-side.png`, `fitted-bow.png`, `fitted-axon.png` — отдельные снимки 1600×1000.

Скрипты этапа находятся в `tools/geometry/`: `prepare_fitted_model.py`, `install_fitted_model_freecad.py`, `verify_fitted_model_freecad.py`, `verify_fitted_contacts.py`, `finalize_fitted_model_freecad.py`, `render_fitted_views_freecad.py`, `assemble_view_sheet.py`. Подготовка и сравнение используют временные исходные данные и контрольную версию до подгонки; после уборки их нужно восстановить из корзины для воспроизведения именно этого перехода. Просмотр и получение новых видов используют только действующую модель.

Предыдущие отчёты [исходной сборки](16_geometry_baseline.md) и [построения обшивки](17_symmetric_skin.md) описывают исторические этапы, а не текущий состав документа.
