• Как в боте Telegram выдавать сообщения из списка по команде пользователя?

    DarkWood
    @DarkWood Автор вопроса
    Таки сам нашел решение: использовать итератор для списка. Мой код для примера при этом становится таким:

    test_lst = ["test_" + str(i) for i in range(1, 6)]
    itr = iter(test_lst)
    
    def next_quest_gui(m):
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        markup.add(*[types.KeyboardButton(name) for name in ["Следующее задание", "Выход"]])
        bot.send_message(m.chat.id, 'Выберите действие', reply_markup=markup)
    
    
    def action(m):
        send = bot.send_message(m.chat.id, 'Выберите действие')
        bot.register_next_step_handler(send, cycle)
    
    
    @bot.message_handler(commands=["start"])
    def start(m, res=False):
        bot.send_message(m.chat.id, next(itr))
        next_quest_gui(m)
    
    
    @bot.message_handler(content_types=["text"])
    def cycle(m):
        if m.text == "Следующее задание":
            msg = bot.send_message(m.chat.id, next(itr))
            bot.register_next_step_handler(msg, cycle)
        else:
            bot.send_message(m.chat.id, 'Ваш прогресс сохранен')
    Ответ написан
    Комментировать
  • Как в illustrator заполнить контур окружностями заданного диаметра?

    DarkWood
    @DarkWood
    Описанный способ предполагает, что вам нужно визуальное отображение контуров кругов, как показано в примере.

    Рисуете контур
    Копируете: Ctrl+C, Ctrl+F

    Дубликату задаете обводку с параметрами показанными ниже.
    Обратите особое внимание на распределение. Я специально его отметил.
    Ширина обводки должна быть в 4 раза меньше нужной, а расстояние между кругами в 2 раза меньше. В моем примере, соответственно, конечным является размер в 20 пикселей.

    61f41731a2ce3106560697.png.

    Object> Expand
    Shift+Ctrl+G
    Shift+Ctrl+Alt+8
    Shift+Ctrl+Alt+D с масштабированием 400%

    61f4175061348011080693.png

    Shift+X
    Ctrl+G

    61f41761e4171596879625.png

    Для упрощения процесса вы все команды можете записать в экшен.

    Если сразу задать нужный размер кругов, то после разборки вы получите просто цельный контур, с которым ничего нужного сделать нельзя. По этому идем через масштабирование меньшего.
    Ответ написан
    Комментировать
  • Как сохранить отдельный слой в фотошопе cs6?

    DarkWood
    @DarkWood
    Внимательно посмотрите ответы здесь. Именно внимательно, потому что в комментариях представлены ссылки на разные версии скриптов. Ну и встроенные на тот момент скрипт Export Layers to Files тоже не забудьте.

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

    Если слои перекрывают друг друга, то не забудьте, что слайсы захватывают всё видимое. Скройте лишнее, нажав на "глаз" искомого слоя, удерживая Alt. Благодаря этому скроются все слои кроме активного.
    Ответ написан
    Комментировать
  • Как разобрать меш до пути?

    DarkWood
    @DarkWood
    Не совсем понятно что вы хотите сделать. Преобразовать меш в контур? Тогда примените команду Object> Path> Offset Path с нулевым смещением. Что-то еще? Смотрите Mesh Tormentor. Там много чего можно сделать.
    Ответ написан
    Комментировать
  • Как инвертировать выделение точек на шейпе?

    DarkWood
    @DarkWood
    В стандартной поставке прямого функционала нет. Как можно поступить? Сначала просто выделяете объект. Далее Isolate Selected Path. Выделяете точки и с зажатым Shift проводите рамкой выделения по всему объекту, благодаря чему выделение инвертируется. Изоляция нужна для того, чтобы не зацепить другие объекты.

    Есть ли доступ к точкам через скрипты, честно говоря, не знаю.

    Из плагинов можно отметить VectorScribe от Astute Graphics. Там есть "умное" удаление лишних точек. Но он платный.
    Ответ написан
    1 комментарий
  • Как сделать такой эффект?

    DarkWood
    @DarkWood
    Белая подложка (обязательно!). Не забывайте, что в Illustrator по умолчанию нет фона. Его надо нарисовать отдельной фигурой.
    Узор под текстом.
    Текст:
    - сама надпись с белой обводкой
    - к заливке белого же цвета применен эффект Effect> Convert to Shape> Rectangle с необходимыми настройками;
    - эффект Transform с вертикальным смещением по необходимости;
    - режим смешивания это заливки измените на Difference
    Profit.

    619e743393f22218145125.png

    Если вас еще интересует как тут размытие сделано, то я с разбега не скажу.
    Ответ написан
    2 комментария
  • Как сделать такую "сеточку" для букв?

    DarkWood
    @DarkWood
    Один из вариантов.

    Для начала создаете файл размером 4x4 пикселя. Любым удобным образом рисуете два черных квадрата. Создаете из этого изображения паттерн (Edit> Define Pattern).

    619d17f96edfd086055951.png

    Скрываете тут имеющиеся слои и добавляете новый с заливкой новым паттерном. Это нужно для более удобного последующего его редактирования.

    619d180e84871121703276.png

    Далее возможны варианты. Если хотите, то можете увеличить размер холста до того, который будет у изображения с надписью. А можете только под процентное увеличение паттерна. Увеличить же его надо обязательно. Тогда границы получатся менее четкими. Для моего примера хорошим стал масштаб 150%. Соответственно размер холста нужно увеличить на 50%, то есть до 6x6 пикселей, чтобы получился повторяющийся рисунок.

    Минус второго варианта в том, что под каждый масштаб паттерна придется менять и размеры холста. У первого варианта тоже есть небольшой минус - там необходимо следить уже за размерами конечного изображения. Проще говоря, тоже менять размеры холста по необходимости. Но уже под каждую новую картинку, если у них, естественно, будут разные размеры.

    619d18a96273f101884782.png

    Сохраняете файл в формате PSD. Закрывать его не надо, чтобы пока что осталась оперативная возможность отредактировать.

    Создаете основной файл с надписью. Наносите ее выбранным шрифтом, кеглем и цветом. Делаете этот слой смарт-объектом.

    Применяете к нему фильтр Filter> Distort> Displace. Смещение подбирается эмпирически. Заранее точные значения для вашей надписи я сказать не могу. Меня устроили значения 3 и 1. В любом случае смещение по горизонтали должно быть больше, чем по вертикали. Хотя никто не запрещает вам создать свой эффект. Я же равняюсь на пример.

    Если вы заливали паттерном холст под размер этого изображения, то выбирайте пункт Stretch to Fit. Если последовали по второму варианту - Tile.

    619d18c2ed062107082490.png

    В качестве карты смещения указываете сохраненный ранее файл с паттерном.

    Готово:

    619d18ecaab4c167158028.png

    Благодаря смарт-объекту у вас всегда остается возможность отредактировать все параметры надписи и фильтра.

    Для усиления эффекта вы можете добавить еще два дубликата слоя, которые усилят глитч-эффект. Как правило они имеют светло-красный и голубой оттенки. Вы можете это сделать как внутри смарт-объекта, так и просто с его дубликатами. Но первый способ лучше, потому что иначе при изменении карты смещения придется менять ее у трех слоев вместо одного. С другой стороны, там придется менять текст на трех слоях вручную. Но мне кажется это проще, чем три раза указывать карту смещения.

    619d18fb47667576178638.png

    619d1907632ba045780746.png

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

    619d1a84a834c579182876.png
    Ответ написан
    1 комментарий
  • Как нарисовать плавные струйки дыма?

    DarkWood
    @DarkWood
    Я опишу вам алгоритм, который позволит создать в Illustrator нечто похожее. Подойдет ли оно вам - смотрите сами. Автоматизировать этап создания кривых - крайне сложно. Думаю, из описания сами поймете почему.

    Начинается, собственно, всё с этим самых кривых. Вам нужно две. Чем больше они между собой переплетаются, тем интереснее потом будет узор. Я специально оставил справа ровную часть, чтобы было видно, что она не дает ничего. Если спросите как я сейчас их нарисовал - просто карандашом.

    61802664abff2460020473.png

    Создаете между ними бленд (Ctrl+Alt+B) с дистанцией в 1 пиксель. Можно поставить меньше - тогда переходных кривых будет больше. При толщине контура в 1 пиксель меньше 0.4 пикселя ставить уже особого смысла не будет.

    618026a380abc845121510.png

    Не переживайте, что всё слилось в одноцветье. Кстати, желаемый цвет вы можете задать как сейчас, так и на следующем этапе. Рекомендую делать это как раз там.

    На всякий случай скопируйте бленд (Ctrl+C > Ctrl+F), чтобы была возможность что-то исправить, если последующий результат не понравится.

    Выполните команду Object> Blend> Expand.

    Далее Shift+Ctrl+G

    Задаете малую непрозрачность (около 10%). Как раз сейчас лучше всего менять цвет. Можете также поменять режим смешивания.

    618026b345bc8360746368.png

    Ctrl+G.

    Большее свечение на "петлях" можно сделать дубликатом этой группы (Ctrl+C > Ctrl+F). Эту копию тоже надо будет потом разгруппировать (Shift+Ctrl+G) изменить цвет на более светлый, непрозрачность и режим смешивания по вкусу.

    618026de13dcb347638107.png

    Собственно, узор готов.

    При создании бленда вы можете нарисовать еще одну кривую и расположить ее в панели слоев между двух других. Дальше весь фокус в том, что ей нужно задать цвет фона. И в данном случае цвет других кривых нужно задавать сейчас. Потом тоже можно через команду Recolor Artwork, но это лишние действия.

    618026e910192073261890.png

    Продолжение такое же: Shift+Ctrl+G, меняете прозрачность, режим смешивания и т.п.

    618027083db5a504901276.png

    Можно добавить еще одну кривую цвета фона и переплести ее с остальными. Можно переплетать два бленда от основного цвета к цвету фона и т.д. и т.п.

    Все команды, кроме рисования кривых, прекрасно записываются в экшен.
    Ответ написан
    2 комментария
  • Как сделать такую анимацию в адоб премьере?

    DarkWood
    @DarkWood
    Обычное масштабирование + вращение.
    Ответ написан
    Комментировать
  • Как он наложил такой градиент на пилу в фотошопе?

    DarkWood
    @DarkWood
    Вот ваш "специальный" градиент. Просто скопирован с картинки.

    61520fded3785627599450.png
    Ответ написан
    9 комментариев
  • Некорректная работа с быстрыми масками в фотошоп. Что делать?

    DarkWood
    @DarkWood
    Дважды кликните по иконке быстрой маски на панели инструментов и выберите, что будет подкрашиваться цветом: маскируемая область или выделяемая область. Вам нужна выделяемая область (Selected Areas).
    Ответ написан
    Комментировать
  • Определить расширение файла, его удалили, кажется файл чертежа был?

    DarkWood
    @DarkWood
    Файл Solidworks:
    611aa0c63bff4877232972.png
    Ответ написан
    Комментировать
  • Как организовать предпросмотр результата одного psd файла в другом?

    DarkWood
    @DarkWood
    Смарт-объекты. А точнее, один смарт-объект и его дубликаты нужных размеров в разных местах.
    Ответ написан
    Комментировать
  • After Effects, как настроить эффект Fill, чтобы анимацию появление текста из маски, стала быстрее?

    DarkWood
    @DarkWood
    К надписи "blackeyedcat" применен стандартный keyframe assistant: Easy Ease In и Easy Ease Out. А еще не совсем понятно зачем вы добавляете эффект Fill для текста - его цвет можно менять и просто так.
    Ответ написан
    Комментировать
  • Как сделать картинке обводку?

    DarkWood
    @DarkWood
    Я бы сделал так.

    Раз у вас человек уже вырезан, то делаете его выделение. Сразу же тут создаете из него маску. Зачем - чуть позже станет понятно.

    Выделяете еще раз. Создаете из выделения контур с допуском в 1 пиксель. Возможно, перед этим сжимаете контур также на 1 пиксель. Посмотрите сами по следующему результату - по истории всегда можно откатиться.

    Настраиваете кисть для обводки и, собственно, делаете обводку по контуру. На отдельном слое, конечно. Который подкладываете под человека.

    Потом просто щелкаете на созданную в самом начале маску. Открываете панель Properties и задаете растушевку (Feather) в 1 пиксель (или немного больше - смотрите сами), чтобы смягчить края изображения. Можно эту растушевку сделать и другими способами, но этот один из самых быстрых по созданию и простых в редактировании.
    Ответ написан
    Комментировать
  • Как сделать полупрозрачное изображение?

    DarkWood
    @DarkWood
    Мне кажется это проще нарисовать заново, чем пытаться что-то там выделить.

    Архив с исходником в формате AI (CC 2020) + PNG.
    Ответ написан
    Комментировать
  • Обтравочная маска удаляет заливку внутри объекта. Как исправить?

    DarkWood
    @DarkWood
    Не понятно как вы делаете обтравочную маску. В приложенном исходном файле у вас красный мазок сделан прямо поверх растрового плавника. Хотя, судя по скриншоту, он должен быть векторным. Смотрите где вы ошиблись.

    Но если у вас есть более правильный исходник, то рисуйте так же как и для тела дельфина: основная фигура и поверх нее другие слои.
    Ответ написан
    Комментировать
  • Почему обтравочная маска удаляет объекты внутри? Как решить эту проблему?

    DarkWood
    @DarkWood
    Хоть вопрос уже и имеет решение, но можно поступить много проще. Вы создаете фигуру обравочной маски на нужном слое (в вашем случае "пейзаж"). Новая фигура по умолчанию будет на самом верху. Ничего не выделяете (а если было выделено, то снимаете выделение) и нажимаете кнопку Make Clipping Mask из выпадающего меню панели слоев. Этой командой из верхнего объекта создается обтравочная маска для всего слоя, которой все равно на порядок расположения подслоев и всего прочего.

    60a2a6ba82848337854535.png
    Ответ написан
    1 комментарий
  • Как обьеденить отдельные контури в точках пересечения?

    DarkWood
    @DarkWood
    Обрезаете любым известным вам способом кончики контуров, выходящие за пределы круга. Рекомендую Shape Builder Tool (Shift+M).

    Выделяете всё. Нажимаете сочетание Ctrl+8. Заново задаете искомую толщину обводки, потому что она сбросится. Впрочем, для резки толщина обводки уже роли не играет - чисто визуализация для вас.
    Ответ написан
    Комментировать