¿Cómo puedo crear rutas con radios de borde precisos?

Así que me estoy confundiendo un poco con los radios en Inkscape. Durante bastante tiempo pensé que esto:

Camino con radio manual

era lo mismo que esto:

rectángulo con radio

... Pero resulta que superponerlos uno encima del otro revela que son diferentes:

Comparación

(donde el rojo es el rectángulo y el azul es el camino)

Un análisis más detallado revela que (después de convertir el rectángulo en una ruta) los controladores están en ubicaciones extrañas:

Extraño...

Entonces mi pregunta es, ¿es posible crear radios de borde precisos sin el uso de la herramienta Rectángulo (donde el radio es el mismo en todos los ángulos)? ¿O debo confiar siempre en él para obtener resultados verdaderamente precisos? Y también, ¿alguien tiene una explicación de por qué las manijas están donde están?

Hubiera esperado que estuvieran a 2 px de distancia de sus anclas, no a ~2.2 px
Aquí: imgur.com/7GPwAaV ? De todos modos, parece que es mucho más complejo de lo que parece: whizkidtech.redprince.net/bezier/circle/kappa
bueno, puede hacer que el coeficiente se ajuste usted mismo, pero la longitud de las tangentes se puede aproximar a 1/3 de la distancia entre los puntos en la dirección de la tangente. Tenga en cuenta que un bezier no puede hacer un círculo perfecto, por lo que siempre es una aproximación.

Respuestas (1)

Error de redondeo a bajas tasas de píxeles

Especialmente cuando se dibuja en el rango de píxeles bajo, siempre hay un error de redondeo considerable que luego se vuelve visible.

En el siguiente ejemplo, dibujé un círculo con un radio de 4 px (gris), un rectángulo con esquinas redondeadas con un radio de 4 px (negro) y un rectángulo donde las esquinas redondeadas se hicieron manualmente a partir de círculos con un radio de 4 px (ver la solución a continuación) .

Los valores se ajustaron cuidadosamente desde la barra de herramientas para que sean exactamente de un radio 4.000px). Aún así, podemos ver que el rectángulo redondeado no es perfecto:

ingrese la descripción de la imagen aquí

Dibuja a velocidades de píxeles más altas para mayor precisión.

Tan pronto como comencemos a trabajar a una tasa de píxeles más alta (debajo del círculo rojo tiene un radio de 40 píxeles), la esquina redondeada del rectángulo coincidirá mucho mejor con el radio exacto de 40 píxeles:

ingrese la descripción de la imagen aquí

Solución alternativa para tasas de píxeles bajas

En caso de que necesitemos una mayor precisión en dibujos con una tasa de píxeles baja, no podemos utilizar la herramienta de rectángulo redondeado predefinida. Es posible que luego tengamos que construir nuestras formas manualmente, por ejemplo, a partir de un círculo base:

  1. Transforme el círculo en la ruta Bezier ( Ruta> Objeto a ruta ):

    ingrese la descripción de la imagen aquí

  2. Seleccione todos los nodos para dividir la ruta en los nodos seleccionados ingrese la descripción de la imagen aquí

  3. Seleccione un segmento y muévalo a la posición deseada.

    ingrese la descripción de la imagen aquí

  4. Repita para todos los segmentos.

  5. Seleccione los nodos abiertos para unir las notas finales seleccionadas con un nuevo segmento ingrese la descripción de la imagen aquí

    ingrese la descripción de la imagen aquí

  6. Repita para los segmentos abiertos restantes.

Esto dará mejores resultados a resoluciones de píxeles bajas (vea la línea roja en el primer ejemplo anterior).

No estoy muy seguro de que sea un error de redondeo, probablemente solo haya ubicaciones incorrectas de mi parte, como se ve en la pregunta. Pero la segunda parte de tu respuesta es útil.