Está en la página 1de 5

Grupo ISOF*01 Aula E-103 Diego Félix Mendoza 1

Algoritmo para Generación de elipse.

-El elipse

En términos generales, un elipse es una circunferencia alargada. Si bien un círculo es una


línea curva cerrada dónde cada punto de esta es equidistante
de su centro, el elipse no equidista en todos sus puntos a su
centro, este por otro lado, cuenta con 2 “radios” o ejes distintos,
uno más grande que el otro. En palabras más concretas, Un
elipse se define como el conjunto de puntos en que la suma de
las distancias desde dos posiciones fijas (los focos del elipse) Fig. 1. Elipse común, con las distancias de
sus focos a un punto en su borde resaltadas
sea la misma para todos los puntos. en color rojo y azul

Ecuación general del elipse: Ax2 + By2 + Cxy + Dx + Ey + F = 0, donde los coeficientes A,
B, C, D, E, y F se evalúan en términos de las coordenadas focales y las dimensiones de los
ejes mayor y menor de la elipse.

-Algoritmo básico para generar un elipse.

La forma más simple de trazar un elipse involucra que este sea orientado de forma en sus
ejes mayor y menor queden alineados con los ejes del plano cartesiano.
Especificamente, la posición estándar del elipse tiene de forma paralela al
eje mayor y menor con el eje de las abscisas y ordenadas
respectivamente.
Fig. 2. Forma estándar del
elipse, dónde rx=eje mayor y
ry=eje menor. Una vez alineado el elipse se puede proseguir con la ecuación expresada
en terminos de las coordenadas del centro de la elipse y de los radios de este:
2
𝑋−𝑋𝐶 2 𝑦−𝑦𝑐
Ecuación generación de elipse: ( 𝑟𝑥
) +( 𝑟𝑦
) =1

Posteriormente, aplicando las coordenadas polares r y θ se


pueden obtener los valores de x y y.
Ecuación para valor de x: X = XC+ rx cos θ
Fig. 3. Simetría de las posiciones de X y Y
Ecuación para valor de y: Y = YC + ry cos θ en los 4 cuadrantes del elipse.

Algo a considerar es que este calculo solo tiene que ser realizado 1 vez, puesto a que
considerando la simetría, con obtener las coordenadas de 1 solo punto del elipse, podemos
conocer las coordenadas de los puntos simetricos a este en los otros 3 cuadrantes del
elipse.
Grupo ISOF*01 Aula E-103 Diego Félix Mendoza 2

-Algoritmo de punto medio para elipse.

Utilizando los parámetros rx, ry, (xc, yc), se determina los puntos (x, y) para una elipse en
posición estándar centrada en el origen y luego se altera los puntos, de modo que la elipse
este centrada en (xc, yc).

Para el primer cuadrante, dividido en 2 regiones, se toman pasos unitarios


en la dirección de X y Y con pendientes menores a 1 y mayores a 1
respectivamente. Se puede iniciar en la posición (0, ry) y pasar en el
sentido del reloj a lo largo de la trayectoria elíptica en el primer cuadrante,
Fig. 3. El elipse en posición no
al alternar de pasos unitarios en x a pasos unitarios en y cuando m ≤-1 estándar. El primer cuadrante se
divide en 2 regiones determinadas
por el valor de la pendiente r x<ry.
Algortimo:

1. Se capturan el radio rx, ry y el centro de la circunferencia (xc,yc) y se obtiene el primer


punto de una elipse centrada en el origen como (x0,y0) = (0,ry), donde 2 ry2x = 0 y
2rx2y=2rx2ry

2. Se calcula el valor inicial del parámetro de decisión como p10 = ry2- rx2ry+1/4rx2

3. En cada posición xk, en la región 1, iniciando en k=0, se efectúa la prueba siguiente: Si


p1k < 0, el siguiente punto a lo largo de la elipse centrada en (0,0) es (xk+1,yk) y
p1k+1=p1k+2ry2xk+1+ry2. De otro modo, el siguiente punto a lo largo de la circunferencia es
(xk+1,yk -1) y p1k+1 = p1k+2ry2 xk+1+ry2-2rx2 yk+1 donde xk+1=xk+1 y yk+1=yk-1.

