Ответы пользователя по тегу Canvas
  • Как удалить элемент с поля?

    @UnformedVoid
    Разработчик ПО
    Вы пользуетесь канвасом как хранилищем состояния — это императивный подход и от этого неудобный. Это как с JQuery, только хуже, потому что тут у вас нет селекторов. Вы не должны опираться на то, что нарисовано на канвасе. Ваш канвас должен служить просто представлением. Вынесите все ваши данные в JS в качестве массива или объекта — как вам удобно. Далее напишите код, который будет перерисовывать ваш канвас при изменении состояния. Есть два способа решать проблемы: первый — тот, которым вы пытались решить вопрос — прямой способ, второй способ — это поменять задачу так, чтоб в новом контексте проблема стала невозможной, бессмысленной, в общем перестала существовать. Если вы вынесите всю логику в JS, то вопроса «как удалить» у вас не останется.
    Ответ написан
    4 комментария
  • Как работает анимация в хедере на сайте JetBrains?

    @UnformedVoid
    Разработчик ПО
    Вроде такие штуки называются каплевидными объектами или метаболами (metaball). У них есть строгое математическое описание. В целом это самая сложная часть в этой задаче. А в остальном — это просто отрисовка на канвасе в пару-тройку слоёв. По ощущениям каждый «шарик» привязан к какой-то точке, от которой он не может отойти больше чем на отведённое ему расстояние. Ну и вдобавок к этому, он «убегает» от курсора. Вот и весь эффект.

    Вот почитать и пример реализации:
    https://ru.wikipedia.org/wiki/Metaball
    paperjs.org/examples/meta-balls
    Ответ написан
    2 комментария