Получите образец ТУ или ГОСТа за 3 минуты

Получите ТУ или ГОСТ на почту за 4 минуты

ГОСТ Р ИСО 10303-521-2008

ФЕДЕРАЛЬНОЕ
АГЕНТСТВО
ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

НАЦИОНАЛЬНЫЙ
СТАНДАРТ
РОССИЙСКОЙ
ФЕДЕРАЦИИ

ГОСТ Р ИСО
10303-521-2008

Системы
автоматизации производства
и их интеграция

ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ
И ОБМЕН ЭТИМИ ДАННЫМИ

Часть 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 ВВЕДЕН
ВПЕРВЫЕ

Информация об изменениях
к настоящему стандарту публикуется в ежегодно
издаваемом информационном указателе «Национальные стандарты»,
а текст изменений и поправокв ежемесячно издаваемых информационных указателях
«Национальные стандарты». В случае пересмотра
(замены) или отмены настоящего стандарта соответствующее
уведомление будет опубликовано в ежемесячно издаваемом
информационном указателе «Национальные стандарты». Соответствующая
информация, уведомление и тексты размещаются
также в информационной системе общего пользования
на официальном сайте
Федерального агентства по техническому регулированию
и метрологии в сети Интернет

СОДЕРЖАНИЕ

1 Область применения. 3

2 Нормативные ссылки. 4

3 Термины и определения. 5

3.1 Термины, определенные в ИСО 10303-1. 5

3.2 Термины, определенные в ИСО 10303-42. 5

3.3 Термин, определенный в ИСО 10303-202. 5

3.4 Термин, определенный в ИСО 10303-511. 5

3.5 Другие определения. 5

4 Сокращенный листинг на языке EXPRESS. 6

4.1 Основные понятия и допущения. 6

4.2 Определение объекта manifold_subsurface_shape_representation схемы aic_manifold_subsurface. 8

4.3 Определение функции advanced_face_properties схемы aic_manirold_subsurface. 11

Приложение А. Сокращенное
наименование объекта. 11

Приложение В. Регистрация
информационного объекта. 12

Приложение С. Машинно-интерпретируемые
листинги. 12

Приложение D. EXPRESS-G диаграммы.. 12

Приложение Е. Пример
использования ПИК.. 21

Приложение
F. Сведения о соответствии национальных стандартов
Российской Федерации ссылочным международным стандартам.. 26

Введение

Стандарты комплекса
ИСО 10303 распространяются на компьютерное представление информации об изделиях
и обмен данными об изделиях. Их целью является обеспечение нейтрального
механизма, способного описывать изделия на всем протяжении их жизненного цикла.
Этот механизм применим не только для нейтрального обмена файлами, но является
также основой для реализации и совместного доступа к базам данных об изделиях и
организации архивирования.

Стандарты комплекса
ИСО 10303 представляют собой набор отдельно издаваемых стандартов (частей). Стандарты
данного комплекса относятся к одной из следующих тематических групп: методы
описания, методы реализации, методология и основы аттестационного тестирования,
интегрированные обобщенные ресурсы, интегрированные прикладные ресурсы,
прикладные протоколы, комплекты абстрактных тестов, прикладные
интерпретированные конструкции и прикладные модули. Настоящий стандарт входит в
группу прикладных интерпретированных конструкций.

Прикладная
интерпретированная конструкция (ПИК) обеспечивает логическую группировку
интерпретированных конструкций, поддерживающих конкретную функциональность для
использования данных об изделии в разнообразных прикладных контекстах.
Интерпретированная конструкция представляет собой обычную интерпретацию
интегрированных ресурсов, поддерживающую требования совместного использования
информации прикладными протоколами.

Настоящий стандарт
определяет прикладную интерпретированную конструкцию для подповерхности
многообразия. В нем дается определение представления формы, содержащей
незамкнутые оболочки, каждая из которых идентифицируется как часть другой
незамкнутой или замкнутой оболочки. Оболочки определены с использованием граней
с явной топологией и полностью определенной геометрией. В определениях граней
оболочек в данной ПИК либо используется определение объекта advanced_face по ИСО 10303-511, либо они имеют сходные свойства.

ГОСТ Р ИСО 10303-521-2008

