Que tal todos:
Necesito dibujar unos poligonos a partir de ciertas coordenadas, he visto la funcion polypolygon, solo que sus parámetros estan de 0 a 400, los que yo tengo son x=588458, y=2443823 , estas fueron tomadas por un GPS, o si alguien sabe la formula para calcular el area de un poligono a partir de este tipo de datos, me sería muy util.
(obviamente el ejemplo es solo un vertice para cada poligono tengo minimo 3 vertices)
Saludo a todos
desde México
Graficar poligonos con coordenadas
-
- Posts: 132
- Joined: Sun Oct 23, 2005 4:09 pm
- Location: Pánuco,Ver. México
- Alfredo Arteaga
- Posts: 326
- Joined: Sun Oct 09, 2005 5:22 pm
- Location: Mexico
- Contact:
Las coordenadas geodesicas son muy diferentes de las coordenadas cartesianas, existe más de un método para generarlas y por lo tanto para obtener el posicionamiento global.
Hace álgún tiempo tuve oportunidad de participar en un proyecto... veré si encuentro algo. Tal vez sea bueno consultar algún GIS.
Hace álgún tiempo tuve oportunidad de participar en un proyecto... veré si encuentro algo. Tal vez sea bueno consultar algún GIS.
-
- Posts: 29
- Joined: Thu Oct 20, 2005 1:35 pm
- Contact:
-
- Posts: 132
- Joined: Sun Oct 23, 2005 4:09 pm
- Location: Pánuco,Ver. México
- Alfredo Arteaga
- Posts: 326
- Joined: Sun Oct 09, 2005 5:22 pm
- Location: Mexico
- Contact:
Ya busque la rutina y no la encontré (seguramente se fue al cesto), me puse a ver por la red y la mejor referencia sobre GIS (Geographic Information System) la vi en Wikipedia.
Enviame un mensaje a mi privado y te envio un artículo del Doctor Guzman Arenas que describe un algoritmo para la determinación de áreas en superficies curvas o búscalo en la red.
Enviame un mensaje a mi privado y te envio un artículo del Doctor Guzman Arenas que describe un algoritmo para la determinación de áreas en superficies curvas o búscalo en la red.
-
- Posts: 29
- Joined: Thu Oct 20, 2005 1:35 pm
- Contact:
Hola
esta es la funcion
FUNCTION CalculaPolig(nArea,nPerimetro)
local Px1:=0,Py1:=0,Pz1:=0
local Px2:={},Py2:={},Pz2:={}
local nDist1:=0,nArea1:=0,nArea2:=0
local I:=0
for i=1 to nI
/// Cargar los puntos del poligonos en un array si necesitas las de eje z es posible definirlas
AAdd(px2,px1)
AAdd(py2,py1)
AAdd(pz2,pz1)
next
if len(px2) >0
for i=1 to nI-1
nArea1+= (Px2*Py2[i+1])
nArea2+= (Px2[i+1]*Py2)
ndist1+=sqrt( (px2-px2[i+1])^2 + (py2-py2[i+1])^2)
next
endif
narea:=Abs(nArea1-nArea2)/2
nPerimetro:=ndist1
Return NIL //( {x,y,z} )
esta es la funcion
FUNCTION CalculaPolig(nArea,nPerimetro)
local Px1:=0,Py1:=0,Pz1:=0
local Px2:={},Py2:={},Pz2:={}
local nDist1:=0,nArea1:=0,nArea2:=0
local I:=0
for i=1 to nI
/// Cargar los puntos del poligonos en un array si necesitas las de eje z es posible definirlas
AAdd(px2,px1)
AAdd(py2,py1)
AAdd(pz2,pz1)
next
if len(px2) >0
for i=1 to nI-1
nArea1+= (Px2*Py2[i+1])
nArea2+= (Px2[i+1]*Py2)
ndist1+=sqrt( (px2-px2[i+1])^2 + (py2-py2[i+1])^2)
next
endif
narea:=Abs(nArea1-nArea2)/2
nPerimetro:=ndist1
Return NIL //( {x,y,z} )
-
- Posts: 132
- Joined: Sun Oct 23, 2005 4:09 pm
- Location: Pánuco,Ver. México