Sie sind auf Seite 1von 22

ltima actualizacin el Sbado, 18 de Septiembre de 2010 11:41

Hace algn tiempo, le en un foro una discusin acerca de cmo calcular el rea de un polgono irregular no necesariamente convexo. Por supuesto, todos los contertulios cayeron en la cuenta de que el rea de del polgono deba calcularse por triangulacin. Es decir, dividiendo el polgono en tringulos, calculando el rea de cada tringulo y luego sumando todas las reas.

Me llamaron tanto la atencin las complicadas soluciones que se propusieron que me puse inmediatamente a buscar por internet para ver si encontraba alguna buena pgina acerca de ello. Como no la encontr, me anim a escribir este artculo, describiendo un algoritmo que me comentaron hace ya muchos aos, pero que recuerdo especialmente por ser uno de los ms ingeniosos que conozco.

Intentar contarlo lo mejor que pueda.

Es evidente que el mtodo para hallar este rea de un polgono irregular debe diferir mucho de la que se utiliza para los polgonos regulares. Para calcular el rea de un polgono regular, basta conocer un par de parmetros sobre ellos (por ejemplo, el nmero de lados y la longitud de uno de ellos) y aplicar una de las conocidas frmulas que aprendimos en el cole.

Sin embargo, las aplicaciones del mundo real que trabajan con polgonos, suelen hacerlo sobre polgonos irregulares, de ah su importancia.

Bien el caso es que si contamos con un polgono irregular cualquiera. Por ejemplo, ste...

Si estamos resolviendo el problema con lpiz y regla la solucin es sencilla. Cogemos el polgono y lo dividimos arbitrariamente en una serie de tringulos. Da igual qu tringulos escojamos mientras al final slo queden tringulos.

Por ejemplo, as

Ahora cogemos una escuadra y una regla y vamos tringulo por tringulo midiendo su base y su altura y aplicamos esa frmula que resuena en nuestra memoria como el tintineo de un martillo sobre un yunque: Area del tringulo igual a base por altura partido por dos. Fantstico una vez hallado el rea de cada tringulo, sumamos todas las reas y tenemos la del polgono entero.

El problema es que en las aplicaciones computacionales, los polgonos no estn dibujados, as que no podemos sacar la regla para medir. Debemos recurrir a mtodos computacionales.

En primer lugar, es necesario decir que los polgonos suelen definirse por las coordenadas en el plano de los puntos que conforman sus vrtices. Uniendo cada punto con el siguiente y el ltimo con el primero obtendremos una lnea cerrada (una serie de segmentos, hablando con ms propiedad) que conforma el polgono. Esa lnea cerrada encierra una superficie plana que podemos medir. El resultado de esa medida ser la extensin del rea.

Empecemos por el principio vamos a ver cmo calcular el rea de un tringulo si tenemos las coordenadas de sus vrtices, y luego veremos cmo utilizar ese mtodo para hallar la de un polgono irregular.

REA DE UN TRINGULO
Tomemos un tringulo cualquiera en un plano Por ejemplo. ste tringulo para manejarlo computacionalmente, lo ms frecuente es que almacenemos las coordenadas de sus vrtices con respecto a algn sistema de referencia (los ejes que escojamos).

A la vista de las coordenadas de sus vrtices, est claro que si queremos aplicar la frmula de base por altura partido por dos, lo tenemos complicado.

En el foro que comentaba anteriormente, alguien propuso escoger un lado y trabajar con los ngulos que formaban los otros dos para hallar la altura a travs de trigonometra Nadie puede decir que el planteamiento fuera incorrecto pero existen mtodos mucho ms sencillos para calcular el rea de un tringulo sin recurrir a trigonometra.

En el caso de que tengamos las coordenadas de sus vrtices (como ste), vamos a llamarlas (x1, y1), (x2, y2) y (x3,y3) basta con colocarlas en una matriz cuadrada de 3 por 3 de sta manera:

En la tercera fila, colocamos, a pin, el valor .

Pues bien si hacemos el determinante de M y tomamos valor absoluto, sale el rea del tringulo. Parece magia Verdad?... y nada de trigonometra.

Si recuerdas la regla de Sarrus para los determinantes de 3 por 3, el resultado sera:

det(M)=x1y2 + x2y3 + x3y1 - y1x2 - y2x3 - y3x1

Hmmm El est pidiendo a gritos que lo saquemos como factor comn.

det(M)=(x1y2 + x2y3 + x3y1 - y1x2 - y2x3 - y3x1)

Ya est. Finalmente, si el determinante sale negativo, tomamos valor absoluto y ese valor es el rea del tringulo.

Vamos a probar con nuestro tringulo del principio el que tena de coordenadas de sus vrtices los puntos (2,3), (7,1), y (5,7)

Al hacer el determinante nos da 13. Ese es el rea del tringulo en unidades al cuadrado. Es casi magia casi. (Me temo que tiene ms que ver con el producto escalar de vectores que con la magia)

Vamos a comentar una curiosa propiedad de sta forma de calcular el rea de un tringulo y que tiene que ver con el signo del determinante. Al colocar las coordenadas de los vrtices en la matriz yo no he utilizado un orden concreto. Sin embargo, el determinante se comporta de forma distinta segn se coloquen los puntos en la matriz:

Si utilizo (2,3), (7,1) y (5,7), como en este caso el resultado es positivo.

Si utilizo (7,1), (5,7) y (2,3) tambin sale positivo, al igual que con (5,7), (2,3) y (7,1).

Sin embargo, si utilizo cualquiera de las tres combinaciones anteriores pero con los puntos ordenados al revs (7,1), (2,3) y (5,7), o (5,7),(7,1) y (2,3) o (2,3),(5,7) y (7,1) el resultado es negativo, es decir, -13.

El caso es que cuando se ordenan los puntos escogindolos en sentido antihorario (al revs de cmo van las agujas de un reloj) el resultado sale positivo, independientemente de por qu punto se empiece. Pero si escojo los puntos en sentido horario (siguiendo el movimiento de las agujas de un reloj), el resultado es el mismo en valor absoluto, pero tiene signo negativo.

Curioso Verdad?

En el caso de un tringulo, esta propiedad no tiene la mayor importancia despreciamos el signo y ya est... pero va a ser de mucha importancia para obtener el rea de un polgono de ms de tres lados.

CLCULO DEL REA DE UN POLGONO IRREGULAR CUALQUIERA.


Bueno parece que lo ms evidente una vez llegados aqu y conociendo una forma de hallar el rea de un tringulo, ya podemos ponernos a calcular la de un polgono. Parece evidente que ya podemos dividir nuestro polgono en tringulos y calcular el rea de cada uno de ellos.

Realmente, si cogemos lpiz y regla nos daremos cuenta de que hay muchas formas de triangular un polgono. Existen muchos algoritmos de triangulacin (el de Delaunay, el de cortar orejas, tambin conocido como algoritmo de Van Gogh), cada uno de ellos con un propsito concreto. Probablemente, el ms sencillo de ellos sea el de cortar orejas. Pero para calcular el rea, no ser necesario utilizar ninguno de ellos. Vamos a utilizar un mtodo todava menos costoso computacionalmente hablando.

Volvamos a nuestro polgono del principio. En lugar de triangular arbitrariamente, vamos a aplicar otro sistema:

-Escogemos uno de los vrtices (uno cualquiera, el que mejor nos venga), y a ese lo vamos a llamar vrtice 1. Luego, siguiendo un sentido antihorario, numeramos los dems 2, 3, 4 los que sean.

-A continuacin, iremos formando todos los posibles tringulos que tengan en comn al vrtice 1. Dicho de otra manera: El tringulo formado por 1,2,3, luego 1,3,4, luego 1,4, 5, luego 1,5,6 y as hasta el ltimo.

-De cada uno de ellos calcularemos el determinante como hemos visto en el apartado anterior, y la suma de todos los resultados ser el rea del polgono.

La explicacin es que al formar los tringulos, en el orden escogido de vrtices, algunos tringulos los recorremos en sentido horario y otros en sentido antihorario. Los tringulos que recorremos en sentido antihorario contribuyen a aumentar el area, el resultado del determinante es positivo, y los que recorremos en sentido horario contribuyen a eliminar los trozos que quedan fuera del polgono.

