|  |  | Trasformazioni geometriche |

#### Trasformazioni geometriche

I prototipi relativi alle trasformazioni geometriche permettono di eseguire trasformazioni geometriche di diversi oggetti. Essi si applicano in riferimento agli oggetti punto, segmento, retta, semiretta, vettore, circonferenza, arco e poligono.

`prototipo (TipoOggetto nome rotation oggetto centro angolo)`
`TipoOggetto`: Point, Segment, Line, Ray, Vector, Circle, Arc, Polygon
`nome`: stringa di caratteri che designa il nome dell'oggetto
`oggetto`: riferimento all'oggetto da trasformare
`centro`: riferimento ad un punto: il centro di rotazione
`angolo`: riferimento ad un valore: l'angolo di rotazione
output: riferimento all'oggetto trasformato.
Esempio:
`(lets Point "I1" rotation I C a)`

`prototipo (TipoOggetto nome scale oggetto centro k)`
`TipoOggetto`: Point, Segment, Line, Ray, Vector, Circle, Arc, Polygon
`nome`: stringa di caratteri che designa il nome dell'oggetto
`oggetto`: riferimento all'oggetto da trasformare
`centro`: riferimento ad un punto: il centro di omotetia
`k`: riferimento ad un valore: rapporto di omotetia
output: riferimento all'oggetto trasformato.
Esempio:
`(lets Polygon "P1" scale P C k1)`

`prototipo (TipoOggetto nome symmetry oggetto centro)`
`TipoOggetto`: Point, Segment, Line, Ray, Vector, Circle, Arc, Polygon
`nome`: stringa di caratteri che designa il nome dell'oggetto
`oggetto`: riferimento all'oggetto da trasformare
`centro`: riferimento ad un punto: il centro di simmetria
output: riferimento all'oggetto trasformato.
Esempio:
`(lets Segment "S1" symmetry S C)`

`prototipo (TipoOggetto nome reflexion oggetto asse)`
`TipoOggetto`: Point, Segment, Line, Ray, Vector, Circle, Arc, Polygon
`nome`: stringa di caratteri che designa il nome dell'oggetto
`oggetto`: riferimento all'oggetto da trasformare
`asse`: riferimento ad una retta: l'asse di riflessione
output: riferimento all'oggetto trasformato.
Esempio:
`(lets Polygon "P1" reflexion P d1)`

`prototipo (TipoOggetto nome translation oggetto vettore)`
`TipoOggetto`: Point, Segment, Line, Ray, Vector, Circle, Arc, Polygon
`nome`: stringa di caratteri che designa il nome dell'oggetto
`oggetto`: riferimento all'oggetto da trasformare
`vettore`: riferimento ad un vettore: il vettore di traslazione
output: riferimento all'oggetto trasformato.
Esempio:
`(lets Circle "C1" translation C v)`

|  |  | Trasformazioni geometriche |