pj_pr_list.cpp

来自「projapi是一个关于GIS行业投影转换的程序库」· C++ 代码 · 共 93 行

CPP
93
字号

#include "stdafx.h"

/* print projection's list of parameters */#ifndef lintstatic const char SCCSID[]="@(#)pj_pr_list.c	4.6   94/03/19 GIE REL";#endif#include "projects.h"#include <stdio.h>#include <string.h>
#define LINE_LEN 72static int pr_list(PJ *P, int not_used) 
{	paralist *t;	int l, n = 1, flag = 0;	(void)putchar('#');	for (t = P->params; t; t = t->next)		if ((!not_used && t->used) || (not_used && !t->used)) {			l = strlen(t->param) + 1;			if (n + l > LINE_LEN) {				(void)fputs("\n#", stdout);				n = 2;			}			(void)putchar(' ');			if (*(t->param) != '+')				(void)putchar('+');			(void)fputs(t->param, stdout);			n += l;		} else			flag = 1;	if (n > 1)		(void)putchar('\n');	return flag;}	void /* print link list of projection parameters */pj_pr_list(PJ *P) {	char const *s;	(void)putchar('#');	for (s = P->descr; *s ; ++s) {		(void)putchar(*s);		if (*s == '\n')			(void)putchar('#');	}	(void)putchar('\n');	if (pr_list(P, 0)) {		(void)fputs("#--- following specified but NOT used\n", stdout);		(void)pr_list(P, 1);	}}/************************************************************************//*                             pj_get_def()                             *//*                                                                      *//*      Returns the PROJ.4 command string that would produce this       *//*      definition expanded as much as possible.  For instance,         *//*      +init= calls and +datum= defintions would be expanded.          *//************************************************************************/char *pj_get_def( PJ *P, int options ){    paralist *t;    int l;    char *definition;    int  def_max = 10;    definition = (char *) pj_malloc(def_max);    definition[0] = '\0';    for (t = P->params; t; t = t->next)    {        l = strlen(t->param) + 1;        if( strlen(definition) + l + 5 > def_max )        {            char *def2;            def_max = def_max * 2 + l + 5;            def2 = (char *) pj_malloc(def_max);            strcpy( def2, definition );            pj_dalloc( definition );            definition = def2;        }        strcat( definition, " +" );        strcat( definition, t->param );    }    return definition;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?