НАЦИОНАЛЬНЫЙ СТАНДАРТ
РОССИЙСКОЙ ФЕДЕРАЦИИ

Системы
автоматизации производства и их интеграция

ПРЕДСТАВЛЕНИЕ
ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ

Часть 521

Прикладные
интерпретированные конструкции.
Подповерхность многообразия

Industrial automation systems and integration.
Product data representation and exchange.
Part 521. Application interpreted constructions. Manifold
subsurface

 

Дата введения -2008-09-01

1
Область применения

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

Требования настоящего
стандарта распространяются на:

– трехмерную
геометрию;

– расширенные грани;

– подмножества
связанных граней;

– отображения и
геометрические преобразования;

– незамкнутые
оболочки;

– взаимосвязи между
областями определения топологических объектов;

– подребра;

– подграни;

– неограниченную
геометрию со связанными топологическими границами;

– использование
топологии для ограничения геометрических объектов.

Требования настоящего
стандарта не распространяются на:

– двумерную
геометрию, кроме определения параметрических кривых в параметрическом
пространстве поверхности;

– трехмерные модели
граничного представления;

– ограниченные
кривые, кроме полилиний и би-сплайновых кривых;

– ограниченные
поверхности, кроме би-сплайновых поверхностей;

– геометрию не
многообразий;

– вынесенные кривые и
поверхности;

– неограниченную
геометрию без топологических границ.

2 Нормативные
ссылки

В настоящем стандарте
использованы ссылки на следующие международные стандарты:

ИСО/МЭК 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. Прикладные интерпретированные конструкции.
Расширенное граничное представление

3
Термины и определения

3.1 Термины, определенные в ИСО 10303-1

В настоящем стандарте
применены следующие термины:

приложение (application);

прикладной контекст (application
context);

прикладной протокол, ПП (application protocol, АР);

метод реализации (implementation
method);

интегрированный ресурс (integrated
resource);

интерпретация (interpretation);

данные об изделии (product data).

3.2 Термины, определенные в ИСО 10303-42

В настоящем стандарте
применены следующие термины:

линейно связанный (arcwise connected);

осесимметричный (axi-symmetric);

граница (boundary);

ограничения (bounds);

координатное пространство (coordinate space);

кривая (curve);

область определения (domain);

пределы (extent);

незамкнутая кривая (open curve);

ориентируемый (orientable);

поверхность (surface);

топологический смысл (topological sense).

3.3 Термин, определенный в ИСО 10303-202

В настоящем стандарте
применен следующий термин:

прикладная
интерпретированная конструкция;
ПИК (application interpreted construct, AIC).

3.4 Термин, определенный в ИСО 10303-511

В настоящем стандарте
применен следующий термин:

расширенная грань (advanced face).

3.5 Другие определения

В настоящем стандарте
также применены следующие термины с соответствующими определениями:

подмножество связанных
граней
(connected face subset): Множество линейно связанных граней,
областью определения которого является часть области определения существующего
множества связанных граней.

Примечание – Требованием настоящего стандарта также является, чтобы
подмножество связанных граней имело тип незамкнутой оболочки.

представление формы
подповерхности многообразия
(manifold subsurface shape representation): Представление формы, содержащее подмножества связанных
граней в форме незамкнутых оболочек.

Примечание – Каждая незамкнутая оболочка имеет
область определения, которая является частью области определения другого
множества связанных граней. Грани подмножества связанных граней могут быть
определены как подграни.

подребро (subedge): Ребро, областью определения которого
является часть области определения другого ребра.

подгрань (subface): Грань, областью определения которой
является часть области определения другой грани.

Примечание –
В настоящем стандарте подгрань имеет область определения, которая является
частью области определения расширенной грани.

4 Сокращенный листинг на языке EXPRESS

В настоящем разделе
определена 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.

4.1 Основные понятия и допущения

Для независимой
реализации в схемах прикладных протоколов, в которых используется данная ПИК,
предназначены следующие объекты:

– 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.

4.2 Определение объекта manifold_subsurface_shape_representation схемы aic_manifold_subsurface

Объект 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.

4.3 Определение функции advanced_face_properties схемы aic_manirold_subsurface

