Please enable JavaScript to view this site.

Пример...

Аналог данной функции при использовании Automation - метод ksDocument2D::ksFindObj.

Синтаксис:

reference FindObj (double x,

double y,

double dist);

Входные параметры:

x, y

- координаты точки,

dist

- размер стороны квадрата-"ловушки" с центром в указанной точке.

Возвращаемое значение:

указатель на найденный объект вида

- в случае успешного завершения,

0

- в случае неудачи.

Примечание:

1. Зона поиска - квадрат с указанной стороной и центром.

2. Если значение dist равно MAXDOUBLE, выполняется поиск ближайшего к указанной точке объекта без ограничения зоны поиска.

3. Функцию FindObj можно использовать для поиска объектов внутри макроэлемента.

Для этого макроэлемент должен быть открыт на редактирование функцией ksOpenMacro.

Пример:

ksOpenMacro(obj);

long obj_i=FindObj(x, y, AXIS_FIND_SENS);

if( ExistObj(obj_i) )

LightObj(obj_i, 1);

EndObj();

При этом, если для макроэлемента задана система координат (см. SetMacroPlacement), то координаты в FindObj должны передаваться в системе координат макроэлемента.

Пересчитать координаты в систему координат макроэлемента можно через функцию ksPointIntoMtr. Для этого нужно функцией ksMtr создать матрицу преобразования координат.

Пример:

ksMtr(xp, yp, ang, 1,1); // xp, yp, ang, scaleX, scaleY, - параметры Placement макроэлемента.

ksPointIntoMtr (x, y, &xn, &yn);

EndMtr();

Подразделы:

(отсутствуют)

© ООО «АСКОН-Системы проектирования», 2024. Все права защищены. | Единая телефонная линия: 8-800-700-00-78