Diferencia entre revisiones de «Área de un polígono»
De MateWiki
| Línea 1: | Línea 1: | ||
En este artículo vamos a hacer una función en MATLAB que calcula el área de un polígono. | En este artículo vamos a hacer una función en MATLAB que calcula el área de un polígono. | ||
| − | Vamos a empezar deduciendo una fórmula general a partir de las coordenadas de sus vértices.Supongamos primero que es un triángulo con vértices <math> V_i = (x_i,y_i), \; i=1,2,3</math>. Si definimos <math> \{ \vec i, \vec j\} </math> los vectores de la base cartesiana en la que están dados los vértices, entonces dos lados del triángulo están formados por los vectores: | + | Vamos a empezar deduciendo una fórmula general a partir de las coordenadas de sus vértices.Supongamos primero que es un triángulo con vértices <math> V_i = (x_i,y_i), \; i=1,2,3</math> [[Archivo:triangulo.jpg|miniaturadeimagen|Triángulo]]. Si definimos <math> \{ \vec i, \vec j\} </math> los vectores de la base cartesiana en la que están dados los vértices, entonces dos lados del triángulo están formados por los vectores: |
<math> \vec{V_2V_1} = (x_2-x_1)\vec i + (y_2-y_1)\vec j, \qquad \vec{V_3V_1} = (x_3-x_1)\vec i + (y_3-y_1)\vec j. </math> | <math> \vec{V_2V_1} = (x_2-x_1)\vec i + (y_2-y_1)\vec j, \qquad \vec{V_3V_1} = (x_3-x_1)\vec i + (y_3-y_1)\vec j. </math> | ||
| Línea 16: | Línea 16: | ||
tomando la regla de que <math>x_0=x_3, \; x_4=x_1</math>. | tomando la regla de que <math>x_0=x_3, \; x_4=x_1</math>. | ||
| − | En el caso de un polígono convexo podemos triangulizarlo usando las diagonales a partir de un vértice y sumar el área de los triángulos que se forman (ver la figura) | + | En el caso de un polígono convexo podemos triangulizarlo usando las diagonales a partir de un vértice y sumar el área de los triángulos que se forman (ver la figura) [[Archivo:pentagono.jpg|miniaturadeimagen|triangulación a partir de las diagonales para calcular el área como la suma del área de triángulos]] |
| + | |||
| + | |||
| + | |||
| + | [[Categoría:Trabajos fin de Máster]] | ||
Revisión del 10:19 6 mar 2017
En este artículo vamos a hacer una función en MATLAB que calcula el área de un polígono.
Vamos a empezar deduciendo una fórmula general a partir de las coordenadas de sus vértices.Supongamos primero que es un triángulo con vértices [math] V_i = (x_i,y_i), \; i=1,2,3[/math] . Si definimos [math] \{ \vec i, \vec j\} [/math] los vectores de la base cartesiana en la que están dados los vértices, entonces dos lados del triángulo están formados por los vectores:[math] \vec{V_2V_1} = (x_2-x_1)\vec i + (y_2-y_1)\vec j, \qquad \vec{V_3V_1} = (x_3-x_1)\vec i + (y_3-y_1)\vec j. [/math]
El módulo del producto vectorial de estos vectores es el área del paralelogramo que forman, es decir el doble del área del triángulo. Por tanto,
[math] \begin{eqnarray*} S&=&\frac12 \vec{V_2V_1} \times \vec{V_3V_1} = \frac12|((x_2-x_1)(y_3-y_1)-(x_3-x_1)(y_2-y_1))\vec k|\\ &=&\frac12|y_1(x_3-x_1)+y_2(x_1-x_3)+y_3(x_2-x_1)|=\frac12|\sum_{i=1}^3y_i(x_{i-1}-x_{i+1})|. \end{eqnarray*} [/math]
tomando la regla de que [math]x_0=x_3, \; x_4=x_1[/math].
En el caso de un polígono convexo podemos triangulizarlo usando las diagonales a partir de un vértice y sumar el área de los triángulos que se forman (ver la figura)