Функция 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, является справочной. Обязательным
является текст настоящего стандарта.

Приложение D
(справочное)

EXPRESS-G
диаграммы

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
(справочное)

Сведения о соответствии национальных
стандартов Российской Федерации
ссылочным международным стандартам

Таблица 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. Прикладные
интерпретированные конструкции. Расширенное граничное представление

*
Соответствующий национальный стандарт отсутствует. До его утверждения
рекомендуется использовать перевод на русский язык данного международного
стандарта. Перевод данного международного стандарта находится в Федеральном
информационном фонде технических регламентов и стандартов.

 

Ключевые слова: автоматизация производства, средства
автоматизации, интеграция систем автоматизации, промышленные изделия, данные,
представление данных, обмен данными, прикладные интерпретированные
конструкции, описание формы тела, геометрия многообразий, поверхности

 

1 Область применения

2 Нормативные ссылки

3 Термины и определения

     3.1 Термины, определенные в ИСО 10303-1

     3.2 Термины, определенные в ИСО 10303-42

     3.3 Термин, определенный в ИСО 10303-202

     3.4 Термин, определенный в ИСО 10303-511

     3.5 Другие определения

4 Сокращенный листинг на языке ЕХPRESS

     4.1 Основные понятия и допущения

     4.2 Определение объекта mапifold_ subsurfaсе_chаре_rерrеsепtаtion схемы аiс_mапifold_subsurfaсе

     4.3 Определение функции аdvапсеd_fасе_рrореrtiеs схемы аiс_mапifold_subsurfaсе

Приложение А (обязательное) Сокращенное наименование объекта

Приложение В (обязательное) Регистрация информационного объекта

Приложение С (справочное) Машино-интерпретируемые листинги

Приложение D (справочное) ЕХРRЕSS-G диаграммы

Приложение Е (справочное) Пример использования ПИК

Приложение F (справочное) Сведения о соответствии национальных стандартов Российской Федерации ссылочным международным стандартам

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30
Николай Иванов

Эксперт по стандартизации и метрологии! Разрешительная и нормативная документация.

Оцените автора
Все-ГОСТЫ РУ
Добавить комментарий

ГОСТ Р ИСО 10303-521-2008

ФЕДЕРАЛЬНОЕ
АГЕНТСТВО
ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

НАЦИОНАЛЬНЫЙ
СТАНДАРТ
РОССИЙСКОЙ
ФЕДЕРАЦИИ

ГОСТ Р ИСО
10303-521-2008

Системы
автоматизации производства
и их интеграция

ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ
И ОБМЕН ЭТИМИ ДАННЫМИ

Часть 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 ВВЕДЕН
ВПЕРВЫЕ

Информация об изменениях
к настоящему стандарту публикуется в ежегодно
издаваемом информационном указателе «Национальные стандарты»,
а текст изменений и поправокв ежемесячно издаваемых информационных указателях
«Национальные стандарты». В случае пересмотра
(замены) или отмены настоящего стандарта соответствующее
уведомление будет опубликовано в ежемесячно издаваемом
информационном указателе «Национальные стандарты». Соответствующая
информация, уведомление и тексты размещаются
также в информационной системе общего пользования
на официальном сайте
Федерального агентства по техническому регулированию
и метрологии в сети Интернет

СОДЕРЖАНИЕ

1 Область применения. 3

2 Нормативные ссылки. 4

3 Термины и определения. 5

3.1 Термины, определенные в ИСО 10303-1. 5

3.2 Термины, определенные в ИСО 10303-42. 5

3.3 Термин, определенный в ИСО 10303-202. 5

3.4 Термин, определенный в ИСО 10303-511. 5

3.5 Другие определения. 5

4 Сокращенный листинг на языке EXPRESS. 6

4.1 Основные понятия и допущения. 6

4.2 Определение объекта manifold_subsurface_shape_representation схемы aic_manifold_subsurface. 8

4.3 Определение функции advanced_face_properties схемы aic_manirold_subsurface. 11

Приложение А. Сокращенное
наименование объекта. 11

Приложение В. Регистрация
информационного объекта. 12

Приложение С. Машинно-интерпретируемые
листинги. 12

