Человек по своей сути существо не очень организованное. Мы мусорим где-попало, делаем кучу лишних действий, избыточно тратим ресурсы, а потом кричим, что нам чего-то не хватает. По этому не смотря на то, что в школе и институте нас усиленно загоняют в определенные рамки, учат жить по расписанию. А если кто не может того загоняют в еще большие рамки и более строгие расписания на благо защиты кусков нашей распавшейся на части Родины. И тем не менее не смотря на это большим успехом пользуются книги по всякому “тайм-менеджменту”. Причем именно русскими буквами и именно такой английский суржик. Стоп. А при чем здесь параметризация?
О! А параметризация, вот при чем:
Когда нас учили делать чертежи то одно из требований звучало так – элементов (размеров, сечений, видов и пр.) на чертеже должно быть достаточно для понимания и дальнейшего изготовления и их количество должно быть минимальным. Все что избыточно – со звездочками для справок и желательно выкинуть. Переходя к трехмерному моделированию мы часто переносим эти же требования и на модель, пытаясь, к примеру, сделать так чтобы было минимальное число операций. Как уже говорилось параметризация заставляет делать лишние действия и потому ее часто относят к тем излишествам, которые можно/нужно выкинуть. То, что выигрывая битву, мы иногда проигрываем войну, мы уже рассматривали, но сейчас я хочу поговорить о: “Необходимой избыточности”.
Что под этим подразумевается? А подразумеваются действия, которые с одной стороны вроде как не нужны, а с другой стороны существенно упрощают дальнейшую работу и расширяют границы применимости моделей.
Классический пример: крышка корпуса под двухступенчатый редуктор.
На рисунках схематически приведены варианты исполнения крышки при различных отношениях параметров. Можно ли сделать так, чтобы в любой CAD системе на основе истории моделирования в рамках одной модели учитывались оба варианта (без конфигураций, без If then, без программирования)? Можно. Это классический пример на базе которого я демонстрирую студентам принцип “необходимой избыточности”. Карты пока раскрывать не буду и жду Ваших вариантов. ;)
Вторая задача из того же цикла:
Далеко не все CAD системы позволят построить данный клиноременной шкив с помощью обычного массива. И тем не менее, я утверждаю, что сделав “пару” “лишних” действий, практически в любой системе можно добиться того, что такой шкив будет параметричен. Причем число ремней – тоже параметр (опять же: без конфигураций, без If then, без программирования). И снова жду Ваших вариантов.
На выходных предложу свои варианты решения поставленных задач. А пока жду.
P.S. Если данное сообщение читают мои студенты, которым на парах демонстрировались принципы решения – просьба не “выпендриваться”, а то на экзамене подкину еще какую-то подлянку в том же стиле. Благо их у меня хватает.
Ссылки:
Зарисовочка: Параметризация от лукавого
Введение в параметризацию. Часть 1
Введение в параметризацию. Часть 2
Введение в параметризацию. Часть 3
Введение в параметризацию. Часть 4
Введение в параметризацию. Часть 5
Введение в параметризацию. Часть 6
Введение в параметризацию. Часть 7
Введение в параметризацию. Часть 8
Параметризация. Часть 1. Классификация уровней
Параметризация. Часть 2. Количество параметров в модели
Параметризация. Часть 2. Ассоциативность. Знакомство
Параметризация. Часть 3. Ассоциативность. Классификация.
Параметризация. Часть 4. Классификация параметров
Параметризация. Часть 5. Аналогия с ООП
Параметризация. Часть 6. Полиморфизьмъ
Параметризация. Часть 7. Черный пречерный ящик.
Параметризация. Часть 8. Что в ящике тебе моем…
Параметризация. Часть 9. Принцип абстракции
Параметризация. Часть 10. Наследование
Параметризация. Часть 11. Избыточность vs Необходимость (текущая заметка)
Вот чъёрт)) Благо з.ы. прочитал))
ОтветитьУдалитьПривет!
ОтветитьУдалитьПредлагаю вариант решения первой задачи (крышка корпуса) в T-Flex.
Создаём 3 тела (можно на базе 3-х эскизов, расположенных на одной плоскости):
1-ое - два крайних круга, соединённые касательными.
2-ое - левый и центральный круг, соединённые касательными.
3-ее - правый и центральный круг, соединённые касательными.
(во 2-ом и 3-ем телах центральный круг желательно использовать один и тот же)
Объединяем все три тела булевой операцией.
Теперь когда диаметр центрального круга будет больше диаметра крайних, то мы увидим тело как показано на втором рисунке в статье.
Когда диаметр центрального круга будет меньше диаметра крайних, тогда мы получим то, что показано на первом рисунке в статье - первое тело будет давать нужную форму.
Абсолютно правильное решение.
УдалитьВ остальных системах решается абсолютно также - три операции extrude (вытянуть) на базе упомянутых эскизов с включенным слиянием результата.
Как уже говорил, казалось бы зачем делать три действия вместо одного... но именно эти лишние действия избавляют от кучи дальнейших проблем с перестроением.