Статус документа
Статус документа

ГОСТ Р ИСО 13584-31-2010 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 31. Ресурсы реализации. Интерфейс геометрического программирования

     6.1.17 Определения сущностей схемы API_ABSTRACT_SCHEMA: сущности поверхностей интерфейса прикладного программирования


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

6.1.17.1 Сущность api_planar_surface

Сущность api_planar_surface задает только поверхности, создаваемые интерфейсом. Сущность api_planar_surface описывается сущностью api_contour, соответствующей внешней границе поверхности, а также перечнем контуров api_contour, соответствующих (возможным) внутренним границам поверхности. Максимальное количество внутренних границ определяется реализацией интерфейса. Оно должно быть не меньше величины, установленной в разделе 9. Все указанные контуры должны лежать в одной плоскости и не должны пересекаться. Все контуры, соответствующие внутренним границам, должны принадлежать ограниченной поверхности, определенной контуром api_contour, соответствующим внешней границе. Ни один из указанных контуров не должен принадлежать ограниченной поверхности, определенной другим контуром api_contour. Это означает, что плоская поверхность api_planar_surface образуется дугами. Если данное условие выполняется, то плоская поверхность api_planar_surface вычисляется интерфейсом прикладного программирования следующим образом:

1) плоскость поверхности вычисляется по ее положению. Атрибут position.location задает первую точку первого сегмента комбинированной кривой composite_curve_segment контура api_contour, соответствующего внешней границе. Ось Х, задаваемая ортогональным направлением position.р [1], касается данного сегмента комбинированной кривой composite_curve_segment. Положительное направление обхода контура определено атрибутом same_sense. Ось Z, задаваемая ортогональным направлением position.p [3], должна быть ортогональна плоскости, содержащей указанный контур api_contour, соответствующий внешней границе. Положительным направлением обхода контура api_contour является его обход против часовой стрелки по отношению к указанной ориентированной оси;

2) для каждого контура api_contour, определяющего плоскую поверхность api_planar_surface, создается экземпляр ограниченной кривой bounded_surface_curve. При этом каждый из них ссылается на контур api_contour как на кривую curve_3d. Атрибут associated_geometry указанной поверхности кривой surface_curve содержит только один элемент, который является плоскостью для поверхности api_planar_surface, описанной на этапе 1. Значение атрибута главного представления master_representation для поверхности кривой равно значению атрибута curve_3d;

3) для каждой вычисленной поверхности кривой создается экземпляр сегмента замкнутой комбинированной кривой composite_curve_segment. Данный сегмент:

- ссылается на поверхность кривой, которой он соответствует, как на первичную кривую parent_curve;

- содержит значение переменной перехода (для последнего сегмента комбинированной кривой composite_curve_segment контура api_contour, который описывается атрибутом curve_3d для соответствующей ЗD-кривой на поверхности кривой) как значение атрибута transition;

- содержит атрибут same_sense, значение которого равно "true" для composite_curve_segment, соответствующего внешней границе. Данное значение гарантирует, что все прочие сегменты замкнутой кривой composite_curve_segment ориентированы по часовой стрелке относительно оси Z плоскости для поверхности api_planar_surface (то есть относительно ортогонального направления position.р [3], см. этап 1);

4) создается экземпляр наружной ограниченной кривой outer_boundary_curve, сегменты которой содержат только один элемент composite_curve_segment, первичная кривая parent_curve которого ссылается (как на атрибут curve_3d) на контур api_contour, соответствующий внешней границе плоской поверхности api_planar_surface, создаваемой интерфейсом прикладного программирования;

5) для всех прочих сегментов замкнутой кривой создается экземпляр ограниченной кривой, сегменты которого содержат только указанные сегменты;

6) окончательно создается экземпляр поверхности api_planar_surface. Его базовой поверхностью basis_surface является поверхность api_planar_surface. Ее границами могут быть ограниченные кривые и наружная ограниченная кривая, вычисленная на этапах 4 и 5. Значение атрибута implicit_outer равно "false".

Спецификация на языке EXPRESS:

*)

ENTITY api_planar_surface

SUBTYPE OF (curve_bounded_surface) ;

WHERE

api_WR1: 'API_ABSTRACT_SCHEMA.PLANE' IN TYPEOF (SELF.basis_surface);

api_WR2: SIZEOF (QUERY ( temp <* SELF.boundaries |

'API_ABSTRACT_SCHEMA.OUTER_BOUNDARY_CURVE' IN

TYPEOF (temp) )) =1;

api_WR3: QUERY (temp <* SELF.boundaries | SIZEOF (temp.segments) <> 1) = [];

api_WR4: SELF.implicit outer = false;

END_ENTITY;

(*

Примечание 1 - Настоящая сущность интерфейса прикладного программирования задает диапазон значений некоторых функций интерфейса.

Примечание 2 - Настоящая сущность может быть применена как супертип curve_bounded_surface.


Определения атрибутов: