Discussion:
Otro problema tridimensional
(demasiado antiguo para responder)
Isobuko
2005-11-02 17:26:05 UTC
Permalink
Hola grupo:
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Mi pregunta es:
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.

Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.

gracias
isobuko
M4N010
2005-11-02 20:02:07 UTC
Permalink
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Supongo que sabes el orden en que los puntos forman el cuadrilátero y que es
el de los puntos que has dado p1,p2,p3,p4.

Un modo sencillo es descomponer el polígono en triángulos y sumar las áreas
de todos ellos. El área de cada uno la obtienes a partir de las longitudes
de sus lados con la fórmula de Herón, la cual nos dice que si a, b y c son
los lados de un triángulo y su semiperímetro (a+b+c)/2 es s su área está
dada por la raiz cuadrada de s*(s-a)*(s-b)*(s-c).

En tu caso, tienes los dos triángulos p1,p2,p3 y p1,p4,p3 y por Pitágoras
calculas los lados de los triángulos. Por ejemplo el lado p1-p2 será
sqrt((x2-x1)^2+(y2-y1)^2+(z2-z1)^2). A continuación sus áreas por Herón y
las sumas y ya está.

Saludos.
M4N010.
Antonio González
2005-11-02 20:04:45 UTC
Permalink
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es

S = |AC x BD|/2

siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
--
Antonio

