¿Qué significa el número junto a un color?
Estoy leyendo este artículo sobre el diseño del material. En la lista de colores, hay un número junto a cada color que parece oscurecer el color a medida que sube su valor.
- CollapsingToolbarLayout no funciona (colapsando) cuando se desplaza
- Error al inflar el fragmento de clase InflateException Archivo XML binario
- Cómo mostrar los elementos de acción en la parte inferior mediante la barra de herramientas
- Diseño de material control paso a paso
- ¿Cómo puedo eliminar el relleno superior innecesario de la vista de navegación?
¿Qué significa este número, más precisamente?
Editar: Como todas las respuestas son sobre los valores hexadecimales, estoy añadiendo esta edición para aclarar la pregunta. Mi pregunta es sobre los números del lado izquierdo como 700, 500, … no los números hexadecimales (# 3f51b5, …)
Edición 2: En el modelo RGB, cada uno de los colores Rojo, Verde o Azul puede tener un valor en escala de 0 a 255. 0 significa falta de color y 255 significa que el color existe en plena potencia. ¿Hay un significado numérico para los números del lado izquierdo? ¿Puedo calcular el '700' de un color, suponiendo que '500' sea # 3F51B5? O estos números son sólo el nombre de diferentes tonos de color en una paleta?
- Cómo configurar un efecto ripple en textview o imageview en Android?
- ¿Cómo habilitar o falsificar la mini variante de la guía de diseño de materiales para android.support.v4.widget.DrawerLayout?
- Android "más suave" ocultación de la barra de herramientas al desplazarse
- Superposición de contenido por encima de AppBarLayout utilizando nuevo diseño de material
- Lollipop Barra de progreso Tinción
- Cómo cambiar la fuente de navegación Encabezado de cajón y ScrollingActivity?
- Vista fija en el diseño de contenido de Viewpager, bajo CoordinatorLayout
- ¿Botón circular material en Android?
Esos valores son la ligereza relativa / oscuridad o "matiz" del color, donde 50 es más ligero y 900 es más oscuro. Las directrices de diseño de material sugieren que el tono 500 sea el color primario y que el tinte 700 sea el color más oscuro de la barra de estado.
Los valores de Annn son si usted está utilizando el color como su color de acento.
Consulta la página https://www.google.com/design/spec/style/color.html#color-ui-color-application
Las otras respuestas son correctas también, pero creo que usted está preguntando sobre los números del lado izquierdo. Puede utilizarlos para especificar los colores del tema en Angular-Material.
$mdThemingProvider.theme('default') .primaryPalette('purple', { 'default': '700', // by default use shade from the palette for primary intentions 'hue-1': 'A400', // use shade for the <code>md-hue-1</code> class 'hue-2': '600', // use shade for the <code>md-hue-2</code> class 'hue-3': 'A100' // use shade for the <code>md-hue-3</code> class }) // If you specify less than all of the keys, it will inherit from the default shades .accentPalette('deep-purple', { 'default': '200' // use shade 200 for default, and keep all other shades the same })
Los números que vea en uso, corresponden a los números del lado izquierdo para configurar los colores. Mi sitio está usando variaciones del tema púrpura en este ejemplo, y puedo configurar el tono diferente de lo que eran los ajustes de Google.
No tiene nada que ver específicamente con Android o el diseño del material, es sólo una forma de codificar los colores como los valores Rojo, Verde y Azul utilizando la notación hexadecimal. #RRGGBB
donde RR
es el número hexadecimal de 2 dígitos (de 0 a 255) para el componente rojo, GG
es para el componente verde y BB
para el azul.
Por ejemplo, si desea codificar el color blanco (255, 255, 255 en RGB) escribe: #FFFFFF
porque FF
en hexadecimal es 255
en notación decimal. Un amarillo podría ser #FFFF00
, porque tiene 255 para el rojo y 255 para el verde (y 0 para el azul). Y así.
Puede encontrar más información aquí .
El número es códigos dados a todos y cada uno de los colores admitidos por el sistema. Cada código de color contiene el símbolo "#" y 6 letras o números. Estos números están en el sistema numérico hexadecimal. Por ejemplo, "FF" en hexadecimal representa el número 255 en Decimal.
Significado de los símbolos: Los dos primeros símbolos en el código de color HTML representa la intensidad del color rojo. 00 es el menos y FF es el más intenso. El tercero y el cuarto representa la intensidad del verde y el quinto y el sexto representa la intensidad del azul. Así que combinando la intensidad de rojo, verde y azul podemos mezclar casi cualquier color que nuestro corazón desee.
Ejemplos:
FF0000 – Con este código HTML le decimos al navegador que muestre máximo de rojo y no de verde ni de azul. El resultado es, por supuesto, de color rojo puro.
00FF00 – Esto resulta en verde puro.
El número que está viendo es el HEX (hexadecimal) valores para el tono de color y el color. Puede utilizarlo en archivos CSS en lugar de escribir, es decir, negro, blanco o azul.
De WIKI: "Un triplete hexadecimal es un número hexadecimal de seis dígitos y tres bytes utilizado en HTML, CSS, SVG y otras aplicaciones informáticas para representar colores.Los bytes representan los componentes rojo, verde y azul del color.Un byte Representa un número en el rango de 00 a FF (en notación hexadecimal), o de 0 a 255 en notación decimal "
Más información aquí https://en.wikipedia.org/wiki/Web_colors
Diferencia de color
La percepción del color es, por supuesto, subjetiva, pero hay un acuerdo significativo entre los seres humanos. Por ejemplo, todos estamos de acuerdo en que el rojo, el verde y el azul son colores muy diferentes, e incluso las personas de colorblind están de acuerdo en que el blanco y negro son muy diferentes.
RGB
La representación más común del color en los sistemas informáticos es el vector (r, g, b) que sugiere una función de distancia simple como
Permite establecer el rango de r , gyb a [0, 1] y ver cómo funciona esto:
- El rojo (1, 0, 0) y el rojo (1, 0, 0) tiene la distancia de 0 , que debe ser obvia
- El rojo (1, 0, 0) y amarillo (1, 1, 0) tiene la distancia de 1 , que es menor que la distancia de
- Red (1, 0, 0) y azul (0, 0, 1) que es sqrt (2) , que es plausible
Hasta aquí todo bien. El problema, sin embargo, es que el azul y el rojo tienen la misma distancia 1 de negro (0, 0, 0) , pero al mirar la imagen esto no parece ser cierto:
También amarillo (1, 1, 0) y magenta (1, 0, 1) ambos tienen la misma distancia 1 de blanco (1, 1, 1) , que tampoco parece tener sentido:
HSL y HSV
Creo que es seguro asumir que las métricas analógicas para los esquemas de color HSL y HSV tienen los mismos problemas. Estos esquemas de color no están diseñados para comparar el color.
CIEDE2000
Por suerte, hay científicos que ya están tratando de encontrar una buena manera de comparar colores. Ellos llegaron con algunos métodos elaborados, el último de los cuales es CIEDE2000
(La fórmula completa descrita en el artículo es enorme )
Esta métrica toma en cuenta la percepción humana, como el hecho de que parecemos ser incapaces de discernir tonos de azul muy bien. Así que diría que usamos esto como nuestra función de diferencia de color.
El algoritmo de selección de color
Solución ingenua
Algunas respuestas sugirieron el siguiente algoritmo
colors = [] for n in range(n): success=False while not success: new_color = random_color() for color in colors: if distance(color, new_color)>far_enough: colors.append(new_color) success = True break
Este algoritmo tiene algunos problemas:
-
El espaciado de los colores no es óptimo. Si imaginamos que los colores son como números en una línea, tres números estarían espaciados óptimamente de la siguiente manera:
| A —– b —– c |
Embalar un número adicional en el mismo sin mover a, b, yc es claramente peor que realinear todos los colores.
-
El algoritmo no está garantizado para terminar . ¿Qué pasa si no hay color que es lo suficientemente lejos de los colores existentes en la lista? El bucle continuará para siempre
- RecyclerView (horizontal) anidados en BottomSheet que impide el desplazamiento vertical
- SetColorFilter no funciona en Xamarin.Android