Угловые размеры
Угловой размер задается для двух геометрических объектов, имеющих направляющие вектора. Значение углового размера задается в радианах с областью значений от \(0\) до \(2\pi\) и определяется углом, измеряемым против часовой стрелки, между направляющими векторами первого и второго объектов. Угловой размер с таким способом измерения показан на рис.1 на примере двух пересекающихся прямых с данными направлениями. Справа на рис.2 показана пара прямых, имеющих тот же угол между векторами, однако размер охватывает обратный сектор угла. Значение такого размера определяется по формуле \(D = 2\pi - \alpha\), где \(\alpha\) – измерительное значение угла между векторами, а \(D\) – значение размера. Данный размер также называется сопряженным (conjugate), по другому его можно получить, просто поменяв местами аргументы углового размера.
Рис. 1
Рис. 2
Всего для одной и той же пары направлений, включая два рассмотренных выше, возможны четыре варианта задания углового размера. На рис.3 изображен размер, значение которого определяется по формуле смежного (adjacent) угла \(D = \pi - \alpha\). На рис.4 справа показан альтернативный вариант смежного угла, который определяется суммой \(D = \pi + \alpha\).
Рис. 3
Рис. 4
Еще одна полезная закономерность, связанная с четырьмя способами задания углового размера, состоит в том, что размер со значением \(D = 2\pi - \alpha\) получается из размера \(D = \alpha\), если просто поменять местами первый и второй объекты размерного ограничения. Аналогично, переменой местами аргументов, получается 4-й вариант \(D = \pi + \alpha\) из 3-го варианта \(D = \pi - \alpha\).
Угловой размер для пары направленных объектов, таких, как отрезок, прямая или эллипс, задается методом
constraint_item GCE_AddAngle(GCE_system gSys, geom_item l1
, geom_item l2
, const GCE_adim_pars & dPars).
Функция создаст в системе ограничений gSys новый угловой размер, заданный для геометрических объектов l1 и l2. Значение размера и способ его задания определяется структурой dPars.
Возвращаемое значение – дескриптор нового углового размера.
Структура dPars определяет значение углового размера, заданного через структуру dPars.dPars (GCE_dim_par), в которой значение размера хранится в переменной dPars.dPars.var либо, в случае dPars.dPars.var = GCE_NULL_V, значение размера задано независимым числовым параметром dPars.dPars.dimValue, что делает размер управляющим. Подробнее об управляющих и варьируемых разделах рассмотрено в параграфе Управляющие и вариационные размеры.
Если параметр dPars.adjacent = false, то значение размера будет определяться формулой \(D = f \cdot \alpha\). Множитель f в данной формуле задается параметром dPars.factor и позволяет задавать угловой размер в других единицах. Например, если dPars.factor = \(180/\pi\), то приложение получает возможность задавать угловой размер в градусах. Что бы задать угловой размер со значением \(D = f \cdot (2\pi - \alpha)\), необходимо поменять местами аргументы l1 и l2.
Для определения угловых размеров со смежным вариантом угла, показанных на рис. 27.7.3 и рис. 27.7.4, необходимо задать флаг dPars.adjacent = true, в этом случае значение размера будет определять по формулам \(D = f \cdot (\pi - \alpha)\) или \(D = f \cdot (\pi + \alpha)\). Вторая формула получается, если поменять местами аргументы l1 и l2. Множитель f также задается параметром dPars.factor.