Пример #1
0
int main(int argc, char** argv)
{
	if(argc != 1)
	{
		LOGE("usage: %s", argv[0]);
		return EXIT_FAILURE;
	}

	// create temporary working image
	texgz_tex_t* dst = texgz_tex_new(SUBTILE_SIZE, SUBTILE_SIZE,
	                                 SUBTILE_SIZE, SUBTILE_SIZE,
	                                 TEXGZ_UNSIGNED_BYTE,
	                                 TEXGZ_RGB, NULL);
	if(dst == NULL)
	{
		return EXIT_FAILURE;
	}

	int         month;
	char        fname[256];
	const char* base = "png/world.topo.bathy.2004";
	const char* size = "3x21600x21600";
	for(month = 1; month <= 12; ++month)
	{
		snprintf(fname, 256, "%s%02i.%s.A1.png", base, month, size);
		sample_sector(dst, month, 0, 0, 90.0, -180.0, 0.0, -90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.B1.png", base, month, size);
		sample_sector(dst, month, 0, 1, 90.0, -90.0, 0.0, 0.0, fname);

		snprintf(fname, 256, "%s%02i.%s.C1.png", base, month, size);
		sample_sector(dst, month, 0, 2, 90.0, 0.0, 0.0, 90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.D1.png", base, month, size);
		sample_sector(dst, month, 0, 3, 90.0, 90.0, 0.0, 180.0, fname);

		snprintf(fname, 256, "%s%02i.%s.A2.png", base, month, size);
		sample_sector(dst, month, 1, 0, 0.0, -180.0, -90.0, -90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.B2.png", base, month, size);
		sample_sector(dst, month, 1, 1, 0.0, -90.0, -90.0, 0.0, fname);

		snprintf(fname, 256, "%s%02i.%s.C2.png", base, month, size);
		sample_sector(dst, month, 1, 2, 0.0, 0.0, -90.0, 90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.D2.png", base, month, size);
		sample_sector(dst, month, 1, 3, 0.0, 90.0, -90.0, 180.0, fname);
	}

	texgz_tex_delete(&dst);

	return EXIT_SUCCESS;
}
Пример #2
0
int main(int argc, char** argv)
{
	int         month;
	char        fname[256];
	const char* base = "nasa-blue-marble/world.topo.bathy.2004";
	const char* size = "3x21600x21600";
	for(month = 1; month <= 12; ++month)
	{
		// create directories if necessary
		char dname[256];
		snprintf(dname, 256, "bluemarble%i", month);
		if(mkdir(dname, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) == -1)
		{
			if(errno == EEXIST)
			{
				// already exists
			}
			else
			{
				LOGE("mkdir %s failed", dname);
				return EXIT_FAILURE;
			}
		}
		snprintf(dname, 256, "bluemarble%i/9", month);
		if(mkdir(dname, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) == -1)
		{
			if(errno == EEXIST)
			{
				// already exists
			}
			else
			{
				LOGE("mkdir %s failed", dname);
				return EXIT_FAILURE;
			}
		}

		snprintf(fname, 256, "%s%02i.%s.A1.png", base, month, size);
		sample_sector(month, 0, 0, 90.0, -180.0, 0.0, -90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.B1.png", base, month, size);
		sample_sector(month, 0, 1, 90.0, -90.0, 0.0, 0.0, fname);

		snprintf(fname, 256, "%s%02i.%s.C1.png", base, month, size);
		sample_sector(month, 0, 2, 90.0, 0.0, 0.0, 90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.D1.png", base, month, size);
		sample_sector(month, 0, 3, 90.0, 90.0, 0.0, 180.0, fname);

		snprintf(fname, 256, "%s%02i.%s.A2.png", base, month, size);
		sample_sector(month, 1, 0, 0.0, -180.0, -90.0, -90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.B2.png", base, month, size);
		sample_sector(month, 1, 1, 0.0, -90.0, -90.0, 0.0, fname);

		snprintf(fname, 256, "%s%02i.%s.C2.png", base, month, size);
		sample_sector(month, 1, 2, 0.0, 0.0, -90.0, 90.0, fname);

		snprintf(fname, 256, "%s%02i.%s.D2.png", base, month, size);
		sample_sector(month, 1, 3, 0.0, 90.0, -90.0, 180.0, fname);
	}
	return EXIT_SUCCESS;
}