ObjectARX, AutoCAD. Среда программирования библиотеки C++



         

Относительные Испытания


Если Вы не определяете иначе, имеется подразумеваемый ", “равняется" испытанию между примитивом и каждым элементом{*пунктом*} в списке фильтра. Для числовых групп (целые числа, реальные значения, точки, и векторы), Вы можете определить другие отношения включением относительных операторов в списке фильтра. Относительные операторы пропускают как специальные -4 группа, чей значение - строка, которая указывает испытание, которое нужно применить к следующей группе в списке фильтра.

Следующий типовой код выбирает все круги, чей радиус больший чем или равняются 2.0:

 

eb3.restype = 40; // Radius

eb3.resval.rreal = 2.0;

eb3.rbnext = NULL;

eb2.restype = -4; // Filter operator

strcpy(sbuf1, ">=");

eb2.resval.rstring = sbuf1; // Greater than or equals

eb2.rbnext = &eb3;

eb1.restype = 0; // Entity type

strcpy(sbuf2, "CIRCLE");

eb1.resval.rstring = sbuf2; // Circle

eb1.rbnext = &eb2;

// Select circles whose radius is >= 2.0.

acedSSGet("X", NULL, NULL, &eb1, ssname1);




Содержание  Назад  Вперед