1 votos

Función para generar dos círculos para un degradado de color

Estoy trabajando en un proyecto de creación de un paquete de calibre en el software, pero estoy publicando aquí porque es más una pregunta matemática.

En pocas palabras, necesito una función para crear un gradiente de color para rellenar el resto del borde de la galga (Ver imágenes abajo).


(fuente: <a href="http://jyore.com/site_media/img/gauge/gauge1.png" rel="nofollow noreferrer">jyore.com </a>)

El software gráfico permite dibujar un degradado radial especificando el centro y el radio de dos círculos. Especifica los topes de color dándole un valor posicional entre 0 y 1. A continuación, dibuja el degradado entre las dos curvas del círculo.

La parte en la que estoy atascado es que el ángulo del color de conexión cambia en función del ángulo de la galga. Por lo tanto, parece que los círculos que definen el gradiente dependen del ángulo de la galga.

Cualquier ayuda que me pudieran proporcionar sería estupenda. Si necesita más información, no dude en pedírnosla.

2voto

lowglider Puntos 562

El gradiente no debería dependen del ángulo; lo único que debe cambiar es el ángulo del sector del círculo que une los dos lados.

Por cierto, si quieres que los bordes exteriores de la llanta se unan suavemente, ese ángulo debe ser el suplemento del ángulo interior, no igual a él como has mostrado en las fotos. De ese modo, tampoco tendrás que cambiar el radio de las esquinas en función del ángulo (aunque parece que ya has averiguado una fórmula para ello, a menos que hayas dibujado esas imágenes a mano).

Este es un boceto rápido que dibujé en GeoGebra para mostrar lo que quiero decir:

$\hspace{130px}$Illustration of circle sector with offset border

Aquí, los tres círculos pequeños tienen todos radio $r$ y el ángulo $\beta = 180^\circ - \alpha$ . Todas las demás esquinas entre las líneas negras (y círculos) en esta imagen son (múltiplos de) $90^\circ$ .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X