Pull to refresh

Comments 5

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


        {x: 0.3, y: 0.7},
         {x: 0.7, y: 0.7},
         {x: 0.51, y: 0.3},
         {x: 0.51, y: 0.65},
         {x: 0.49, y: 0.65},
         {x: 0.49, y:0.3},
         {x: 0.3, y:0.7}

видно, что вдоль сторон треугольника ширина обводки меньше, чем у основания.

С другой стороны, ваш вариант дает немного нестандартный "ломаный" эффект, и именно этим привлекает к себе внимание.

Интересная статья. Но ваш алгоритм на выходе может выдать результат с самопересечением для контуров с "петельками" радиусом менее отступа.

Вообще, эта тема хорошо представлена по ключевым словам "Offset curve".

Sign up to leave a comment.

Articles