Приложение D. EXPRESS-G диаграммы.. 12

Приложение Е. Пример
использования ПИК.. 21

Приложение
F. Сведения о соответствии национальных стандартов
Российской Федерации ссылочным международным стандартам.. 26

Введение

Стандарты комплекса
ИСО 10303 распространяются на компьютерное представление информации об изделиях
и обмен данными об изделиях. Их целью является обеспечение нейтрального
механизма, способного описывать изделия на всем протяжении их жизненного цикла.
Этот механизм применим не только для нейтрального обмена файлами, но является
также основой для реализации и совместного доступа к базам данных об изделиях и
организации архивирования.

Стандарты комплекса
ИСО 10303 представляют собой набор отдельно издаваемых стандартов (частей). Стандарты
данного комплекса относятся к одной из следующих тематических групп: методы
описания, методы реализации, методология и основы аттестационного тестирования,
интегрированные обобщенные ресурсы, интегрированные прикладные ресурсы,
прикладные протоколы, комплекты абстрактных тестов, прикладные
интерпретированные конструкции и прикладные модули. Настоящий стандарт входит в
группу прикладных интерпретированных конструкций.

Прикладная
интерпретированная конструкция (ПИК) обеспечивает логическую группировку
интерпретированных конструкций, поддерживающих конкретную функциональность для
использования данных об изделии в разнообразных прикладных контекстах.
Интерпретированная конструкция представляет собой обычную интерпретацию
интегрированных ресурсов, поддерживающую требования совместного использования
информации прикладными протоколами.

Настоящий стандарт
определяет прикладную интерпретированную конструкцию для подповерхности
многообразия. В нем дается определение представления формы, содержащей
незамкнутые оболочки, каждая из которых идентифицируется как часть другой
незамкнутой или замкнутой оболочки. Оболочки определены с использованием граней
с явной топологией и полностью определенной геометрией. В определениях граней
оболочек в данной ПИК либо используется определение объекта advanced_face по ИСО 10303-511, либо они имеют сходные свойства.

ГОСТ Р ИСО 10303-521-2008

НАЦИОНАЛЬНЫЙ СТАНДАРТ
РОССИЙСКОЙ ФЕДЕРАЦИИ

Системы
автоматизации производства и их интеграция

ПРЕДСТАВЛЕНИЕ
ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ

Часть 521

Прикладные
интерпретированные конструкции.
Подповерхность многообразия

Industrial automation systems and integration.
Product data representation and exchange.
Part 521. Application interpreted constructions. Manifold
subsurface

 

Дата введения -2008-09-01

1
Область применения

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

Требования настоящего
стандарта распространяются на:

– трехмерную
геометрию;

– расширенные грани;

– подмножества
связанных граней;

– отображения и
геометрические преобразования;

– незамкнутые
оболочки;

– взаимосвязи между
областями определения топологических объектов;

– подребра;

– подграни;

– неограниченную
геометрию со связанными топологическими границами;

– использование
топологии для ограничения геометрических объектов.

Требования настоящего
стандарта не распространяются на:

– двумерную
геометрию, кроме определения параметрических кривых в параметрическом
пространстве поверхности;

– трехмерные модели
граничного представления;

– ограниченные
кривые, кроме полилиний и би-сплайновых кривых;

– ограниченные
поверхности, кроме би-сплайновых поверхностей;

– геометрию не
многообразий;

– вынесенные кривые и
поверхности;

– неограниченную
геометрию без топологических границ.

2 Нормативные
ссылки

В настоящем стандарте
использованы ссылки на следующие международные стандарты:

ИСО/МЭК 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. Прикладные интерпретированные конструкции.
Расширенное граничное представление

3
Термины и определения

3.1 Термины, определенные в ИСО 10303-1

В настоящем стандарте
применены следующие термины:

приложение (application);

прикладной контекст (application
context);

прикладной протокол, ПП (application protocol, АР);

метод реализации (implementation
method);

интегрированный ресурс (integrated
resource);

интерпретация (interpretation);

данные об изделии (product data).

3.2 Термины, определенные в ИСО 10303-42

В настоящем стандарте
применены следующие термины:

линейно связанный (arcwise connected);

осесимметричный (axi-symmetric);

