ГОСТ Р ИС0 10303-509—2009
Объект manifold_surface_shape_representation является подтипом объекта shape_representation,
определенного в 10303-41, который состоит изодного или нескольких объектов shell_basod_surface_model.
Каждый объект shell_based_surface_model построен из объектов open_shell и closed_shell, которые
являются совокупностями объектов face. Объект connected_face_set. являющийся супертипом объектов
opon_shell и closod_shell, недолжен быть реализован. Объекты face используют объекты edge и vertex;
все они должны ссылаться на геометрические объекты, такие как point, curve и surface. Связь между
топологией и геометрией может быть установлена посредством объекта face_surface либо объекта advan-
cod_face в соответствии с ИСО 10303-511. Эти два варианта отличаются выбором допустимых подтипов
объектов point, curve и surface, а также ограничениями на ссылки на их базовые геометрические объекты.
П р и м е ч а н и е — Представление объектов face_surface как объектов advanced_face рекомендуется для
моделей односвязных поверхностей, предназначенных для применения совместно с твердотельными моделя ми
граничного представления. Интеграция такой модели односвязной поверхности, например, в модель расши
ренного граничного представления, определенную в ИСО 10303-514 (1]. будет проще.
Все геометрические объекты должны быть определены как трехмерные, за исключением объектов
двухмерной геометрии, используемыхдля определенияобъектов pcurve. Использованиеодномерных объек
тов cartesian_point не допускается.
Неограниченные геометрические объекты должны быть обрезаны посредством топологических конст
рукций.
Элементы Item объекта manifold_surface_shape_representation также могут быть объектами типа
mappedjtem. определенными в ИСО 10303-43, или axis2_placement_3d. Они используются для объеди
нения одного или нескольких объектов manifold_surface_shapo_representation в один новый объект mani-
fold_surface_shape_representation.
Правила WHERE вданном объекте ограничивают использование типовданныхдля объектов, импор
тированных из ИСО 10303-42 и ИСО 10303-43 в соответствии с приведенными выше утверждениями.
Некоторые проверки типа объектов и ограничений определены в следующихдвух функциях:
- msf_curve_check;
- msf_surface_chock.
Вформальныхутверждениях WR6 и WR10, приведенных ниже, эти функции проверяют объекты curve
и surfaco всех объектов edge и faces, входящих в область определения объекта manifold_sur-
face_shape_representation. за исключением тех. которые содержатся в дереве ссылок объекта advan-
ced_face; геометрия объекта advanced_face проверяется отдельным набором правил. Функции автомати
чески оценивают все базовые геометрические объекты, для чего они вызываются рекурсивно.
Пример
—
Объект pcurve может ссылат ься как на объект curve, так и на объект surface. Функция
m sf curve check проверяет не только объект pcurve. но также его базовые геометрические объекты.
Поэтому данная функция будет вызыват ь не только себя, но и функцию msf_surface_check.
П р и м е ч а н и я
1 В настоящий стандарт не включена функция проверки объектов point и их базовых объехтов curve и
surface. Это объясняется тем, что на все объекты curve и surface из manifold_surface_shape_representation
ссылаются объекты edge и face, поэтому их проверка осуществляется двумя уже существующими функциями.
2 Прикладной протокол, использующий настоящий стандарт, должен явным образом разрешить, чтобы
объект shape_representation мог быть реализован как объект manifold_surface_shape_representation.
EXPRESS-сяецификация:
*)
ENTITY manifold_surface_sbape_representation
SUBTYPE OF (shape_representation);
WHERE
WR1; SIZEOF (QUERY (it <* SELF.items |
NOT (SIZEOF ([’AIC_MANIFOLD_SURFACE.SHELL_BASED_SURFACE_MODEL’,
’AiC_MANIFOLD_SURFACE.MAPPEDJTEM*.
*AIC_MANIFOLD_SURFACE.AXIS2_PLACEMENT_3D’] *TYPEOF (it)) = 1)))= 0:
WR2: SIZEOF (QUERY (it <* SELF.items |
SIZEOF ([’AIC_MANIFOLD_SURFACE.SHELL_BASED_SURFACE_MODEL’.
’AIC_MANIFOLD SURFACE.MAPPEDJTEM’) * TYPEOF (it)) = 1)) > 0;
5