четверг, 31 августа 2017 г.

Семейство часов - результаты

Как и обещал - рассказываю про задание с семейством часов, о котором рассказывал в мае.



Обещал результат летом, а сентябрь только завтра, так что почти не опоздал

Спасибо всем, кто попробовал решить задачку! Мне прислали около двух десятков вариантов, о них сейчас и поговорим.


Основных задач, собственно, было две: создать стрелки, поворачивающиеся на любой угол, и написать формулы, преобразующие число в угол поворота часовой и минутной стрелки.

Стрелки

Самым популярным решением для создания стрелок оказалось использование "Перехода по траектории": траектория задается отрезком, начало которого привязывается к центру, в начале и конце создаются сечения разного размера для того, чтобы получить заостренную стрелку:
Способ вполне рабочий, но позволяет создать только простую стрелку. Если понадобится стрелка, например, с наконечником - "Переход" уже не подойдет.

Я создал стрелку вложенным семейством, и установил её на "Вспомогательную линию": линия так же привязана началом к центру, а на её рабочую плоскость установлено семейство стрелки, которая вращается вместе с ней:


Этот подход можно применить и в других семействах, где требуется поворот элемента на угол.
"Вспомогательная линия" - вообще очень крутая вещь, когда требуются разные уклоны и повороты! Кто её использовал - респект :)

Были и более экзотические варианты. Например, использование модификатора "Сдвиг". "Сдвиг", созданный с использованием профиля-вложенного семейства, имеет свойство "Угол поворота". Траектория сдвига должна быть вертикальной, и профиль - вид стрелки сверху. Тогда стрелка будет вращаться при повороте профиля:

Возможно, это самый простой способ! Я бы до такой хитрости не додумался :)

Были и другие варианты, например, вращение при помощи опорных плоскостей, но оно работает нестабильно...
Может быть, кто-нибудь предложит еще какие-нибудь варианты :)

Формулы

А вот тут я с удивлением обнаружил, что, видимо, многие забывают, как работают часы со стрелками, и где должны находиться часовые и минутные стрелки в определенный момент времени!

Например, семейство от моего коллеги Ивана Ситишева, которое он выложил в группе Вконтакте - обратите внимание, как перепрыгивает часовая стрелка всего за одну минуту:

Иван, конечно, сразу исправил семейство. Предлагаю посмотреть на исходную и исправленную формулу:

Подобная ошибка встретилась еще в нескольких семействах.

Также встречались слишком усложненные формулы:

Да, тут встроена проверка значений, но и её можно было сделать короче :)

Остальные задачи - уже не такие сложные - поставить засечки через "Круговой массив", цифры через инструмент "Текст модели"...


Итак! *барабанная дробь*

Объявляем победителей в четырех номинациях!

Самый оперативный:
Сергей Ковылин! Прислал свой вариант семейства - пусть не идеальный, но почти сразу после публикации.

Самые лаконичные формулы:
Алексей Воскресенский!
Даже у меня не так лаконично поначалу получилось, оцените


Самые красивые часы: 
Ришат Курбангалиев!
Вне конкуренции ваще, смотрите:
Даже ось стрелок прорисована!


Самое оригинальное решение:
Адаптивное семейство от Щиголева Артема!
Я не силен в адаптивных семействах, да и не нужен здесь их функционал - но, по словам Артема, моё задание вдохновило его на изучение адаптивных семейств - и сейчас он уже вот такие изобретает!
Кстати, на форуме Autodesk Community проводится конкурс на лучшее семейство, где победитель получает бесплатный билет на Autodesk University 2017, и там можно проголосовать за семейство Артема - "Арка Хобермана" - что я и сделал!



Ну и наконец - можете скачать моё семейство часов из первого сообщения :)

Это было странное лето - но надеюсь, что возвращаюсь в рабочий режим.
Успехов в работе и изучении Ревита!

Комментариев нет:

Отправить комментарий