граница (boundary);

ограничения (bounds);

координатное пространство (coordinate space);

кривая (curve);

область определения (domain);

пределы (extent);

незамкнутая кривая (open curve);

ориентируемый (orientable);

поверхность (surface);

топологический смысл (topological sense).

3.3 Термин, определенный в ИСО 10303-202

В настоящем стандарте
применен следующий термин:

прикладная
интерпретированная конструкция;
ПИК (application interpreted construct, AIC).

3.4 Термин, определенный в ИСО 10303-511

В настоящем стандарте
применен следующий термин:

расширенная грань (advanced face).

3.5 Другие определения

В настоящем стандарте
также применены следующие термины с соответствующими определениями:

подмножество связанных
граней
(connected face subset): Множество линейно связанных граней,
областью определения которого является часть области определения существующего
множества связанных граней.

Примечание – Требованием настоящего стандарта также является, чтобы
подмножество связанных граней имело тип незамкнутой оболочки.

представление формы
подповерхности многообразия
(manifold subsurface shape representation): Представление формы, содержащее подмножества связанных
граней в форме незамкнутых оболочек.

Примечание – Каждая незамкнутая оболочка имеет
область определения, которая является частью области определения другого
множества связанных граней. Грани подмножества связанных граней могут быть
определены как подграни.

подребро (subedge): Ребро, областью определения которого
является часть области определения другого ребра.

подгрань (subface): Грань, областью определения которой
является часть области определения другой грани.

Примечание –
В настоящем стандарте подгрань имеет область определения, которая является
частью области определения расширенной грани.

4 Сокращенный листинг на языке EXPRESS

В настоящем разделе
определена 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.

4.1 Основные понятия и допущения

Для независимой
реализации в схемах прикладных протоколов, в которых используется данная ПИК,
предназначены следующие объекты:

– 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.

4.2 Определение объекта manifold_subsurface_shape_representation схемы aic_manifold_subsurface

Объект 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.

4.3 Определение функции advanced_face_properties схемы aic_manirold_subsurface

Функция 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, является справочной. Обязательным
является текст настоящего стандарта.

Приложение D
(справочное)

EXPRESS-G
диаграммы

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
(справочное)

Сведения о соответствии национальных
стандартов Российской Федерации
ссылочным международным стандартам

Таблица 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. Прикладные
интерпретированные конструкции. Расширенное граничное представление

*
Соответствующий национальный стандарт отсутствует. До его утверждения
рекомендуется использовать перевод на русский язык данного международного
стандарта. Перевод данного международного стандарта находится в Федеральном
информационном фонде технических регламентов и стандартов.

 

Ключевые слова: автоматизация производства, средства
автоматизации, интеграция систем автоматизации, промышленные изделия, данные,
представление данных, обмен данными, прикладные интерпретированные
конструкции, описание формы тела, геометрия многообразий, поверхности

 

1 Область применения

2 Нормативные ссылки

3 Термины и определения

     3.1 Термины, определенные в ИСО 10303-1

     3.2 Термины, определенные в ИСО 10303-42

     3.3 Термин, определенный в ИСО 10303-202

     3.4 Термин, определенный в ИСО 10303-511

     3.5 Другие определения

4 Сокращенный листинг на языке ЕХPRESS

     4.1 Основные понятия и допущения

     4.2 Определение объекта mапifold_ subsurfaсе_chаре_rерrеsепtаtion схемы аiс_mапifold_subsurfaсе

     4.3 Определение функции аdvапсеd_fасе_рrореrtiеs схемы аiс_mапifold_subsurfaсе

Приложение А (обязательное) Сокращенное наименование объекта

Приложение В (обязательное) Регистрация информационного объекта

Приложение С (справочное) Машино-интерпретируемые листинги

Приложение D (справочное) ЕХРRЕSS-G диаграммы

Приложение Е (справочное) Пример использования ПИК

Приложение F (справочное) Сведения о соответствии национальных стандартов Российской Федерации ссылочным международным стандартам

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30
Николай Иванов

Эксперт по стандартизации и метрологии! Разрешительная и нормативная документация.

Оцените автора
Все-ГОСТЫ РУ
Добавить комментарий