ГОСТ Р ИСО 13584-31—2010
А.5.3.1.2.7 Построение дуги окружности, касательной к двум сущностям
Имя функции:
Arc_Tangential_2_Ent
Уровень интерфейса:1
Уровень геометрической мощности:1.2.3
Параметры
Ввод/выводИмя
Тип данных
Смысл
Допустимый тип.’эмачемие
ВводENTNM1
N
Имя первой сущности
basic
ВводENTNM1
N
Имя второй сущности
basic
ВводRAD
D
Радиус касания сущности apipircu-
lar_arc
(EPS S RAD S MAX)
ВводKFIX
Е
Хранение построенной сущности
[TDB. CADJ
ВыводNAME
N
Имя созданной сущности apipircu-
lar_arc
arc
Привязка языка FORTRAN:
NAME = ARC_TANGENTIAL_2_ENT (ENTNM1. ENTNM2. RAD. KFIX)
Результат использования функции
1
Функция создает дугу окружности ар/_агси!аг_агс с радиусом RAD. касательную к двум базовым сущностям.
Заданные сущности ENTNM1 и ENTNM2 могут пересекаться или не пересекаться. Направление вновь созданной
сущности api_circular_arc совместимо с направлениями заданных сущностей.
Интерфейс выполняет нижеследующие вычисления:
- сущности Е1 и Е2 рассматриваются как синонимы заданных сущностей ENTNM1 и ENTNM2 соответ
ственно:
- виртуально вычисляются все геометрически возможные касательные к сущностям Е1 пЕ2 окружностей от,
сущности circle с радиусом RAD. Центры данных окружностей рс!; являются экземплярами сущности cartesian^
point. Точки касания базовой кривой basis_curve Е1 являются экземплярами р11; сущности cartesian_poinl.
Точки касания базовой кривой basis_curve Е2 являются экземплярами pt2) сущности cartesian_point. Номера
рассматри ваемых точек / изменяются в пределах / =
1
.......п, где л — максимальное количество возможных
решений. Все указанные экземпляры имеют нулевой стиль nult_style.
Если при вычислениях возникает сбой, то геометрическое построение нецелесообразно (л = 0): заданный
радиус RAD касания дут слишком велик или слишком мал. Затем:
- диагностируется ошибка:
- функция возвращает нулевое имя элемента.
Если первая базовая сущность Е 1является экземпляром прямой apijine. то:
- создается экземпляр а2р(локальной координатной системы axis2placements с началом координат в точке
p d j и локальными осями, лежащими в одной общей плоскости. Все указанные экземпляры имеют нулевой стиль;
- создается п экземпляров cf- окружностей circle с центрами в точхах а2р( и радиусом RAD. Все указанные
экземпляры имеют нулевой стиль;
- создается л экземпляров дуг окружностей а, для сущностей api_circular_arc. При этом сущности с, являются
базовыми кривыми basispurve. точки p tl являются точками вычленения пт_1, а точки р*2( являются точками выч
ленения trim_2. Значение атрибута направления обхода контура sense_agreement равно «true», если направление
вектора lrim_2 — trrm_1 вдоль прямой api_line (Е1) совпадает с направлением касательной в точке pH, базовой
кривой basis_curve (окружности с().
В
противном случае значение атрибута обхода контура равно «false». Значение
атрибута главного представления master_representation зависит от реализации. Все указанные экземпляры имеют
нулевой стиль.
Далее из указанного множества возможных решений выбирается единственная дуга окружности api_circular_
arc. Таким решением является экземпляр аг для которого:
- направление касательной в точке р(2, на дуге окружности а, сущности api_circular_arc совпадает с направ
лением второй сущности Е2 (с учетом значения атрибута sense_agreemenl_flag)-,
-дуга окружности а, сущности api_crrcutar_arc имеет наименьший центральный угол:
190