Descripción general de la iluminación
Comandos de iluminación
El entorno de gráficas de MATLAB® ofrece comandos que le permiten posicionar las fuentes de luz y ajustar las características de los objetos que reflejan la luz. Estos comandos incluyen los siguientes:
Comando | Finalidad |
---|---|
Crear o mover una luz con respecto a la posición de la cámara | |
Crear o posicionar una luz en coordenadas esféricas | |
Crear un objeto de luz | |
Seleccionar un método de iluminación | |
Establecer las propiedades reflectantes de los objetos iluminados |
Puede establecer las propiedades de los objetos iluminados y de la luz para conseguir resultados específicos. Además del material de esta área temática, puede visualizar los ejemplos de iluminación como una introducción a la iluminación.
Objetos de luz
Puede crear un objeto de luz mediante la función light
. Tres propiedades importantes de los objetos de luz son:
La propiedad Color
determina el color de la luz direccional de la fuente de luz. El color del objeto y la fuente de luz determinan el color de un objeto en una escena.
La propiedad Style
determina si la fuente de luz es una fuente puntual (Style
se establece en local
), que se irradia desde la posición especificada hacia todas las direcciones, o una fuente de luz que se encuentra en el infinito (Style
se establece en infinite
), que brilla desde la dirección de la posición especificada con rayos paralelos.
La propiedad Position
especifica la ubicación de la fuente de luz en las unidades de datos de los ejes. En el caso de una fuente de luz situada en el infinito, Position
especifica la dirección hacia la fuente de luz.
La luz afecta a los objetos de parche y superficie que se encuentran en los mismos ejes que la luz. Estos objetos cuentan con un número de propiedades que alteran la forma en la que se ven cuando están iluminados por la luz.
Propiedades que afectan a la iluminación
No puede ver los objetos de luz por sí solos, pero puede ver sus efectos en cualquier objeto de superficie y parche que se encuentre en los ejes que contienen la luz. Un número de funciones crean estos objetos, por ejemplo, surf
, mesh
, pcolor
, fill
y fill3
, así como las funciones surface
y patch
.
Puede controlar los efectos de la iluminación al establecer diferentes propiedades de objetos de superficie, parche, luz y ejes. Todas las propiedades tienen valores predeterminados que suelen producir los resultados deseados. Sin embargo, puede conseguir el efecto específico que desea ajustando los valores de dichas propiedades.
Propiedad | Efecto |
---|---|
| Una propiedad de eje que especifica el color de la luz de fondo de la escena, que no tiene dirección y afecta a todos los objetos de manera uniforme. Los efectos de la luz ambiental se producen únicamente cuando hay un objeto de luz visible en los ejes. |
| Una propiedad de superficie y parche que determina la intensidad del componente ambiental de la luz reflejada desde el objeto. |
| Una propiedad de superficie y parche que determina la intensidad del componente difuso de la luz reflejada desde el objeto. |
| Una propiedad de superficie y parche que determina la intensidad del componente especular de la luz reflejada desde el objeto. |
| Una propiedad de superficie y parche que determina el tamaño del destello especular. |
| Una propiedad de superficie y parche que determina el grado en que las reflexiones especulares están coloreadas por el color del objeto o el color de la fuente de luz. |
| Una propiedad de superficie y parche que determina el método utilizado para calcular el efecto de la luz en las caras del objeto. Las opciones son sin iluminación, plana o algoritmo de iluminación de Gouraud. |
| Una propiedad de superficie y parche que determina el método utilizado para calcular el efecto de la luz en los bordes del objeto. Las opciones son sin iluminación, plana o algoritmo de iluminación de Gouraud. |
| Una propiedad de superficie y parche que determina cómo se iluminan las caras cuando las normales del vértice señalan hacia fuera de la cámara. Esta propiedad es útil para diferenciar entre las superficies internas y externas de un objeto. |
| Una propiedad de superficie y parche que especifica el color de las caras del objeto. |
| Una propiedad de superficie y parche que especifica el color de los bordes del objeto. |
| Una propiedad de superficie y parche que contiene vectores normales para cada vértice del objeto. MATLAB utiliza los vectores normales de los vértices para realizar cálculos de iluminación. Aunque MATLAB genera estos datos automáticamente, usted también puede especificar sus propias normales de vértice. |
| Una propiedad de superficie y parche que determina si MATLAB recalcula las normales de vértice si usted cambia los datos del objeto ( |
Para obtener más información, consulte Axes Properties, Surface Properties y Patch Properties.
Ejemplos de control de iluminación
La iluminación es una técnica para añadir realismo a una escena gráfica. Esto se realiza mediante la simulación de las zonas oscuras e iluminadas que tiene un objeto con iluminación natural (p. ej., la luz direccional que procede del sol). Para crear los efectos de iluminación, MATLAB define un objeto de gráficas llamado luz. MATLAB aplica iluminación a objetos de parche y de superficie.
Ejemplo: incorporación de luces a una escena
Este ejemplo muestra la superficie de la membrana y la ilumina con una fuente de luz que surge desde una ubicación en la parte derecha de la posición de la cámara.
membrane camlight
La creación de una luz activa un número de propiedades relacionadas con la iluminación, que controlan características como la luz ambiental y las propiedades reflectantes de los objetos.
Ejemplo: iluminación de funciones matemáticas
La iluminación puede mejorar las gráficas de superficie de las funciones matemáticas. Por ejemplo, utilice el comando ezsurf
para evaluar la expresión
sobre la región -6π a 6π.
h = fsurf(@(x,y) sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2), ... [-6*pi,6*pi]);
Ahora, añada la iluminación mediante la función lightangle
, que acepta la posición de la luz en cuanto al acimut y la elevación.
view(0,75) shading interp lightangle(-45,30) h.FaceLighting = 'gouraud'; h.AmbientStrength = 0.3; h.DiffuseStrength = 0.8; h.SpecularStrength = 0.9; h.SpecularExponent = 25; h.BackFaceLighting = 'unlit';
Tras obtener el identificador del objeto de superficie mediante findobj
, puede configurar las propiedades que afecta al modo en que la luz se refleja desde la superficie. Consulte Propiedades que afectan a la iluminación para obtener descripciones más detalladas sobre estas propiedades.