ГОСТ Р ИСО 13584-31—2010
результирующая сущность NAME находится вне сущности Е,. Если же сущность Е- не является дугой окружности
api_circular_arc. то параметр IN. не используется для определения результирующей сущности NAME;
- точка р 7является начальной точкой отрезка дуги NAME (обозначается NAME.trim_1[t)), точка рЗ является
конечной точкой отрезка дуги (обозначается NAME.trim_2[1]), точка р2 принадлежит параметрическому диапазону,
определенному точками вычленения р1. рЗ. Расстояние от точки р2 до точки р1 (или до точки рЗ) гложет быть мень ше
0 ZERO_value. Это означает идентичность двух точек:
- создается экземпляр положения результирующей сущности NAME (локальная координатная система
axis_2_p!acement) с началом координат в вычисленном центре. При этом;
- если текущий открытый вид определен как 20-вид, то ссылочным направлением базовой кривой NAME.
basjs_curve.posjtion.ref_direclionis является направление оси X OVC;
- если текущий открытый вид определен как 3D-вид, а одна из трех параметрических сущностей является
дугой окружности api_circular_arc. то направления локальной координатной системы результирующей сущности
NAME.bas/s_curve.position копируются по направлениям локальной координатной системы axis_2_placement пер
вой дуги окружности api_circular_arc для перечня сущностей {Е1. Е2. ЕЗ) в указанном порядке;
- если текущий открытый вид определен как ЗО-вид. когда исходные сущности Е1.Е2 и ЕЗ являются декартовы
ми точками cartesian_point. тоссылочным направлениемдля результирующей сущности является направление NAME.
basis_curve.posibon.re(_d/recbon= Е1Е2 (считается из начальной точки сущности Е1 до крайней точки сущности EZ).
Направлением оси результирующей сущности является направление NAME.basis_curve.position.axis= E1E2 * E1E3
(где * — символ векторного произведения). Указанные три точки не должны совпадать и лежать на одной прямой:
- если текущий открытый вид определен как ЗО-вид. когда исходные сущности не являются дугами окружно
стей ар>_drcular_arc. и по крайней мере одна сущность является прямой apijine. пусть сущность
L
является первой
прямой из перечня (Е1. Е2. ЕЗ) в указанном порядке. Обозначим F1 и F2 какдве оставшиеся сущности (в указанном
порядке). Если данные сущности являются декартовыми точками, то точка Р является первой из точек, не принад
лежащих базовой кривой basis_curve сущности
L.
Если сущность F1 или сущность F2 являются прямыми
apijine. то точка G является первой из точек, принадлежащих прямой apijine для сущностей (F1. F2) в указанном
порядке. Пусть точка Р является начальной точкой указанной прямой, если она не принадлежит базовой кривой
basis_curve сущности
L
или в противном случае — конечной точкой. Пусть точка О является начальной точкой
сущности
L.
Тогда ссылочным направлением для результирующей дуги окружности является направление NAME.basis_
curve.position.ref_direction= Ldir.ohentation. Направлением координатной оси для результирующей сущности явля
ется направление NAME.basis_curve.position.axis = Ldir.orientation * OP.
Условия задания значения атрибута обхода кривой sense_agreement:
- пусть BN является базовой кривой для результирующей сущности NAME;
- пусть 8£.является базовой кривой для исходной сущности £,. если Е, не является декартовой точкой;
- пусть Р-является течкой касания кривых BN и В£>
- пусть вектор Vn/ касается кривой BN в точке Р,;
- пусть вектор VN, равен вектору №?., если значение атрибута обхода контура NAME.sense_agreement равно
«true», и в противном случав равен вектору -Vnj,
- пусть вектор VEl касается кривой В£, в точке Я;
- пусть вектор Уе,равен вектору УЕ(>если значениеатрибута направления обхода контура Е.sense_agreement
равно «true», и в противном случав равен вектору -VE*
Тогда для каждого /. для которого исходная сущность Е, не является декартовой точкой, вектор \/п- и вектор
Уе имеют одинаковые направления. Если все три исходные сущности являются декартовыми точками, то значение
атрибута NAME.sense_agreementдля результирующей сущности равно «true».
Если геометрическое построение нецелесообразно, то возникает ошибка.
Значение радиуса результирующей сущности NAME лежит в диапазоне [EPS. МАХ].
Значение атрибута NAME.master_representation результирующей сущности зависит от реализации.
Результирующая дуга окружности api_circular_arc имеет текущую запись curve_style в таблице статуса интер
фейса. В случае открытого 20-вида (если значение записи hiddenjine равно «оп» (включено) и значение записи
htddenjinejnvolved равно «true») полученная сущность приобретает предварительно установленный стиль за
тенения api_pre_der>ned_ocdusion_style с текущими значениями записей уровня вида viewjevel и аспекта невиди мых
линий hiddenJine_aspect таблицы статуса интерфейса. Функция возвращает имя полученной дуги окружности
ap>_circular_arc интерфейса прикладного программирования.
Если возникает ошибка, то сущность не создается, значение ее имени равно 0.
П ри м ечания
1 Если решения нет (принимая во внимание значение параметра IN,), то возникает ошибка.
2 Параметры IN, игнорируются, если соответствующие параметры исходных сущностей ENTNM, не являют
ся дугами окружности api_circular_arc.
3 Сущность api_circuiar_arc создается, если длина дуги, проведенной из точки вычленения trim_1 в точ
ку вычленения trim_2. совместимая с соответствующим значением атрибута направления обхода контура sense_
agreement, не меньше допуска EPS. В противном случае возникает ошибка.
4 Если текущий открытый вид определен как ЗО-вид (значение записи geometrical powerjevel в таблице
статуса интерфейса не менее 2). то исходные сущности Е1. Е2 и ЕЗ должны лежать в одной плоскости.
197