Trazo promedio de un relleno

Me gustaría generar un trazo promedio a partir de una ruta cerrada compuesta dada, o relleno, en Adobe Illustrator CC o Inkscape.

Representación del resultado deseado de promediar un camino cerrado compuesto

Lo siento, no sé el nombre de la función matemática para lograr esto. Me encontré con un par de trucos extraños relacionados con Photoshop, pero es lógico que haya una forma más sencilla de lograrlo dentro de un programa de vectores. Desafortunadamente, el promedio de ruta de Illustrator colapsa mi ejemplo en un solo punto, probablemente porque tiene aspectos tanto horizontales como verticales.

Suena como una tarea matemáticamente altamente no trivial para mí. Incluso para un ser humano es imposible saber si el resultado debe ser suyo o uno en el que hay dos caminos que no se cruzan: uno que conecta los dos puntos finales inferiores y otro que conecta los dos puntos finales superiores.

Respuestas (1)

Usando Inkscape...

tl;dr Interpolar caminos

Como caso generalizado, esta es una pregunta muy interesante, para la cual tengo una respuesta razonable. Sin embargo, su ejemplo específico se complica aún más por el hecho de que su "camino" resultante deseado requiere múltiples subcaminos desconectados que se cruzan (uno para la línea horizontal y otro para la línea vertical). Entonces, responderé el caso más general (y más simple) de una ruta continua que no se cruza, como se resume a continuación:

Resumen

Pasos:

  1. Para configurar el ejemplo, comience con una ruta simple que tenga un ancho de trazo sustancial.

ingrese la descripción de la imagen aquí

  1. Elija "Ruta"> "Trazo a ruta"

ingrese la descripción de la imagen aquí

  1. Juega con los nodos para crear un ejemplo más interesante.

ingrese la descripción de la imagen aquí

  1. Retire el relleno y establezca un trazo fino.

ingrese la descripción de la imagen aquí

  1. Elimine los dos segmentos de punto final. Luego elija "Ruta"> "Separar"

ingrese la descripción de la imagen aquí

  1. Importante: seleccione uno de los objetos resultantes (cualquiera de los dos) y elija "Ruta" > "Reversa" .

  2. Seleccione los dos objetos y elija "Extensiones" > "Generar desde ruta" > "Interpolar". (Asegúrese de que la configuración de la extensión Interpolate esté configurada de la siguiente manera.

ingrese la descripción de la imagen aquí

  1. Elimine las dos rutas originales, dejando solo la ruta interpolada. Será un grupo. Puede elegir "Objeto"> "Desagrupar" para eliminar el contenedor del grupo y simplemente tener una ruta simple y antigua.

ingrese la descripción de la imagen aquí

  1. Peinar con espesor al gusto. Desde aquí, puede simplificar o modificar según lo desee.

ingrese la descripción de la imagen aquí

Al probar este método, veo lo que Sean quiso decir con que mi ejemplo no es ideal. La falta de puntos finales crea un problema que da como resultado una interpolación no significativa. Regresé y tracé en vivo los bocetos originales en Adobe Illustrator y vi que había algunas opciones para el arte lineal, que hace un trabajo decente si lo modifico y creo trazos. Tengo pocas muestras suficientes para dibujar lo que necesito, por lo que puedo dejar caer una solución automatizada y esperar que no vuelva a surgir.