Линейный размер (расстояние)

Линейный размер задается для пары геометрических объектов. В таблице 1 приведены пары типов геометрии, которые поддерживает C3D Solver применительно к линейному размеру.

Таблица 1 - Пары геометрических объектов, поддерживаемых для линейного размера

Точка

Прямая

Окружность

Эллипс

Сплайн

Парам. кривая

Точка

Y

Y

Y

Прямая

Y

Y

Y

Окружность

Y

Y

Y

Эллипс

Сплайн

Парам.кривая

Любой линейный размер, вне зависимости от типов кривых, для которой он применен, измеряет расстояние между точками, лежащими на кривых. Обычно это точки с минимальным расстоянием между объектами. Однако можно выбрать другие пары точек для измерения размера. На рис 27.1.2 из параграфа Вспомогательные точки линейного размера показан пример четырех вариантов линейного размера для одной и той же пары окружностей.

Линейный размер для пары геометрических объектов задается методом

constraint_item GCE_AddDistance(GCE_system gSys, geom_item g[2]
                                 , const GCE_ldim_pars & dPars);

Возвращаемое значение функции – дескриптор линейного размера, заданного для объектов g[0] и g[1], принадлежащих системе ограничений gSys.

Структура параметров dPars определяет следующие настройки линейного размера:

  • dPars.dPars – задает значение размера, который может быть, как независимым параметром, так и переменной;

  • dPars.hp[2] – пара вспомогательных точек, задающих вариант измерения, когда это требуется (подробнее см. параграф Вспомогательные точки линейного размера).

Параметр dPars.dPars фактически определяет источник значения размера. Если dPars.dPars.var = GCE_NULL_V, то значение размера определяется независимым числовым параметром dPars.dPars.dimValue, что делает размер управляющим. Если в dPars.dPars.var задан дескриптор переменной, то размер является вариационным. Подробнее об управляющих и вариационных размерах обсуждалось в параграфе Управляющие и вариационные размеры.

Пара дескрипторов вспомогательных точек dPars.hp[2] не является обязательной, если вариант измерения размера однозначен, как например, расстояние от точки до прямой, либо оставляется на выбор решателя, который подберет вариант измерения наиболее близкий к текущим расположению объектов и значению размера. В этом случае по умолчанию dPars.hp[2] равен паре нулевых дескрипторов {GCE_NULL, GCE_NULL}. Если одна или обе вспомогательные точки dPars.hp[0] и dPars.hp[1] заданы, то координаты этих точек будут указывать линейному размеру вариант измерения. Подробнее о выборе варианта измерения обсуждается в параграфе Вспомогательные точки линейного размера.