[Talk-es] Aplicación cs2cs de la felicidad

"Martín RV (OPENGeoMap)" martin en opengeomap.org
Vie Mar 28 23:16:06 GMT 2008


Hi:

>>
>>- Seguir con el proyecto de Dani basado en llamar por la línea de
>>comando a CS2CS. Yo no se si es muy eficiente leer un fichero de puntos
>>en ASCCi y por cada punto llamar a cs2cs por la línea de
>>comandos?????¿¿¿¿¿
>>    
>>
>
>En absoluto lo es, pero para lo que yo necesitaba me sobraba :D
>
>  
>
Es que es una duda existencial que tenía de programación. Como no soy 
informático suelo hacer cosas que creo que no son eficientes pero no 
encuentro otra forma de hacerlas hehe.

>  
>
>>- Empezar de cero una librería de proyecciones, porque proj.4 no hay por
>>donde pillarlo y GEOTRANS es muy eficiente pero no es orientado a
>>objetos. Este es mi plan final pero es a más largo plazo. Planeo hacer
>>en Gobject/C o con VALA una librería de sistema de referencia de
>>coordenadas que integre conversiones, anamorfosis analítica y calculada,
>>transformaciones, rejillas, medida de distancias e integración en GTK.
>>Algo modulable, que no te obligue a usar las proyecciones que usaba
>>Cristobal Colon como hace proj.
>>    
>>
>
>Y esto demasiado trabajo (sobre todo sin conocer lo que hay detrás de los
>cálculos :P)
>
>  
>
Las noches están para divertirse programando  8-) , y por el día también 
hehe.

Ya lo tengo casi todo hecho. En mi proyecto final de carrera de 
topografía he pillado los fuentes de geotrans y proj.4 pero no he podido 
usarlos tal cual.
En realidad GEOTRANS y proj.4 se basan en el libro "Map projections, A 
working manual". es un copy paste.


el libro de las proyecciones se puede bajar libremente:
http://pubs.er.usgs.gov/djvu/PP/PP_1395.pdf

como vereis es muy sencillo y listo para programar, sin tener bases de 
cartografía matemática ni nada. COPY&PASTE.

El problema que tanto GEOTRANS como proj no han implementado 
anamorfosis, que es fundamental para topografía.
Por ello es totalmente necesario crear una librería desde cero, aunque 
reusando fuentes por supuesto. Esto nos permitiria tener una libreria de 
sistemas de coordenadas válida para topografía, GIS, geodesia,...

Una librería completa de sistema de coordenadas completa necesita:
- conversion  de coordenadas entre geográficas y las proyecciones (UTM, 
lambert,...) con sus funciones directas e inversas. Si las proyecciones 
son conformes deben tener anamorfosis tanto en las funciones directas 
como en las inversas.
- lectura de modelos de geopotencial (EGM96, EGM2007). Se puede sacar de 
geotrans.
- medida de distancias sobre el elipsoide (Método de Vincenty) y  
proyeccion (lo he hecho desde cero) .
- anamorfosis analítica. esto se puede sacar de proj (apaño de Evenden 
pero que funciona).
- Rejillas planimétricas. Esto se puede sacar de cs2cs.
- Modulos de transformacion de coordenadas calculando parámetros y 
aplicando transformaciones. Esto lo he hecho yo desde cero.
- Sistema de unidades. Lo he hecho casi desde cero.
- una API documentada.
-Rejillas altimétricas y de ondulaciones de geoide.


Un módulo con una clase de proyección UTM podria tener los siguientes 
dos métodos:

int UTM::crs_geodetic_2_utm (double var_fi, double var_lambda, double* 
East, double* North, double *k_factor)
int UTM::crs_utm_2_geodetic ( double East, double North,double* var_fi, 
double* var_lambda, double *k_factor)

Podriamos sobrecargar el método para que se puede usar como en geotrans 
o proj. es decir sin el parámetro de k_factor.

de modo que por cada proyección tendríamos un método de iniciación de la 
clase, más dos métodos más, o 4 si queremos sobrecargalos.

>>- Existe la opcion de pillarte los fuentes de proj.4 y cs2cs pero me
>>niego a formar parte de los ofuscadores de C (http://www.ioccc.org/) :'(
>>    
>>
>
>¿Y separarlos del desarrollo original? Eso siempre suele dar mal resultado
>en cuanto empiezan a salir actualizaciones y parches que no puedes aplicar
>por haber separado (y modificado) el código
>  
>
Evenden tiene 80 años. Proj.4 no creo que sufra grandes actualizaciones 
hehe. En cartografía matemática está todo inventado, no es tan dinámico 
como la informática.
Evenden en sus fuentes hace cosas muy raras:
- No mete prototipos de funciones, sino que mete todo en macros, y luego 
claro es imposible documentarlo con doxigen o similar. proj.4 debe ser 
como dice Evenden. como ves en la lista de correo es imposible dar 
opiniones ahí.
- se inventa su propia programacion orientada a objectos en C que sólo 
entiende Evenden.
- si necesita algo matemático se lo hace a pedal, pasa de la librería 
matemática GSL.
- El interprete del fichero proj lo interpreta a pedal, pasa de PCRE o 
librería de expresiones regulares.
- No optimiza las expresiones matemáticas como hace GEOTRANS.
- lo tiene hecho de tal modo que tienes que usar todas las proyecciones, 
quieras o no.
- No es como un desarrollo libre normal donde todas las opiniones 
cuentan. Las cosas en proj.4 se hacen como manda Evenden. Al final por 
eso los fuentes de proj sólo los toco el.

He intentado hablar con la gente de GEOTRANS, pero ahí no responde 
nadie, así que creo que lo mejor es crear un proyecto nuevo no?¿?¿
GEOTRANS estaría genial pero no hay lista de correo ni forma de 
contribuir en el proyecto.  A mi me encantaría poder trabajar sobre 
geotrans.

>  
>
>>La idea es que al final desde cualquier pais se pueda usar el programa
>>usando la rejilla correspondiente a cada País.
>>    
>>
>
>:)
>
>Esos son mis 5 cents
>  
>
hehe

>Un saludo,
>

Saludos.

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://lists.openstreetmap.org/pipermail/talk-es/attachments/20080329/f7a1258d/attachment-0001.htm 


Más información sobre la lista de distribución Talk-es