Observa esta animacin, que seguro que resulta ms clarificadora.

Cabe comentar que el algoritmo tambin puede aplicarse si en lugar de recorrer los vrtices en sentido antihorario lo hacemos en el contrario. La diferencia es que el resultado final saldr negativo. (Los tringulos azules contribuyen a calcular el area y los rojos a eliminar lo que queda fuera del polgono).

As pues, no es necesario comprobar el sentido de los vrtices en el plano. Aplicamos el algoritmo sumando el resultado de los determinantes, y finalmente tomamos el valor absoluto de la suma.

Ingenioso Verdad? No slo es ingenioso, sino que tiene una complejidad bastante baja, lineal, del rden de n, siendo n el nmero de vrtices del polgono (O(n)).

Pero eso no es todo este algoritmo an se puede afinar ms.

OPTIMIZACIN.
Si desarrollamos la suma de determinantes, nos daremos cuenta de que hay trminos que en un determinante aparecen sumando y en otro restando. (Cada determinante tiene tres trminos que suman y tres que restan).

Por ejemplo, si los vrtices del polgono estn en las coordenadas (x1,y1), (x2,y2), (x3,y3), (x4,y4) (xn, yn)

El primer determinante es

x1y2 + x2y3 + x3y1 - y1x2 - y2x3 - y3x1

y el segundo es

x1y3 + x3y4 + x4y1 - y1x3 - y2x4 - y4x1

Los trminos subrayados se pueden eliminar, ya que en uno aparecen sumando y en otro restando.

Cuando hacemos esto para todos los determinantes, resulta que podemos eliminar un montn de trminos, y adems, por supuesto, sacar como factor comn el .

Si eliminamos todos esos trminos que se anulan, el resultado de la suma de los determinantes es

x1y2-y1x2+ x2y3-y2x3+ x3y4-y3x4+ xny1-ynx1

Todo ello multiplicado por .

Se le llama a menudo producto en cruz, por la forma que tiene si representamos los trminos de esta manera. En ste grfico, representamos las coordenadas de los vrtices que forman un trmino. Las que estn unidas por una lnea roja son trminos que suman, y las que estn unidas por una lnea azul son trminos que restan (sin olvidarnos del que lo multiplica todo).

]As pues, y despus de todo este rollo, el algoritmo para calcular el rea de un polgono P conociendo las coordenadas de sus vrtices ordenados en sentido horario o antihorario y expresadas como (x1,y1), (x2,y2) (xn, yn) es

Ingeniossimo Verdad?

Bueno... con esta ltima frmula, ya tenemos bien sencillo utilizarla en cualquier programa.

Por ejemplo, observa cmo la hemos utilizado en esta clase Poligono, programada en C#. Bsicamente, sta clase contiene una lista de puntos ordenada. Cada punto representa a un vrtice del polgono. Por supuesto, este ejemplo no es plenamente funcional, slo es una mini demostracin de cmo implementar el algoritmo descrito en ste artculo, pero puede servir de punto de partida para que lo adaptes a tus necesidades.

class Punto { public double x, y; public Punto(double x, double y) { this.x=x; this.y=y; } } //Punto //-------------

