ФЕДЕРАЛЬНОЕ
АГЕНТСТВО
ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ
|
НАЦИОНАЛЬНЫЙ |
ГОСТ
Р ИСО |
Системы
автоматизации производства
и их интеграция
ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ
И ОБМЕН ЭТИМИ ДАННЫМИ
Часть 521
Прикладные интерпретированные конструкции.
Подповерхность многообразия
ISO
10303-521:2003
Industrial automation systems and integration - Product data
representation and
exchange - Part 521: Application
interpreted construct: Manifold subsurface
(IDT)
|
Москва Стандартинформ 2008 |
Предисловие
Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. № 184-ФЗ «О техническом регулировании», а правила применения национальных стандартов Российской Федерации - ГОСТ Р 1.0-2004 «Стандартизация в Российской Федерации. Основные положения»
Сведения о стандарте
1 ПОДГОТОВЛЕН Государственным научным учреждением «Центральный научно-исследовательский и опытно-конструкторский институт робототехники и технической кибернетики» на основе собственного аутентичного перевода стандарта, указанного в пункте 4
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 459 «Информационная поддержка жизненного цикла изделий»
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 11 марта 2008 г. № 40-ст
4 Настоящий стандарт идентичен международному стандарту ИСО 10303-521:2003 «Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 521. Прикладные интерпретированные конструкции. Подповерхность многообразия» (ISO 10303-521:2003 «Industrial automation systems and integration - Product data representation and exchange - Part 521: Application interpreted construct: Manifold subsurface»).
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении F
5 ВВЕДЕН ВПЕРВЫЕ
Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе «Национальные стандарты», а текст изменений и поправок - в ежемесячно издаваемых информационных указателях «Национальные стандарты». В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет
СОДЕРЖАНИЕ
Введение
Стандарты комплекса ИСО 10303 распространяются на компьютерное представление информации об изделиях и обмен данными об изделиях. Их целью является обеспечение нейтрального механизма, способного описывать изделия на всем протяжении их жизненного цикла. Этот механизм применим не только для нейтрального обмена файлами, но является также основой для реализации и совместного доступа к базам данных об изделиях и организации архивирования.
Стандарты комплекса ИСО 10303 представляют собой набор отдельно издаваемых стандартов (частей). Стандарты данного комплекса относятся к одной из следующих тематических групп: методы описания, методы реализации, методология и основы аттестационного тестирования, интегрированные обобщенные ресурсы, интегрированные прикладные ресурсы, прикладные протоколы, комплекты абстрактных тестов, прикладные интерпретированные конструкции и прикладные модули. Настоящий стандарт входит в группу прикладных интерпретированных конструкций.
Прикладная интерпретированная конструкция (ПИК) обеспечивает логическую группировку интерпретированных конструкций, поддерживающих конкретную функциональность для использования данных об изделии в разнообразных прикладных контекстах. Интерпретированная конструкция представляет собой обычную интерпретацию интегрированных ресурсов, поддерживающую требования совместного использования информации прикладными протоколами.
Настоящий стандарт определяет прикладную интерпретированную конструкцию для подповерхности многообразия. В нем дается определение представления формы, содержащей незамкнутые оболочки, каждая из которых идентифицируется как часть другой незамкнутой или замкнутой оболочки. Оболочки определены с использованием граней с явной топологией и полностью определенной геометрией. В определениях граней оболочек в данной ПИК либо используется определение объекта advanced_face по ИСО 10303-511, либо они имеют сходные свойства.
ГОСТ Р ИСО 10303-521-2008
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Системы автоматизации производства и их интеграция ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ Часть 521 Прикладные
интерпретированные конструкции. Industrial automation systems and integration. Product data
representation and exchange. |
Дата введения -2008-09-01
Настоящий стандарт определяет интерпретацию интегрированных ресурсов, обеспечивающую соответствие требованиям к определению представления формы, содержащей незамкнутые оболочки, определенные как подмножества связанных граней. Область определения каждого подмножества связанных граней является частью области определения другой незамкнутой или замкнутой оболочки. В подмножестве связанных граней отдельные грани или ребра могут быть идентифицированы как подграни или подребра.
Требования настоящего стандарта распространяются на:
- трехмерную геометрию;
- расширенные грани;
- подмножества связанных граней;
- отображения и геометрические преобразования;
- незамкнутые оболочки;
- взаимосвязи между областями определения топологических объектов;
- подребра;
- подграни;
- неограниченную геометрию со связанными топологическими границами;
- использование топологии для ограничения геометрических объектов.
Требования настоящего стандарта не распространяются на:
- двумерную геометрию, кроме определения параметрических кривых в параметрическом пространстве поверхности;
- трехмерные модели граничного представления;
- ограниченные кривые, кроме полилиний и би-сплайновых кривых;
- ограниченные поверхности, кроме би-сплайновых поверхностей;
- геометрию не многообразий;
- вынесенные кривые и поверхности;
- неограниченную геометрию без топологических границ.
В настоящем стандарте использованы ссылки на следующие международные стандарты:
ИСО/МЭК 8824-1:1998 Информационные технологии. Взаимосвязь открытых систем. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации
ИСО 10303-1:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы
ИСО 10303-11:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS
ИСО 10303-21:2002 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 21. Методы реализации. Кодирование открытым текстом структуры обмена
ИСО 10303-41:2000 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 41. Интегрированные обобщенные ресурсы. Основы описания и поддержки изделий
ИСО 10303-42:2000 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 42. Интегрированные обобщенные ресурсы. Геометрическое и топологическое представление
ИСО 10303-43:2000 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 43. Интегрированные обобщенные ресурсы. Структуры представлений
ИСО 10303-202:1996 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 202. Прикладные протоколы. Ассоциативные чертежи
ИСО 10303-509:2001 Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 509. Прикладная интерпретируемая конструкция. Неразнородная поверхность
ИСО 10303-511:2001 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 511. Прикладные интерпретированные конструкции. Топологически ограниченная поверхность
ИСО 10303-514:1999 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 514. Прикладные интерпретированные конструкции. Расширенное граничное представление
В настоящем стандарте применены следующие термины:
- приложение (application);
- прикладной контекст (application context);
- прикладной протокол, ПП (application protocol, АР);
- метод реализации (implementation method);
- интегрированный ресурс (integrated resource);
- интерпретация (interpretation);
- данные об изделии (product data).
В настоящем стандарте применены следующие термины:
- линейно связанный (arcwise connected);
- осесимметричный (axi-symmetric);
- граница (boundary);
- ограничения (bounds);
- координатное пространство (coordinate space);
- кривая (curve);
- область определения (domain);
- пределы (extent);
- незамкнутая кривая (open curve);
- ориентируемый (orientable);
- поверхность (surface);
- топологический смысл (topological sense).
В настоящем стандарте применен следующий термин:
прикладная интерпретированная конструкция; ПИК (application interpreted construct, AIC).
В настоящем стандарте применен следующий термин:
расширенная грань (advanced face).
В настоящем стандарте также применены следующие термины с соответствующими определениями:
подмножество связанных граней (connected face subset): Множество линейно связанных граней, областью определения которого является часть области определения существующего множества связанных граней.
Примечание - Требованием настоящего стандарта также является, чтобы подмножество связанных граней имело тип незамкнутой оболочки.
представление формы подповерхности многообразия (manifold subsurface shape representation): Представление формы, содержащее подмножества связанных граней в форме незамкнутых оболочек.
Примечание - Каждая незамкнутая оболочка имеет область определения, которая является частью области определения другого множества связанных граней. Грани подмножества связанных граней могут быть определены как подграни.
подребро (subedge): Ребро, областью определения которого является часть области определения другого ребра.
подгрань (subface): Грань, областью определения которой является часть области определения другой грани.
Примечание - В настоящем стандарте подгрань имеет область определения, которая является частью области определения расширенной грани.
В настоящем разделе определена EXPRESS-схема, в которой используются элементы интегрированных ресурсов и содержатся типы, конкретизации объектов и функции, относящиеся к настоящему стандарту.
Примечание - В интегрированных ресурсах допускается существование подтипов и элементов списков выбора, не импортированных в данную ПИК. Такие конструкции исключают из дерева подтипов или из списка выбора посредством правил неявного интерфейса, определенных в ИСО 10303-11. Ссылки на исключенные конструкции находятся вне области применения данной ПИК. В некоторых случаях исключаются все элементы списка выбора. Поскольку ПИК предназначены для реализации в контексте прикладного протокола, элементы списка выбора будут определяться областью применения прикладного протокола.
Данная прикладная интерпретированная конструкция предоставляет непротиворечивое множество геометрических и топологических объектов для определения представления формы подповерхности многообразия. Грани могут быть расширенными гранями или подгранями, ссылающимися на расширенные грани. Ребра должны быть подребрами либо иметь геометрию, определенную кривыми. Объектом самого верхнего уровня в данной ПИК является объект manifold_subsurface_shape_representation, который является конкретизацией объекта shape_representation (см. ИСО 10303-41). Относящиеся к этому объекту правила обеспечивают полное определение топологии и геометрии.
Примечание - В данной ПИК использованы все объекты и типы из ПИК, определяющей топологически ограниченную поверхность (aic_topologically_bounded_surface). См. ИСО 10303-511.
EXPRESS-спецификация
*)
SCHEMA aic_manifold_subsurface;
USE FROM aic_topologically_bounded_surface; - - ISO 10303-511
USE FROM geometry_schema - - ISO 10303-42
(cartesian_transformation_operator_3d);
USE FROM topology_schema - - ISO 10303-42
(closed_shell,
connected_face_set,
connected_face_sub_set,
face,
open_shell,
subedge,
subface);
USE FROM representation_schema(mapped_item); - - ISO 10303-43
USE FROM product_property_representation_schema - - ISO 10303-41
(shape_representation);
Примечание - Схемы, на которые выше даны ссылки, можно найти в следующих стандартах комплекса ИСО 10303:
geometry_schema - ИСО 10303-42;
topology_schema - ИСО 10303-42;
representation_schema - ИСО 10303-43;
product_property_representation_schema - ИСО 10303-41;
aic_topologically_bounded_surface - ИСО 10303-511.
Для независимой реализации в схемах прикладных протоколов, в которых используется данная ПИК, предназначены следующие объекты:
- advanced_face*;
- axis2_placement_2d*;
- axis2_placement_3d*;
- brep_with_voids;
- bezier_curve*;
- bezier_surface*;
- b_spline_curve_with_knots*;
- b_spline_surface_with_knots*;
- cartesian_point *;
- cartesian_transformation_operator_3d;
- circle*;
- closed_shell;
- conical_surface*;
- definitional_representation*;
- degenerate_toroidal_surface*;
- connected_face_sub_set;
- cylindrical_surface*;
- direction*;
- edge_curve*;
- edgejoop*;
- ellipse*;
- face_bound*;
- face_outer_bound*;
- geometric_representation_context*;
- hyperbola*;
- line*;
- manifold_subsurface_shape_representation;
- mapped_item;
- open_shell;
- parabola*;
- parametric_representation_context*;
- pcurve*;
- plane*;
- polyline*;
- quasi_uniform_curve*;
- quasi_uniform_surface*;
- rational_b_spline_curve*;
- rational_b_spline_surface*;
- representation_map;
- spherical_surface*;
- subedge;
- subface;
- surface_of_linear_extrusion*;
- surface_of_revolution*;
- toroidal_surface*;
- uniform_curve*;
- uniform_surface*;
- vector*;
- vertex_loop*;
- vertex_point*.
Примечание - Объекты, помеченные символом «*», определены в ПИК aic_topologically_bounded_surface (см. ИСО 10303-511).
Прикладной протокол, использующий данную ПИК, должен обеспечивать, чтобы объект shape_representation реализовывался как объект manifold_subsurface_shape_representation.
Объект manifold_subsurface_shape_representation является подтипом объекта shape_representation, в котором форма изделия представлена конкретизациями объектов connected_face_sub_set.
Каждый объект connected_face_sub_set должен также иметь тип open_shell.
Объекты face объектов connected_face_sub_set должны иметь тип advanced_face или subface.
EXPRESS-спецификация
*)
ENTITY manifold_subsurface_shape_representation
SUBTYPE OF (shape_representation);
WHERE
WR1: SIZEOF (QUERY (it <* SELF.items|
NOT (SIZEOF (['AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET', 'AIC_MANIFOLD_SUBSURFACE.MAPPED_ITEM', 'AIC_MANIFOLD_SUBSURFACE.AXIS2_PLACEMENT_3D']* TYPEOF(it)) = 1))) = 0;
WR2: SIZEOF (QUERY (it <* SELF.items|
SIZEOF(['AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET', 'AIC_MANIFOLD_SUBSURFACE.MAPPED_ITEM']* TYPEOF(it)) = 1)) > 0;
WR3: SIZEOF (QUERY (mi <* QUERY (it <* items|
'AIC_MANIFOLD_SUBSURFACE.MAPPED_ITEM' IN TYPEOF(it))|
NOT ('AIC_MANIFOLD_SUBSURFACE.MANIFOLD_SUBSURFACE_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0;
WR4: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it))|
NOT('AIC_MANIFOLD_SUBSURFACE.OPEN_SHELL' IN TYPEOF(cfss)))) = 0;
WR5: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it))|
NOT((('AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(cfss.parent_face_set)) AND (SIZEOF (QUERY (fac <* cfss.parent_face_set.cfs_faces| NOT advanced_face_properties(fac))) = 0)) OR (SIZEOF (QUERY (fac <* cfss.parent_face_set.cfs_faces| NOT ('AIC_MANIFOLD_SUBSURFACE.ADVANCED_FACE' IN TYPEOF(fac)))) = 0)))) = 0;
WR6: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)) (SIZEOF (QUERY (fac <* cfss\connected_face_set.cfs_faces| NOT advanced_face_properties(fac))) = 0))) = 0;
WR7: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| 'AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP' IN TYPEOF(bnds.bound))| NOT (SIZEOF (QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT(('AIC_MANIFOLD_SUBSURFACE.EDGE_CURVE' IN TYPEOF(oe.edge_element)) OR ('AIC_MANIFOLD_SUBSURFACE.SUBEDGE' IN TYPEOF(oe.edge_element))))) = 0))) = 0))) = 0))) = 0;
WR8: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUBSET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| 'AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP' IN TYPEOF(bnds.bound))| NOT (SIZEOF (QUERY (oe <* elp_fbnds.bound\path.edge_list NOT(('AIC_MANIFOLD_SUBSURFACE.VERTEX_POINT' IN TYPEOF(oe.edge_start)) AND ('AIC_MANIFOLD_SUBSURFACE.VERTEX_POINT' IN TYPEOF(oe.edge_end))))) = 0))) = 0))) = 0))) = 0;
WR9: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(fcs)) AND (NOT (SIZEOF(QUERY (bnds <* fcs.bounds| NOT (SIZEOF (['AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP', 'AIC_MANIFOLD_SUBSURFACE.VERTEX_LOOP']* TYPEOF(bnds.bound)) = 1))) = 0)))) = 0))) = 0;
WR10: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUB_SET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE IN TYPEOF(fcs)) AND (NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| 'AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP' IN TYPEOF(bnds.bound))| NOT (SIZEOF (QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (SIZEOF (['AIC_MANIFOLD_SUBSURFACE.LINE', 'AIC_MANIFOLD_SUBSURFACE.CONIC', 'AIC_MANIFOLD_SUBSURFACE.POLYLINE', 'AIC_MANIFOLD_SUBSURFACE.SURFACE_CURVE', 'AIC_MANIFOLD_SUBSURFACE.B_SPLINE_CURVE']* TYPEOF(oe.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0)))) = 0))) = 0;
WR11: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUBSET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(fcs)) AND (NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| 'AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP' IN TYPEOF(bnds.bound))| NOT (SIZEOF (QUERY (oe <* elp_fbnds.bound\path.edge_list| ('AIC_MANIFOLD_SUBSURFACE.SURFACE_CURVE' IN TYPEOF(oe.edge_element\edge_curve.edge_geometry)) AND (NOT ((SIZEOF (QUERY (sc_ag <* oe.edge_element\edge_curve.edge_geometry\ surface_curve.associated_geometry| NOT ('AIC_TOPOLOGICALLY_BOUNDED_SURFACE.PCURVE' IN TYPEOF(sc_ag)))) = 0))))) = 0))) = 0)))) = 0))) = 0;
WR12: SIZEOF (QUERY (cfss <* QUERY (it <* SELF.items|
'AIC_MANIFOLD_SUBSURFACE.CONNECTED_FACE_SUBSET' IN TYPEOF(it))| NOT (SIZEOF (QUERY(fcs <* cfss\connected_face_set.cfs_faces| ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(fcs)) AND (NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| 'AIC_MANIFOLD_SUBSURFACE.EDGE_LOOP' IN TYPEOF(bnds.bound))| NOT (SIZEOF (QUERY (oe <* elp_fbnds.bound\path.edge_list| ('AIC_MANIFOLD_SUBSURFACE.POLYLINE' IN TYPEOF(oe.edge_element\edge_curve.edge_geometry)) AND (NOT (SIZEOF (oe\oriented_edge.edge_element\edge_curve.edge_geometry\polyline.points) > = 3)))) = 0))) = 0)))) = 0))) = 0;
END_ENTITY;
(*
Формальные утверждения
WR1 - атрибут items объекта manirold_subsurface_shape_representation должен содержать объекты connected_face_sub_set, mapped_item или axis2_placement_3d.
WR2 - по крайней мере один из элементов атрибута items должен быть объектом connected_face_sub_set или mapped_item.
WR3 - для любого объекта mapped_item, объект mapped_representation, относящийся к его объекту mapping_source, должен быть объектом subsurface_shape_representation.
WR4 - любой экземпляр объекта connected_face_sub_set в атрибуте items должен иметь тип connected_face_sub_set AND open_shell.
WR5 - для любого экземпляра объекта connected_face_sub_set объекты face из parent_face_set должны иметь тип advanced_face, либо объект parent_face_set должен быть экземпляром объекта connected_face_sub_set, грани которого относятся к типу advanced_face.
Примечание - Объект parent_face_set может быть одним из подтипов open_shell или closed_shell объекта connected_face_sub_set.
WR6 - для любого экземпляра объекта connected_face_sub_set каждый объект face атрибута cfs_faces должен иметь тип advanced_face или subface и прямо или косвенно ссылаться на advanced_face.
Примечание - Это свойство проверяется функцией advanced_face_properties.
WR7 - для любого экземпляра объекта subface в атрибуте cfs_faces экземпляра объекта connected_face_sub_set ограничивающие его объекты edge должны иметь тип subedge или edge_curve.
WR8 - для любого экземпляра объекта subface в атрибуте cfs_faces экземпляра объекта connected_face_sub_set все вершины, используемые в определении объекта face, должны иметь тип vertex_point.
WR9 - границы любого объекта subface в атрибуте cfs_faces экземпляра объекта connected_face_sub_set должны иметь тип edge loop или vertex_loop.
WR10 - типами объекта curve, используемого для определения геометрии объекта edge_curve, в свою очередь используемого в определении объекта subface, могут быть только line, conic, polyline, surface_curve или b_spline_curve.
WR11 - если объект surface_curve используется как часть ограничения грани объекта subface, то атрибут associated_geometry должен ссылаться на объект pcurve.
WR12 - если объект polyline используется как часть ограничения грани объекта subface, то он должен содержать не менее трех точек.
Примечание - Правила с WR8 по WR13 обеспечивают то, что определение границ объекта subface непротиворечиво с определением границ объекта advanced_face.
Функция advanced_face_properties проверяет свойства объекта face, чтобы определить, имеет ли он тип advanced_face или является объектом subface, прямо или косвенно ссылающимся на объект advanced_face как объект parent_face. Эта проверка осуществляется рекурсивно и возвращает результат TRUE, если грань является объектом advanced_face либо ссылается на объект advanced_face через атрибут parent_face объекта subface. Во всех других случаях возвращается результат FALSE.
EXPRESS-спецификация
*)
FUNCTION advanced_face_properties (testface: face): BOOLEAN;
(* возвращает результат TRUE, если testface имеет тип advanced_face *)
IF 'AIC_MANIFOLD_SUBSURFACE.ADVANCED_FACE' IN TYPEOF(testface) THEN RETURN (TRUE);
END_IF;
(* если testface является объектом subface, то рекурсивно проверяется parent_face,возвращается результат FALSE для всех других типов face*)
IF ('AIC_MANIFOLD_SUBSURFACE.SUBFACE' IN TYPEOF(testface)) THEN RETURN(advanced_face_properties(testface.parent_face));
ELSE RETURN (FALSE);
END_IF;
END_FUNCTION;
(*
Определения аргументов
testface (входной аргумент) - объект face, который должен быть проверен на соответствие свойствам объекта advanced_face.
result (выходной аргумент) - переменная типа BOOLEAN, которая принимает значение TRUE, если testface является подтипом объекта advanced_face либо подтипом объекта subface и ссылается при этом на объект advanced_face.
EXPRESS-спецификация
*)
END_SCHEMA; - - конец схемы AIC_MANIFOLD_SUBSURFACE
(*
Сокращенное наименование объекта, установленного в настоящем стандарте, приведено в таблице А.1. Требования к использованию сокращенных наименований объектов содержатся в методах реализации, описанных в соответствующих стандартах комплекса ИСО 10303.
Таблица А.1 - Сокращенное наименование объекта
Сокращенное наименование |
|
MANIFOLD_SUBSURFACE_SHAPE_REPRESENTATION |
MSSO |
В.1 Обозначение документа
Для обеспечения однозначного обозначения информационного объекта в открытой системе настоящему стандарту присвоен следующий идентификатор объекта:
{iso standard 10303 part(521) version(1)}
Смысл данного обозначения установлен в ИСО/МЭК 8824-1 и описан в ИСО 10303-1.
В.2 Обозначение схемы
Для обеспечения однозначного обозначения в открытой информационной системе схеме aic_monifold_subsurface (см. раздел 4) присвоен следующий идентификатор объекта:
{iso standard 10303 part(521) version(1) object(1) aic-manifold-subsurface(1)}
Смысл данного обозначения установлен в ИСО/МЭК 8824-1 и описан в ИСО 10303-1.
В данном приложении приведены ссылки на сайты, на которых находятся листинги наименований объектов на языке EXPRESS и соответствующих сокращенных наименований, установленных в настоящем стандарте. На этих же сайтах находятся листинги всех EXPRESS-схем, установленных в настоящем стандарте, без комментариев и другого поясняющего текста. Эти листинги доступны в машинно-интерпретируемой форме и могут быть получены по следующим адресам URL:
Сокращенные наименования: <http://www.tc184-sc4.org/Short_Names/>
EXPRESS: <http://www. tc184-sc4.org/EXPRESS/>
При невозможности доступа к этим сайтам необходимо обратиться в центральный секретариат ИСО или непосредственно в секретариат ИСО ТК 184/ПК4 по адресу электронной почты: sc4sec@tc184-sc4.org
Примечание - Информация, представленная в машинно-интерпретируемой форме на указанных выше URL, является справочной. Обязательным является текст настоящего стандарта.
EXPRESS-G диаграммы, представленные на рисунках D.1 - D.9, получены из сокращенного листинга, приведенного в разделе 4, с использованием спецификаций интерфейса стандарта ИСО 10303-11. В диаграммах использована графическая нотация EXPRESS-G языка EXPRESS. Описание EXPRESS-G установлено в ИСО 10303-11, приложение D.
Примечания
1 Выбранные типы geometric_set_select, trimming_select, vector_or_direction импортируются в расширенный листинг ПИК в соответствии с правилами неявных интерфейсов по ИСО 10303-11. В настоящем стандарте эти выбранные типы не используются в других объектах.
2 Правила, касающиеся объектов advanced_face и manirold_subsurface_shape_representation, исключают реализацию некоторых объектов, которые имеют неявные интерфейсы и поэтому показаны на диаграммах. Эти объекты отмечены на диаграммах символом «*».
Рисунок D.1 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 1 из 9)
Рисунок D.2 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 2 из 9)
Рисунок D.3 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 3 из 9)
Рисунок D.4 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 4 из 9)
Рисунок D.5 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 5 из 9)
Рисунок D.6 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 6 из 9)
Рисунок D.7 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 7 из 9)
Рисунок D.8 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 8 из 9)
Рисунок D.9 - ПИК aic_manifold_subsurface в формате EXPRESS-G (диаграмма 9 из 9)
Ниже приведен пример файла в формате стандарта ИСО 10303-21, который иллюстрирует, как данная ПИК может использоваться, чтобы показать логические взаимосвязи между областями определения топологических конструкций. В данном примере приведена часть файла, содержащего все необходимые определения геометрии и топологии.
EXAMPLE 1 /* Определение геометрии исходной незамкнутой оболочки -
Оболочка представлена в форме куба с полуцилиндром на вершине. */
#1040 = (LENGTH_UNIT()NAMED_UNIT(*)SI_UNIT(.MILLI.,.METRE.));
#1041 = (NAMED_UNIT(*)PLANE_ANGLE_UNIT()SI_UNIT($,.RADIAN.));
#1100 = CARTESIAN_POINT(¢origin¢,(0.0, 0.0, 0.0));
#1101 = DIRECTION('Dir1', (1.0, 0.0, 0.0));
#1102 = DIRECTION('Dir2', (0.0, 1.0, 0.0));
#1103 = DIRECTION('Dir3', (0.0, 0.0, 1.0));
#1104 = DIRECTION('NegX', (-1.0, 0.0, 0.0));
/* Точки и вершины на границах граней незамкнутой оболочки. */
#1105 = VERTEX_POINT('VertPtO', #1100);
#1106 = CARTESIAN_POINT('PtA', (100.0, 0.0, 0.0));
#1107 = VERTEX_POINT('VertPtA', #1106);
#1108 = CARTESIAN_POINT('PtB', (100.0, 100.0, 0.0));
#1109 = VERTEX_POINT('VertPtB', #1108);
#1110 = CARTESIAN_POINT('PtC', (0.0, 100.0, 0.0));
#1111 = VERTEX_POINT('VertPtC', #1110);
#1112 = CARTESIAN_POINT('PtD', (0.0, 0.0, 100.0));
#1113 = VERTEX_POINT('VertPtD', #1112);
#1114 = CARTESIAN_POINT('PtE', (100.0, 0.0, 100.0));
#1115 = VERTEX_POINT('VertPtE', #1114);
#1116 = CARTESIAN_POINT('PtF', (100.0, 100.0, 100.0));
#1117 = VERTEX_POINT('VertPtF', #1116);
#1118 = CARTESIAN_POINT('PtG', (0.0, 100.0, 100.0));
#1119 = VERTEX_POINT('VertPtG', #1118);
/* Подграни для граней */
#1120 = AXIS2_PLACEMENT_3D('Ax2P3DBase', #1100, #1103, #1101);
#1121 = PLANE('Baseplane', #1120);
#1122 = AXIS2_PLACEMENT_3D('Ax2P3DFront', #1100, #1101, #1102);
#1123 = PLANE('Frontplane', #1122);
#1124 = AXIS2_PLACEMENT_3D('Ax2P3DRight', #1100, #1102, #1103);
#1125 = PLANE('Rightplane', #1124);
#1126 = AXIS2_PLACEMENT_3D('Ax2P3DLeft', #1110, #1102, #1103);
#1127 = PLANE('Leftplane', #1126);
#1128 = AXIS2_PLACEMENT_3D('Ax2P3DBack', #1106, #1101, #1102);
#1129 = PLANE('Backplane', #1128);
#1130 = CARTESIAN_POINT('CentreCyl', (50.0, 0.0, 100.0));
#1131 = AXIS2_PLACEMENT_3D('Ax2P3DCyl', #1130, #1102, #1104);
#1132 = CYLINDRICAL_SURFACE('TopCyl', #1131, 50.0);
/* Кривые и ребра */
#1140 = AXIS2_PLACEMENT_3D('Ax2P3DLcirc', #1154, #1102, #1104);
#1141 = VECTOR('VecX', #1101, 100.0);
#1142 = VECTOR('VecY', #1102, 100.0);
#1143 = VECTOR('VecZ', #1103, 100.0);
#1144 = LINE('LineOA', #1100, #1141);
#1145 = LINE('LineOC', #1100, #1142);
#1146 = LINE('LineOD', #1100, #1143);
#1147 = LINE('LineAE', #1106, #1143);
#1148 = LINE('LineAB', #1106, #1142);
#1149 = LINE('LineCG', #1110, #1143);
#1150 = LINE('LineCB', #1110, #1141);
#1151 = LINE('LineDG', #1112, #1142);
#1152 = LINE('LineEF', #1114, #1142);
#1153 = CIRCLE('RtCirc', #1131, 50.0);
#1154 = CARTESIAN_POINT('CentreLcirc', (50.0, 100.0, 100.0));
#1155 = LINE('LineBF', #1108, #1143);
#1156 = CIRCLE('LCirc', #1140, 50.0);
#1157 = EDGE_CURVE('EdgeOA', #1105, #1107, #1144,.T.);
#1158 = EDGE_CURVE('EdgeOC', #1105, #1111, #1145,.T.);
#1159 = EDGE_CURVE('EdgeOD', #1105, #1113, #1146,.T.);
#1160 = EDGE_CURVE('EdgeAE', #1107, #1115, #1147,.T.);
#1161 = EDGE_CURVE('EdgeAB', #1107, #1109, #1148,.T.);
#1162 = EDGE_CURVE('EdgeCG', #1111, #1119, #1149,.Т.);
#1163 = EDGE_CURVE('EdgeCB', #1111, #1109, #1150,.T.);
#1164 = EDGE_CURVE('EdgeDG', #1113, #1119, #1151,.Т.);
#1165 = EDGE_CURVE('EdgeEF', #1115, #1117, #1152,.T.);
#1166 = EDGE_CURVE('EdgeDE', #1113, #1115, #1153,.T.);
#1167 = EDGE_CURVE('EdgeGF', #1119, #1117, #1156,.T.);
#1168 = EDGE_CURVE('EdgeBF', #1109, #1117, #1155,.T.);
/* oriented_edges */
#1169 = ORIENTED_EDGE('OAT', *, *, #1157,.T.)
#1170 = ORIENTED_EDGE('OAF', *, *, #1157,.F.)
#1171 = ORIENTED_EDGE('OCT', *, *, #1158,.T.)
#1172 = ORIENTED_EDGE('OCF', *, *, #1158,.F.)
#1173 = ORIENTED_EDGE('ODT', *, *, #1159,.T.)
#1174 = ORIENTED_EDGE('ODF', *, *, #1159,.F.)
#1175 = ORIENTED_EDGE('AET', *, *, #1160,.T.)
#1176 = ORIENTED_EDGE('AEF', *, *, #1160,.F.)
#1177 = ORIENTED_EDGE('ABT', *, *, #1161,.T.)
#1178 = ORIENTED_EDGE('ABF', *, *, #1161,.F.)
#1179 = ORIENTED_EDGE('CGT', *, *, #1162,.T.)
#1180 = ORIENTED_EDGE('CGF', *, *, #1162,.F.)
#1181 = ORIENTED_EDGE('CBT', *, *, #1163,.T.)
#1182 = ORIENTED_EDGE('CBF', *, *, #1163,.F.)
#1183 = ORIENTED_EDGE('DGT', *, *, #1164,.T.)
#1184 = ORIENTED_EDGE('DGF', *, *, #1164,.F.)
#1185 = ORIENTED_EDGE('EFT', *, *, #1165,.T.)
#1186 = ORIENTED_EDGE('EFF', *, *, #1165,.F.)
#1187 = ORIENTED_EDGE('DET', *, *, #1166,.T.)
#1188 = ORIENTED_EDGE('DEF', *, *, #1166,.F.)
#1189 = ORIENTED_EDGE('GFT', *, *, #1167,.T.)
#1190 = ORIENTED_EDGE('GFF', *, *, #1167,.F.)
#1191 = ORIENTED_EDGE('BFT', *, *, #1168,.T.)
#1192 = ORIENTED_EDGE('BFF', *, *, #1168,.F.)
/* edge_loops */
#1201 = EDGE_LOOP('ELOCBA', (#1171, #1181, #1178, #1170));
#1202 = EDGE_LOOP('ELOAED', (#1169, #1175, #1188, #1174));
#1203 = EDGE_LOOP('ELODGC', (#1173, #1183, #1180, #1172));
#1204 = EDGE_LOOP('ELABFE', (#1177, #1191, #1186, #1176));
#1205 = EDGE_LOOP('ELCGFB', (#1179, #1189, #1192, #1182));
#1206 = EDGE_LOOP('ELDEFG', (#1187, #1185, #1190, #1184));
/* face_bounds и advanced_faces */
#1211 = FACE_OUTER_BOUND('baseBd', #1201,.T.);
#1212 = FACE_OUTER_BOUND('rightBd', #1202,.T.);
#1213 = FACE_OUTER_BOUND('frontBd', #1203,.T.);
#1214 = FACE_OUTER_BOUND('backBd', #1204,.T.);
#1215 = FACE_OUTER_BOUND('leftBd', #1205,.T.);
#1216 = FACE_OUTER_BOUND('TopcylBd', #1206,.T.);
#1221 = ADVANCED_FACE('BaseFace', (#1211), #1121,.F.);
#1222 = ADVANCED_FACE('RightFace', (#1212), #1125,.F.);
#1223 = ADVANCED_FACE('FrontFace', (#1213), #1123,.F.);
#1224 = ADVANCED_FACE('BackFace', (#1214), #1129,.T.);
#1225 = ADVANCED_FACE('LeftFace', (#1215), #1127,.T.);
#1226 = ADVANCED_FACE('TopcylFaceO', (#1216), #1132,.T.);
/* closed_shell */
#1250 = CLOSED_SHELL('CubeCyl', (#1221, #1222, #1223, #1224, #1225, #1226));
/* Новая точка и вершина для subset1, точка М лежит на 1/3 расстояния вдоль полуокружности GF */
#1300 = CARTESIAN_POINT('PtM', (25.0, 100.0, 143.3012702));
#1301 = VERTEX_POINT('VertPtM', #1300);
/* Ребро DM определено как поверхностная кривая на цилиндрической грани через pcurve. Определяются двумерный контекст и геометрия для pcurve (линия в параметрическом пространстве) */
#1302 = (GEOMETRIC_REPRESENTATION_CONTEXT(2)
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('CylSurf', 'Parameter_space'));
#1303 = CARTESIAN_POINT('PtOparam', (0.0, 0.0));
#1304 = DIRECTION ('Dir2D', (1.047197551, 100.0));
#1305 = VECTOR('Vec2D', #1304, 100.013708);
#1306 = LINE('LinPcrv', #1303, #1305);
#1307 = DEFINITIONAL_REPRESENTATION('Pcurvrep', (#1306), #1302);
#1308 = PCURVE('CylPcrv', #1132, #1307);
/* Определяется примерная 3D геометрия поверхностной кривой от D до М */
#1310 = CARTESIAN_POINT('P2', (0.0, 33.33333333, 117.4532952));
#1311 = CARTESIAN_POINT('P3', (9.885005297, 66.666666667, 134.5746238));
#1312 = BEZIER_CURVE('CylCrv3D', 3, (#1112, #1310, #1311, #1300),.UNSPECIFIED.,.F.,.F.);
#1313 = SURFACE_CURVE('CrvBM3D', #1312, (#1308),.PCURVE_S1.);
/* Определяются новые ребра для subset 1. */
#1321 = EDGE_CURVE('EdgeDM', #1113, #1301, #1313, Т.);
#1322 = ORIENTED_EDGE('DMT', *, *, #1321,.Т.);
#1323 = SUBEDGE('EdgeGM', #1119, #1301, #1167);
#1324 = ORIENTED_EDGE('GMF', *, *, #1323,.F.);
/* Определяются подгрань и subset1 (как cfss и open_shell). */
#1325 = EDGE_LOOP('ELDMG', (#1322, #1324, #1184));
#1326 = FACE_OUTER_BOUND('SubCylFac1Bd', #1325,.Т.);
#1327 = SUBFACE('SubCylF1', (#1326), #1236);
#1350 = (CONNECTED_FACE_SET((#1327, #1223))
CONNECTED_FACE_SUB_SET(#1250)
OPEN_SHELL()
REPRESENTATION_ITEM('Subset1')
TOPOLOGICAL_REPRESENTATION_ITEM());
/* Определяются новые ребра и соответствующая геометрия для subset 2 (расположен внутри Subset1). */
#1400 = CARTESIAN_POINT('PtP', (0.0, 65.0, 50.0));
#1401 = VERTEX_POINT('VertPtP', #1400);
#1402 = CARTESIAN_POINT('PtQ', (0.0, 65.0, 100.0));
#1403 = VERTEX_POINT('VertPtQ', #1402);
#1404 = CARTESIAN_POINT('PtR', (10.0, 65.0, 130.0));
#1405 = VERTEX_POINT('VertPtR', #1404);
#1406 = CARTESIAN_POINT('PtS', (10.0, 90.0, 130.0));
#1407 = VERTEX_POINT('VertPtS', #1406);
#1408 = CARTESIAN_POINT('PtT', (0.0, 90.0, 100.0));
#1409 = VERTEX_POINT('VertPtT', #1408);
#1410 = CARTESIAN_POINT('PtU', (0.0, 90.0, 50.0));
#1411 = VERTEX_POINT('VertPtU', #1410);
#1412 = LINE('LinePQ', #1400, #1143);
#1413 = LINE('LinePU', #1400, #1142);
#1414 = LINE('LineRS', #1404, #1142);
#1415 = LINE('LineUT', #1410, #1143);
#1416 = CARTESIAN_POINT('CentreCirc2', (50.0, 65.0, 100.0));
#1417 = AXIS2_PLACEMENT_3D('Ax2P3DCirc2', #1416, #1102, #1104);
#1418 = CIRCLE('Circ2', #1417, 50.0);
#1419 = CARTESIAN_POINT('CentreCirc3', (50.0, 90.0, 100.0));
#1420 = AXIS2_PLACEMENT_3D('Ax2P3DCirc3', #1419, #1102, #1104);
#1421 = CIRCLE('Circ3', #1420, 50.0);
#1422 = EDGE_CURVE('EdgePQ', #1401, #1403, #1412,.Т.);
#1423 = EDGE_CURVE('EdgePU', #1401, #1411, #1413,.Т.);
#1424 = EDGE_CURVE('EdgeRS', #1405, #1407, #1414,.Т.);
#1425 = EDGE_CURVE('EdgeUT', #1411, #1409, #1415,.Т.);
#1426 = EDGE_CURVE('EdgeQR', #1403, #1405, #1418,.Т.);
#1427 = EDGE_CURVE('EdgeTS', #1409, #1407, #1421,.Т.);
#1428 = SUBEDGE('EdgeQT', #1403, #1409, #1164);
/* Определяются edge_loops, face_bounds и subfaces */
#1429 = ORIENTED_EDGE('PQT', *, *, #1422,.T.)
#1430 = ORIENTED_EDGE('PUF', *, *, #1423,.F.)
#1431 = ORIENTED_EDGE('RST', *, *, #1424,.T.)
#1432 = ORIENTED_EDGE('UTF', *, *, #1425,.F.)
#1433 = ORIENTED_EDGE('QRT', *, *, #1426,.T.)
#1434 = ORIENTED_EDGE('TSF', *, *, #1427,.F.)
#1435 = ORIENTED_EDGE('QTT', *, *, #1428,.T.)
#1436 = ORIENTED_EDGE('QTF', *, *, #1428,.F.)
#1437 = EDGE_LOOP('ELPQTU', (#1429, #1435, #1432, #1430));
#1438 = EDGE_LOOP('ELQRST', (#1433, #1431, #1434, #1436));
#1439 = FACE_OUTER_BOUND('SubCylFac2Bd', #1438,.Т.);
#1440 = FACE_OUTER_BOUND('SubFrontBd', #1437,.Т.);
#1441 = SUBFACE('SubCylF2', (#1439), #1327);
#1442 = SUBFACE('SubFront', (#1440), #1223);
#1450 = (CONNECTED_FACE_SET((#1441, #1442))
CONNECTED_FACE_SUB_SET(#1350)
OPEN_SHELL()
REPRESENTATION_ITEM('Subset2')
TOPOLOGICAL_REPRESENTATION_ITEM());
#1490 = (GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNIT_ASSIGNED_CONTEXT((#1040, #1041))
REPRESENTATION_CONTEXT('Context for Subsets',
'This is a 3D context using millimetres'));
#1500 = MANIFOLD_SUBSURFACE_SHAPE_REPRESENTATION('SubsetRep', (#1350, #1450), #1490);
Примечания
1 Выражение #1250 описывает объект closed_shell в форме куба с полуцилиндром на вершине, у которого 6 граней, 5 из которых являются плоскостями, а верхняя грань имеет цилиндрическую форму. Это выражение могло бы быть использовано для определения объекта advanced_brep_shape_representation в стандарте ИСО 10303-514 или объекта manirold_surface_shape_representation в ИСО 10303-509. Для обозначения граней и описания геометрии предполагается, что замкнутая оболочка наблюдается из точки, расположенной на отрицательном направлении оси X, а ось Z при этом направлена на вершину цилиндрической грани.
2 Выражение #1350 определяет экземпляр объекта open_shell и объект connected_face_sub_set, который ссылается на выражение #1250 как на свой родительский объект parent_face_set. Он состоит из двух граней, одна из них является передней гранью из выражения #1250, а вторая является объектом subface верхней цилиндрической грани из того же выражения. Одним из ребер этого треугольного объекта subface является объект subedge, другим является существующее ребро, а геометрия третьего ребра определена объектом pcurve на цилиндрической поверхности. Этот объект pcurve является линией в параметрическом пространстве, проходящей от точки (0,0) до точки (p/3, 100). Кривая Безье обеспечивает немного менее точное трехмерное представление такого объекта surface_curve.
3 Выражение #1450 иллюстрирует возможность вложения объектов connected_face_sub_set. Такой объект определен в выражении #1350 как родительский объект parent_face_set, состоящий из двух объектов subface, каждый из которых связан с гранью из выражения #1350. Общее ребро между этими объектами subface является другим примером объекта subedge.
4 Выражение #1500 описывает экземпляр объекта manifold_subsurface_shape_representation, содержащий объекты connected_face_sub_set из выражений #1350 и #1450. Он определен в трехмерном контексте посредством объекта geometric_representation_context с использованием миллиметров и радиан в качестве единиц измерения. Это обеспечивает контекст для всей трехмерной геометрии в файле. Геометрия, определенная в этом файле, показана на рисунке Е.1.
Рисунок Е.1 - Грани и подграни объекта manifold_subsurface_shape_representation
Таблица F.1
Обозначение ссылочного |
Обозначение и наименование соответствующего национального стандарта |
ИСО/МЭК 8824-1:1998 |
ГОСТ Р ИСО/МЭК 8824-1-2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации |
ИСО 10303-1:1994 |
ГОСТ Р ИСО 10303-1-99 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы |
ИСО 10303-11:1994 |
ГОСТ Р ИСО 10303-11-2000 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS |
ИСО 10303-21:2002 |
ГОСТ Р ИСО 10303-21-2002 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 21. Методы реализации. Кодирование открытым текстом структуры обмена |
ИСО 10303-41:2000 |
ГОСТ Р ИСО 10303-41-99 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 41. Интегрированные обобщенные ресурсы. Основы описания и поддержки изделий |
ИСО 10303-42:2000 |
* |
ИСО 10303-43:2000 |
ГОСТ Р ИСО 10303-43-2002 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 43. Интегрированные обобщенные ресурсы. Структура представлений |
ИСО 10303-202:1995 |
* |
ИСО 10303-509:2001 |
* |
ИСО 10303-511:2001 |
ГОСТ Р ИСО 10303-511-2006 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 511. Прикладные интерпретированные конструкции. Топологически ограниченная поверхность |
ИСО 10303-514:1999 |
ГОСТ Р ИСО 10303-514-2007 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 514. Прикладные интерпретированные конструкции. Расширенное граничное представление |
* Соответствующий национальный стандарт отсутствует. До его утверждения рекомендуется использовать перевод на русский язык данного международного стандарта. Перевод данного международного стандарта находится в Федеральном информационном фонде технических регламентов и стандартов. |
Ключевые слова: автоматизация производства, средства автоматизации, интеграция систем автоматизации, промышленные изделия, данные, представление данных, обмен данными, прикладные интерпретированные конструкции, описание формы тела, геометрия многообразий, поверхности |