(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
julian_maisano
2005-11-03 03:46:16 UTC
Permalink
Post by Antonio González
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es
S = |AC x BD|/2
siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
O también

S = ( |AB x AC| + |AC x AD| )/2

sin fijarse cuales son las diagonales

sdos - jm
Antonio González
2005-11-03 06:49:43 UTC
Permalink
Post by julian_maisano
Post by Antonio González
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es
S = |AC x BD|/2
siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
O también
S = ( |AB x AC| + |AC x AD| )/2
sin fijarse cuales son las diagonales
Te sobran dos barras. Debería ser

S = ( |AB x AC + AC x AD| )/2

La razón es que uno de los triángulos puede tener area "negativa" (está
orientado al revés que el otro), de forma que si sumas los módulos de
los productos vectoriales estás contando dos veces un area que no
deberías ni contar, por lo que te saldrá un área más grande de la
cuenta. Ejemplo, el cuadrilátero

A(0,0,0) B(1,0,0) C(1,1,0) D(1,0,0)

y si quieres un ejemplo no degenrado, pon D(2,-1,0)
--
Antonio

(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
Antonio González
2005-11-03 08:24:03 UTC
Permalink
Post by Antonio González
Post by julian_maisano
Post by Antonio González
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es
S = |AC x BD|/2
siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
O también
S = ( |AB x AC| + |AC x AD| )/2
sin fijarse cuales son las diagonales
Te sobran dos barras. Debería ser
S = ( |AB x AC + AC x AD| )/2
La razón es que uno de los triángulos puede tener area "negativa" (está
orientado al revés que el otro), de forma que si sumas los módulos de
los productos vectoriales estás contando dos veces un area que no
deberías ni contar, por lo que te saldrá un área más grande de la
cuenta. Ejemplo, el cuadrilátero
A(0,0,0) B(1,0,0) C(1,1,0) D(1,0,0)
y si quieres un ejemplo no degenrado, pon D(2,-1,0)
Dicho de otra forma: El área del cuadrilátero ABCD no es la misma que la
del ACBD. Por tanto, no se pueden coger simplemente dos triángulos con
un lado comun y sumar sus áreas.
--
Antonio

(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
julian_maisano
2005-11-03 19:52:36 UTC
Permalink
Post by Antonio González
Post by julian_maisano
Post by Antonio González
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es
S = |AC x BD|/2
siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
O también
S = ( |AB x AC| + |AC x AD| )/2
sin fijarse cuales son las diagonales
Evidentemente está mal...
Debí decir "sin fijarse en las diagonales, pero AC debe ser una
diagonal" ; )
Post by Antonio González
Te sobran dos barras. Debería ser
S = ( |AB x AC + AC x AD| )/2
La razón es que uno de los triángulos puede tener area "negativa" (está
orientado al revés que el otro), de forma que si sumas los módulos de
los productos vectoriales estás contando dos veces un area que no
deberías ni contar, por lo que te saldrá un área más grande de la
cuenta. Ejemplo, el cuadrilátero
A(0,0,0) B(1,0,0) C(1,1,0) D(1,0,0)
Pero en este caso ya no funciona ninguna de las fórmulas dadas...
(¿Habrás querido poner D (0, 1, 0) ?)

sdos - jm
Antonio González
2005-11-03 20:11:17 UTC
Permalink
Post by julian_maisano
Post by Antonio González
Post by julian_maisano
Post by Antonio González
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Es fácil. El área de un cuadrilátero ABCD es
S = |AC x BD|/2
siendo AC y BD las diagonales y x representa al producto vectorial. Esta
fórmula sale de sumar las áreas de dos triángulos.
O también
S = ( |AB x AC| + |AC x AD| )/2
sin fijarse cuales son las diagonales
Evidentemente está mal...
Debí decir "sin fijarse en las diagonales, pero AC debe ser una
diagonal" ; )
Post by Antonio González
Te sobran dos barras. Debería ser
S = ( |AB x AC + AC x AD| )/2
La razón es que uno de los triángulos puede tener area "negativa" (está
orientado al revés que el otro), de forma que si sumas los módulos de
los productos vectoriales estás contando dos veces un area que no
deberías ni contar, por lo que te saldrá un área más grande de la
cuenta. Ejemplo, el cuadrilátero
A(0,0,0) B(1,0,0) C(1,1,0) D(1,0,0)
Pero en este caso ya no funciona ninguna de las fórmulas dadas...
(¿Habrás querido poner D (0, 1, 0) ?)
No. He puesto lo que quería. Un cuadrilátero degenerado que tiene área 0
(es una línea que va y vuelve por dos lados de un cuadrado).

Con tu fórmula daría área unidad.

Con la de un solo producto vectorial sería

AC = (1,1,0)

BD = (0,0,0)

|AC x BD|/2 = 0

como debe ser.
--
Antonio
julian_maisano
2005-11-03 20:17:01 UTC
Permalink
Post by Antonio González
Post by julian_maisano
Pero en este caso ya no funciona ninguna de las fórmulas dadas...
(¿Habrás querido poner D (0, 1, 0) ?)
No. He puesto lo que quería. Un cuadrilátero degenerado que tiene área 0
(es una línea que va y vuelve por dos lados de un cuadrado).
Entendido. (mirá que antes de hablar, hice el dibujo y todo, pero no
resistí unir A con C)

sdos - jm
Manuel Diego
2005-11-02 20:22:44 UTC
Permalink
No creo que haya una fórmula semejante a la bidimensional porque, siendo
coplanares, nos sobra información y si no lo fueran nos faltaría.

Yo lo que haría es calcular el área como si fuera bidimensional y luego
elegir tres puntos arbitrariamente, calcular el vector del plano que definen
esos tres puntos y después calcular el coseno del ángulo que forma dicho
vector con el plano horizontal. El área que buscas será el área horizontal
dividida por dicho coseno.

Si no me he equivocado en los cálculos (esto lo tengo muy, pero que muy
abandonado), tendrías, en definitiva, que multiplicar el área horizontal por
la siguiente expresión:

sqrt(1 + (x2y3 - x3y2)^2 / ((y2z3 - z3y2)^2 + (x2z3 - z3y2)^2))

Donde las coordenadas no son las de los puntos, sino sus diferencias con un
tercer punto P(x1,y1,z1)

Pero ya digo que no estoy nada seguro de haberlo calculado bien.

Saludos

"Isobuko" <***@gmail.com> escribi� en el mensaje news:***@g43g2000cwa.googlegroups.com...
Hola grupo:
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Mi pregunta es:
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.

Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.

gracias
isobuko
Antonio González
2005-11-02 22:14:58 UTC
Permalink
Post by Manuel Diego
No creo que haya una fórmula semejante a la bidimensional porque, siendo
coplanares, nos sobra información y si no lo fueran nos faltaría.
Se entiende que pìde el área del cuadrilátero que forman. Para eso
necesitas los 4 puntos.
Post by Manuel Diego
Yo lo que haría es calcular el área como si fuera bidimensional
¿Te refieres al área de la proyección?

y luego
Post by Manuel Diego
elegir tres puntos arbitrariamente, calcular el vector del plano que definen
esos tres puntos y después calcular el coseno del ángulo que forma dicho
vector con el plano horizontal. El área que buscas será el área horizontal
dividida por dicho coseno.
Aunque es extremadamente complicado este método, funcionaría, salvo en
el caso en que el coseno sea 0 porque la superficie esté "de canto".

Aparte de la fórmula sencilla que ya dí, otra forma es mediante la
fórmula general

S = (1/2) oint R x dR

siendo oint la integral a lo largo de cualquier curva cerrada (plana o
alabeada) del vector de posición respecto al origen multiplicado
vectorialmente por el desplazamiento a lo largo de la curva. Esta
fórmula generaliza una fórmula de Green para el plano. Es inmediato ver
que esta integral no depende de la elección del origen de coordenadas.

El resultado de esta integral es un vector, el llamado vector
superficie. Sus componentes son las áreas de las proyecciones de la
superficie sobre los planos coordenados. En el caso particular de una
curva plana, resulta un vector cuyo módulo es el área de la porción de
plano delimitado por esta curva, y que tiene por dirección la normal a
este plano y sentido el dado por la regla de la mano derecha. La
demostración la podéis encontrar en el problema A.10 de "problemas de
Campos Electromágnéticos" de A. González.

En el caso particular de un polígono (de tres, cuatro o N lados) la
integral se hace a tramos y resulta

S = (1/2)sum_(i=1)^N (R_i x (R_(i+1)-R_i) =

= (1/2)sum_(i=1)^N(R_i x R_(i+1))

siendo R_(N+1) = R_1.
--
Antonio

(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
Manuel Diego
2005-11-03 01:27:55 UTC
Permalink
Post by Antonio González
Post by Manuel Diego
No creo que haya una fórmula semejante a la bidimensional porque, siendo
coplanares, nos sobra información y si no lo fueran nos faltaría.
Se entiende que pìde el área del cuadrilátero que forman. Para eso
necesitas los 4 puntos.
Pero si son 4 puntos, una de las coordenadas de uno de los puntos es
deducible por los demás datos. Eso me hace dudar de la existencia de una
fórmula semejante a la que él hace referencia y por la que preguntaba.
Post by Antonio González
Post by Manuel Diego
Yo lo que haría es calcular el área como si fuera bidimensional
¿Te refieres al área de la proyección?
Sí.
Isobuko conoce la fórmula para calcular el área horizontal delimitada por un
polígono cerrado, por eso me pareció oportuno basarme en ello para continuar
la resolución del problema.
Post by Antonio González
Aunque es extremadamente complicado este método, funcionaría, salvo en el
caso en que el coseno sea 0 porque la superficie esté "de canto".
Probablemente sería más útil el método si el número de puntos fuera mayor.
En cuanto a lo del coseno igual a cero, se solventa no aplicando el método
para medir paredes. Más problema veo en las superficies casi verticales,
donde se agravarían los errores debido a la forzosa imprecisión de las
mediciones y de los cálculos.
Al declararse topógrafo estoy dando por supuesto (quizás erróneamente) que
pretende resolver algún problema práctico de topografía.

Saludos.
Post by Antonio González
Post by Manuel Diego
No creo que haya una fórmula semejante a la bidimensional porque, siendo
coplanares, nos sobra información y si no lo fueran nos faltaría.
Se entiende que pìde el área del cuadrilátero que forman. Para eso
necesitas los 4 puntos.
Post by Manuel Diego
Yo lo que haría es calcular el área como si fuera bidimensional
¿Te refieres al área de la proyección?
y luego
Post by Manuel Diego
elegir tres puntos arbitrariamente, calcular el vector del plano que
definen esos tres puntos y después calcular el coseno del ángulo que
forma dicho vector con el plano horizontal. El área que buscas será el
área horizontal dividida por dicho coseno.
Aunque es extremadamente complicado este método, funcionaría, salvo en el
caso en que el coseno sea 0 porque la superficie esté "de canto".
Aparte de la fórmula sencilla que ya dí, otra forma es mediante la fórmula
general
S = (1/2) oint R x dR
siendo oint la integral a lo largo de cualquier curva cerrada (plana o
alabeada) del vector de posición respecto al origen multiplicado
vectorialmente por el desplazamiento a lo largo de la curva. Esta fórmula
generaliza una fórmula de Green para el plano. Es inmediato ver que esta
integral no depende de la elección del origen de coordenadas.
El resultado de esta integral es un vector, el llamado vector superficie.
Sus componentes son las áreas de las proyecciones de la superficie sobre
los planos coordenados. En el caso particular de una curva plana, resulta
un vector cuyo módulo es el área de la porción de plano delimitado por
esta curva, y que tiene por dirección la normal a este plano y sentido el
dado por la regla de la mano derecha. La demostración la podéis encontrar
en el problema A.10 de "problemas de Campos Electromágnéticos" de A.
González.
En el caso particular de un polígono (de tres, cuatro o N lados) la
integral se hace a tramos y resulta
S = (1/2)sum_(i=1)^N (R_i x (R_(i+1)-R_i) =
= (1/2)sum_(i=1)^N(R_i x R_(i+1))
siendo R_(N+1) = R_1.
--
Antonio
(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
M4N010
2005-11-02 19:31:53 UTC
Permalink
Post by Isobuko
Soy topógrafo y recuerdo dar una formula para el cálculo de un área
a partir de las coordenadas de un poligono. El asunto es que eran
bidimensionales.
Tenemos 4 puntos coplanares p1(x1,y1,z1),p2(x2,y2,z2),p3(x3,y3,z3)
,p4(x4,y4,z4), y me gustaría conocer su área.
Me imagino que no será muy complicado pero no sé dónde buscar, asi
que aunque no conozcais de memoria la fórmula os agradecería si me
indicaseis dónde buscar.
Supongo que sabes el orden en que los puntos forman el cuadrilátero y que es
el de los puntos que has dado p1,p2,p3,p4.

Un modo sencillo es descomponer el polígono en triángulos y sumar las áreas
de todos ellos. El área de cada uno la obtienes a partir de las longitudes
de sus lados con la fórmula de Herón, la cual nos dice que si a, b y c son
los lados de un triángulo y su semiperímetro (a+b+c)/2 es s su área está
dada por la raiz cuadrada de s*(s-a)*(s-b)*(s-c).

En tu caso, tienes los dos triángulos p1,p2,p3 y p1,p4,p3 y por Pitágoras
calculas los lados de los triángulos. Por ejemplo el lado p1-p2 será
sqrt((x2-x1)^2+(y2-y1)^2+(z2-z1)^2). A continuación sus áreas por Herón y
las sumas y ya está.

Saludos.
M4N010.
Pirules
2005-11-02 18:52:48 UTC
Permalink
El orden es p1,p2,p3,p4? No lo he pensado mucho pero si p1,p2,p3 forman un
triángulo y p4 está dentro de ese triángulo, entonces no es lo mismo
p1,p2,p3,p4 que p1,p3,p4,p2; es decir, no tienen porqué tener la misma área.
Si el polígono es convexo ya es otra cosa.

Pirules.
Isobuko
2005-11-03 15:15:37 UTC
Permalink
Anonadado me habeis dejado con el despliege de sabiduria realizado.
Muchas gracias a todos. Las coordenadas las quiero para realizar un
programa en VBA para autocad y que me calculase el area de una
superficie teselar compuesta por entidades 3dcara, que vienen a ser
cuadrilateros coplanares. Como sé que el orden p1,p2,p3,p4 es el que
me interesa puedo hacer la descomposición en triángulos y calcular el
area con el amigo HERON.
Un placer compañ***@s,
isobuko
Antonio González
2005-11-03 15:48:06 UTC
Permalink
Post by Isobuko
Anonadado me habeis dejado con el despliege de sabiduria realizado.
Muchas gracias a todos. Las coordenadas las quiero para realizar un
programa en VBA para autocad y que me calculase el area de una
superficie teselar compuesta por entidades 3dcara, que vienen a ser
cuadrilateros coplanares. Como sé que el orden p1,p2,p3,p4 es el que
me interesa puedo hacer la descomposición en triángulos y calcular el
area con el amigo HERON.
Sinceramente, ¿no te es más fácil hacer el producto vectorial?
--
Antonio

(Eliminar el agua para responder por e-mail - Remove water to reply by
e-mail)
M4N010
2005-11-05 17:11:30 UTC
Permalink
Post by Isobuko
Anonadado me habeis dejado con el despliege de sabiduria realizado.
Muchas gracias a todos. Las coordenadas las quiero para realizar un
programa en VBA para autocad y que me calculase el area de una
superficie teselar compuesta por entidades 3dcara, que vienen a ser
cuadrilateros coplanares. Como sé que el orden p1,p2,p3,p4 es el que
me interesa puedo hacer la descomposición en triángulos y calcular el
area con el amigo HERON.
isobuko
Si pueden ser polígonos más generales es el método más adecuado, pero si
sabes que siempre van a ser cuadriláteros es más fácil y rápido el producto
vectorial que te indica Antonio.

Un saludo.
M4N010.

Isobuko
2005-11-03 15:16:26 UTC
Permalink
Anonadado me habeis dejado con el despliege de sabiduria realizado.
Muchas gracias a todos. Las coordenadas las quiero para realizar un
programa en VBA para autocad y que me calculase el area de una
superficie teselar compuesta por entidades 3dcara, que vienen a ser
cuadrilateros coplanares. Como sé que el orden p1,p2,p3,p4 es el que
me interesa puedo hacer la descomposición en triángulos y calcular el
area con el amigo HERON.
Un placer compañ***@s,
isobuko
Continúe leyendo en narkive:
Loading...