파일:Hyperbolic coordinates.svg

원본 파일(SVG 파일, 실제 크기 800 × 800 픽셀, 파일 크기: 20 KB)

파일 설명

설명 Hyperbolic coordinates grip on I cartesian quadrant
날짜
출처 자작
저자 Rocchini
저작권
(이 파일을 인용하기)
CC-BY 3.0

Source Code

In C++

void hyperbolic_coordinates() {
	const double DIMX = 800; const double DIMY = 800;
	const double B    = 64;  const double S    = 128;
	const double miu  = -2;  const double mau  = 2;
	const double miv  = 0;   const double mav  = 8;
	const int N = 24;        const int M = 1024;

	FILE * fp = fopen("c:\\temp\\hyperbolic_coordinates.svg","w");

	fprintf(fp,
		"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
		"<svg\n"
		"xmlns:svg=\"http://www.w3.org/2000/svg\"\n"
		"xmlns=\"http://www.w3.org/2000/svg\"\n"
		"version=\"1.0\"\n"
		"width=\"%g\"\n"
		"height=\"%g\"\n"
		"id=\"rocco\">\n"
		,DIMX,DIMY
	);
	fprintf(fp,"<g id=\"edge_layer1\" style=\"fill:none;stroke:#800000;stroke-width:1.5;stroke-opacity:1\">\n" );

	int i,j;
	for(j=0;j<N;++j) {
		const double v = miv + (mav-miv)*double(j)/(N-1);
		fprintf(fp, "<path d=\"" );
		bool first = true;
		for(i=0;i<M;++i) {
			const double u = miu + (mau-miu)*double(i)/(M-1);
			double x = v*exp( u); double y = v*exp(-u);
			x =       x*S+B;      y = DIMY-(y*S+B);
			if(x>=B && x<=DIMX-B && y>=B && y<=DIMY-B ) {
				if(first) fprintf(fp,"M ");
				else      fprintf(fp,"L ");
				fprintf(fp,"%g %g ",x,y);
				first = false;
			}
		}
		fprintf(fp,"\"/>\n");
	}

	fprintf(fp,
		"</g>\n"
		"<g id=\"edge_layer2\" style=\"fill:none;stroke:#000080;stroke-width:1.5;stroke-opacity:1\">\n"
	);

	for(i=0;i<N ;++i) {
		const double u = miu + (mau-miu)*double(i)/(N-1);
		fprintf(fp, "<path d=\"");
		bool first = true;
		for(j=0;j<M;++j)	{
			const double v = miv + (mav-miv)*double(j)/(M-1);
			double x = v*exp( u); double y = v*exp(-u);
			x =       x*S+B;      y = DIMY-(y*S+B);
			if(x>=B && x<=DIMX-B && y>=B && y<=DIMY-B ) {
				if(first) fprintf(fp,"M ");
				else      fprintf(fp,"L ");
				fprintf(fp,"%g %g ",x,y);
				first = false;
			}
		}
		fprintf(fp,"\"/>\n");
	}

	fprintf(fp,
		"</g>\n"
		"</svg>\n"
	);

	fclose(fp);
}

라이선스

나는 아래 작품의 저작권자로서, 이 저작물을 다음과 같은 라이선스로 배포합니다:
GNU head GNU 자유 문서 사용 허가서 1.2판 또는 자유 소프트웨어 재단에서 발행한 이후 판의 규정에 따라 본 문서를 복제하거나 개작 및 배포할 수 있습니다. 본 문서에는 변경 불가 부분이 없으며, 앞 표지 구절과 뒷 표지 구절도 없습니다. 본 사용 허가서의 전체 내용은 GNU 자유 문서 사용 허가서 부분에 포함되어 있습니다.
w:ko:크리에이티브 커먼즈
저작자표시
이 파일은 크리에이티브 커먼즈 저작자표시 3.0 Unported 라이선스로 배포됩니다.
이용자는 다음의 권리를 갖습니다:
  • 공유 및 이용 – 저작물의 복제, 배포, 전시, 공연 및 공중송신
  • 재창작 – 저작물의 개작, 수정, 2차적저작물 창작
다음과 같은 조건을 따라야 합니다:
  • 저작자표시 – 적절한 저작자 표시를 제공하고, 라이센스에 대한 링크를 제공하고, 변경사항이 있는지를 표시해야 합니다. 당신은 합리적인 방식으로 표시할 수 있지만, 어떤 방식으로든 사용권 허가자가 당신 또는 당신의 사용을 지지하는 방식으로 표시할 수 없습니다.
이 라이선스 중에서 목적에 맞는 것을 선택하여 사용할 수 있습니다.

설명

이 파일이 나타내는 바에 대한 한 줄 설명을 추가합니다

이 파일에 묘사된 항목

다음을 묘사함

파일 역사

날짜/시간 링크를 클릭하면 해당 시간의 파일을 볼 수 있습니다.

날짜/시간섬네일크기사용자설명
현재2008년 5월 13일 (화) 17:142008년 5월 13일 (화) 17:14 판의 섬네일800 × 800 (20 KB)Rocchini{{Information |Description= Hyperbolic coordinates grip on I cartesian quadrant |Source=self-made |Date=2008-05-13 |Author= Rocchini |Permission=CC-BY 3.0 }}

다음 문서 1개가 이 파일을 사용하고 있습니다:

이 파일을 사용하고 있는 모든 위키의 문서 목록

다음 위키에서 이 파일을 사용하고 있습니다: