# Transformation matrix

**URL:** <https://it.discourse.mcneel.com/t/transformation-matrix/1471>\
**Category:** Scripting e Programmazione\
**Created:** [15 Febbraio 2018, 12:15am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471 "2018-02-15T00:15:58Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [15 Febbraio 2018, 12:15am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/1 "2018-02-15T00:15:58Z")

</div>

mi potreste darmi una spiegazione su un argomento delle guide nei RScript

sia nel Transform che con gli Xform c’è una tabella pitagorica 4x4

ma per le coordinate bastano i tre valori XYZ come mai sono 4x4?

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/23060_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [15 Febbraio 2018, 7:40am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/2 "2018-02-15T07:40:01Z")

</div>

Ciao Salvio

Scarica questo:

[https://www.rhino3d.com/download/Rhino/4.0/EssentialMathematicsSecondEdition](https://www.rhino3d.com/download/Rhino/4.0/EssentialMathematicsSecondEdition)

Parla anche di matrici di trasformazione

EDIT:

Consiglio anche questo libro ( in generale, a tutti 🙂 )

[https://www.ibs.it/mathematical-elements-for-computer-graphics-libri-vintage-mcgraw-hill/e/2560011665677?lgw\_code=1121-W2560011665677&utm\_source=criteo&utm\_medium=remktg&utm\_campaign=remkt\_general\_lf\_criteo&utm\_content=](https://www.ibs.it/mathematical-elements-for-computer-graphics-libri-vintage-mcgraw-hill/e/2560011665677?lgw_code=1121-W2560011665677&utm_source=criteo&utm_medium=remktg&utm_campaign=remkt_general_lf_criteo&utm_content=)

C’e’ anche un’edizione successiva

EDIT 2:

Ho visto anche questo

> **[2 Matrices and Transformations](https://developer.rhino3d.com/guides/general/essential-mathematics/matrices-transformations/)**
>
> This guide reviews matrix operations and transformations.

… Non so se sia lo stesso materiale che trovi nel PDF …

---

<div class="post-metadata">

**Author:** ![giuseppe](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/giuseppe/32/16416_2.png) [@giuseppe](https://it.discourse.mcneel.com/u/giuseppe)\
**Post date:** [15 Febbraio 2018, 10:11am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/3 "2018-02-15T10:11:55Z")

</div>

Bocciato!  
😁

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/23060_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [15 Febbraio 2018, 10:44am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/4 "2018-02-15T10:44:05Z")

</div>

Da’i prof … invecchio e perdo la memoria … non mi ricordo piu’ … 😢

Ma giuro che ho studiato … anzi, beh … che **avevo** studiato …20…30 anni fa … 😉

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [15 Febbraio 2018, 5:07pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/5 "2018-02-15T17:07:22Z")

</div>

mi ha liquidato presto presto ahahahah  
ovviamente scherzo, sono testi molto interessanti gli ho dato un’occhiata e di sicuro approfondirò  
sempre grazie Emilio.

Giuseppe, se non errò in GH ci dovrebbero essere dei componenti per la visualizzazione delle matrici  
nel caso potrei fare delle prove in GH così da visualizzare subito il risultato in modo da rendermi  
subito conto come funziona e come modificare i parametri per ottenere un dato risultato . . . .

---

<div class="post-metadata">

**Author:** ![giuseppe](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/giuseppe/32/16416_2.png) [@giuseppe](https://it.discourse.mcneel.com/u/giuseppe)\
**Post date:** [19 Febbraio 2018, 5:21pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/6 "2018-02-19T17:21:22Z")

</div>

Mica tu… Salvio!!! 😂😂😂

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/23060_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [20 Febbraio 2018, 7:07am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/7 "2018-02-20T07:07:14Z")

</div>

Hehe … OK  
Dopo un rapido ripasso sul libro di cui sopra …

Dunque: la matrice 4x4 serve per poter traslare gli oggetti ( cioe’ i punti )

Con una matrice 3x3, calcolando la trasformazione, otteniamo (ad esempio) per la X un valore :  
AX + BY +CZ  
essendo A, B e C i valori nella prima colonna della matrice

Quindi se vogliamo spostare la X in modo che, diciamo, un valore 100 diventi 200 … non c’e’ modo.

Allora ci serve una ‘coordinata’ in piu’, cioe’ non e’ una coordinata, e’ semplicemente un numero aggiuntivo che ci serve per la nostra traslazione.

Il punto lo definiamo come X,Y,Z,1  
Cioe’ aggiuingiamo un ‘uno’ come ‘quarta coordinata’

A questo punto possimao usare la matrice 4x4  
La prima colonna avra’ dei valori

A, B, C, D

e calcolando la trasformazione, per la nostra X otteniamo:

AX + BY + CZ + D ( D essendo il valore di 1\* D )

quindi se poniamo D = 100,  
il nostro punto si sposta di 100 lungo la X.

OK, vediamo se il prof apprezza … cioe’ se non ho detto minch\*\*te … 😄

Alla prossima … 😉

---

<div class="post-metadata">

**Author:** ![giuseppe](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/giuseppe/32/16416_2.png) [@giuseppe](https://it.discourse.mcneel.com/u/giuseppe)\
**Post date:** [20 Febbraio 2018, 11:13am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/8 "2018-02-20T11:13:07Z")

</div>

BRAVOOOOOOOOOOOOOOOO !!! 👏👏👏

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/23060_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [20 Febbraio 2018, 11:19am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/9 "2018-02-20T11:19:38Z")

</div>

🤣 … che banda di matti …

---

<div class="post-metadata">

**Author:** ![Gambler](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/gambler/32/16276_2.png) [@Gambler](https://it.discourse.mcneel.com/u/Gambler)\
**Post date:** [20 Febbraio 2018, 12:55pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/10 "2018-02-20T12:55:11Z")

</div>

> [@0904](#):
>
> ma per le coordinate bastano i tre valori XYZ come mai sono 4x4?

Per le coordinate cartesiane sì, per quelle omogenee no.  
Fabio

---

<div class="post-metadata">

**Author:** ![Gambler](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/gambler/32/16276_2.png) [@Gambler](https://it.discourse.mcneel.com/u/Gambler)\
**Post date:** [20 Febbraio 2018, 12:55pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/11 "2018-02-20T12:55:40Z")

</div>

Emilio, adesso devi postare anche una rotazione. 🙂

Fabio.

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [20 Febbraio 2018, 1:01pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/12 "2018-02-20T13:01:21Z")

</div>

ragazzi non me lo trattate troppo male il mio mentore 🙂

---

<div class="post-metadata">

**Author:** ![Gambler](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/gambler/32/16276_2.png) [@Gambler](https://it.discourse.mcneel.com/u/Gambler)\
**Post date:** [20 Febbraio 2018, 1:04pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/13 "2018-02-20T13:04:57Z")

</div>

Chi Emilio?!  
Ci mancherebbe altro, è un piacere leggerlo, sempre disponibile e preparato.  
L’argomento è interessante, anche se un po’ tecnico, sarebbe bello svilupparlo …

Fabio.

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/23060_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [20 Febbraio 2018, 1:27pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/14 "2018-02-20T13:27:19Z")

</div>

Raga … eh … 🤨 … 😉

Ci avessi la pensione, ci avessi … avrei piu’ tempo per sparare cavolate a valanga … (e sarebbe peggio per voi … 😴 )

Quindi … leggetevi il libro (che certo spiega la faccenda molto meglio) e non rompete i … determinanti 😄 … che quelli a rotazione non li batte nessuno … 😉

La rotazione la lasciamo spiegare a Salvio, che ha una passione per seni e coseni … 😉

Ciao !

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [20 Febbraio 2018, 1:41pm UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/15 "2018-02-20T13:41:53Z")

</div>

ma come… questa è la ricompensa per aver preso le tue difese eeee mi dai i compiti da fare ahahahah

beh che dire non so in quanto tempo ma ci proverò 🙂

---

<div class="post-metadata">

**Author:** ![ScarlattiFederico](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/scarlattifederico/32/18664_2.png) [@ScarlattiFederico](https://it.discourse.mcneel.com/u/ScarlattiFederico)\
**Post date:** [9 Marzo 2018, 7:15am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/16 "2018-03-09T07:15:23Z")

</div>

Ciao a tutti, mi inserisco facendo una domanda: restringendo il campo, ho un blocco, chiamiamolo blocco1, all’interno del modello, esso è stato copiato, traslato, ruotato e specchiato ma mai scalato. Ora mettiamo che nel modello ho un tot di blocco1. La mia domanda è come faccio guardando la matrice di trasformazione sapere quanti blocchi sono specchiati e quanti no. Saperlo mi servirà in fase di produzione ad esempio perchè se è stato solo traslato e/o ruotato non mi interessa, ma se è stato specchiato dovrò produrlo specchiato. Spero di essermi spiegato. Grazie.

---

<div class="post-metadata">

**Author:** ![ScarlattiFederico](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/scarlattifederico/32/18664_2.png) [@ScarlattiFederico](https://it.discourse.mcneel.com/u/ScarlattiFederico)\
**Post date:** [9 Marzo 2018, 7:35am UTC](https://it.discourse.mcneel.com/t/transformation-matrix/1471/17 "2018-03-09T07:35:19Z")

</div>

Azzardo una risposta alla mia stessa domanda.  
Forse lo si capisce dal determinante della matrice: se è 1 allora il blocco è stato solo rototraslato, se è -1 allora c’è stata anche una riflessione su un piano. Se qualcuno può darmi riscontro ne sarò lieto. Ciao.
