В настоящем подразделе установлены сущности кривых интерфейса прикладного программирования, вычисляемых и генерируемых интерфейсом посредством спецификаций с учетом ограничений. Интерфейс имеет утилиты для определения характеристик указанных сущностей. Задание ориентации рассматриваемых сущностей (с помощью точек вычленения trim_1 и trim_2 в соответствии с соглашением о задании положительного направления обхода кривой sense_agreement) устраняет неоднозначность геометрических построений. Указанные сущности должны существовать в целевой моделирующей системе. Поэтому процесс моделирования для их реализации не определяется.
6.1.12.1 Сущность api_line
Сущность api_line задает отрезок кривой trimmed_curve линейного сегмента. Определяется сущностью trimmed_cirve в совокупности с сущностью line.
Спецификация на языке EXPRESS:
*)
ENTITY api_line
SUBTYPE OF (trimmed_curve) ;
WHERE
api_WR1 : 'API_ABSTRACT_SCHEMA.LINE' IN
TYPEOF (SELF\TRIMMED_CURVE.BASIS_CURVE);
END_ENTITY;
(*
Примечание 1 - Данная сущность интерфейса прикладного программирования позволяет задать диапазон значений некоторых функций интерфейса.
Примечание 2 - В контексте схемы api_abstract_schema главное представление master_representation должно зависеть от реализации.
Примечание 3 - Данная сущность может быть использована как trimmed_curve.
Определения атрибутов:
SELF\trimmed_curve.basis_curve: линия, в пределах которой берется отрезок;
SELF\trimmed_curve.trim_1: первая точка вычленения, описываемая либо как декартова точка cartesian_point (point_1), либо действительным значением параметра (parameter_1=t), либо обоими способами;
SELF\trimmed_curve.trim_2: вторая точка вычленения, описываемая либо как декартова точка cartesian_point (point_2), либо как действительное значение параметра (parameter_2=t), либо обоими способами;
SELF\trimmed_curve.sense_agreement: флажок, указывающий, согласуется или нет направление обхода отрезка кривой с направлением обхода базовой кривой;
master_representation: главное представление, где и параметр, и точка, присутствующие на обоих концах кривой, указывают предпочтительную форму. Множественное представление позволяет устанавливать связь данных более чем одной формы, даже если эти данные могут оказаться геометрически идентичными.
Комментарий к спецификации:
api_WR1: basis_curve для кривой trimmed_curve должна быть линия.
Дополнительный комментарий:
api_IP1: api_line должна быть не меньше допуска EPS и не больше установленного максимального значения МАХ.
6.1.12.2 Сущность api_circular_arc
Сущность api_circular_arc задает отрезок кривой trimmed_curve для одного сегмента окружности. Определяется с помощью сущности trimmed_cirve в совокупности с сущностью circle.
Спецификация на языке EXPRESS: