Una reflexión invierte el gráfico de una función respecto de un eje, cambiando el signo de la entrada o de la salida.
Reflejar una función significa construir una imagen especular de su gráfico. La forma general se conserva, pero aparece invertida respecto de un eje.
En programación, las reflexiones se usan al invertir coordenadas, cambiar sentidos de movimiento, adaptar sistemas gráficos y construir simetrías.
Para reflejar una función respecto del eje X se cambia el signo de la salida.
Los valores positivos pasan a negativos y los negativos pasan a positivos.
Para reflejar una función respecto del eje Y se cambia el signo de la entrada.
Lo que ocurría a la derecha del eje Y aparece a la izquierda, y viceversa.
| Reflexión | Forma | Qué cambia |
|---|---|---|
| Respecto del eje X | -f(x) | La salida y |
| Respecto del eje Y | f(-x) | La entrada x |
Usaremos una función lineal para que las reflexiones se vean con claridad.
function lineal(x) {
return 2 * x + 1;
}
console.log(lineal(-2));
console.log(lineal(0));
console.log(lineal(2));
Multiplicar el resultado por -1 invierte los valores verticales.
function lineal(x) {
return 2 * x + 1;
}
function reflejadaEnX(x) {
return -lineal(x);
}
console.log(lineal(2));
console.log(reflejadaEnX(2));
console.log(lineal(-2));
console.log(reflejadaEnX(-2));
Cambiar el signo de la entrada invierte horizontalmente el gráfico.
function lineal(x) {
return 2 * x + 1;
}
function reflejadaEnY(x) {
return lineal(-x);
}
console.log(lineal(2));
console.log(reflejadaEnY(2));
console.log(lineal(-2));
console.log(reflejadaEnY(-2));
También se pueden reflejar puntos directamente. Esto es común cuando ya tenemos coordenadas calculadas.
| Operación | Punto original | Punto reflejado |
|---|---|---|
| Respecto del eje X | (x, y) | (x, -y) |
| Respecto del eje Y | (x, y) | (-x, y) |
| Respecto del origen | (x, y) | (-x, -y) |
Estas funciones reflejan un punto según el eje elegido.
function reflejarPuntoEnX(punto) {
return { x: punto.x, y: -punto.y };
}
function reflejarPuntoEnY(punto) {
return { x: -punto.x, y: punto.y };
}
const punto = { x: 3, y: 5 };
console.log(reflejarPuntoEnX(punto));
console.log(reflejarPuntoEnY(punto));
Para graficar o transformar una figura completa, se aplica la reflexión a cada punto de la lista.
function reflejarListaEnX(puntos) {
return puntos.map(function(punto) {
return { x: punto.x, y: -punto.y };
});
}
const puntos = [
{ x: -1, y: 2 },
{ x: 0, y: 0 },
{ x: 1, y: 3 }
];
console.log(reflejarListaEnX(puntos));
Una reflexión respecto del eje X puede implementarse como una transformación que recibe cualquier función.
function reflejarVertical(funcion) {
return function(x) {
return -funcion(x);
};
}
function cuadratica(x) {
return x * x;
}
const invertida = reflejarVertical(cuadratica);
console.log(cuadratica(3));
console.log(invertida(3));
Una reflexión respecto del eje Y se implementa cambiando el signo de la entrada.
function reflejarHorizontal(funcion) {
return function(x) {
return funcion(-x);
};
}
function cubica(x) {
return x * x * x;
}
const reflejada = reflejarHorizontal(cubica);
console.log(cubica(2));
console.log(reflejada(2));
Reflejar respecto del origen equivale a cambiar el signo de la entrada y de la salida.
function lineal(x) {
return 2 * x + 1;
}
function reflejarEnOrigen(x) {
return -lineal(-x);
}
console.log(lineal(2));
console.log(reflejarEnOrigen(2));
En sistemas de pantalla, el eje Y suele crecer hacia abajo. Por eso, convertir coordenadas matemáticas a pantalla incluye una reflexión vertical.
function aPantalla(punto, origen, escala) {
return {
x: origen.x + punto.x * escala,
y: origen.y - punto.y * escala
};
}
console.log(aPantalla({ x: 2, y: 3 }, { x: 100, y: 100 }, 20));
console.log(aPantalla({ x: 2, y: -3 }, { x: 100, y: 100 }, 20));
Una reflexión vertical puede usarse para invertir el comportamiento de una señal o curva.
function señal(tiempo) {
return Math.sin(tiempo);
}
function señalInvertida(tiempo) {
return -señal(tiempo);
}
function redondear(valor) {
return Math.round(valor * 1000) / 1000;
}
console.log(redondear(señal(Math.PI / 2)));
console.log(redondear(señalInvertida(Math.PI / 2)));
Las reflexiones ayudan a reconocer funciones con simetría. Una función par cumple f(-x) = f(x). Una función impar cumple f(-x) = -f(x).
| Tipo | Propiedad | Ejemplo |
|---|---|---|
| Par | f(-x) = f(x) | x² |
| Impar | f(-x) = -f(x) | x³ |
Este ejemplo evalúa una función en x y en -x para observar su comportamiento.
function cuadratica(x) {
return x * x;
}
function cubica(x) {
return x * x * x;
}
function comparar(funcion, x) {
return {
enX: funcion(x),
enMenosX: funcion(-x)
};
}
console.log(comparar(cuadratica, 3));
console.log(comparar(cubica, 3));
Las reflexiones permiten invertir funciones y puntos respecto de un eje. Entender si el cambio ocurre en la entrada o en la salida evita confusiones y ayuda a trabajar con gráficos, sistemas de coordenadas y transformaciones visuales.