Коротко
- Команда Mesh создаёт редактируемую mesh-геометрию из поверхностей NURBS, polysurface и объектов SubD.
- ShrinkWrap может создавать охватывающую геометрию mesh из NURBS, SubD, mesh, облаков точек и точечных объектов.
- В настройках Mesh более высокая плотность и меньшие допуски обычно означают больше полигонов и более медленную обработку.
- В ShrinkWrap положительное значение Offset увеличивает mesh, а отрицательное — уменьшает.
В официальной документации Rhino 8 описаны команды Mesh и ShrinkWrap — два разных способа преобразовать архитектурные модели и геометрию из разных источников в mesh. Команда Mesh работает с поверхностями NURBS, polysurface и объектами SubD, а ShrinkWrap, помимо них, может создавать охватывающую mesh-геометрию из mesh, облаков точек и точечных объектов. В руководстве рассказываем, какие методы и настройки стоит рассмотреть перед экспортом, визуализацией и работой с данными сканирования в Rhino 8.
1. Сначала определите, для чего нужна mesh-геометрия
Mesh — это описание поверхности с помощью вершин и полигонов. Mesh-объекты Rhino могут состоять из треугольников и четырёхугольников. Для экспорта NURBS-модели в другой формат, более детального представления поверхности или преобразования данных сканирования в пригодный для обработки вид могут потребоваться разные настройки mesh. Поэтому перед запуском команды определите основную задачу: экспорт, визуальное представление или объединение разной геометрии в одну замкнутую mesh-модель.
В Rhino 8 команда Mesh создаёт mesh из поверхностей NURBS, polysurface и объектов SubD. Полученная mesh-геометрия является отдельным от исходного объекта редактируемым объектом. Согласно документации Rhino, mesh, созданная из замкнутого тела, может быть непрерывной, то есть замкнутой; это важно при экспорте в файлы для быстрого прототипирования, например STL. Render mesh, используемая для затенения во вьюпорте, — не то же самое: она не создаётся как редактируемая mesh и может быть извлечена командой ExtractRenderMesh.
2. Настройте плотность mesh под задачу
Запустите команду Mesh, включите предварительный просмотр и проверьте настройки. Ползунок плотности в упрощённых настройках влияет на количество полигонов, создаваемых на поверхности. В документации Rhino 8 для Density указано значение по умолчанию 0,5 и допустимый диапазон от 0 до 1. Более высокое значение создаёт больше полигонов, поэтому учитывайте не только видимое качество, но и то, для чего будет использоваться файл.
Расширенные настройки позволяют выбрать критерий, наиболее важный для конкретной модели. Например, Maximum distance, edge to surface ограничивает отклонение рёбер mesh от поверхности. Уменьшение этого значения повышает точность, но увеличивает количество полигонов и замедляет обработку. Параметр Maximum edge length способствует созданию более коротких рёбер; в документации Rhino этот вариант рекомендуется, когда нужны полигоны примерно одинакового размера. Оба параметра зависят от масштаба модели.
| Настройка | Значение, указанное в документации | Эффект |
|---|---|---|
| Density | По умолчанию 0,5; диапазон 0–1 | Чем выше значение, тем больше полигонов. |
| Maximum angle | По умолчанию 0°; рекомендуемый диапазон 5°–90° | Влияет на плотность mesh в областях с высокой кривизной; значение 0 отключает этот критерий. |
| Maximum aspect ratio | По умолчанию 0; рекомендуемый диапазон для ненулевых значений — √2–100 | Меньшие значения могут обеспечить более правильную форму полигонов, но замедлить обработку. |
| Minimum edge length | По умолчанию 0,0001 системной единицы | Более высокие значения могут ускорить обработку и создать mesh с меньшим количеством полигонов, но снизить точность. |
| Maximum edge length | По умолчанию 0 | Малые значения замедляют обработку, но создают больше полигонов более близкого размера. |
| Maximum distance, edge to surface | По умолчанию 0 | Малые значения повышают точность и количество полигонов, а также увеличивают время обработки. |
Параметр Refine mesh итеративно делит грани в соответствии с заданными критериями угла, длины ребра и расстояния до поверхности. Если отключить его, mesh будет создаваться быстрее и содержать меньше полигонов, но точность снизится. В документации указано, что этот параметр недоступен для extrusions и ruled surfaces. Чтобы оценить влияние настроек, сравните предварительный просмотр и полученную mesh на одной и той же модели. Это поможет принять решение, а не полагаться на пробу только на одном объекте.
3. Проверьте швы и плоские поверхности в объединённой геометрии
Если mesh должна быть соединена по границам поверхностей в polysurface, обратите внимание на параметр Jagged seams. Когда он включён, поверхности преобразуются в mesh по отдельности, а их рёбра не сшиваются. Это может ускорить обработку и уменьшить количество полигонов, но на стыках могут появиться зазоры, и mesh может оказаться незамкнутой. Если параметр выключен, Rhino может объединить рёбра mesh на стыкующихся поверхностях и создать замкнутую mesh.
Simple planes создаёт mesh по границам плоских поверхностей, заполняя внутреннюю область треугольниками. Для плоскостей со сложными границами это может привести к увеличению числа полигонов и замедлению обработки. Если параметр включён, для плоских поверхностей игнорируются все остальные настройки, кроме Jagged seams; Rhino создаёт для них mesh с минимально возможным количеством полигонов. Используйте предварительный просмотр, чтобы проверить, соответствуют ли настройки нужному результату. Учтите также, что в режимах отображения Rendered и Raytraced предварительный просмотр каркаса render mesh не показывается.
4. Рассмотрите ShrinkWrap для разной геометрии и фрагментов сканирования
ShrinkWrap создаёт новую mesh, охватывающую выбранную геометрию. В качестве входных объектов можно использовать поверхности NURBS, SubD, mesh, облака точек и точечные объекты. Среди описанных McNeel сценариев — создание единой mesh-модели из нескольких объектов, объединение фрагментов данных сканирования в одну mesh, получение замкнутой mesh из повреждённой геометрии и использование в процессах обратного проектирования.
Основной параметр Target Edge Length задаёт приблизительную длину рёбер в выходной mesh; по умолчанию значение рассчитывается автоматически. Offset применяется в единицах модели: положительное значение увеличивает mesh наружу и повышает число граней, отрицательное — уменьшает mesh и сокращает количество граней. Smoothing iterations определяет силу сглаживания. Ноль отключает сглаживание; при увеличении значения mesh может потерять больше граней и сильнее уменьшиться.
Polygon Optimization настраивается в диапазоне от 0% до 100%. Чем выше процент, тем больше граней удаляется; грани на острых рёбрах сохраняются. Однако при увеличении этого значения длина рёбер выходной mesh может сильнее отклоняться от заданной. Inflate Vertices and Points создаёт mesh из каждой вершины или точки в mesh либо облаке точек. Для точек и облаков точек эта функция включена по умолчанию, для остальных типов объектов — выключена. Пересекающиеся раздутые фрагменты mesh могут объединяться в более крупную mesh. Параметр Fill holes in input objects закрывает отверстия во входных объектах перед обработкой и часто бывает полезен, но может закрыть и небольшие отверстия, оставленные намеренно.
Что это значит для архитектурных и визуализационных процессов?
Команда Mesh даёт архитекторам и специалистам по визуализации возможность управлять настройками при подготовке моделей на основе NURBS или SubD к экспорту или этапам, требующим mesh. ShrinkWrap может быть полезен командам, работающим с фрагментами облаков точек или геометрией, которую сложно исправить. В обоих случаях важно учитывать, что более детальная mesh увеличивает нагрузку на обработку и количество полигонов, а меньшая плотность может снизить точность представления поверхности.
Частые ошибки
Считать, что повышение плотности mesh всегда улучшает результат: с ростом плотности увеличивается и количество полигонов.
Ожидать замкнутую mesh при включённом
Jagged seams: этот параметр преобразует поверхности по отдельности и может оставлять зазоры между ними.Считать, что положительное и отрицательное значения Offset в ShrinkWrap действуют одинаково: положительное увеличивает mesh, отрицательное уменьшает.
Предполагать, что автоматическое закрытие отверстий подходит для любой модели: могут закрыться микрозазоры, оставленные намеренно.
Искать предварительный просмотр каркаса render mesh в режимах Rendered или Raytraced: согласно документации, в этих режимах он не отображается.
Источники
Источников: 2Тексты источников не перепечатываются; короткие цитаты отмечены, остальное — наш пересказ и комментарий.
Для архитектурных бюро и команд визуализации в Турции ценность этих двух команд заключается в возможности выбирать метод в зависимости от типа геометрии, а не решать все задачи одними и теми же настройками mesh. Особенно при экспорте и работе с данными сканирования проверка предварительного просмотра и критериев может помочь избежать лишних полигонов.
При этом важно помнить, что высокая плотность и жёсткие допуски означают более медленную обработку и более тяжёлую mesh. Бюро стоит проверять настройки на тестовой геометрии с учётом целевого формата файла и необходимой точности поверхности, а результаты закрытия отверстий и применения Offset в ShrinkWrap — сравнивать с исходной моделью. В документации не указаны требования к оборудованию или условия лицензирования, поэтому не следует делать предположений на эти темы.
Частые вопросы
Из каких объектов команда Mesh в Rhino 8 создаёт mesh?
Команда Mesh создаёт mesh из поверхностей NURBS, polysurface и объектов SubD. Созданная mesh является отдельным от исходного объекта редактируемым объектом.
Какие типы геометрии поддерживает Rhino ShrinkWrap?
ShrinkWrap может создавать охватывающую mesh-геометрию из поверхностей NURBS, объектов SubD, mesh, облаков точек и точечных объектов.
Как значение Offset в ShrinkWrap влияет на mesh?
Положительное значение Offset увеличивает mesh наружу и повышает число граней. Отрицательное значение уменьшает mesh и сокращает количество граней.