class Poligono { //lista de vrtices //Suponemos que siguen sentido horario o //antihorario y que ningn segmento cruza a //otro. Cada vrtice aparece una sola vez //en la lista. El ltimo se une al primero List<punto> vertices = new List<punto>(); public void nuevoVertice(Punto p) { vertices.Add(p); } public double area() { double suma=0; int i; //Slo calculamos si el polgono tiene //al menos tres vrtices if (vertices.Count>=3) { //producto en cruz desde 1 hasta n-1 for(i=0;i<vertices.Count-1;i++) { suma+=vertices[i].x*vertices[i+1].yvertices[i].y*vertices[i+1].x; }//for //ahora el ltimo con el primero i=vertices.Count-1; suma+=vertices[i].x*vertices[0].yvertices[i].y*vertices[0].x; }//if return Math.Abs(suma) / 2; }//area }//class

Para probar, basta crear un polgono, y aadir unos cuantos vrtices. 1 2 3 4 5 6 //ejemplo utilizacin Poligono p = new Poligono(); p.nuevoVertice(new Punto(2, 3)); p.nuevoVertice(new Punto(7, 1)); p.nuevoVertice(new Punto(5, 7)); Console.WriteLine(p.area());

Polgono regular
De Wikipedia, la enciclopedia libre Saltar a navegacin, bsqueda

Un polgono regular es un polgono en el que todos los lados tienen la misma longitud y todos los ngulos interiores son de la misma medida. Veamos las distintas caractersticas de los polgonos regulares, empleando la figura de un hexgono para representar un polgono regular genrico.

Una caracterstica de los polgonos regulares, es que se pueden trazar inscritos en una circunferencia que tocar cada uno de los vrtices del polgono. A medida que crece el nmero de lados de un polgono regular, su apariencia se asemeja cada vez ms a la de una circunferencia. En un polgono regular podemos distinguir:

Lado, L: es cada uno de los segmentos que forman el polgono. Vrtice, V: el punto de unin de dos lados consecutivos. Centro, C: el punto central equidistante de todos los vrtices. Radio, r: el segmento que une el centro del polgono con uno de sus vrtices. Apotema, a: segmento perpendicular a un lado, hasta el centro del polgono. Diagonal, d: segmento que une dos vrtices no contiguos. Permetro, P: es la suma de la medida de su contorno.

Contenido
[ocultar]

1 Propiedades 2 Los ngulos de un polgono regular o 2.1 ngulos centrales o 2.2 ngulos interiores o 2.3 ngulos exteriores 3 Galera de polgonos regulares 4 rea de los polgonos regulares o 4.1 rea de un polgono regular, conociendo el nmero de lados y la apotema o 4.2 rea de un polgono, conociendo el nmero de lados y el radio o 4.3 rea de un polgono en funcin del lado 5 Diagonales de un polgono regular o 5.1 Nmero de diagonales o 5.2 Longitud de la diagonal ms pequea 6 Vase tambin 7 Enlaces externos 8 Bibliografa

[editar] Propiedades

Dadas las caractersticas de los polgonos regulares, podemos diferenciar algunas propiedades que se dan siempre, y que son de gran utilidad para determinar sus propiedades, y dimensiones geomtricas.

Los polgonos regulares son equilteros; todos sus lados tienen la misma longitud Todos los ngulos interiores de un polgono regular tienen la misma medida, es decir, son congruentes

El centro de un polgono regular es un punto equidistante de todos los vrtices del polgono Los polgonos se pueden dividir en tringulos cuyos lados son el lado del polgono y los dos segmentos que unen el centro y los vrtices (radios) El apotema es el segmento que une el centro y la mitad de cada lado del polgono El radio es el segmento que une el centro y cada vrtice

Todos los polgonos tienen tres o ms lados.

[editar] Los ngulos de un polgono regular

Entre los ngulos existentes en un polgono regular, podemos ver: el ngulo central, ngulo interior y ngulo exterior.

[editar] ngulos centrales

Todos los ngulos centrales de un polgono regular son congruentes y su medida puede obtenerse a partir del nmero de lados n del polgono

en grados sexagesimales en radianes

[editar] ngulos interiores

El ngulo interior,

, de un polgono regular mide:

en grados sexagesimales en radianes

La suma de los ngulos interiores, de:

, de un polgono regular es

en grados sexagesimales en radianes

[editar] ngulos exteriores

El ngulo exterior,

, de un polgono regular es de:

en grados sexagesimales en radianes

La suma de los ngulos exteriores, en grados sexagesimales en radianes

, de un polgono regular es:

Como puede verse la suma de los ngulos exteriores de un polgono, y de un polgono regular en particular, mide una circunferencia completa, independientemente del nmero de lados. A esta conclusin se poda llegar percatndose de que:

dado que todos los ngulos interiores de un tringulo suman 180 grados, que resulta:

Por otro lado al ser ngulos suplementarios tenemos:

por tanto, en un polgono regular el ngulo central y el exterior miden lo mismo:

y habiendo el mismo nmero de ngulos centrales y exteriores en un polgono, su suma tambin es la misma:

que es una circunferencia completa, independientemente del nmero de lados, esta conclusin es valida tambin para los polgonos no regulares.

[editar] Galera de polgonos regulares

Tringulo equiltero (Tringulo regular).

Cuadrado (cuadriltero regular).

Pentgono regular.

Hexgono regular.

Heptgono regular.

Octgono regular.

Enegono regular.

Decgono regular.

Endecgono regular.

Dodecgono regular.

Tridecgono regular.

Tetradecgono regular.

[editar] rea de los polgonos regulares

Para calcular el rea, A, de un polgono debemos multiplicar el permetro, P, por el apotema, a, y dividido entre dos. Lo que se resume con la siguiente formula matematica:

Partiendo del tringulo que tiene por base un lado,L, del polgono y altura su apotema,a , el rea de este tringulo, es:

Un polgono de n lados, tiene n de estos tringulos, por lo tanto el rea del polgono ser:

esto es:

Sabiendo que la longitud de un lado,L, por el nmero,n, de lados es el permetro,P , tenemos:

[editar] rea de un polgono regular, conociendo el nmero de lados y la apotema


Sabiendo que:

Adems

, ya que es la mitad de un ngulo central (esto en radianes).

Observando la imagen, es posible deducir que Sustituyendo el lado:

Finalmente:

Con esta frmula se puede averiguar el rea con el nmero de lados y la apotema, sin necesidad de recurrir al permetro.

[editar] rea de un polgono, conociendo el nmero de lados y el radio

Un polgono queda perfectamente definido por su nmero de lados n, y el radio r, por tanto podemos determinar cual es su rea, a la vista de la figura, tenemos que:

donde el ngulo central es:

sabiendo que el rea de un polgono es:

y sustituyendo el valor del lado y la apotema calculados antes, tenemos:

ordenando tenemos:

sabiendo que:

resulta:

o lo que es lo mismo:

Con esta expresin podemos calcular el rea del polgono, conociendo solamente el nmero de lados y su radio, lo que resulta til en muchos casos.

[editar] rea de un polgono en funcin del lado

Y si queremos expresar el rea en funcin del lado, podemos calcularlo de la siguiente manera:

Sea

el ngulo formado por el Lado "L" y el radio "r":

El valor de la apotema en funcin del lado ser, por la definicin de la tangente:

Despejando la apotema tenemos:

Sustituimos la apotema por su valor:

Con lo que conociendo el nmero de lados del polgono regular y la longitud del lado podemos calcular su superficie.

[editar] Diagonales de un polgono regular


Como ya se ha dicho la diagonal de un polgono es el segmento que une dos vrtices no contiguos, vamos a ver algunas caractersticas de estas diagonales.

[editar] Nmero de diagonales

Para determinar el nmero de diagonales Nd, de un polgono de n vrtices realizaremos el siguiente razonamiento:

De un vrtice cualquiera partirn (n 3) diagonales, donde n es el nmero de vrtices, dado que no hay ningn diagonal que le una consigo mismo ni con ninguno de los dos vrtices contiguos. Esto es valido para los n vrtices del polgono. Una diagonal une dos vrtices, por lo que aplicando el razonamiento anterior tendramos el doble de diagonales de las existentes.

Segn el razonamiento tendremos que:

[editar] Longitud de la diagonal ms pequea

La diagonal ms pequea de un polgono regular es la que une dos vrtices alternos, para determinar su longitud, partimos del ngulos central y del radio, el radio que pasa por el vrtice intermedio, corta a la diagonal en el punto A, este radio y la diagonal son perpendiculares en A. Esto es el tringulo VAC es rectngulo en A, por tanto:

que resulta:

de donde deducimos que:

Sabiendo el valor del ngulo central:

La diagonal ms pequea de un polgono regular, solo depende del radio y del nmero de lados, siendo tanto mayor cuanto mayor sea el radio y disminuyendo de longitud cuando aumenta el nmero de lados del polgono.

Caudal.