Giriş
Bu kütüphaneyi kullanmak için şu include gerekir.
İki tane temel metod sunar. Bunlar pj_init() ve pj_transform. GPS koordinatından, UTM koordinatina şöyle çeviririz.
Metodun imzası şöyle.
pj_init_plus
Metodun imzası şöyle
Metodun imzası şöyle
Metodun imzası şöyle
Bu kütüphaneyi kullanmak için şu include gerekir.
#include <proj_api.h>
Metodlarİki tane temel metod sunar. Bunlar pj_init() ve pj_transform. GPS koordinatından, UTM koordinatina şöyle çeviririz.
#include <proj_api.h>
#include <stdio.h>
main(int argc, char **argv) {
projPJ pj_latlong, pj_utm;
double y = 34.8;
double x = 138.4;
if (!(pj_latlong = pj_init_plus("+proj=longlat +datum=WGS84")) ){
...
}
if (!(pj_utm = pj_init_plus("+proj=utm +zone=54 +ellps=WGS84")) ){
...
}
x *= DEG_TO_RAD;
y *= DEG_TO_RAD;
int p = pj_transform(pj_latlong, pj_utm, 1, 1, &x, &y, NULL );
printf("Error code: %d\nError message: %s\n", p, pj_strerrno(p));
printf("%.2fN\t%.2fE\n", x, y);
}
pj_transformMetodun imzası şöyle.
int pj_transform(void* src, void* dst, long point_count, int point_offset,
double* x, double* y, double* z);
pj_transform'un ilk parametresi kaynak koordinat sistemi. İkinci parametresi ise hedef koordinat sistemi. Üç ve dördünce parametrelerin 1 tane nokta olduğu için 1. x ve y ise kaynak koordinat sistemindeki koordinatlar (radyan olarak). z koordinatı olmadığı için null. Çağrı başarılı ise x ve y yeni değerleri alırlar.pj_init_plus
Metodun imzası şöyle
void* pj_init_plus(string m);
pj_invMetodun imzası şöyle
projUV pj_inv(projUV px, void* py);
pj_freeMetodun imzası şöyle
void pj_free(void* p);
Hiç yorum yok:
Yorum Gönder