[Proj] Use of prj_fwd() function...

David.Jacques at CCRS.NRCan.gc.ca David.Jacques at CCRS.NRCan.gc.ca
Tue Nov 9 13:22:44 EST 2004

I want to project coordinate pairs from Decimal Degrees to LCC in my C
I basically need the functionality in proj.exe without the printf output.
I've built a .lib file in MSVC++ which I include in my project.  
What I am not clear on is how to setup such a call. 
I've adapted a section of the latest proj4.3.pdf manual (from example2.c)

Is prj_fwd what proj.exe uses to compute the output coordinates ?

If so, what other than a valid projPJ projection reference (with valid
and an output projUV variable does one need to reproject ? 
I am not getting valid results from my program at the moment. 
I know the parms[] values are correct, and the command line version of
proj accepts decimal degrees as input,  so I am stumped.

thanks in advance.

#include <stdio.h>
#include <string.h>
#include <projects.h>
#include <proj_api.h>
#include <math.h>

main(int argc, char **argv)
	projUV dddata;
	projUV dmsdata;
	projUV lccdata;
	projPJ ref;
	static char *parms[] = { "proj=lcc",
      char lon[40];
      char lat[40];

	//get the destination projection info
	if (! (ref = pj_init((sizeof(parms)/sizeof(char*)),parms)))
		fprintf(stderr, "Projection initialization failed\n");

	//project the input coordinates
	dddata.u = -70.8669968;
	dddata.v =  46.3959999;
	lccdata = pj_fwd(dddata,ref);


More information about the Proj mailing list