Тема: Поиск
Документ очень большой, приходится тратить время на поиск по всей базе, но я точно знаю слой, на котором лежит элемент.
Есть ли возможность производить поиск только по заданному слою, а не по всей базе, проверяя слой элемента?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Поиск
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Документ очень большой, приходится тратить время на поиск по всей базе, но я точно знаю слой, на котором лежит элемент.
Есть ли возможность производить поиск только по заданному слою, а не по всей базе, проверяя слой элемента?
Выбор всех линий на слое "MyLayer"
struct resbuf eb1, eb2; char sbuf1[100], sbuf2[100]; // Buffers to hold strings eb1.restype = 0; // Entity name strcpy(sbuf1, "LINE"); eb1.resval.rstring = sbuf1; eb1.rbnext = NULL; // No other properties eb2.restype = 8; // Layer name strcpy(sbuf2, "MyLayer"); eb2.resval.rstring = sbuf2; eb2.rbnext = NULL; // No other properties eb1.rbnext = &eb2; // Add the two properties ads_name ssname; if(acedSSGet("_X", 0, 0, &eb1, ssname) != RTNORM) return false;
> Roman
Вопрос не корректный, поэтому и ответ тоже - если линия будет внутри блока, то этот фильтр его не найдет. Кроме того время выполнения acedSSGet("_X",...) и проход по базе - практически одно и тоже. Так что выигрыша времени не будет.
> Александр Ривилис
Вопрос действительно вышел корявый, но не в плане элементов. На слое лежат только самые простые полилинии. Я их сам создаю и кидаю на нужный мне слой. Проблема в том, что слой может быть выключенным. И кстати, вариант Романа мне подходит, хотя выигрыша во времени я существенно не заметил.
Пробег по базе (450тыс элементов всего) приблизительно 4 секунды
Выбор по слоям с проверкой на включение приблизительно 3 секунды.
Всем спасибо. Вопрос снят
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Поиск
Форум работает на PunBB, при поддержке Informer Technologies, Inc