Выравнивание точек

Данный тип ограничения чаще всего используется для выравнивания пары точек по горизонтали или по вертикали. В общем случае данное ограничение будет размещать точки на воображаемой прямой с заданным направлением. Заметим, что оно не гарантирует сохранение порядка точек выравнивания вдоль заданного направления.

Выравнивание точек с константным направлением выравнивания задается методом

constraint_item GCE_AddAlignPoints(GCE_system gSys, geom_item p[2], double ang);

Метод принимает систему ограничений gSys, пару точек p[2] и константный угол выравнивания ang, а возвращает дескриптор нового ограничения.

Параметры пары p[0] и p[1] задают дескрипторы выравниваемых точек, а параметр ang задается в радианах и определяет направление, вдоль которого будут выравниваться точки. Например, угловое направление \(ang = 0\) будет соответствовать выравниванию точек по горизонтали, значение \(ang = \pi/2\) будет соответствовать выравниванию по вертикали.

Выравнивание точек с варьируемым направлением выравнивания задается методом

constraint_item GCE_AddAlignPoints(GCE_system gSys, geom_item p[2], geom_item dir);

Аналогично методу с константным направлением выравнивания, эта реализация принимает систему ограничений gSys и пару точек p[2].

Параметр dir – любой зарегистрированный в решателе объект, для которого корректен вызов GCE_GetVectorValue(gSys, dir, GCE_DIRECTION).

Выравнивание произойдёт вдоль направляющего вектора (GCE_DIRECTION) линейного объекта или главной полуоси эллипса.

Это ограничение можно использовать вместе с GCE_AddLinearDimension для задания линейного размера вместо метода GCE_AddDistance. Данный способ предпочтительнее, поскольку дает возможность более точно настроить привязки вспомогательных точек в соответствии с ожиданиями пользователя.