Проблема в том, что когда команда sweep не выполняется, то в текстовом экране появляется сообщение:Такого рода ошибки не отлавливаются ни в одной функции обработки ошибок, но ты можешь сравнить значение (entlast) до выполнения команды и после неё.
"Ошибка операции моделирования:
Выполнение сдвига привело к созданию недопустимой поверхности.
Сдвиг 1 выбранных объектов невозможен."
Но при этом сообщение через функцию *error* не перехватывается и приложение работу не останавливает. В чем причина?
Такого рода ошибки не отлавливаются ни в одной функции обработки ошибок, но ты можешь сравнить значение (entlast) до выполнения команды и после неё.Да, это работает. Примерно так, если кому интересно:
Да, это работает. Примерно так, если кому интересно:Это если последний примитив перед запуском команды _.SWEEP был не 3DSOLID. Если логика программы такова, то всё нормально.
И это подходит для любой команды, которая создаёт примитивы.Согласен. Но только вместо (if (/= enlast (entlast)) нужно (if (eq enlast (entlast)).
Согласен. Но только вместо (if (/= enlast (entlast)) нужно (if (eq enlast (entlast)).Согласен. Исправил код чтобы не вводить никого в заблуждение.