File proveniente da Wikimedia Commons. Clicca per visitare la pagina originale

File:Horocycle normals.svg

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

File originale(file in formato SVG, dimensioni nominali 800 × 800 pixel, dimensione del file: 6 KB)

Logo di Commons
Logo di Commons
Questo file e la sua pagina di descrizione (discussione · modifica) si trovano su Wikimedia Commons (?)

Dettagli

Descrizione
English: Horocycle in Poincaré disk model and some normals
Data
Fonte Opera propria
Autore Claudio Rocchini
Licenza
(Riusare questo file)
CC-BY 3.0

Source

You need some basic 2d gemetric functions (line line intersection, circle circle inter. etc)

void Horocycle()
{
	const double DIMX = 800;
	const double DIMY = 800;
	const double B    = 32;

	FILE * fp = fopen("c:\\temp\\horocycle.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
	);

	circle2 gc; gc.c = point2(DIMX/2,DIMY/2); gc.r = (DIMX-2*B)/2;

	fprintf(fp,"<circle cx=\"%g\" cy=\"%g\" r=\"%g\" style=\"fill:#ffffE0;stroke:#000000;stroke-width:3;stroke-opacity:1\" />\n"
		,gc.c.x,gc.c.y
		,gc.r
	);	

	circle2 hc; hc.r = DIMX/3; hc.c = point2(DIMX/2,B+hc.r);

	fprintf(fp,"<circle cx=\"%g\" cy=\"%g\" r=\"%g\" style=\"fill:none;stroke:#0000A0;stroke-width:3;stroke-opacity:1\" />\n"
		,hc.c.x,hc.c.y
		,hc.r
	);

	const int N = 24;
	int i;
	for(i=0;i<N;++i)
	{
		double a = 2*PI*i/N + PI/N;
		point2 p = hc.point(a);

		fprintf(fp,"<circle cx=\"%g\" cy=\"%g\" r=\"%g\" style=\"fill:#000000;stroke:#000000;stroke-width:3;stroke-opacity:1\" />\n"
			,p.x,p.y
			,4.0
		);

		segment2 s( p, point2(DIMX/2,B) );
		line2 ax; s.axis(ax);
		line2 ba; ba.orig.x = DIMX/2; ba.orig.y = B; ba.dire.x = 1; ba.dire.y = 0;
		point2 pp; line_line_int(ax,ba,pp);
		double ra = dist(pp,p);

		circle2 cc; cc.c = pp; cc.r = ra;
	
		point2 p1,p2; intersection(cc,gc,p1,p2);

		fprintf(fp,"<path d=\"M%g,%g A%g,%g 0 0,1 %g,%g\" style=\"fill:none;stroke:#800000;stroke-width:1.5;stroke-opacity:1\" />\n"
			,p1.x,p1.y
			,cc.r,cc.r
			,p2.x,p2.y
		);
	}

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

Licenza

Io, detentore del copyright su quest'opera, dichiaro di pubblicarla con le seguenti licenze:
GNU head È permesso copiare, distribuire e/o modificare questo documento in base ai termini della GNU Free Documentation License, Versione 1.2 o successive pubblicata dalla Free Software Foundation; senza alcuna sezione non modificabile, senza testo di copertina e senza testo di quarta di copertina. Una copia della licenza è inclusa nella sezione intitolata Testo della GNU Free Documentation License.
w:it:Creative Commons
attribuzione
Questo file è disponibile in base alla licenza Creative Commons Attribuzione 3.0 Unported
Tu sei libero:
  • di condividere – di copiare, distribuire e trasmettere quest'opera
  • di modificare – di adattare l'opera
Alle seguenti condizioni:
  • attribuzione – Devi fornire i crediti appropriati, un collegamento alla licenza e indicare se sono state apportate modifiche. Puoi farlo in qualsiasi modo ragionevole, ma non in alcun modo che suggerisca che il licenziante approvi te o il tuo uso.
Puoi scegliere la licenza che preferisci.

Didascalie

Aggiungi una brevissima spiegazione di ciò che questo file rappresenta

Elementi ritratti in questo file

raffigura

image/svg+xml

Cronologia del file

Fare clic su un gruppo data/ora per vedere il file come si presentava nel momento indicato.

Data/OraMiniaturaDimensioniUtenteCommento
attuale13:51, 30 mag 2008Miniatura della versione delle 13:51, 30 mag 2008800 × 800 (6 KB)Rocchini{{Information |Description={{en|1=Horocycle in Poincaré disk model and some normals}} |Source=Opera creata dall'uploader (own work by uploader) |Author=Claudio Rocchini |Date=2008-05-30 |Permission=CC-BY 3.0 |other_versions= }} {{Image

Le seguenti 2 pagine usano questo file:

Utilizzo globale del file

Anche i seguenti wiki usano questo file: