Cómo dibujar un contorno alrededor de cualquier línea

Así que tengo una línea arbitraria (ver un ejemplo que se muestra en la figura 1) compuesta por n puntos

Quiero dibujar un contorno alrededor de esta línea (ver figura 2), así que necesito calcular los puntos del polígono circundante.

Comencé realizando una dilatación en la línea, pero esto no funcionará; vea la figura 3

¿Alguna sugerencia sobre cómo hacer esto

¿Sospecho calcular la normalidad de cada segmento de línea para utilizarla en la traducción de la nueva línea de abajo y una nueva línea sobre su posición actual y luego extender cada nueva línea al infinito y definir los puntos como las intersecciones?

Respuestas a la pregunta(5)

Su respuesta a la pregunta