[Proj] Proj API feature requests
Gerald Evenden
gerald.evenden at verizon.net
Thu Apr 22 14:10:57 EDT 2004
I suggest you read some of the incomplete manual documentation of
libproj4 on
http://members.bellatlantic.net/~vze2hc4d/proj4/
It contains a little more information on accessing some of the
internals.
I have no idea what FGDC is so comment is difficult.
Prime meridians *are not* part of libproj4, so no comment.
Most of what you request, although not necessarily documented is
available
by example in the [l]proj program. The data structures referenced may
be updated with different contents but the structure itself is likely to
remain the same.
I guess that part of what you want is a "tutorial" for each of the
projections.(?)
The library is not constructed with this in mind as it was designed as a
filter program and expects the user to know how to perform cartographic
projections and have a basic understanding of the necessary parameters.
As an aside, I had forgotten about some of the hyphen functions you
mentioned
and had to look them up myself. These are all functions of the program
[l]proj
and not part of the library and except for changing proj to lproj I
have not messed
with its internals for years. I only use it to test projections.
My only concern is with the library and not with the program [l]proj
which is
distributed with the library as an example of how to use the library and
as a reasonably usable filter function. Certainly, write another
interface
to the library---I have for several applications like graphics. But
internal
tables, structures are my concern and should not be tread upon without
serious thought.
On Apr 22, 2004, at 1:16 PM, Judd Taylor wrote:
> I've been using the proj library through the C API for a couple of
> years
> now. Although I like the simplicity of the API, a couple of extensions
> would
> be useful to make some of the command line tool's functionality
> available in
> C code without having to parse the command line tool's output.
> Here's a list of what features would have made my life easier in
> the
> past, and a couple of things that would make things easy enough that I
> could
> add more functionality to my programs:
> 1. Verbose configuraion information, similar to cmdline's '-v' (to
> be
> used to generate FGDC compliant metadata).
> 2. Per-point characteristics, similar to cmdline's '-V'
> 3. Error estimation similar to cmdline's '-S' option.
> 4. Querying through the API of available projections and their
> information, as well cartesian units querying, similar to the cmdline's
> '-l', '-lP', '-lu', and '-le' options.
>
> Returning strings would work in a pinch, but it would be nice to
> get
> direct access to the data structures that hold this information. After
> a
> quick look at projects.h, it looks like the interesting structs are
> going to
> be: PJ_LIST, PJ_ELLPS, PJ_UNITS, PJ_DATUMS, PJ_ELLPS, PJ_UNITS,
> PJ_PRIME_MERIDIANS, FACTORS. Of course, direct access to the structs
> via the
> API makes might break backwards-compatibility if they change down the
> road... so maybe something else may work better.
> For #2-3 above, a seperate function for pj_fwd(), pj_inv(), etc...
> would
> be nice as the extended information would be available, but if you
> don't
> want it you could just call the normal functions which should be
> faster.
>
> Any thoughts/ideas/volunteers?
>
> -Judd
_____________________________________
Jerry and the low riders: Daisy Mae and Joshua
More information about the Proj
mailing list