4. Se evalúa el valor inicial del parámetro de decisión en la región 2 utilizando el ultimo


punto (x0, y0) calculado en la región 1 como: p20 = ry2(x0+1/2)2+rx2(y0-1)2-rx2ry2

5. En cada posición yk, en la región 2, iniciando en k=0, se efectúa la prueba siguiente: Si


p2k > 0, el siguiente punto a lo largo de la elipse centrada en (0,0) es (xk,yk-1) y p2k+1= p2k-
2rx2yk+1+rx2. De otro modo, el siguiente punto a lo largo de la circunferencia es (xk+1,yk -1)
y p2k+1=p2k+2ry2xk+1-2rx2yk+1+rx2 donde xk+1=xk+1 y yk+1=yk-1.

6. Se determinan puntos de simetría en los otros tres cuadrantes.

7. Se mueve cada posición de pixel calculada (x,y) a la trayectoria


elíptica centrada en (xc,yc) y se traza los valores de las
coordenadas x = x+xc,y=y+yc.
Fig.4. Ejemplo de posiciones generadas en
el primer cuadrante para un elipse de rx=8
8. Se repiten los pasos para la región 1 hasta que 2ry2x≥2rx y.2
y ry=6
Grupo ISOF*01 Aula E-103 Diego Félix Mendoza 3

Primitivas Gráficas de caracteres.

Caracteres y fuentes.

Las imágenes gráficas incluyen a menudo información textual, como por ejemplo etiquetas,
gráficas, carteles en edificios o vehículos e información general de identificación para
aplicaciones de simulación y visualización. La mayoría de los paquetes gráficos incluyen
rutinas para generar primitivas de caracteres gráficos. Hoy en día, hay disponibles miles de
tipos de letra distintos para aplicaciones informáticas. Si bien hoy en día los términos
“Fuente” y “Tipo” de letra son utilizados de forma intercambiable, originalmente los términos
representaban diferentes conceptos.

Un tipo de letra representa una familia de caracteres gráficos de


varios tamaños y estilos, mientras que una fuente es la variación del
Fig. 5. Tipo de letra y fuentes. Mientras
peso y grosor de un tipo de letra. “Roboto” es una tipografía típica, las
fuentes Thim, Light, Regular, etc, son
variaciones de este tipo de letra

Existen otras divisiones principales para clasificar los tipos de letra, siendo estas las
clasificaciones “Serif” y “Sans Serif”, que se basan en las terminaciones o extremos de los
caracteres, mientras las fuentes Serif cuentan con acentos o “trazos” en las terminaciones
de las letras, las de tipo Sans Serif no cuentan con estos.

El último par de clasificaciones de tipo de letra son las monoespaciadas y proporcionales.


Estas clasificaciones se diferencian entre sí debido a que las letras monoespaciadas
cuentan con la misma anchura en todos sus caracteres, mientras que en un tipo de letra
proporcional, la anchura de estos caracteres varía.

Formas de trazar primitivas gráficas de caracteres.

Se utilizan 2 formas diferentes para almacenar las fuentes en una computadora: El


mapeado de bits y el trazado de líneas de contorno.

El mapeado, o patrón de bits es el método más simple para crear


caracteres para un tipo de letra en concreto. consiste en definir
un patrón de valores binarios sobre una cuadrícula rectangular.
Entonces, ese conjunto de caracteres se denomina fuente de
mapa de bits. Un conjunto de caracteres de mapa de bits también
se denomina en ocasiones fuente ráster o fuente digitalizada. Fig.6. Letra “B” representada con un
patrón de mapa cuadrado de 64 bits. Los
bits con valor de 1 designan posiciones
con pixeles de color definido, como si se
tratara de un área para rellenar.
Grupo ISOF*01 Aula E-103 Diego Félix Mendoza 4

Estas fuentes son las más simples de definir y de visualizar, sin embargo, cuentan con
diversas desventajas:

