ADN Open CIS
Сообщество программистов Autodesk в СНГ

08/08/2015

Твердые тела и поверхности Fusion - Часть 2

Доступ к топологии объектов

Есть другие методы для получения доступа к объектам B-Rep - кроме обхода иерархии объекта, - которые являются более удобным для использования в некоторых случаях. Эти методы заключаются в следующем.

Из характеристик

Свойство граней объекта Feature может использоваться, чтобы получить грани, которые были созданы этой функцией. Некоторые функции также обеспечивают категорированный доступ к граням, которые они создают. Например, функция вытягивания предоставляет свойства EndFaces, StartFaces и SideFaces, которые возвращают торцы и стороны выдавливания.

По выбору

В тех случаях, когда не представляется возможным определить необходимые объекты автоматически, пользователю может быть предложено выбрать их. Выбор пользователем из твердых моделей возвращают объекты BRepBody, BRepFace, BRepEdge или BRepVertex.

По ассоциации

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

По геометрии

Запросить B-Rep геометрию, которая отвечает определенным критериям, можно также с помощью "оценщика объектов". Например, можно запросить все плоские грани, параллельные плоскости XY и направленные "вверх". Это может быть сделано с помощью иерархии B-Rep, что объяснено выше, для доступа ко всем граням, а затем геометрическим оценщикам, ниже объяснено, как производить поиска граней, которые отвечают критериям.

Оценка объектов топологии

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

 

Ниже приведены еще три модели, которые также состоят из 6 граней и 12 ребер.

 

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

Есть некоторые общие запросы, которые могут быть выполнены на объектах B-Rep, которые обеспечивают общую форму соответствующей информацией. Эти запросы будут выполнены с использованием объектов оценщика API, как показано ниже.

 

Оценщики выполняют многие из "оценок", родственных в параметрическом пространстве поверхности или кривой. Координаты определяют местоположение в пространстве модели, путем указания значений х, у, и z в трехмерном пространстве модели. В пространстве параметров, координаты определяют местоположение, путем указания значений u и v в параметрическом пространстве конкретной поверхности. Каждая поверхность имеет своё уникальное 2-мерное пространство параметров. Изображение ниже показывает плоскую поверхность с сеткой, нарисованной на нем, что представляет собой его параметрическое пространство. Любое место на поверхности может быть точно указано при помощи двух значений. Для параметрического пространства, вместо х и у, для обозначения значений координат используются буквы /1} u и v. Диапазон или размер параметрического пространства может изменяться в зависимости от геометрии поверхности и, того как грань была обрезана при помощи его границ. Необрезанные NURBS поверхности имеет минимальные значения (0, 0) и максимальные (1, 1), как указано на рисунке ниже. Тем не менее, цилиндр находится в диапазоне от - π до π в направлении вокруг цилиндра и бесконечен вдоль оси цилиндра. Плоскость является неограниченной и бесконечной в обоих направлениях, хотя, когда поверхность связана с гранью, границы грани используются для ограничения поверхности. Также вы не можете предположить, что параметризация равномерна по всей поверхности. Это означает, что для поверхностей NURBS (0,5, 0,5), не обязательно находится в геометрическом центре поверхности.

 

Изображение ниже показывает некоторые примеры других форм поверхности с их параметрической сеткой. Левая поверхность выглядит так, как будто это может быть вариация плоской поверхности: представьте, что плоскость выше выполнена из резины и растягивается и изгибается в форму ниже. Любая точка на поверхности может все еще быть определена с помощью u-v координат. Поверхность в середине может быть сформирована путем оборачивания плоской грани в цилиндр, где два значения по-прежнему могут определить любую точку на поверхности. Для создания поверхности, расположенной справа, две грани по краям плоской поверхности были сокращены до нулевой длины, но значение u-v по-прежнему определяет любую точку на этой поверхности настолько же хорошо.

 

Как отмечалось ранее, объект BRepCoEdge является 2D объектом. Это определяет границу грани в параметрическом пространстве поверхности, связанной с гранью. BRepEdge может вернуться до двух объектов BRepCoEdge; по одному для каждого грани, связанной с краем. Геометрия связана с объектом BRepCoEdge в двух измерениях и координаты для геометрии в параметрическом пространстве поверхности.

Автор перевода: Дмитрий Емельянов

Обсуждение: http://adn-cis.org/forum/index.php?topic=2994

Опубликовано 08.08.2015
Отредактировано 08.09.2015 в 09:54:56