-Requieren más espacio de almacenamiento


-Es común la perdida de calidad al momento de generar variaciones como las fuentes
negrita e itálica.
-El tamaño del mapa de bits solo puede ser expandido en múltiplos de caracteres enteros,
por lo que el tamaño del carácter crecerá de forma muy abrupta, así como también al
incrementar considerablemente, este adquirirá una apariencia escalonada.

Por otro lado, las fuentes de trazado de línea, o de contorno, son consideradas más flexibles
en estos ámbitos. Para su trazado, se describen las formas de los
caracteres utilizando secciones de líneas rectas y curvas, como por
ejemplo, en PostScript. Estas son llamadas también fuentes de
contorno o fuentes de trazos. Estas fuentes poseen ciertas ventajas
como:
Fig.7. Representación de la
-Generación con más calidad de variantes como italica y negrita. letra “B” con una forma de
contorno definida, mediante el
trazado de líneas y curvas, las
-El reescalado de tamaño no tiene efecto en la calidad de la letra. cuales sirven de conectores
para puntos clave, o vértices,
que definen un esqueleto del
-Requieren menos espacio de almacenamiento. tipo de letra.

-Sin embargo, estos requieren más tiempo para procesarse.

Las descripciones geométricas de los Carácteres se proporcionan en coordenadas


universales, al igual que con las otras primitivas, y esta información se hace corresponder
con las coordenadas de pantalla mediante las transformaciones de visualización.

Las rutinas de Carácteres permiten generar imágenes con caracteres tanto bidimensionales
como tridimensionales.
Grupo ISOF*01 Aula E-103 Diego Félix Mendoza 5

Conclusión.

Los elipses son figuras geometricas similares a un circulo, en el sentido de que ambos son
lineas curvas cerradas con la propiedad de la equidistancia, sin embargo, un elipse es
considerablemente más complejo que un circulo. Mientras que el circulo cuenta con un radio
equidistante de todos sus puntos, el elipse requiere de un algoritmo mucho más complejo
para su trazado.

Para el trazado de un elipse es importante tomar a consideración tanto las dimensiones de


este, así como su orientación. Para el trazado básico de un elipse debemos de tener
definidos sus radios, lo que nos indicará que tan grande, alargado u ancho será nuestro
elipse. Partiendo de estos radios, así como de su orientación, podemos calcular el resto de
elementos que necesitamos, como la distancia y coordenadas focales. El elipse será
trazado tomando a consideración una pendiente proporcional al tamaño del eje mayor sobre
el eje menor, donde unicamente es necesario el trazado del primer cuadrante del elipse,
puesto que los demás cuadrantes pueden ser trazados a partir de este, ya que si bien el
elipse es una figura poco ortodoxa, sigue siendo en sí, una figura simetrica.

Por otro lado, las primitivas graficas de caracteres consisten en 2 metodos sumamente
diferentes entre sí, los cuales nos permiten trazar simbolos y caracteres, formando tipos de
letra, los cuales pueden transformarse para crear diferentes fuentes, alternando su grosor,
espaciado, tamaño y peso. Ambos son herramientas utiles que permiten la creacion de tipos
de letra con tecnologias muy distantes: El mapeado de bits y el trazado de contornos.

Opinión personal.

Personalmente, al inicio de la asignación no me interesaba mucho el tema del trazado de


elipses, creí que las primitivas gráficas de caracteres se me harían más interesantes, puesto
que veía todas las formulas que involucraba el trazar un elipse y no podía hacer sentido de
ellas. Sin embargo, poco a poco las formulas cobraron sentido, y terminé sintiendo lo
contrario, siento que el trazado de elipses por medio de operaciones matemáticas es
infinitamente más interesante que la creacion de caracteres por mapeado de bits.

Algo que sí debo de aclarar es que puede que la extensión de los documentos haya
influenciado un poco en mi parecer, puesto a que el trazado de elipses es explicado de una
manera mucho más detallada, pues es un capitulo más extenso, y que investigando más
podría despertar el mismo interes sobre las primitivas gráficas de caracteres.

También podría gustarte